diff --git a/.eslintrc.js b/.eslintrc.js
index b40939c4e5..0b8e128350 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -18,6 +18,7 @@ module.exports = {
parserOptions: {
project: [
path.resolve(__dirname, "./packages/**/tsconfig.eslint.json"),
+ path.resolve(__dirname, "./packages/frameworks/**/tsconfig.json"),
path.resolve(__dirname, "./apps/**/tsconfig.json"),
],
},
diff --git a/.gitignore b/.gitignore
index ee626052ce..c0b06b43ea 100644
--- a/.gitignore
+++ b/.gitignore
@@ -85,4 +85,13 @@ packages/core/adapters.*
packages/core/index.*
packages/core/jwt
packages/core/lib
-packages/core/providers
\ No newline at end of file
+packages/core/providers
+
+
+# SvelteKit
+packages/frameworks/sveltekit/index.*
+packages/frameworks/sveltekit/client.*
+packages/frameworks/sveltekit/.svelte-kit
+packages/frameworks/sveltekit/package
+packages/frameworks/sveltekit/vite.config.js.timestamp-*
+packages/frameworks/sveltekit/vite.config.ts.timestamp-*
diff --git a/apps/playground-sveltekit/.eslintignore b/apps/playground-sveltekit/.eslintignore
new file mode 100644
index 0000000000..38972655fa
--- /dev/null
+++ b/apps/playground-sveltekit/.eslintignore
@@ -0,0 +1,13 @@
+.DS_Store
+node_modules
+/build
+/.svelte-kit
+/package
+.env
+.env.*
+!.env.example
+
+# Ignore files for PNPM, NPM and YARN
+pnpm-lock.yaml
+package-lock.json
+yarn.lock
diff --git a/apps/playground-sveltekit/.eslintrc.cjs b/apps/playground-sveltekit/.eslintrc.cjs
index e121f07507..3ccf435f02 100644
--- a/apps/playground-sveltekit/.eslintrc.cjs
+++ b/apps/playground-sveltekit/.eslintrc.cjs
@@ -1,24 +1,20 @@
module.exports = {
- root: true,
- parser: "@typescript-eslint/parser",
- extends: [
- "eslint:recommended",
- "plugin:@typescript-eslint/recommended",
- "prettier",
- ],
- plugins: ["svelte3", "@typescript-eslint"],
- ignorePatterns: ["*.cjs", "build/**/*"],
- overrides: [{ files: ["*.svelte"], processor: "svelte3/svelte3" }],
- settings: {
- "svelte3/typescript": () => require("typescript"),
- },
- parserOptions: {
- sourceType: "module",
- ecmaVersion: 2020,
- },
- env: {
- browser: true,
- es2017: true,
- node: true,
- },
-}
+ root: true,
+ parser: '@typescript-eslint/parser',
+ extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'],
+ plugins: ['svelte3', '@typescript-eslint'],
+ ignorePatterns: ['*.cjs'],
+ overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }],
+ settings: {
+ 'svelte3/typescript': () => require('typescript')
+ },
+ parserOptions: {
+ sourceType: 'module',
+ ecmaVersion: 2020
+ },
+ env: {
+ browser: true,
+ es2017: true,
+ node: true
+ }
+};
diff --git a/apps/playground-sveltekit/.gitignore b/apps/playground-sveltekit/.gitignore
index f4401a32d2..8f6c617ecf 100644
--- a/apps/playground-sveltekit/.gitignore
+++ b/apps/playground-sveltekit/.gitignore
@@ -6,3 +6,7 @@ node_modules
.env
.env.*
!.env.example
+.vercel
+.output
+vite.config.js.timestamp-*
+vite.config.ts.timestamp-*
diff --git a/apps/playground-sveltekit/.prettierignore b/apps/playground-sveltekit/.prettierignore
new file mode 100644
index 0000000000..38972655fa
--- /dev/null
+++ b/apps/playground-sveltekit/.prettierignore
@@ -0,0 +1,13 @@
+.DS_Store
+node_modules
+/build
+/.svelte-kit
+/package
+.env
+.env.*
+!.env.example
+
+# Ignore files for PNPM, NPM and YARN
+pnpm-lock.yaml
+package-lock.json
+yarn.lock
diff --git a/apps/playground-sveltekit/.prettierrc b/apps/playground-sveltekit/.prettierrc
new file mode 100644
index 0000000000..a77fddea90
--- /dev/null
+++ b/apps/playground-sveltekit/.prettierrc
@@ -0,0 +1,9 @@
+{
+ "useTabs": true,
+ "singleQuote": true,
+ "trailingComma": "none",
+ "printWidth": 100,
+ "plugins": ["prettier-plugin-svelte"],
+ "pluginSearchDirs": ["."],
+ "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }]
+}
diff --git a/apps/playground-sveltekit/package.json b/apps/playground-sveltekit/package.json
index ee6ad38571..f4101223a2 100644
--- a/apps/playground-sveltekit/package.json
+++ b/apps/playground-sveltekit/package.json
@@ -1,43 +1,37 @@
{
- "name": "sveltekit-nextauth",
- "private": true,
- "version": "0.0.1",
- "scripts": {
- "dev": "vite dev",
- "build": "vite build",
- "preview": "vite preview",
- "start": "HOST=127.0.0.1 PORT=5173 ORIGIN=http://localhost:5173 node ./build",
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
- "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
- "lint": "prettier --check . && eslint .",
- "format": "prettier --write ."
- },
- "devDependencies": {
- "@sveltejs/adapter-auto": "^1.0.0-next.80",
- "@sveltejs/adapter-node": "1.0.0-next.96",
- "@sveltejs/kit": "1.0.0-next.511",
- "@types/cookie": "^0.5.1",
- "@typescript-eslint/eslint-plugin": "^5.35.1",
- "@typescript-eslint/parser": "^5.35.1",
- "eslint": "^8.22.0",
- "eslint-config-prettier": "^8.5.0",
- "eslint-plugin-svelte3": "^4.0.0",
- "prettier": "^2.7.1",
- "prettier-plugin-svelte": "^2.7.0",
- "svelte": "^3.49.0",
- "svelte-check": "^2.8.1",
- "svelte-preprocess": "^4.10.7",
- "tslib": "^2.4.0",
- "typescript": "~4.8.2",
- "vite": "^3.1.0"
- },
- "type": "module",
- "dependencies": {
- "cookie": "0.5.0",
- "next-auth": "latest"
- },
- "prettier": {
- "semi": false,
- "singleQuote": false
- }
+ "name": "sveltekit-nextauth",
+ "private": true,
+ "version": "0.0.1",
+ "scripts": {
+ "dev": "vite dev",
+ "build": "vite build",
+ "preview": "vite preview",
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
+ },
+ "devDependencies": {
+ "@fontsource/fira-mono": "^4.5.10",
+ "@neoconfetti/svelte": "^1.0.0",
+ "@sveltejs/adapter-auto": "next",
+ "@sveltejs/kit": "next",
+ "@types/cookie": "^0.5.1",
+ "@typescript-eslint/eslint-plugin": "^5.45.0",
+ "@typescript-eslint/parser": "^5.45.0",
+ "eslint": "^8.28.0",
+ "eslint-config-prettier": "^8.5.0",
+ "eslint-plugin-svelte3": "^4.0.0",
+ "prettier": "^2.8.0",
+ "prettier-plugin-svelte": "^2.8.1",
+ "svelte": "^3.54.0",
+ "svelte-check": "^2.9.2",
+ "tslib": "^2.4.1",
+ "typescript": "^4.9.3",
+ "vite": "^4.0.0"
+ },
+ "dependencies": {
+ "cookie": "0.5.0",
+ "@auth/core": "workspace:*",
+ "@auth/sveltekit": "workspace:^"
+ },
+ "type": "module"
}
diff --git a/apps/playground-sveltekit/src/app.d.ts b/apps/playground-sveltekit/src/app.d.ts
index 48073ae024..3a5ba126ae 100644
--- a/apps/playground-sveltekit/src/app.d.ts
+++ b/apps/playground-sveltekit/src/app.d.ts
@@ -1,4 +1,5 @@
///
+///
import type {
User as NextAuthUser,
Session as NextAuthSession,
@@ -18,7 +19,8 @@ interface AppSession extends NextAuthSession {
declare global {
declare namespace App {
interface Locals {
- session: AppSession
+ // session: AppSession
+ getSession: () => Promise
}
interface Platform {}
diff --git a/apps/playground-sveltekit/src/app.html b/apps/playground-sveltekit/src/app.html
index 4e53b26cdb..b41e51ce11 100644
--- a/apps/playground-sveltekit/src/app.html
+++ b/apps/playground-sveltekit/src/app.html
@@ -1,12 +1,15 @@
-
-
-
-
- %sveltekit.head%
-
-
- %sveltekit.body%
-
-
+
+
+
+
+
+ %sveltekit.head%
+
+
+
+ %sveltekit.body%
+
+
+