diff --git a/apps/www/package.json b/apps/www/package.json index 2bbf90a2..4993cd02 100644 --- a/apps/www/package.json +++ b/apps/www/package.json @@ -9,8 +9,9 @@ "dev": "vitepress dev", "build": "vitepress build", "preview": "vitepress preview", - "vue-tsc": "vue-tsc --noEmit", - "build:registry": "tsx ./scripts/build-registry.ts" + "typecheck": "vue-tsc --noEmit", + "typecheck:registry": "vue-tsc --noEmit -p tsconfig.registry.json", + "build:registry": "typecheck:registry && tsx ./scripts/build-registry.ts" }, "dependencies": { "@formkit/auto-animate": "^0.8.0", @@ -46,6 +47,7 @@ "@vitejs/plugin-vue-jsx": "^3.0.2", "@vue/compiler-core": "^3.3.7", "@vue/compiler-dom": "^3.3.7", + "@vue/tsconfig": "^0.4.0", "autoprefixer": "^10.4.16", "lodash.template": "^4.5.0", "pathe": "^1.1.1", diff --git a/apps/www/tsconfig.json b/apps/www/tsconfig.json index a7a93c78..7371e775 100644 --- a/apps/www/tsconfig.json +++ b/apps/www/tsconfig.json @@ -1,23 +1,17 @@ { + "extends": "@vue/tsconfig/tsconfig.dom.json", "compilerOptions": { - "target": "esnext", - "lib": ["esnext", "dom"], - "jsx": "preserve", - "module": "esnext", - "moduleResolution": "node", + "lib": ["ESNext", "DOM", "DOM.Iterable"], + "moduleResolution": "Node", "baseUrl": ".", "paths": { "@/*": ["./src/*"] }, "types": ["unplugin-icons/types/vue", "node"], - "resolveJsonModule": true, "declaration": false, "sourceMap": true, - "outDir": "dist", - "esModuleInterop": true, - "strict": true, - "skipLibCheck": true + "outDir": "dist" }, - "include": ["/**/*.vue", "src", ".vitepress/**/*.vue", "/**/*.ts", ".vitepress/**/*.mts", ".vitepress/**/*.vue", "src/lib/**/*"], + "include": ["src", ".vitepress/**/*.vue", ".vitepress/**/*.mts", ".vitepress/**/*.vue", "src/lib/**/*"], "exclude": ["node_modules", "./scripts/build-registry.ts"] } diff --git a/apps/www/tsconfig.registry.json b/apps/www/tsconfig.registry.json new file mode 100644 index 00000000..d89c8b4a --- /dev/null +++ b/apps/www/tsconfig.registry.json @@ -0,0 +1,13 @@ +{ + "extends": "@vue/tsconfig/tsconfig.json", + "compilerOptions": { + "moduleResolution": "Node", + "baseUrl": ".", + "paths": { + "@/*": ["./src/*"] + }, + "declaration": false + }, + "include": ["src/lib/**/*"], + "exclude": ["node_modules", "src/lib/registry/**/example/**/*"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9c31e8f0..a2a3300c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -138,12 +138,18 @@ importers: '@vue/compiler-dom': specifier: ^3.3.7 version: 3.3.7 + '@vue/tsconfig': + specifier: ^0.4.0 + version: 0.4.0 autoprefixer: specifier: ^10.4.16 version: 10.4.16(postcss@8.4.31) lodash.template: specifier: ^4.5.0 version: 4.5.0 + pathe: + specifier: ^1.1.1 + version: 1.1.1 rimraf: specifier: ^5.0.5 version: 5.0.5 @@ -2860,6 +2866,10 @@ packages: /@vue/shared@3.3.7: resolution: {integrity: sha512-N/tbkINRUDExgcPTBvxNkvHGu504k8lzlNQRITVnm6YjOjwa4r0nnbd4Jb01sNpur5hAllyRJzSK5PvB9PPwRg==} + /@vue/tsconfig@0.4.0: + resolution: {integrity: sha512-CPuIReonid9+zOG/CGTT05FXrPYATEqoDGNrEaqS4hwcw5BUNM2FguC0mOwJD4Jr16UpRVl9N0pY3P+srIbqmg==} + dev: true + /@vuedx/compiler-sfc@0.7.1: resolution: {integrity: sha512-M+j3COLqmTFgtsDOJEeeijUFCk7FF8x7vQsdORPPxipZF1S2vPvlcLg1bKVE6NF4wh7Gaq9Wvwv0zPi87pWRVA==} dependencies: