From 07a298f412b69f25d913754bec814ac5938ccb01 Mon Sep 17 00:00:00 2001 From: Claas Date: Sat, 11 Jul 2026 16:31:18 +0200 Subject: [PATCH] Improve configuration --- package.json | 1 + pnpm-lock.yaml | 52 +++++++++++++++++++++++++++++++--------------- tsconfig.app.json | 27 ++++++++++++++++++++++++ tsconfig.json | 24 +++++---------------- tsconfig.node.json | 23 ++++++++++++++++++++ vite.config.ts | 6 +++--- 6 files changed, 94 insertions(+), 39 deletions(-) create mode 100644 tsconfig.app.json create mode 100644 tsconfig.node.json diff --git a/package.json b/package.json index c65fc07..07da0e9 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "@tailwindcss/typography": "^0.5.20", "@tailwindcss/vite": "^4.3.2", "@tursodatabase/database": "^0.6.1", + "@types/node": "^26.1.1", "tailwindcss": "^4.3.2", "typescript": "^7.0.2", "vite": "^8.1.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e27d380..ebcd8f7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -35,10 +35,13 @@ importers: version: 0.5.20(tailwindcss@4.3.2) '@tailwindcss/vite': specifier: ^4.3.2 - version: 4.3.2(vite@8.1.4(jiti@2.7.0)) + version: 4.3.2(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)) '@tursodatabase/database': specifier: ^0.6.1 version: 0.6.1 + '@types/node': + specifier: ^26.1.1 + version: 26.1.1 tailwindcss: specifier: ^4.3.2 version: 4.3.2 @@ -47,13 +50,13 @@ importers: version: 7.0.2 vite: specifier: ^8.1.4 - version: 8.1.4(jiti@2.7.0) + version: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) vite-plugin-solid: specifier: ^2.11.12 - version: 2.11.12(solid-js@1.9.14)(vite@8.1.4(jiti@2.7.0)) + version: 2.11.12(solid-js@1.9.14)(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)) vitest: specifier: ^4.1.10 - version: 4.1.10(vite@8.1.4(jiti@2.7.0)) + version: 4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)) packages: @@ -447,6 +450,9 @@ packages: '@types/estree@1.0.9': resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==} + '@types/node@26.1.1': + resolution: {integrity: sha512-nxAkRSVkN1Y0JC1W8ky/fTfkGsMmcrRsbx+3XoZE+rMOX71kLYTV7fLXpqud1GpbpP5TuffXFqfX7fH2GgZREw==} + '@types/trusted-types@2.0.7': resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} @@ -940,6 +946,9 @@ packages: engines: {node: '>=16.20.0'} hasBin: true + undici-types@8.3.0: + resolution: {integrity: sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==} + update-browserslist-db@1.2.3: resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} hasBin: true @@ -1358,12 +1367,12 @@ snapshots: postcss-selector-parser: 6.0.10 tailwindcss: 4.3.2 - '@tailwindcss/vite@4.3.2(vite@8.1.4(jiti@2.7.0))': + '@tailwindcss/vite@4.3.2(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0))': dependencies: '@tailwindcss/node': 4.3.2 '@tailwindcss/oxide': 4.3.2 tailwindcss: 4.3.2 - vite: 8.1.4(jiti@2.7.0) + vite: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) '@tursodatabase/database-common@0.6.1': {} @@ -1433,6 +1442,10 @@ snapshots: '@types/estree@1.0.9': {} + '@types/node@26.1.1': + dependencies: + undici-types: 8.3.0 + '@types/trusted-types@2.0.7': optional: true @@ -1505,13 +1518,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.10(vite@8.1.4(jiti@2.7.0))': + '@vitest/mocker@4.1.10(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0))': dependencies: '@vitest/spy': 4.1.10 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 8.1.4(jiti@2.7.0) + vite: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) '@vitest/pretty-format@4.1.10': dependencies: @@ -1822,6 +1835,8 @@ snapshots: '@typescript/typescript-win32-arm64': 7.0.2 '@typescript/typescript-win32-x64': 7.0.2 + undici-types@8.3.0: {} + update-browserslist-db@1.2.3(browserslist@4.28.5): dependencies: browserslist: 4.28.5 @@ -1830,7 +1845,7 @@ snapshots: util-deprecate@1.0.2: {} - vite-plugin-solid@2.11.12(solid-js@1.9.14)(vite@8.1.4(jiti@2.7.0)): + vite-plugin-solid@2.11.12(solid-js@1.9.14)(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)): dependencies: '@babel/core': 7.29.7 '@types/babel__core': 7.20.5 @@ -1838,12 +1853,12 @@ snapshots: merge-anything: 5.1.7 solid-js: 1.9.14 solid-refresh: 0.6.3(solid-js@1.9.14) - vite: 8.1.4(jiti@2.7.0) - vitefu: 1.1.3(vite@8.1.4(jiti@2.7.0)) + vite: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) + vitefu: 1.1.3(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)) transitivePeerDependencies: - supports-color - vite@8.1.4(jiti@2.7.0): + vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0): dependencies: lightningcss: 1.32.0 picomatch: 4.0.5 @@ -1851,17 +1866,18 @@ snapshots: rolldown: 1.1.5 tinyglobby: 0.2.17 optionalDependencies: + '@types/node': 26.1.1 fsevents: 2.3.3 jiti: 2.7.0 - vitefu@1.1.3(vite@8.1.4(jiti@2.7.0)): + vitefu@1.1.3(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)): optionalDependencies: - vite: 8.1.4(jiti@2.7.0) + vite: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) - vitest@4.1.10(vite@8.1.4(jiti@2.7.0)): + vitest@4.1.10(@types/node@26.1.1)(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)): dependencies: '@vitest/expect': 4.1.10 - '@vitest/mocker': 4.1.10(vite@8.1.4(jiti@2.7.0)) + '@vitest/mocker': 4.1.10(vite@8.1.4(@types/node@26.1.1)(jiti@2.7.0)) '@vitest/pretty-format': 4.1.10 '@vitest/runner': 4.1.10 '@vitest/snapshot': 4.1.10 @@ -1878,8 +1894,10 @@ snapshots: tinyexec: 1.2.4 tinyglobby: 0.2.17 tinyrainbow: 3.1.0 - vite: 8.1.4(jiti@2.7.0) + vite: 8.1.4(@types/node@26.1.1)(jiti@2.7.0) why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 26.1.1 transitivePeerDependencies: - msw diff --git a/tsconfig.app.json b/tsconfig.app.json new file mode 100644 index 0000000..5caea17 --- /dev/null +++ b/tsconfig.app.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "target": "es2023", + "module": "esnext", + "lib": ["ES2023", "DOM"], + "types": ["vite/client"], + "allowArbitraryExtensions": true, + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + "jsx": "preserve", + "jsxImportSource": "solid-js", + + /* Linting */ + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/tsconfig.json b/tsconfig.json index 60c95d8..1ffef60 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,21 +1,7 @@ { - "compilerOptions": { - "target": "ES2023", - "module": "ESNext", - "moduleResolution": "bundler", - "lib": ["ES2023", "DOM", "DOM.Iterable"], - "jsx": "preserve", - "jsxImportSource": "solid-js", - "types": ["vite/client"], - "strict": true, - "noUncheckedIndexedAccess": true, - "verbatimModuleSyntax": true, - "isolatedModules": true, - "noEmit": true, - "skipLibCheck": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noFallthroughCasesInSwitch": true - }, - "include": ["src", "vite.config.ts"] + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] } diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 0000000..8455dcb --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "es2023", + "lib": ["ES2023"], + "types": ["node"], + "skipLibCheck": true, + + /* Bundler mode */ + "module": "nodenext", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts index 9dc6527..6bfd6cb 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -13,7 +13,7 @@ export default defineConfig({ plugins: [solid(), tailwindcss()], server: { headers: crossOriginIsolation }, preview: { headers: crossOriginIsolation }, - optimizeDeps: { - exclude: ["@tursodatabase/database-wasm"], - }, + // optimizeDeps: { + // exclude: ["@tursodatabase/database-wasm"], + // }, }); -- 2.51.2