diff --git a/packages/api/package.json b/packages/api/package.json index 89067c9ca2..f5207b86a6 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -26,10 +26,10 @@ "@typescript/native-preview": "^7.0.0-dev.20260309.1", "rollup-plugin-visualizer": "^6.0.5", "typescript-strict-plugin": "^2.4.4", - "vite": "^7.3.1", + "vite": "^8.0.0", "vite-plugin-dts": "^4.5.4", "vite-plugin-peggy-loader": "^2.0.1", - "vitest": "^4.0.18" + "vitest": "^4.1.0" }, "engines": { "node": ">=20" diff --git a/packages/ci-actions/package.json b/packages/ci-actions/package.json index d736175e71..4b206ccabd 100644 --- a/packages/ci-actions/package.json +++ b/packages/ci-actions/package.json @@ -10,7 +10,7 @@ "devDependencies": { "@typescript/native-preview": "^7.0.0-dev.20260309.1", "extensionless": "^2.0.6", - "vitest": "^4.0.18" + "vitest": "^4.1.0" }, "extensionless": { "lookFor": [ diff --git a/packages/component-library/.storybook/main.ts b/packages/component-library/.storybook/main.ts index 5a5fece876..53dd92cd27 100644 --- a/packages/component-library/.storybook/main.ts +++ b/packages/component-library/.storybook/main.ts @@ -2,7 +2,7 @@ import { dirname } from 'path'; import { fileURLToPath } from 'url'; import type { StorybookConfig } from '@storybook/react-vite'; -import viteTsconfigPaths from 'vite-tsconfig-paths'; +import react from '@vitejs/plugin-react'; /** * This function is used to resolve the absolute path of a package. @@ -32,11 +32,9 @@ const config: StorybookConfig = { const { mergeConfig } = await import('vite'); return mergeConfig(config, { - // Telling Vite how to resolve path aliases - plugins: [viteTsconfigPaths({ root: '../..' })], - esbuild: { - // Needed to handle JSX in .ts/.tsx files - jsx: 'automatic', + plugins: [react()], + resolve: { + tsconfigPaths: true, }, }); }, diff --git a/packages/component-library/package.json b/packages/component-library/package.json index 13b698a1bb..ced0284587 100644 --- a/packages/component-library/package.json +++ b/packages/component-library/package.json @@ -55,12 +55,13 @@ "@svgr/cli": "^8.1.0", "@types/react": "^19.2.5", "@typescript/native-preview": "^7.0.0-dev.20260309.1", + "@vitejs/plugin-react": "^6.0.0", "eslint-plugin-storybook": "^10.2.7", "react": "19.2.4", "react-dom": "19.2.4", "storybook": "^10.2.7", - "vite-tsconfig-paths": "^5.1.4", - "vitest": "^4.0.18" + "vite": "^8.0.0", + "vitest": "^4.1.0" }, "peerDependencies": { "react": ">=19.2", diff --git a/packages/component-library/vitest.web.config.ts b/packages/component-library/vitest.web.config.ts index 687ca7eaa3..89961ef3b6 100644 --- a/packages/component-library/vitest.web.config.ts +++ b/packages/component-library/vitest.web.config.ts @@ -1,5 +1,6 @@ import path from 'path'; +import react from '@vitejs/plugin-react'; import peggyLoader from 'vite-plugin-peggy-loader'; import { defineConfig } from 'vitest/config'; @@ -25,5 +26,5 @@ export default defineConfig({ resolve: { extensions: resolveExtensions, }, - plugins: [peggyLoader()], + plugins: [react(), peggyLoader()], }); diff --git a/packages/crdt/package.json b/packages/crdt/package.json index d563dd9b89..8be50b085a 100644 --- a/packages/crdt/package.json +++ b/packages/crdt/package.json @@ -36,6 +36,6 @@ "@typescript/native-preview": "^7.0.0-dev.20260309.1", "protoc-gen-js": "3.21.4-4", "ts-protoc-gen": "0.15.0", - "vitest": "^4.0.18" + "vitest": "^4.1.0" } } diff --git a/packages/desktop-client/package.json b/packages/desktop-client/package.json index 6804493e53..bb88e1b0a7 100644 --- a/packages/desktop-client/package.json +++ b/packages/desktop-client/package.json @@ -21,6 +21,7 @@ "devDependencies": { "@actual-app/components": "workspace:*", "@actual-app/core": "workspace:*", + "@babel/core": "^7.29.0", "@codemirror/autocomplete": "^6.20.0", "@codemirror/lang-javascript": "^6.2.4", "@codemirror/language": "^6.12.1", @@ -32,6 +33,7 @@ "@juggle/resize-observer": "^3.4.0", "@lezer/highlight": "^1.2.3", "@playwright/test": "1.58.2", + "@rolldown/plugin-babel": "~0.1.7", "@rollup/plugin-inject": "^5.0.5", "@swc/core": "^1.15.11", "@swc/helpers": "^0.5.18", @@ -49,8 +51,8 @@ "@typescript/native-preview": "^7.0.0-dev.20260309.1", "@uiw/react-codemirror": "^4.25.4", "@use-gesture/react": "^10.3.1", - "@vitejs/plugin-basic-ssl": "^2.1.4", - "@vitejs/plugin-react": "^5.1.3", + "@vitejs/plugin-basic-ssl": "^2.2.0", + "@vitejs/plugin-react": "^6.0.0", "auto-text-size": "^0.2.3", "babel-plugin-react-compiler": "^1.0.0", "cmdk": "^1.1.1", @@ -95,9 +97,9 @@ "typescript-strict-plugin": "^2.4.4", "usehooks-ts": "^3.1.1", "uuid": "^13.0.0", - "vite": "^7.3.1", + "vite": "^8.0.0", "vite-plugin-pwa": "^1.2.0", - "vitest": "^4.0.18", + "vitest": "^4.1.0", "xml2js": "^0.6.2" } } diff --git a/packages/desktop-client/src/components/transactions/TransactionsTable.test.tsx b/packages/desktop-client/src/components/transactions/TransactionsTable.test.tsx index 7ceda0b5da..582a01b6ca 100644 --- a/packages/desktop-client/src/components/transactions/TransactionsTable.test.tsx +++ b/packages/desktop-client/src/components/transactions/TransactionsTable.test.tsx @@ -39,14 +39,11 @@ import { payeeQueries } from '@desktop-client/payees'; const queryClient = createTestQueryClient(); vi.mock('loot-core/platform/client/connection'); -vi.mock('../../hooks/useFeatureFlag', () => ({ - default: vi.fn().mockReturnValue(false), -})); vi.mock('../../hooks/useSyncedPref', () => ({ useSyncedPref: vi.fn().mockReturnValue([undefined, vi.fn()]), })); vi.mock('../../hooks/useFeatureFlag', () => ({ - useFeatureFlag: () => false, + useFeatureFlag: vi.fn(() => false), })); const accounts = [generateAccount('Bank of America')]; diff --git a/packages/desktop-client/tsconfig.json b/packages/desktop-client/tsconfig.json index 519b45b7f6..69f934e91f 100644 --- a/packages/desktop-client/tsconfig.json +++ b/packages/desktop-client/tsconfig.json @@ -8,7 +8,7 @@ "strict": false, // TODO: fix issues and remove this "emitDeclarationOnly": true, "outDir": "build/ts", - "rootDir": "src", + "rootDir": ".", "tsBuildInfoFile": "build/ts/.tsbuildinfo", "paths": { // TODO: remove and replace with imports from "@actual-app/core" @@ -22,7 +22,7 @@ { "path": "../loot-core" }, { "path": "../component-library" } ], - "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.js"], + "include": ["**/*.ts", "src/**/*.tsx", "src/**/*.js"], "exclude": [ "node_modules", "build", diff --git a/packages/desktop-client/vite.config.mts b/packages/desktop-client/vite.config.ts similarity index 80% rename from packages/desktop-client/vite.config.mts rename to packages/desktop-client/vite.config.ts index 492a9ee38f..890790a3d4 100644 --- a/packages/desktop-client/vite.config.mts +++ b/packages/desktop-client/vite.config.ts @@ -1,10 +1,11 @@ import * as path from 'path'; import { fileURLToPath } from 'url'; +import babel from '@rolldown/plugin-babel'; import inject from '@rollup/plugin-inject'; import basicSsl from '@vitejs/plugin-basic-ssl'; -import react from '@vitejs/plugin-react'; -import type { PreRenderedAsset } from 'rollup'; +import react, { reactCompilerPreset } from '@vitejs/plugin-react'; +import type { PreRenderedAsset } from 'rolldown'; import { visualizer } from 'rollup-plugin-visualizer'; /// import { defineConfig, loadEnv } from 'vite'; @@ -12,6 +13,12 @@ import type { Plugin } from 'vite'; import { VitePWA } from 'vite-plugin-pwa'; const __dirname = path.dirname(fileURLToPath(import.meta.url)); +const reactCompilerInclude = new RegExp( + `^${path + .resolve(__dirname, 'src') + .replaceAll(path.sep, '/') + .replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}/.*\\.[jt]sx$`, +); const addWatchers = (): Plugin => ({ name: 'add-watchers', @@ -29,41 +36,67 @@ const addWatchers = (): Plugin => ({ }, }); +const injectPlugin = (options?: Parameters[0]): Plugin => { + // Rollup plugins are currently slightly API-incompatible with Rolldown plugins, but not in a way that prevents them from working here. + return inject(options) as unknown as Plugin; +}; + // Inject build shims using the inject plugin const injectShims = (): Plugin[] => { const buildShims = path.resolve('./src/build-shims.js'); - const commonInject = { + const serveInject: { + exclude: string[]; + global: [string, string]; + } = { exclude: ['src/setupTests.ts'], global: [buildShims, 'global'], }; + const buildInject: { + global: [string, string]; + } = { + global: [buildShims, 'global'], + }; return [ { - name: 'inject-build-process', + name: 'define-build-process', config: () => ({ // rename process.env in build mode so it doesn't get set to an empty object up by the vite:define plugin // this isn't needed in serve mode, because vite:define doesn't empty it in serve mode. And defines also happen last anyways in serve mode. - define: { - 'process.env': `_process.env`, + environments: { + client: { + define: { + 'process.env': '_process.env', + }, + }, }, }), apply: 'build', }, { - ...inject({ - ...commonInject, - process: [buildShims, 'process'], - }), enforce: 'post', apply: 'serve', + ...injectPlugin({ + ...serveInject, + process: [buildShims, 'process'], + }), }, { - ...inject({ - ...commonInject, - _process: [buildShims, 'process'], - }), + name: 'inject-build-process', enforce: 'post', apply: 'build', + config: () => ({ + build: { + rolldownOptions: { + transform: { + inject: { + ...buildInject, + _process: [buildShims, 'process'], + }, + }, + }, + }, + }), }, ]; }; @@ -120,7 +153,7 @@ export default defineConfig(async ({ mode }) => { manifest: true, assetsInlineLimit: 0, chunkSizeWarningLimit: 1500, - rollupOptions: { + rolldownOptions: { output: { assetFileNames: (assetInfo: PreRenderedAsset) => { const info = assetInfo.name?.split('.') ?? []; @@ -160,6 +193,7 @@ export default defineConfig(async ({ mode }) => { ...(!env.IS_GENERIC_BROWSER && { conditions: ['electron', 'module', 'browser', 'default'], }), + tsconfigPaths: true, }, plugins: [ // electron (desktop) builds do not support PWA @@ -208,11 +242,11 @@ export default defineConfig(async ({ mode }) => { }), injectShims(), addWatchers(), - react({ - babel: { - // n.b. Must be a string to ensure plugin resolution order. See https://github.com/actualbudget/actual/pull/5853 - plugins: ['babel-plugin-react-compiler'], - }, + react(), + babel({ + include: [reactCompilerInclude], + // n.b. Must be a string to ensure plugin resolution order. See https://github.com/actualbudget/actual/pull/5853 + presets: [reactCompilerPreset()], }), visualizer({ template: 'raw-data' }), !!env.HTTPS && basicSsl(), diff --git a/packages/eslint-plugin-actual/package.json b/packages/eslint-plugin-actual/package.json index 320b3b4b21..bbe634d5e0 100644 --- a/packages/eslint-plugin-actual/package.json +++ b/packages/eslint-plugin-actual/package.json @@ -15,6 +15,6 @@ "loupe": "^3.2.1", "strip-literal": "^3.1.0", "tinyspy": "^4.0.4", - "vitest": "^4.0.18" + "vitest": "^4.1.0" } } diff --git a/packages/loot-core/package.json b/packages/loot-core/package.json index e54c531cfb..0c7126063e 100644 --- a/packages/loot-core/package.json +++ b/packages/loot-core/package.json @@ -113,6 +113,7 @@ "browserify-zlib": "^0.2.0", "buffer": "^6.0.3", "cross-env": "^10.1.0", + "crypto-browserify": "^3.12.1", "fake-indexeddb": "^6.2.5", "fast-check": "4.5.3", "i18next": "^25.8.4", @@ -124,11 +125,13 @@ "peggy": "5.0.6", "rollup-plugin-visualizer": "^6.0.5", "stream-browserify": "^3.0.0", + "timers-browserify": "^2.0.12", "ts-node": "^10.9.2", - "vite": "^7.3.1", + "util": "^0.12.5", + "vite": "^8.0.0", "vite-plugin-node-polyfills": "^0.25.0", "vite-plugin-peggy-loader": "^2.0.1", - "vitest": "^4.0.18", + "vitest": "^4.1.0", "yargs": "^18.0.0" } } diff --git a/packages/loot-core/vite.config.ts b/packages/loot-core/vite.config.ts index e49c7589ed..d999307624 100644 --- a/packages/loot-core/vite.config.ts +++ b/packages/loot-core/vite.config.ts @@ -24,7 +24,7 @@ export default defineConfig(({ mode }) => { fileName: () => isDev ? 'kcab.worker.dev.js' : `kcab.worker.[hash].js`, }, - rollupOptions: { + rolldownOptions: { onwarn(warning, warn) { // Suppress sourcemap warnings from peggy-loader if ( @@ -76,6 +76,9 @@ export default defineConfig(({ mode }) => { 'process', 'stream', 'path', + 'crypto', + 'timers', + 'util', 'zlib', 'fs', 'assert', @@ -93,8 +96,11 @@ export default defineConfig(({ mode }) => { 'buffer', 'process', 'assert', + 'crypto-browserify', 'path-browserify', 'stream-browserify', + 'timers-browserify', + 'util', 'browserify-zlib', ], }, diff --git a/packages/loot-core/vite.desktop.config.ts b/packages/loot-core/vite.desktop.config.ts index f6f34b6141..d4aa03c4ec 100644 --- a/packages/loot-core/vite.desktop.config.ts +++ b/packages/loot-core/vite.desktop.config.ts @@ -20,7 +20,7 @@ export default defineConfig(({ mode }) => { formats: ['cjs'], }, sourcemap: true, - rollupOptions: { + rolldownOptions: { output: { entryFileNames: 'bundle.desktop.js', format: 'cjs', diff --git a/packages/plugins-service/package.json b/packages/plugins-service/package.json index 3e88d296d3..d74156bc06 100644 --- a/packages/plugins-service/package.json +++ b/packages/plugins-service/package.json @@ -19,6 +19,6 @@ "@typescript/native-preview": "^7.0.0-dev.20260309.1", "cross-env": "^10.1.0", "typescript-strict-plugin": "^2.4.4", - "vite": "^7.3.1" + "vite": "^8.0.0" } } diff --git a/packages/sync-server/package.json b/packages/sync-server/package.json index a05128a11a..4f3815c5d2 100644 --- a/packages/sync-server/package.json +++ b/packages/sync-server/package.json @@ -66,6 +66,6 @@ "nodemon": "^3.1.11", "supertest": "^7.2.2", "typescript-strict-plugin": "^2.4.4", - "vitest": "^4.0.18" + "vitest": "^4.1.0" } } diff --git a/upcoming-release-notes/7184.md b/upcoming-release-notes/7184.md new file mode 100644 index 0000000000..546a81b3d0 --- /dev/null +++ b/upcoming-release-notes/7184.md @@ -0,0 +1,6 @@ +--- +category: Maintenance +authors: [jfdoming] +--- + +Upgrade to Vite 8 diff --git a/yarn.lock b/yarn.lock index bcd52e9783..56fba85362 100644 --- a/yarn.lock +++ b/yarn.lock @@ -32,10 +32,10 @@ __metadata: rollup-plugin-visualizer: "npm:^6.0.5" typescript-strict-plugin: "npm:^2.4.4" uuid: "npm:^13.0.0" - vite: "npm:^7.3.1" + vite: "npm:^8.0.0" vite-plugin-dts: "npm:^4.5.4" vite-plugin-peggy-loader: "npm:^2.0.1" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" languageName: unknown linkType: soft @@ -45,7 +45,7 @@ __metadata: dependencies: "@typescript/native-preview": "npm:^7.0.0-dev.20260309.1" extensionless: "npm:^2.0.6" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" languageName: unknown linkType: soft @@ -61,14 +61,15 @@ __metadata: "@svgr/cli": "npm:^8.1.0" "@types/react": "npm:^19.2.5" "@typescript/native-preview": "npm:^7.0.0-dev.20260309.1" + "@vitejs/plugin-react": "npm:^6.0.0" eslint-plugin-storybook: "npm:^10.2.7" react: "npm:19.2.4" react-aria-components: "npm:^1.15.1" react-dom: "npm:19.2.4" storybook: "npm:^10.2.7" usehooks-ts: "npm:^3.1.1" - vite-tsconfig-paths: "npm:^5.1.4" - vitest: "npm:^4.0.18" + vite: "npm:^8.0.0" + vitest: "npm:^4.1.0" peerDependencies: react: ">=19.2" react-dom: ">=19.2" @@ -100,6 +101,7 @@ __metadata: browserify-zlib: "npm:^0.2.0" buffer: "npm:^6.0.3" cross-env: "npm:^10.1.0" + crypto-browserify: "npm:^3.12.1" csv-parse: "npm:^6.1.0" csv-stringify: "npm:^6.6.0" date-fns: "npm:^4.1.0" @@ -121,14 +123,16 @@ __metadata: rollup-plugin-visualizer: "npm:^6.0.5" slash: "npm:5.1.0" stream-browserify: "npm:^3.0.0" + timers-browserify: "npm:^2.0.12" ts-node: "npm:^10.9.2" typescript-strict-plugin: "npm:^2.4.4" ua-parser-js: "npm:^2.0.9" + util: "npm:^0.12.5" uuid: "npm:^13.0.0" - vite: "npm:^7.3.1" + vite: "npm:^8.0.0" vite-plugin-node-polyfills: "npm:^0.25.0" vite-plugin-peggy-loader: "npm:^2.0.1" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" yargs: "npm:^18.0.0" languageName: unknown linkType: soft @@ -155,7 +159,7 @@ __metadata: protoc-gen-js: "npm:3.21.4-4" ts-protoc-gen: "npm:0.15.0" uuid: "npm:^13.0.0" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" languageName: unknown linkType: soft @@ -197,7 +201,7 @@ __metadata: supertest: "npm:^7.2.2" typescript-strict-plugin: "npm:^2.4.4" uuid: "npm:^13.0.0" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" winston: "npm:^3.19.0" bin: actual-server: ./build/bin/actual-server.js @@ -210,6 +214,7 @@ __metadata: dependencies: "@actual-app/components": "workspace:*" "@actual-app/core": "workspace:*" + "@babel/core": "npm:^7.29.0" "@codemirror/autocomplete": "npm:^6.20.0" "@codemirror/lang-javascript": "npm:^6.2.4" "@codemirror/language": "npm:^6.12.1" @@ -221,6 +226,7 @@ __metadata: "@juggle/resize-observer": "npm:^3.4.0" "@lezer/highlight": "npm:^1.2.3" "@playwright/test": "npm:1.58.2" + "@rolldown/plugin-babel": "npm:~0.1.7" "@rollup/plugin-inject": "npm:^5.0.5" "@swc/core": "npm:^1.15.11" "@swc/helpers": "npm:^0.5.18" @@ -238,8 +244,8 @@ __metadata: "@typescript/native-preview": "npm:^7.0.0-dev.20260309.1" "@uiw/react-codemirror": "npm:^4.25.4" "@use-gesture/react": "npm:^10.3.1" - "@vitejs/plugin-basic-ssl": "npm:^2.1.4" - "@vitejs/plugin-react": "npm:^5.1.3" + "@vitejs/plugin-basic-ssl": "npm:^2.2.0" + "@vitejs/plugin-react": "npm:^6.0.0" auto-text-size: "npm:^0.2.3" babel-plugin-react-compiler: "npm:^1.0.0" cmdk: "npm:^1.1.1" @@ -284,9 +290,9 @@ __metadata: typescript-strict-plugin: "npm:^2.4.4" usehooks-ts: "npm:^3.1.1" uuid: "npm:^13.0.0" - vite: "npm:^7.3.1" + vite: "npm:^8.0.0" vite-plugin-pwa: "npm:^1.2.0" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" xml2js: "npm:^0.6.2" languageName: unknown linkType: soft @@ -1673,28 +1679,6 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/plugin-transform-react-jsx-self@npm:7.27.1" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.27.1" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/72cbae66a58c6c36f7e12e8ed79f292192d858dd4bb00e9e89d8b695e4c5cb6ef48eec84bffff421a5db93fd10412c581f1cccdb00264065df76f121995bdb68 - languageName: node - linkType: hard - -"@babel/plugin-transform-react-jsx-source@npm:^7.27.1": - version: 7.27.1 - resolution: "@babel/plugin-transform-react-jsx-source@npm:7.27.1" - dependencies: - "@babel/helper-plugin-utils": "npm:^7.27.1" - peerDependencies: - "@babel/core": ^7.0.0-0 - checksum: 10/e2843362adb53692be5ee9fa07a386d2d8883daad2063a3575b3c373fc14cdf4ea7978c67a183cb631b4c9c8d77b2f48c24c088f8e65cc3600cb8e97d72a7161 - languageName: node - linkType: hard - "@babel/plugin-transform-react-jsx@npm:^7.27.1": version: 7.27.1 resolution: "@babel/plugin-transform-react-jsx@npm:7.27.1" @@ -3966,13 +3950,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/aix-ppc64@npm:0.27.4" - conditions: os=aix & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/android-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/android-arm64@npm:0.25.10" @@ -3987,13 +3964,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/android-arm64@npm:0.27.4" - conditions: os=android & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/android-arm@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/android-arm@npm:0.25.10" @@ -4008,13 +3978,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/android-arm@npm:0.27.4" - conditions: os=android & cpu=arm - languageName: node - linkType: hard - "@esbuild/android-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/android-x64@npm:0.25.10" @@ -4029,13 +3992,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/android-x64@npm:0.27.4" - conditions: os=android & cpu=x64 - languageName: node - linkType: hard - "@esbuild/darwin-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/darwin-arm64@npm:0.25.10" @@ -4050,13 +4006,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/darwin-arm64@npm:0.27.4" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/darwin-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/darwin-x64@npm:0.25.10" @@ -4071,13 +4020,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/darwin-x64@npm:0.27.4" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - "@esbuild/freebsd-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/freebsd-arm64@npm:0.25.10" @@ -4092,13 +4034,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/freebsd-arm64@npm:0.27.4" - conditions: os=freebsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/freebsd-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/freebsd-x64@npm:0.25.10" @@ -4113,13 +4048,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/freebsd-x64@npm:0.27.4" - conditions: os=freebsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/linux-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-arm64@npm:0.25.10" @@ -4134,13 +4062,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-arm64@npm:0.27.4" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/linux-arm@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-arm@npm:0.25.10" @@ -4155,13 +4076,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-arm@npm:0.27.4" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - "@esbuild/linux-ia32@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-ia32@npm:0.25.10" @@ -4176,13 +4090,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-ia32@npm:0.27.4" - conditions: os=linux & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/linux-loong64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-loong64@npm:0.25.10" @@ -4197,13 +4104,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-loong64@npm:0.27.4" - conditions: os=linux & cpu=loong64 - languageName: node - linkType: hard - "@esbuild/linux-mips64el@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-mips64el@npm:0.25.10" @@ -4218,13 +4118,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-mips64el@npm:0.27.4" - conditions: os=linux & cpu=mips64el - languageName: node - linkType: hard - "@esbuild/linux-ppc64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-ppc64@npm:0.25.10" @@ -4239,13 +4132,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-ppc64@npm:0.27.4" - conditions: os=linux & cpu=ppc64 - languageName: node - linkType: hard - "@esbuild/linux-riscv64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-riscv64@npm:0.25.10" @@ -4260,13 +4146,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-riscv64@npm:0.27.4" - conditions: os=linux & cpu=riscv64 - languageName: node - linkType: hard - "@esbuild/linux-s390x@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-s390x@npm:0.25.10" @@ -4281,13 +4160,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-s390x@npm:0.27.4" - conditions: os=linux & cpu=s390x - languageName: node - linkType: hard - "@esbuild/linux-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/linux-x64@npm:0.25.10" @@ -4302,13 +4174,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/linux-x64@npm:0.27.4" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - "@esbuild/netbsd-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/netbsd-arm64@npm:0.25.10" @@ -4323,13 +4188,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/netbsd-arm64@npm:0.27.4" - conditions: os=netbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/netbsd-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/netbsd-x64@npm:0.25.10" @@ -4344,13 +4202,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/netbsd-x64@npm:0.27.4" - conditions: os=netbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/openbsd-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/openbsd-arm64@npm:0.25.10" @@ -4365,13 +4216,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/openbsd-arm64@npm:0.27.4" - conditions: os=openbsd & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/openbsd-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/openbsd-x64@npm:0.25.10" @@ -4386,13 +4230,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/openbsd-x64@npm:0.27.4" - conditions: os=openbsd & cpu=x64 - languageName: node - linkType: hard - "@esbuild/openharmony-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/openharmony-arm64@npm:0.25.10" @@ -4407,13 +4244,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/openharmony-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/openharmony-arm64@npm:0.27.4" - conditions: os=openharmony & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/sunos-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/sunos-x64@npm:0.25.10" @@ -4428,13 +4258,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/sunos-x64@npm:0.27.4" - conditions: os=sunos & cpu=x64 - languageName: node - linkType: hard - "@esbuild/win32-arm64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/win32-arm64@npm:0.25.10" @@ -4449,13 +4272,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/win32-arm64@npm:0.27.4" - conditions: os=win32 & cpu=arm64 - languageName: node - linkType: hard - "@esbuild/win32-ia32@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/win32-ia32@npm:0.25.10" @@ -4470,13 +4286,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/win32-ia32@npm:0.27.4" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - "@esbuild/win32-x64@npm:0.25.10": version: 0.25.10 resolution: "@esbuild/win32-x64@npm:0.25.10" @@ -4491,13 +4300,6 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.27.4": - version: 0.27.4 - resolution: "@esbuild/win32-x64@npm:0.27.4" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@eslint-community/eslint-utils@npm:^4.7.0, @eslint-community/eslint-utils@npm:^4.8.0, @eslint-community/eslint-utils@npm:^4.9.1": version: 4.9.1 resolution: "@eslint-community/eslint-utils@npm:4.9.1" @@ -8376,10 +8178,26 @@ __metadata: languageName: node linkType: hard -"@rolldown/pluginutils@npm:1.0.0-rc.3": - version: 1.0.0-rc.3 - resolution: "@rolldown/pluginutils@npm:1.0.0-rc.3" - checksum: 10/b181a693b70e0e5de736458d46b31f72862cd7f36f955656f61ccbf4de11d9206bc3b55404317a65e5714559490444e9fdd83b4097706496e96b082fb584d049 +"@rolldown/plugin-babel@npm:~0.1.7": + version: 0.1.8 + resolution: "@rolldown/plugin-babel@npm:0.1.8" + dependencies: + picomatch: "npm:^4.0.3" + peerDependencies: + "@babel/core": ^7.29.0 || ^8.0.0-rc.1 + rolldown: ^1.0.0-rc.5 + vite: ^8.0.0 + peerDependenciesMeta: + vite: + optional: true + checksum: 10/7d2bdf18b081f37b1d8b800c7237a12f2c70e8449006a250b245c2b4969362aa205e7b586e1348870e1e06e656a98923eee7e24441b3602d24b28dc589dd7bf2 + languageName: node + linkType: hard + +"@rolldown/pluginutils@npm:1.0.0-rc.7": + version: 1.0.0-rc.7 + resolution: "@rolldown/pluginutils@npm:1.0.0-rc.7" + checksum: 10/92853a53b75d665da0b4cc3f855c87e606dda6b8d55e929fd08b4428b68ea833afbb140ba25c6c1f9856a739e419fd2929ef15ac0fd05b44e904705be34efe1f languageName: node linkType: hard @@ -11004,7 +10822,7 @@ __metadata: languageName: node linkType: hard -"@vitejs/plugin-basic-ssl@npm:^2.1.4": +"@vitejs/plugin-basic-ssl@npm:^2.2.0": version: 2.2.0 resolution: "@vitejs/plugin-basic-ssl@npm:2.2.0" peerDependencies: @@ -11013,19 +10831,21 @@ __metadata: languageName: node linkType: hard -"@vitejs/plugin-react@npm:^5.1.3": - version: 5.2.0 - resolution: "@vitejs/plugin-react@npm:5.2.0" +"@vitejs/plugin-react@npm:^6.0.0": + version: 6.0.0 + resolution: "@vitejs/plugin-react@npm:6.0.0" dependencies: - "@babel/core": "npm:^7.29.0" - "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1" - "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1" - "@rolldown/pluginutils": "npm:1.0.0-rc.3" - "@types/babel__core": "npm:^7.20.5" - react-refresh: "npm:^0.18.0" + "@rolldown/pluginutils": "npm:1.0.0-rc.7" peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10/f4c98e084d053227fae80358fc33641e4a143daa9528c8f821ac7ce7eabe27329616c3a9efbe5b1a87ea131a5ad21e26a0ab355685727ec7bb65d244266250ee + "@rolldown/plugin-babel": ^0.1.7 + babel-plugin-react-compiler: ^1.0.0 + vite: ^8.0.0 + peerDependenciesMeta: + "@rolldown/plugin-babel": + optional: true + babel-plugin-react-compiler: + optional: true + checksum: 10/1178596e1c696818a0f06c07a9fccfb86381d0ea8c0f5dab691ae52f5a14e83b68304023fdb966c5fdd2d6f8dfd5fe9113164570d319070eaac4c672d6967ff2 languageName: node linkType: hard @@ -16199,95 +16019,6 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.27.0": - version: 0.27.4 - resolution: "esbuild@npm:0.27.4" - dependencies: - "@esbuild/aix-ppc64": "npm:0.27.4" - "@esbuild/android-arm": "npm:0.27.4" - "@esbuild/android-arm64": "npm:0.27.4" - "@esbuild/android-x64": "npm:0.27.4" - "@esbuild/darwin-arm64": "npm:0.27.4" - "@esbuild/darwin-x64": "npm:0.27.4" - "@esbuild/freebsd-arm64": "npm:0.27.4" - "@esbuild/freebsd-x64": "npm:0.27.4" - "@esbuild/linux-arm": "npm:0.27.4" - "@esbuild/linux-arm64": "npm:0.27.4" - "@esbuild/linux-ia32": "npm:0.27.4" - "@esbuild/linux-loong64": "npm:0.27.4" - "@esbuild/linux-mips64el": "npm:0.27.4" - "@esbuild/linux-ppc64": "npm:0.27.4" - "@esbuild/linux-riscv64": "npm:0.27.4" - "@esbuild/linux-s390x": "npm:0.27.4" - "@esbuild/linux-x64": "npm:0.27.4" - "@esbuild/netbsd-arm64": "npm:0.27.4" - "@esbuild/netbsd-x64": "npm:0.27.4" - "@esbuild/openbsd-arm64": "npm:0.27.4" - "@esbuild/openbsd-x64": "npm:0.27.4" - "@esbuild/openharmony-arm64": "npm:0.27.4" - "@esbuild/sunos-x64": "npm:0.27.4" - "@esbuild/win32-arm64": "npm:0.27.4" - "@esbuild/win32-ia32": "npm:0.27.4" - "@esbuild/win32-x64": "npm:0.27.4" - dependenciesMeta: - "@esbuild/aix-ppc64": - optional: true - "@esbuild/android-arm": - optional: true - "@esbuild/android-arm64": - optional: true - "@esbuild/android-x64": - optional: true - "@esbuild/darwin-arm64": - optional: true - "@esbuild/darwin-x64": - optional: true - "@esbuild/freebsd-arm64": - optional: true - "@esbuild/freebsd-x64": - optional: true - "@esbuild/linux-arm": - optional: true - "@esbuild/linux-arm64": - optional: true - "@esbuild/linux-ia32": - optional: true - "@esbuild/linux-loong64": - optional: true - "@esbuild/linux-mips64el": - optional: true - "@esbuild/linux-ppc64": - optional: true - "@esbuild/linux-riscv64": - optional: true - "@esbuild/linux-s390x": - optional: true - "@esbuild/linux-x64": - optional: true - "@esbuild/netbsd-arm64": - optional: true - "@esbuild/netbsd-x64": - optional: true - "@esbuild/openbsd-arm64": - optional: true - "@esbuild/openbsd-x64": - optional: true - "@esbuild/openharmony-arm64": - optional: true - "@esbuild/sunos-x64": - optional: true - "@esbuild/win32-arm64": - optional: true - "@esbuild/win32-ia32": - optional: true - "@esbuild/win32-x64": - optional: true - bin: - esbuild: bin/esbuild - checksum: 10/32b46ec22ef78bae6cc141145022a4c0209852c07151f037fbefccc2033ca54e7f33705f8fca198eb7026f400142f64c2dbc9f0d0ce9c0a638ebc472a04abc4a - languageName: node - linkType: hard - "escalade@npm:^3.1.1, escalade@npm:^3.2.0": version: 3.2.0 resolution: "escalade@npm:3.2.0" @@ -16339,7 +16070,7 @@ __metadata: requireindex: "npm:^1.2.0" strip-literal: "npm:^3.1.0" tinyspy: "npm:^4.0.4" - vitest: "npm:^4.0.18" + vitest: "npm:^4.1.0" languageName: unknown linkType: soft @@ -17888,13 +17619,6 @@ __metadata: languageName: node linkType: hard -"globrex@npm:^0.1.2": - version: 0.1.2 - resolution: "globrex@npm:0.1.2" - checksum: 10/81ce62ee6f800d823d6b7da7687f841676d60ee8f51f934ddd862e4057316d26665c4edc0358d4340a923ac00a514f8b67c787e28fe693aae16350f4e60d55e9 - languageName: node - linkType: hard - "google-protobuf@npm:^3.12.0-rc.1, google-protobuf@npm:^3.15.5, google-protobuf@npm:^3.21.4": version: 3.21.4 resolution: "google-protobuf@npm:3.21.4" @@ -23600,7 +23324,7 @@ __metadata: "@typescript/native-preview": "npm:^7.0.0-dev.20260309.1" cross-env: "npm:^10.1.0" typescript-strict-plugin: "npm:^2.4.4" - vite: "npm:^7.3.1" + vite: "npm:^8.0.0" workbox-precaching: "npm:^7.4.0" languageName: unknown linkType: soft @@ -24450,7 +24174,7 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.5.6, postcss@npm:^8.5.8": +"postcss@npm:^8.5.8": version: 8.5.8 resolution: "postcss@npm:8.5.8" dependencies: @@ -25285,13 +25009,6 @@ __metadata: languageName: node linkType: hard -"react-refresh@npm:^0.18.0": - version: 0.18.0 - resolution: "react-refresh@npm:0.18.0" - checksum: 10/504c331c19776bf8320c23bad7f80b3a28de03301ed7523b0dd21d3f02bf2b53bbdd5aa52469b187bc90f358614b2ba303c088a0765c95f4f0a68c43a7d67b1d - languageName: node - linkType: hard - "react-remove-scroll-bar@npm:^2.3.7": version: 2.3.8 resolution: "react-remove-scroll-bar@npm:2.3.8" @@ -28202,7 +27919,7 @@ __metadata: languageName: node linkType: hard -"timers-browserify@npm:^2.0.4": +"timers-browserify@npm:^2.0.12, timers-browserify@npm:^2.0.4": version: 2.0.12 resolution: "timers-browserify@npm:2.0.12" dependencies: @@ -28533,20 +28250,6 @@ __metadata: languageName: node linkType: hard -"tsconfck@npm:^3.0.3": - version: 3.1.6 - resolution: "tsconfck@npm:3.1.6" - peerDependencies: - typescript: ^5.0.0 - peerDependenciesMeta: - typescript: - optional: true - bin: - tsconfck: bin/tsconfck.js - checksum: 10/8574595286850273bf83319b4e67ca760088df3c36f7ca1425aaf797416672e854271bd31e75c9b3e1836ed5b66410c6bc38cbbda9c638a5416c6a682ed94132 - languageName: node - linkType: hard - "tsconfig-paths@npm:^4.2.0": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -29488,23 +29191,7 @@ __metadata: languageName: node linkType: hard -"vite-tsconfig-paths@npm:^5.1.4": - version: 5.1.4 - resolution: "vite-tsconfig-paths@npm:5.1.4" - dependencies: - debug: "npm:^4.1.1" - globrex: "npm:^0.1.2" - tsconfck: "npm:^3.0.3" - peerDependencies: - vite: "*" - peerDependenciesMeta: - vite: - optional: true - checksum: 10/b409dbd17829f560021a71dba3e473b9c06dcf5fdc9d630b72c1f787145ec478b38caff1be04868971ac8bdcbf0f5af45eeece23dbc9c59c54b901f867740ae0 - languageName: node - linkType: hard - -"vite@npm:^6.0.0 || ^7.0.0 || ^8.0.0-0": +"vite@npm:^6.0.0 || ^7.0.0 || ^8.0.0-0, vite@npm:^8.0.0": version: 8.0.0 resolution: "vite@npm:8.0.0" dependencies: @@ -29562,62 +29249,7 @@ __metadata: languageName: node linkType: hard -"vite@npm:^7.3.1": - version: 7.3.1 - resolution: "vite@npm:7.3.1" - dependencies: - esbuild: "npm:^0.27.0" - fdir: "npm:^6.5.0" - fsevents: "npm:~2.3.3" - picomatch: "npm:^4.0.3" - postcss: "npm:^8.5.6" - rollup: "npm:^4.43.0" - tinyglobby: "npm:^0.2.15" - peerDependencies: - "@types/node": ^20.19.0 || >=22.12.0 - jiti: ">=1.21.0" - less: ^4.0.0 - lightningcss: ^1.21.0 - sass: ^1.70.0 - sass-embedded: ^1.70.0 - stylus: ">=0.54.8" - sugarss: ^5.0.0 - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - dependenciesMeta: - fsevents: - optional: true - peerDependenciesMeta: - "@types/node": - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - bin: - vite: bin/vite.js - checksum: 10/62e48ffa4283b688f0049005405a004447ad38ffc99a0efea4c3aa9b7eed739f7402b43f00668c0ee5a895b684dc953d62f0722d8a92c5b2f6c95f051bceb208 - languageName: node - linkType: hard - -"vitest@npm:^4.0.18": +"vitest@npm:^4.1.0": version: 4.1.0 resolution: "vitest@npm:4.1.0" dependencies: