Improved the vite.config
This commit is contained in:
parent
61cb8c8bc3
commit
39071d425e
@ -27,6 +27,8 @@
|
||||
"eslint": "^8.46.0",
|
||||
"eslint-config-prettier": "^8.9.0",
|
||||
"eslint-plugin-svelte": "^2.32.4",
|
||||
"houdini": "^1.2.8",
|
||||
"houdini-svelte": "^1.2.8",
|
||||
"postcss": "^8.4.27",
|
||||
"prettier": "^2.8.8",
|
||||
"prettier-plugin-svelte": "^2.10.1",
|
||||
@ -38,9 +40,7 @@
|
||||
"typescript": "^5.1.6",
|
||||
"vite": "^4.4.7",
|
||||
"vitest": "^0.32.4",
|
||||
"zod": "^3.21.4",
|
||||
"houdini": "^1.2.8",
|
||||
"houdini-svelte": "^1.2.8"
|
||||
"zod": "^3.21.4"
|
||||
},
|
||||
"type": "module",
|
||||
"dependencies": {
|
||||
@ -55,6 +55,7 @@
|
||||
"@sveltejs/vite-plugin-svelte": "^2.4.3",
|
||||
"@wagmi/core": "^1.3.8",
|
||||
"@xstate/svelte": "^2.1.0",
|
||||
"chokidar": "^3.5.3",
|
||||
"viem": "^1.4.2",
|
||||
"xstate": "^4.38.2"
|
||||
}
|
||||
|
17
pnpm-lock.yaml
generated
17
pnpm-lock.yaml
generated
@ -34,6 +34,9 @@ dependencies:
|
||||
'@xstate/svelte':
|
||||
specifier: ^2.1.0
|
||||
version: 2.1.0(svelte@4.1.1)(xstate@4.38.2)
|
||||
chokidar:
|
||||
specifier: ^3.5.3
|
||||
version: 3.5.3
|
||||
viem:
|
||||
specifier: ^1.4.2
|
||||
version: 1.4.2(typescript@5.1.6)(zod@3.21.4)
|
||||
@ -3566,7 +3569,6 @@ packages:
|
||||
dependencies:
|
||||
normalize-path: 3.0.0
|
||||
picomatch: 2.3.1
|
||||
dev: true
|
||||
|
||||
/apg-js@4.1.3:
|
||||
resolution: {integrity: sha512-XYyDcoBho8OpnWPRnedMwyL+76ovCtsESerHZEfY39dO4IrEqN97mdEYkOyHa0XTX5+3+U5FmpqPLttK0f7n6g==}
|
||||
@ -3687,7 +3689,6 @@ packages:
|
||||
/binary-extensions@2.2.0:
|
||||
resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
|
||||
engines: {node: '>=8'}
|
||||
dev: true
|
||||
|
||||
/bind-decorator@1.0.11:
|
||||
resolution: {integrity: sha512-yzkH0uog6Vv/vQ9+rhSKxecnqGUZHYncg7qS7voz3Q76+TAi1SGiOKk2mlOvusQnFz9Dc4BC/NMkeXu11YgjJg==}
|
||||
@ -3760,7 +3761,6 @@ packages:
|
||||
engines: {node: '>=8'}
|
||||
dependencies:
|
||||
fill-range: 7.0.1
|
||||
dev: true
|
||||
|
||||
/brorand@1.1.0:
|
||||
resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
|
||||
@ -3896,7 +3896,6 @@ packages:
|
||||
readdirp: 3.6.0
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.2
|
||||
dev: true
|
||||
|
||||
/cliui@6.0.0:
|
||||
resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==}
|
||||
@ -4602,7 +4601,6 @@ packages:
|
||||
engines: {node: '>=8'}
|
||||
dependencies:
|
||||
to-regex-range: 5.0.1
|
||||
dev: true
|
||||
|
||||
/filter-obj@1.1.0:
|
||||
resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==}
|
||||
@ -4721,7 +4719,6 @@ packages:
|
||||
engines: {node: '>= 6'}
|
||||
dependencies:
|
||||
is-glob: 4.0.3
|
||||
dev: true
|
||||
|
||||
/glob-parent@6.0.2:
|
||||
resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
|
||||
@ -5154,7 +5151,6 @@ packages:
|
||||
engines: {node: '>=8'}
|
||||
dependencies:
|
||||
binary-extensions: 2.2.0
|
||||
dev: true
|
||||
|
||||
/is-callable@1.2.7:
|
||||
resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
|
||||
@ -5173,7 +5169,6 @@ packages:
|
||||
/is-extglob@2.1.1:
|
||||
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/is-fullwidth-code-point@3.0.0:
|
||||
resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
|
||||
@ -5191,7 +5186,6 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dependencies:
|
||||
is-extglob: 2.1.1
|
||||
dev: true
|
||||
|
||||
/is-hex-prefixed@1.0.0:
|
||||
resolution: {integrity: sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==}
|
||||
@ -5216,7 +5210,6 @@ packages:
|
||||
/is-number@7.0.0:
|
||||
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
|
||||
engines: {node: '>=0.12.0'}
|
||||
dev: true
|
||||
|
||||
/is-path-inside@3.0.3:
|
||||
resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
|
||||
@ -5903,7 +5896,6 @@ packages:
|
||||
/normalize-path@3.0.0:
|
||||
resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/normalize-range@0.1.2:
|
||||
resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
|
||||
@ -6104,7 +6096,6 @@ packages:
|
||||
/picomatch@2.3.1:
|
||||
resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
|
||||
engines: {node: '>=8.6'}
|
||||
dev: true
|
||||
|
||||
/pify@2.3.0:
|
||||
resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
|
||||
@ -6515,7 +6506,6 @@ packages:
|
||||
engines: {node: '>=8.10.0'}
|
||||
dependencies:
|
||||
picomatch: 2.3.1
|
||||
dev: true
|
||||
|
||||
/readonly-date@1.0.0:
|
||||
resolution: {integrity: sha512-tMKIV7hlk0h4mO3JTmmVuIlJVXjKk3Sep9Bf5OH0O+758ruuVkUy2J9SttDLm91IEX/WHlXPSpxMGjPj4beMIQ==}
|
||||
@ -7178,7 +7168,6 @@ packages:
|
||||
engines: {node: '>=8.0'}
|
||||
dependencies:
|
||||
is-number: 7.0.0
|
||||
dev: true
|
||||
|
||||
/toggle-selection@1.0.6:
|
||||
resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==}
|
||||
|
@ -1,20 +1,17 @@
|
||||
import houdini from 'houdini/vite'
|
||||
import { sveltekit } from '@sveltejs/kit/vite'
|
||||
|
||||
import { defineConfig } from 'vite'
|
||||
import { sveltekit } from '@sveltejs/kit/vite';
|
||||
import { defineConfig } from 'vite';
|
||||
import * as fs from 'fs';
|
||||
import { resolve } from 'path';
|
||||
|
||||
// Utility function to get all .svelte files from a directory recursively
|
||||
function getRecursiveSvelteFiles(dir) {
|
||||
// Utility function to get all .svelte or .ts files from a directory recursively
|
||||
function getRecursiveFiles(dir, extension) {
|
||||
const dirents = fs.readdirSync(dir, { withFileTypes: true });
|
||||
const files = Array.from(dirents).flatMap((dirent) => {
|
||||
const res = resolve(dir, dirent.name);
|
||||
if (dirent.isDirectory()) {
|
||||
return getRecursiveSvelteFiles(res);
|
||||
} else if (res.endsWith('.svelte')) {
|
||||
return getRecursiveFiles(res, extension);
|
||||
} else if (res.endsWith(extension)) {
|
||||
return [res];
|
||||
} else {
|
||||
return [];
|
||||
@ -23,37 +20,6 @@ function getRecursiveSvelteFiles(dir) {
|
||||
return files;
|
||||
}
|
||||
|
||||
function getRecursiveServiceFiles(dir) {
|
||||
const dirents = fs.readdirSync(dir, { withFileTypes: true });
|
||||
const files = Array.from(dirents).flatMap((dirent) => {
|
||||
const res = resolve(dir, dirent.name);
|
||||
if (dirent.isDirectory()) {
|
||||
return getRecursiveServiceFiles(res);
|
||||
} else if (res.endsWith('.ts')) {
|
||||
return [res];
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
});
|
||||
return files;
|
||||
}
|
||||
|
||||
function getRecursiveDataFiles(dir) {
|
||||
const dirents = fs.readdirSync(dir, { withFileTypes: true });
|
||||
const files = Array.from(dirents).flatMap((dirent) => {
|
||||
const res = resolve(dir, dirent.name);
|
||||
if (dirent.isDirectory()) {
|
||||
return getRecursiveDataFiles(res);
|
||||
} else if (res.endsWith('.ts')) {
|
||||
return [res];
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
});
|
||||
return files;
|
||||
}
|
||||
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [
|
||||
houdini(),
|
||||
@ -67,7 +33,7 @@ export default defineConfig({
|
||||
load(id) {
|
||||
if (id === 'virtual:components-list') {
|
||||
const componentsDir = resolve(__dirname, 'src/lib/components');
|
||||
const componentsFiles = getRecursiveSvelteFiles(componentsDir);
|
||||
const componentsFiles = getRecursiveFiles(componentsDir, '.svelte');
|
||||
|
||||
const components = componentsFiles.map(file =>
|
||||
file
|
||||
@ -91,7 +57,7 @@ export default defineConfig({
|
||||
load(id) {
|
||||
if (id === 'virtual:services-list') {
|
||||
const servicesDir = resolve(__dirname, 'src/lib/services');
|
||||
const serviceFiles = getRecursiveServiceFiles(servicesDir);
|
||||
const serviceFiles = getRecursiveFiles(servicesDir, '.ts');
|
||||
|
||||
const services = serviceFiles.map(file =>
|
||||
file
|
||||
@ -115,7 +81,7 @@ export default defineConfig({
|
||||
load(id) {
|
||||
if (id === 'virtual:data-sources-list') {
|
||||
const dataDir = resolve(__dirname, 'src/lib/data');
|
||||
const dataFiles = getRecursiveServiceFiles(dataDir); // Use the same function as before
|
||||
const dataFiles = getRecursiveFiles(dataDir, '.ts'); // Use the same function as before
|
||||
|
||||
const dataSources = dataFiles.map(file =>
|
||||
file
|
||||
@ -135,3 +101,4 @@ export default defineConfig({
|
||||
include: ['src/**/*.{test,spec}.{js,ts}']
|
||||
}
|
||||
});
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user