From d923192cf967a7aa2753c4d34b50505e38162354 Mon Sep 17 00:00:00 2001 From: Nico Domino Date: Wed, 1 May 2024 12:35:05 +0200 Subject: [PATCH] chore(sveltekit): update sveltekit eslint tooling (#10748) Co-authored-by: Thang Vu --- package.json | 35 ++--- packages/frameworks-sveltekit/.eslintrc.cjs | 24 --- packages/frameworks-sveltekit/package.json | 2 +- pnpm-lock.yaml | 156 ++++++++++++++++---- 4 files changed, 146 insertions(+), 71 deletions(-) delete mode 100644 packages/frameworks-sveltekit/.eslintrc.cjs diff --git a/package.json b/package.json index 300cb61b78..6d9a3e993f 100644 --- a/package.json +++ b/package.json @@ -47,11 +47,12 @@ "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^6.0.0", "eslint-plugin-react": "^7.31.11", - "eslint-plugin-svelte3": "^4.0.0", + "eslint-plugin-svelte": "^2.38.0", "fake-smtp-server": "^0.8.0", "prettier": "3.1.1", "prettier-plugin-svelte": "^3.1.2", "prettier-plugin-tailwindcss": "^0.5.13", + "svelte-eslint-parser": "^0.35.0", "turbo": "^1.11.3", "typescript": "5.3.3", "utils": "workspace:*", @@ -93,8 +94,6 @@ ".next", ".nuxt", "build", - "docs/docs/reference/core", - "docs/docs/reference/sveltekit", "static", "coverage", "dist", @@ -110,7 +109,6 @@ "firestore-debug.log", "migrations", "test.schema.gql", - "apps/example-sveltekit", "apps", "packages/**/*test*" ], @@ -192,20 +190,27 @@ "files": [ "packages/frameworks-sveltekit" ], - "plugins": [ - "svelte3" + "extends": [ + "plugin:svelte/recommended" ], "overrides": [ { "files": [ "*.svelte" ], - "processor": "svelte3/svelte3" + "parser": "svelte-eslint-parser", + "parserOptions": { + "parser": "@typescript-eslint/parser" + } } ], + "parser": "@typescript-eslint/parser", "parserOptions": { "sourceType": "module", - "ecmaVersion": 2020 + "ecmaVersion": 2020, + "extraFileExtensions": [ + ".svelte" + ] }, "env": { "browser": true, @@ -226,19 +231,7 @@ "prettier": { "semi": false, "singleQuote": false, - "trailingComma": "es5", - "overrides": [ - { - "files": [ - "apps/dev/nextjs/app/api/auth/[...nextauth]/route.ts", - "packages/next-auth/src/lib/env.ts", - "apps/examples/nextjs/auth.ts" - ], - "options": { - "printWidth": 150 - } - } - ] + "trailingComma": "es5" }, "pnpm": { "overrides": { diff --git a/packages/frameworks-sveltekit/.eslintrc.cjs b/packages/frameworks-sveltekit/.eslintrc.cjs deleted file mode 100644 index 3e45f5ac0d..0000000000 --- a/packages/frameworks-sveltekit/.eslintrc.cjs +++ /dev/null @@ -1,24 +0,0 @@ -module.exports = { - root: true, - parser: "@typescript-eslint/parser", - extends: [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "prettier", - ], - plugins: ["svelte3", "@typescript-eslint"], - ignorePatterns: ["*.cjs", "client.*", "index.*"], - 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/packages/frameworks-sveltekit/package.json b/packages/frameworks-sveltekit/package.json index 8331d902ba..3d3e9ea929 100644 --- a/packages/frameworks-sveltekit/package.json +++ b/packages/frameworks-sveltekit/package.json @@ -27,7 +27,7 @@ "build": "pnpm clean && pnpm providers && pnpm check && svelte-package", "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "clean": "rm -rf client.* index.* package src/lib/providers", + "clean": "rm -rf dist src/lib/providers", "dev": "pnpm providers && svelte-package -w", "preview": "vite preview", "providers": "node ../utils/scripts/providers.js --out src/lib", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce8b2c2cf2..ffb2b2bf3c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -67,9 +67,9 @@ importers: eslint-plugin-react: specifier: ^7.31.11 version: 7.33.2(eslint@8.30.0) - eslint-plugin-svelte3: - specifier: ^4.0.0 - version: 4.0.0(eslint@8.30.0)(svelte@3.59.2) + eslint-plugin-svelte: + specifier: ^2.38.0 + version: 2.38.0(eslint@8.30.0)(svelte@4.2.9) fake-smtp-server: specifier: ^0.8.0 version: 0.8.0 @@ -78,10 +78,13 @@ importers: version: 3.1.1 prettier-plugin-svelte: specifier: ^3.1.2 - version: 3.1.2(prettier@3.1.1)(svelte@3.59.2) + version: 3.1.2(prettier@3.1.1)(svelte@4.2.9) prettier-plugin-tailwindcss: specifier: ^0.5.13 version: 0.5.13(@prettier/plugin-pug@3.0.0)(prettier-plugin-svelte@3.1.2)(prettier@3.1.1) + svelte-eslint-parser: + specifier: ^0.35.0 + version: 0.35.0(svelte@4.2.9) turbo: specifier: ^1.11.3 version: 1.11.3 @@ -164,7 +167,7 @@ importers: version: 4.2.9 svelte-check: specifier: 2.10.2 - version: 2.10.2(svelte@4.2.9) + version: 2.10.2(postcss@8.4.38)(svelte@4.2.9) typescript: specifier: 5.2.2 version: 5.2.2 @@ -707,7 +710,7 @@ importers: version: 4.2.9 svelte-check: specifier: ^3.4.3 - version: 3.6.3(svelte@4.2.9) + version: 3.6.3(postcss@8.4.38)(svelte@4.2.9) tslib: specifier: ^2.4.1 version: 2.6.2 @@ -13446,6 +13449,16 @@ packages: source-map: 0.6.1 dev: true + /eslint-compat-utils@0.5.0(eslint@8.30.0): + resolution: {integrity: sha512-dc6Y8tzEcSYZMHa+CMPLi/hyo1FzNeonbhJL7Ol0ccuKQkwopJcJBA9YL/xmMTLU1eKigXo9vj9nALElWYSowg==} + engines: {node: '>=12'} + peerDependencies: + eslint: '>=6.0.0' + dependencies: + eslint: 8.30.0 + semver: 7.6.0 + dev: true + /eslint-config-prettier@8.10.0(eslint@8.30.0): resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==} hasBin: true @@ -13643,14 +13656,33 @@ packages: string.prototype.matchall: 4.0.10 dev: true - /eslint-plugin-svelte3@4.0.0(eslint@8.30.0)(svelte@3.59.2): - resolution: {integrity: sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==} + /eslint-plugin-svelte@2.38.0(eslint@8.30.0)(svelte@4.2.9): + resolution: {integrity: sha512-IwwxhHzitx3dr0/xo0z4jjDlb2AAHBPKt+juMyKKGTLlKi1rZfA4qixMwnveU20/JTHyipM6keX4Vr7LZFYc9g==} + engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: - eslint: '>=8.0.0' - svelte: ^3.2.0 + eslint: ^7.0.0 || ^8.0.0-0 || ^9.0.0-0 + svelte: ^3.37.0 || ^4.0.0 || ^5.0.0-next.112 + peerDependenciesMeta: + svelte: + optional: true dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.30.0) + '@jridgewell/sourcemap-codec': 1.4.15 + debug: 4.3.4(supports-color@8.1.1) eslint: 8.30.0 - svelte: 3.59.2 + eslint-compat-utils: 0.5.0(eslint@8.30.0) + esutils: 2.0.3 + known-css-properties: 0.30.0 + postcss: 8.4.38 + postcss-load-config: 3.1.4(postcss@8.4.38) + postcss-safe-parser: 6.0.0(postcss@8.4.38) + postcss-selector-parser: 6.0.16 + semver: 7.6.0 + svelte: 4.2.9 + svelte-eslint-parser: 0.35.0(svelte@4.2.9) + transitivePeerDependencies: + - supports-color + - ts-node dev: true /eslint-scope@7.2.2: @@ -16536,6 +16568,10 @@ packages: - supports-color dev: true + /known-css-properties@0.30.0: + resolution: {integrity: sha512-VSWXYUnsPu9+WYKkfmJyLKtIvaRJi1kXUqVmBACORXZQxT5oZDsoZ2vQP+bQFDnWtpI/4eq3MLoRMjI2fnLzTQ==} + dev: true + /kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} dev: true @@ -19686,6 +19722,23 @@ packages: postcss: 8.4.38 dev: true + /postcss-load-config@3.1.4(postcss@8.4.38): + resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} + engines: {node: '>= 10'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + dependencies: + lilconfig: 2.1.0 + postcss: 8.4.38 + yaml: 1.10.2 + dev: true + /postcss-load-config@4.0.2(postcss@8.4.38): resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} engines: {node: '>= 14'} @@ -19756,6 +19809,24 @@ packages: postcss-value-parser: 4.2.0 dev: false + /postcss-safe-parser@6.0.0(postcss@8.4.38): + resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.3.3 + dependencies: + postcss: 8.4.38 + dev: true + + /postcss-scss@4.0.9(postcss@8.4.38): + resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.4.29 + dependencies: + postcss: 8.4.38 + dev: true + /postcss-selector-parser@6.0.15: resolution: {integrity: sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==} engines: {node: '>=4'} @@ -19763,6 +19834,14 @@ packages: cssesc: 3.0.0 util-deprecate: 1.0.2 + /postcss-selector-parser@6.0.16: + resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} + engines: {node: '>=4'} + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 + dev: true + /postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -20095,14 +20174,14 @@ packages: engines: {node: '>= 0.8.0'} dev: true - /prettier-plugin-svelte@3.1.2(prettier@3.1.1)(svelte@3.59.2): + /prettier-plugin-svelte@3.1.2(prettier@3.1.1)(svelte@4.2.9): resolution: {integrity: sha512-7xfMZtwgAWHMT0iZc8jN4o65zgbAQ3+O32V6W7pXrqNvKnHnkoyQCGCbKeUyXKZLbYE0YhFRnamfxfkEGxm8qA==} peerDependencies: prettier: ^3.0.0 svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 dependencies: prettier: 3.1.1 - svelte: 3.59.2 + svelte: 4.2.9 dev: true /prettier-plugin-tailwindcss@0.5.13(@prettier/plugin-pug@3.0.0)(prettier-plugin-svelte@3.1.2)(prettier@3.1.1): @@ -20159,7 +20238,7 @@ packages: dependencies: '@prettier/plugin-pug': 3.0.0(prettier@3.1.1) prettier: 3.1.1 - prettier-plugin-svelte: 3.1.2(prettier@3.1.1)(svelte@3.59.2) + prettier-plugin-svelte: 3.1.2(prettier@3.1.1)(svelte@4.2.9) dev: true /prettier@2.8.8: @@ -21343,6 +21422,14 @@ packages: dependencies: lru-cache: 6.0.0 + /semver@7.6.0: + resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} + engines: {node: '>=10'} + hasBin: true + dependencies: + lru-cache: 6.0.0 + dev: true + /send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} engines: {node: '>= 0.8.0'} @@ -22369,7 +22456,7 @@ packages: - utf-8-validate dev: false - /svelte-check@2.10.2(svelte@4.2.9): + /svelte-check@2.10.2(postcss@8.4.38)(svelte@4.2.9): resolution: {integrity: sha512-h1Tuiir0m8J5yqN+Vx6qgKKk1L871e6a9o7rMwVWfu8Qs6Wg7x2R+wcxS3SO3VpW5JCxCat90rxPsZMYgz+HaQ==} hasBin: true peerDependencies: @@ -22382,7 +22469,7 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 4.2.9 - svelte-preprocess: 4.10.7(svelte@4.2.9)(typescript@5.3.3) + svelte-preprocess: 4.10.7(postcss@8.4.38)(svelte@4.2.9)(typescript@5.3.3) typescript: 5.3.3 transitivePeerDependencies: - '@babel/core' @@ -22397,7 +22484,7 @@ packages: - sugarss dev: true - /svelte-check@3.6.3(svelte@4.2.9): + /svelte-check@3.6.3(postcss@8.4.38)(svelte@4.2.9): resolution: {integrity: sha512-Q2nGnoysxUnB9KjnjpQLZwdjK62DHyW6nuH/gm2qteFnDk0lCehe/6z8TsIvYeKjC6luKaWxiNGyOcWiLLPSwA==} hasBin: true peerDependencies: @@ -22410,7 +22497,7 @@ packages: picocolors: 1.0.0 sade: 1.8.1 svelte: 4.2.9 - svelte-preprocess: 5.1.3(svelte@4.2.9)(typescript@5.2.2) + svelte-preprocess: 5.1.3(postcss@8.4.38)(svelte@4.2.9)(typescript@5.2.2) typescript: 5.2.2 transitivePeerDependencies: - '@babel/core' @@ -22424,6 +22511,23 @@ packages: - sugarss dev: true + /svelte-eslint-parser@0.35.0(svelte@4.2.9): + resolution: {integrity: sha512-CtbPseajW0gjwEvHiuzYJkPDjAcHz2FaHt540j6RVYrZgnE6xWkzUBodQ4I3nV+G5AS0Svt8K6aIA/CIU9xT2Q==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + svelte: ^3.37.0 || ^4.0.0 || ^5.0.0-next.112 + peerDependenciesMeta: + svelte: + optional: true + dependencies: + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + postcss: 8.4.38 + postcss-scss: 4.0.9(postcss@8.4.38) + svelte: 4.2.9 + dev: true + /svelte-hmr@0.15.3(svelte@4.2.9): resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} engines: {node: ^12.20 || ^14.13.1 || >= 16} @@ -22433,7 +22537,7 @@ packages: svelte: 4.2.9 dev: true - /svelte-preprocess@4.10.7(svelte@4.2.9)(typescript@5.3.3): + /svelte-preprocess@4.10.7(postcss@8.4.38)(svelte@4.2.9)(typescript@5.3.3): resolution: {integrity: sha512-sNPBnqYD6FnmdBrUmBCaqS00RyCsCpj2BG58A1JBswNF7b0OKviwxqVrOL/CKyJrLSClrSeqQv5BXNg2RUbPOw==} engines: {node: '>= 9.11.2'} requiresBuild: true @@ -22478,13 +22582,14 @@ packages: '@types/sass': 1.45.0 detect-indent: 6.1.0 magic-string: 0.25.9 + postcss: 8.4.38 sorcery: 0.10.0 strip-indent: 3.0.0 svelte: 4.2.9 typescript: 5.3.3 dev: true - /svelte-preprocess@5.1.3(svelte@4.2.9)(typescript@5.2.2): + /svelte-preprocess@5.1.3(postcss@8.4.38)(svelte@4.2.9)(typescript@5.2.2): resolution: {integrity: sha512-xxAkmxGHT+J/GourS5mVJeOXZzne1FR5ljeOUAMXUkfEhkLEllRreXpbl3dIYJlcJRfL1LO1uIAPpBpBfiqGPw==} engines: {node: '>= 16.0.0', pnpm: ^8.0.0} requiresBuild: true @@ -22525,6 +22630,7 @@ packages: '@types/pug': 2.0.10 detect-indent: 6.1.0 magic-string: 0.30.5 + postcss: 8.4.38 sorcery: 0.11.0 strip-indent: 3.0.0 svelte: 4.2.9 @@ -22543,11 +22649,6 @@ packages: typescript: 5.3.3 dev: true - /svelte@3.59.2: - resolution: {integrity: sha512-vzSyuGr3eEoAtT/A6bmajosJZIUWySzY2CzB3w2pgPvnkUjGqlDnsNnA0PMO+mMAhuyMul6C2uuZzY6ELSkzyA==} - engines: {node: '>= 8'} - dev: true - /svelte@4.2.9: resolution: {integrity: sha512-hsoB/WZGEPFXeRRLPhPrbRz67PhP6sqYgvwcAs+gWdSQSvNDw+/lTeUJSWe5h2xC97Fz/8QxAOqItwBzNJPU8w==} engines: {node: '>=16'} @@ -24627,6 +24728,11 @@ packages: resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==} dev: true + /yaml@1.10.2: + resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} + engines: {node: '>= 6'} + dev: true + /yaml@2.3.4: resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} engines: {node: '>= 14'}