diff --git a/package.json b/package.json index 3257ce33b03..a416898cc48 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "suite:build:web": "yarn workspace @trezor/suite-web build", "_______ Start Scripts _______": "Here are standalone scripts for running individual applications for development.", "suite:dev": "yarn workspace @trezor/suite-web dev", + "suite:dev:vite": "yarn workspace @trezor/suite-web dev:vite", "suite:dev:desktop": "yarn workspace @trezor/suite-desktop dev", "native:start": "yarn workspace @suite-native/app start", "_______ Testing _______": "Testing, linting, type checking...", diff --git a/packages/suite-build/configs/web.webpack.config.ts b/packages/suite-build/configs/web.webpack.config.ts index 06a866a7503..77881df85fc 100644 --- a/packages/suite-build/configs/web.webpack.config.ts +++ b/packages/suite-build/configs/web.webpack.config.ts @@ -16,6 +16,9 @@ const config: webpack.Configuration = { output: { path: path.join(baseDir, 'build'), }, + resolve: { + fallback: { vm: require.resolve('vm-browserify') }, + }, plugins: [ new CopyWebpackPlugin({ patterns: ['browser-detection', 'fonts', 'images', 'oauth', 'videos', 'guide/assets'] diff --git a/packages/suite-build/package.json b/packages/suite-build/package.json index 22400940492..66c44f35600 100644 --- a/packages/suite-build/package.json +++ b/packages/suite-build/package.json @@ -36,6 +36,7 @@ "stream-browserify": "^3.0.0", "style-loader": "^3.3.4", "terser-webpack-plugin": "^5.3.11", + "vm-browserify": "^1.1.2", "webpack": "^5.97.1", "webpack-bundle-analyzer": "^4.10.1", "webpack-merge": "^6.0.1", diff --git a/packages/suite-web/eslint.config.mjs b/packages/suite-web/eslint.config.mjs index 7985d792067..11ce54d3c40 100644 --- a/packages/suite-web/eslint.config.mjs +++ b/packages/suite-web/eslint.config.mjs @@ -1,10 +1,19 @@ -import { eslint } from '@trezor/eslint'; +import { eslint, globalNoExtraneousDependenciesDevDependencies } from '@trezor/eslint'; export default [ ...eslint, { rules: { 'import/no-default-export': 'off', // Todo: fix and solve + 'import/no-extraneous-dependencies': [ + 'error', + { + devDependencies: [ + ...globalNoExtraneousDependenciesDevDependencies, + '**/vite.config.ts', + ], + }, + ], }, }, ]; diff --git a/packages/suite-web/index.html b/packages/suite-web/index.html new file mode 100644 index 00000000000..9cac0c7092a --- /dev/null +++ b/packages/suite-web/index.html @@ -0,0 +1,60 @@ + + + + Trezor Suite + + + + + + + + + + + +
+ + diff --git a/packages/suite-web/package.json b/packages/suite-web/package.json index c91d4220e5d..ee0be2910db 100644 --- a/packages/suite-web/package.json +++ b/packages/suite-web/package.json @@ -7,6 +7,7 @@ "type-check:watch": "yarn type-check -- --watch", "lint:styles": "npx stylelint './src/**/*{.ts,.tsx}' --cache --config ../../.stylelintrc", "dev": "yarn rimraf ./build && yarn workspace @trezor/suite-build run dev:web", + "dev:vite": "yarn rimraf ./build && vite", "analyze": "ANALYZE=true yarn build", "build": "yarn rimraf ./build && yarn workspace @trezor/suite-build run build:web" }, @@ -28,6 +29,7 @@ "worker-loader": "^3.0.8" }, "devDependencies": { + "@originjs/vite-plugin-commonjs": "^1.0.3", "@suite-common/test-utils": "workspace:*", "@suite-common/wallet-config": "workspace:*", "@trezor/connect": "workspace:*", @@ -43,10 +45,13 @@ "@types/react-dom": "18.2.19", "@types/react-router": "^5.1.20", "@types/react-router-dom": "^5.1.7", + "@vitejs/plugin-react": "^4.2.1", "rimraf": "^6.0.1", "stylelint": "^16.14.1", "stylelint-config-standard": "^36.0.0", "tsx": "^4.19.3", + "vite": "^5.1.4", + "vite-plugin-wasm": "^3.4.1", "webpack": "^5.97.1", "ws": "^8.18.0", "yargs": "17.7.2" diff --git a/packages/suite-web/src/static/index.html b/packages/suite-web/src/static/index.html index 8ff02fb703b..5655bdd2715 100644 --- a/packages/suite-web/src/static/index.html +++ b/packages/suite-web/src/static/index.html @@ -5,7 +5,6 @@ - diff --git a/packages/suite-web/src/vite-index.ts b/packages/suite-web/src/vite-index.ts new file mode 100644 index 00000000000..c0220e9e374 --- /dev/null +++ b/packages/suite-web/src/vite-index.ts @@ -0,0 +1,12 @@ +/* + * This entry is only used for Vite dev server! + */ + +const appElement = document.getElementById('app'); +if (appElement) { + import(/* webpackChunkName: "app" */ './Main') + .then(comp => comp.init(appElement)) + .catch(err => console.error(err)); // Fatal error +} + +export {}; diff --git a/packages/suite-web/vite.config.ts b/packages/suite-web/vite.config.ts new file mode 100644 index 00000000000..5504a90c4cf --- /dev/null +++ b/packages/suite-web/vite.config.ts @@ -0,0 +1,221 @@ +import { viteCommonjs } from '@originjs/vite-plugin-commonjs'; +import react from '@vitejs/plugin-react'; +import { execSync } from 'child_process'; +import { readdirSync } from 'fs'; +import { resolve } from 'path'; +import { Plugin, ViteDevServer, defineConfig } from 'vite'; +import wasm from 'vite-plugin-wasm'; + +import { suiteVersion } from '../suite/package.json'; + +// Use require instead of import for TypeScript files +const { assetPrefix, project } = require('../suite-build/utils/env'); + +// Plugin to serve static files with /static prefix +const staticAliasPlugin = (): Plugin => ({ + name: 'static-alias', + configureServer(server: ViteDevServer) { + // Middleware to handle /static requests + server.middlewares.use((req, _res, next) => { + if (req.url?.startsWith('/static/')) { + // Rewrite the URL to access the file from the public directory + req.url = req.url.replace('/static/', '/'); + } + next(); + }); + }, +}); + +// Plugin to serve core.js in dev mode + +// Plugin to handle workers similar to webpack's worker-loader +const workerPlugin = (): Plugin => ({ + name: 'worker-loader', + transform(_code, id) { + if (/\/workers\/[^/]+\/index\.ts$/.test(id)) { + // Return a virtual module that creates a web worker + return { + code: ` + const worker = () => new Worker(new URL('${id}', import.meta.url), { type: 'module' }); + export default worker; + `, + map: null, + }; + } + }, +}); + +const serveCorePlugin = () => ({ + name: 'serve-core', + configureServer(server: ViteDevServer) { + server.middlewares.use(async (req, res, next) => { + if (req.url?.endsWith('/js/core.js')) { + const code = await server.transformRequest( + resolve(__dirname, '../connect/src/core/index.ts'), + { ssr: false }, + ); + if (code?.code) { + res.setHeader('Content-Type', 'application/javascript'); + res.end(code.code); + + return; + } + } + next(); + }); + }, +}); + +// This helper creates aliases for all workspace packages +const createWorkspaceAliases = () => { + const suiteCommonAliases = readdirSync(resolve(__dirname, '../../suite-common'), { + withFileTypes: true, + }) + .filter(dirent => dirent.isDirectory()) + .map(dirent => ({ + find: `@suite-common/${dirent.name}`, + replacement: resolve(__dirname, '../../suite-common', dirent.name), + })); + + const trezorPackagesAliases = readdirSync(resolve(__dirname, '../'), { withFileTypes: true }) + .filter(dirent => dirent.isDirectory() && dirent.name !== 'suite-web') + .map(dirent => ({ + find: `@trezor/${dirent.name}`, + replacement: resolve(__dirname, '../', dirent.name), + })); + + return [...suiteCommonAliases, ...trezorPackagesAliases]; +}; + +const commitId = execSync('git rev-parse HEAD').toString().trim(); + +// Plugin to inject Buffer polyfill code at the beginning of every module +const injectBufferPolyfillPlugin = (): Plugin => { + const bufferPolyfillCode = ` +// Ensure Buffer is available globally +import { Buffer as ImportedBuffer } from 'buffer'; + + +// Define Buffer in all possible global scopes +if (typeof window !== 'undefined') { + window.Buffer = window.Buffer || ImportedBuffer; +}; + +if (typeof global !== 'undefined') { + global.Buffer = global.Buffer || ImportedBuffer; +}; + +if (typeof globalThis !== 'undefined') { + globalThis.Buffer = globalThis.Buffer || ImportedBuffer; +}; + +// Make sure global is defined +if (typeof window !== 'undefined' && typeof global === 'undefined') { + window.global = window; +}; + +// Make sure globalThis is defined +if (typeof window !== 'undefined' && typeof globalThis === 'undefined') { + window.globalThis = window; +}; +`; + + return { + name: 'inject-buffer-polyfill', + transform(code, id) { + // Skip node_modules and non-JS/TS files + if (!id.endsWith('.js') && !id.endsWith('.ts') && !id.endsWith('.tsx')) { + return null; + } + + // Inject the Buffer polyfill code at the beginning of the file + return { + code: bufferPolyfillCode + code, + map: null, + }; + }, + }; +}; + +export default defineConfig({ + root: '.', + base: assetPrefix, + // Use suite-data/files as the public directory + publicDir: resolve(__dirname, '../suite-data/files'), + plugins: [ + injectBufferPolyfillPlugin(), + staticAliasPlugin(), + serveCorePlugin(), + viteCommonjs(), + workerPlugin(), + wasm(), + react({ + babel: { + plugins: [ + [ + 'babel-plugin-styled-components', + { + displayName: true, + fileName: false, + }, + ], + ], + }, + }), + ], + resolve: { + alias: [ + { + find: /^@trezor\/connect(\/index)?$/, + replacement: '@trezor/connect-web/src/module', + }, + { + find: 'src', + replacement: resolve(__dirname, '../suite/src'), + }, + { + find: 'crypto', + replacement: require.resolve('crypto-browserify'), + }, + { + find: 'buffer', + replacement: require.resolve('buffer'), + }, + { + find: 'stream', + replacement: require.resolve('stream-browserify'), + }, + { + find: 'vm', + replacement: require.resolve('vm-browserify'), + }, + ...createWorkspaceAliases(), + ], + preserveSymlinks: true, + }, + define: { + 'process.browser': true, + 'process.env.VERSION': JSON.stringify(suiteVersion), + 'process.env.COMMIT_HASH': JSON.stringify(commitId), + 'process.env.COMMITHASH': JSON.stringify(commitId), + 'process.env.SUITE_TYPE': JSON.stringify(project), + 'process.env.NODE_ENV': JSON.stringify('development'), + 'process.env.ASSET_PREFIX': JSON.stringify(assetPrefix), + global: {}, + __DEV__: true, + ENABLE_REDUX_LOGGER: true, + }, + optimizeDeps: { + include: ['@trezor/connect', '@trezor/suite', 'buffer'], + exclude: [ + // Exclude WebAssembly modules + '@trezor/crypto-utils', + '@trezor/utxo-lib', + ], + }, + server: { + port: 8000, + open: true, + host: true, + }, +}); diff --git a/scripts/list-outdated-dependencies/engagement-dependencies.txt b/scripts/list-outdated-dependencies/engagement-dependencies.txt index 23bafac8463..92e49cdd916 100644 --- a/scripts/list-outdated-dependencies/engagement-dependencies.txt +++ b/scripts/list-outdated-dependencies/engagement-dependencies.txt @@ -60,3 +60,7 @@ svgo sharp @types/pdfmake pdfmake +@originjs/vite-plugin-commonjs +vite-plugin-wasm +vite +vm-browserify diff --git a/yarn.lock b/yarn.lock index 4a514e887d9..06dbda8cd9f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -138,7 +138,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.18.5, @babel/core@npm:^7.18.9, @babel/core@npm:^7.20.0, @babel/core@npm:^7.20.12, @babel/core@npm:^7.23.9, @babel/core@npm:^7.25.2": +"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.18.5, @babel/core@npm:^7.18.9, @babel/core@npm:^7.20.0, @babel/core@npm:^7.20.12, @babel/core@npm:^7.23.9, @babel/core@npm:^7.25.2, @babel/core@npm:^7.26.0": version: 7.26.9 resolution: "@babel/core@npm:7.26.9" dependencies: @@ -1335,7 +1335,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-self@npm:^7.0.0, @babel/plugin-transform-react-jsx-self@npm:^7.18.6, @babel/plugin-transform-react-jsx-self@npm:^7.24.7": +"@babel/plugin-transform-react-jsx-self@npm:^7.0.0, @babel/plugin-transform-react-jsx-self@npm:^7.18.6, @babel/plugin-transform-react-jsx-self@npm:^7.24.7, @babel/plugin-transform-react-jsx-self@npm:^7.25.9": version: 7.25.9 resolution: "@babel/plugin-transform-react-jsx-self@npm:7.25.9" dependencies: @@ -1346,7 +1346,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-source@npm:^7.0.0, @babel/plugin-transform-react-jsx-source@npm:^7.19.6, @babel/plugin-transform-react-jsx-source@npm:^7.24.7": +"@babel/plugin-transform-react-jsx-source@npm:^7.0.0, @babel/plugin-transform-react-jsx-source@npm:^7.19.6, @babel/plugin-transform-react-jsx-source@npm:^7.24.7, @babel/plugin-transform-react-jsx-source@npm:^7.25.9": version: 7.25.9 resolution: "@babel/plugin-transform-react-jsx-source@npm:7.25.9" dependencies: @@ -2496,9 +2496,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/aix-ppc64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/aix-ppc64@npm:0.20.2" +"@esbuild/aix-ppc64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/aix-ppc64@npm:0.21.5" conditions: os=aix & cpu=ppc64 languageName: node linkType: hard @@ -2517,9 +2517,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/android-arm64@npm:0.20.2" +"@esbuild/android-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-arm64@npm:0.21.5" conditions: os=android & cpu=arm64 languageName: node linkType: hard @@ -2538,9 +2538,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/android-arm@npm:0.20.2" +"@esbuild/android-arm@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-arm@npm:0.21.5" conditions: os=android & cpu=arm languageName: node linkType: hard @@ -2559,9 +2559,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/android-x64@npm:0.20.2" +"@esbuild/android-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-x64@npm:0.21.5" conditions: os=android & cpu=x64 languageName: node linkType: hard @@ -2580,9 +2580,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/darwin-arm64@npm:0.20.2" +"@esbuild/darwin-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/darwin-arm64@npm:0.21.5" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -2601,9 +2601,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/darwin-x64@npm:0.20.2" +"@esbuild/darwin-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/darwin-x64@npm:0.21.5" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -2622,9 +2622,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/freebsd-arm64@npm:0.20.2" +"@esbuild/freebsd-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/freebsd-arm64@npm:0.21.5" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard @@ -2643,9 +2643,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/freebsd-x64@npm:0.20.2" +"@esbuild/freebsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/freebsd-x64@npm:0.21.5" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard @@ -2664,9 +2664,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-arm64@npm:0.20.2" +"@esbuild/linux-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-arm64@npm:0.21.5" conditions: os=linux & cpu=arm64 languageName: node linkType: hard @@ -2685,9 +2685,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-arm@npm:0.20.2" +"@esbuild/linux-arm@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-arm@npm:0.21.5" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -2706,9 +2706,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-ia32@npm:0.20.2" +"@esbuild/linux-ia32@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-ia32@npm:0.21.5" conditions: os=linux & cpu=ia32 languageName: node linkType: hard @@ -2727,9 +2727,16 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-loong64@npm:0.20.2" +"@esbuild/linux-loong64@npm:0.14.54": + version: 0.14.54 + resolution: "@esbuild/linux-loong64@npm:0.14.54" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-loong64@npm:0.21.5" conditions: os=linux & cpu=loong64 languageName: node linkType: hard @@ -2748,9 +2755,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-mips64el@npm:0.20.2" +"@esbuild/linux-mips64el@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-mips64el@npm:0.21.5" conditions: os=linux & cpu=mips64el languageName: node linkType: hard @@ -2769,9 +2776,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-ppc64@npm:0.20.2" +"@esbuild/linux-ppc64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-ppc64@npm:0.21.5" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -2790,9 +2797,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-riscv64@npm:0.20.2" +"@esbuild/linux-riscv64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-riscv64@npm:0.21.5" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard @@ -2811,9 +2818,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-s390x@npm:0.20.2" +"@esbuild/linux-s390x@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-s390x@npm:0.21.5" conditions: os=linux & cpu=s390x languageName: node linkType: hard @@ -2832,9 +2839,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/linux-x64@npm:0.20.2" +"@esbuild/linux-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-x64@npm:0.21.5" conditions: os=linux & cpu=x64 languageName: node linkType: hard @@ -2860,9 +2867,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/netbsd-x64@npm:0.20.2" +"@esbuild/netbsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/netbsd-x64@npm:0.21.5" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard @@ -2895,9 +2902,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/openbsd-x64@npm:0.20.2" +"@esbuild/openbsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/openbsd-x64@npm:0.21.5" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard @@ -2916,9 +2923,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/sunos-x64@npm:0.20.2" +"@esbuild/sunos-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/sunos-x64@npm:0.21.5" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -2937,9 +2944,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/win32-arm64@npm:0.20.2" +"@esbuild/win32-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-arm64@npm:0.21.5" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -2958,9 +2965,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/win32-ia32@npm:0.20.2" +"@esbuild/win32-ia32@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-ia32@npm:0.21.5" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -2979,9 +2986,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.20.2": - version: 0.20.2 - resolution: "@esbuild/win32-x64@npm:0.20.2" +"@esbuild/win32-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-x64@npm:0.21.5" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -6183,6 +6190,15 @@ __metadata: languageName: node linkType: hard +"@originjs/vite-plugin-commonjs@npm:^1.0.3": + version: 1.0.3 + resolution: "@originjs/vite-plugin-commonjs@npm:1.0.3" + dependencies: + esbuild: "npm:^0.14.14" + checksum: 10/2341e18d814e1f0a1b6556a3b647b9b81ee263c999cfeb4fa9f8c16997857cf3b1b079507cf290fd071e0fad91502b9666952a74be36f3dc6576a6a6be7e427b + languageName: node + linkType: hard + "@parcel/watcher-android-arm64@npm:2.5.0": version: 2.5.0 resolution: "@parcel/watcher-android-arm64@npm:2.5.0" @@ -7432,114 +7448,135 @@ __metadata: languageName: node linkType: hard -"@rollup/rollup-android-arm-eabi@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-android-arm-eabi@npm:4.14.3" +"@rollup/rollup-android-arm-eabi@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.34.8" conditions: os=android & cpu=arm languageName: node linkType: hard -"@rollup/rollup-android-arm64@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-android-arm64@npm:4.14.3" +"@rollup/rollup-android-arm64@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-android-arm64@npm:4.34.8" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-arm64@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-darwin-arm64@npm:4.14.3" +"@rollup/rollup-darwin-arm64@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-darwin-arm64@npm:4.34.8" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-darwin-x64@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-darwin-x64@npm:4.14.3" +"@rollup/rollup-darwin-x64@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-darwin-x64@npm:4.34.8" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-gnueabihf@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.14.3" - conditions: os=linux & cpu=arm +"@rollup/rollup-freebsd-arm64@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.34.8" + conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-linux-arm-musleabihf@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.14.3" - conditions: os=linux & cpu=arm +"@rollup/rollup-freebsd-x64@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-freebsd-x64@npm:4.34.8" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.34.8" + conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-gnu@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.14.3" +"@rollup/rollup-linux-arm-musleabihf@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.34.8" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.34.8" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-arm64-musl@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-arm64-musl@npm:4.14.3" +"@rollup/rollup-linux-arm64-musl@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.34.8" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-linux-powerpc64le-gnu@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.14.3" +"@rollup/rollup-linux-loongarch64-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-loongarch64-gnu@npm:4.34.8" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.34.8" conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-riscv64-gnu@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.14.3" +"@rollup/rollup-linux-riscv64-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.34.8" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-s390x-gnu@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.14.3" +"@rollup/rollup-linux-s390x-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.34.8" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-gnu@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-x64-gnu@npm:4.14.3" +"@rollup/rollup-linux-x64-gnu@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.34.8" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/rollup-linux-x64-musl@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-linux-x64-musl@npm:4.14.3" +"@rollup/rollup-linux-x64-musl@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.34.8" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@rollup/rollup-win32-arm64-msvc@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.14.3" +"@rollup/rollup-win32-arm64-msvc@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.34.8" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@rollup/rollup-win32-ia32-msvc@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.14.3" +"@rollup/rollup-win32-ia32-msvc@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.34.8" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@rollup/rollup-win32-x64-msvc@npm:4.14.3": - version: 4.14.3 - resolution: "@rollup/rollup-win32-x64-msvc@npm:4.14.3" +"@rollup/rollup-win32-x64-msvc@npm:4.34.8": + version: 4.34.8 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.34.8" conditions: os=win32 & cpu=x64 languageName: node linkType: hard @@ -12323,6 +12360,7 @@ __metadata: stream-browserify: "npm:^3.0.0" style-loader: "npm:^3.3.4" terser-webpack-plugin: "npm:^5.3.11" + vm-browserify: "npm:^1.1.2" webpack: "npm:^5.97.1" webpack-bundle-analyzer: "npm:^4.10.1" webpack-merge: "npm:^6.0.1" @@ -12511,6 +12549,7 @@ __metadata: version: 0.0.0-use.local resolution: "@trezor/suite-web@workspace:packages/suite-web" dependencies: + "@originjs/vite-plugin-commonjs": "npm:^1.0.3" "@sentry/browser": "npm:^8.47.0" "@suite-common/formatters": "workspace:*" "@suite-common/sentry": "workspace:*" @@ -12532,6 +12571,7 @@ __metadata: "@types/react-dom": "npm:18.2.19" "@types/react-router": "npm:^5.1.20" "@types/react-router-dom": "npm:^5.1.7" + "@vitejs/plugin-react": "npm:^4.2.1" react: "npm:18.2.0" react-dom: "npm:18.2.0" react-helmet-async: "npm:^2.0.5" @@ -12543,6 +12583,8 @@ __metadata: stylelint: "npm:^16.14.1" stylelint-config-standard: "npm:^36.0.0" tsx: "npm:^4.19.3" + vite: "npm:^5.1.4" + vite-plugin-wasm: "npm:^3.4.1" webpack: "npm:^5.97.1" worker-loader: "npm:^3.0.8" ws: "npm:^8.18.0" @@ -12937,7 +12979,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.18.0": +"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.18.0, @types/babel__core@npm:^7.20.5": version: 7.20.5 resolution: "@types/babel__core@npm:7.20.5" dependencies: @@ -13314,20 +13356,13 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:*, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.6": +"@types/estree@npm:*, @types/estree@npm:1.0.6, @types/estree@npm:^1.0.0, @types/estree@npm:^1.0.6": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" checksum: 10/9d35d475095199c23e05b431bcdd1f6fec7380612aed068b14b2a08aa70494de8a9026765a5a91b1073f636fb0368f6d8973f518a31391d519e20c59388ed88d languageName: node linkType: hard -"@types/estree@npm:1.0.5": - version: 1.0.5 - resolution: "@types/estree@npm:1.0.5" - checksum: 10/7de6d928dd4010b0e20c6919e1a6c27b61f8d4567befa89252055fad503d587ecb9a1e3eab1b1901f923964d7019796db810b7fd6430acb26c32866d126fd408 - languageName: node - linkType: hard - "@types/events@npm:^3.0.3": version: 3.0.3 resolution: "@types/events@npm:3.0.3" @@ -14603,6 +14638,21 @@ __metadata: languageName: node linkType: hard +"@vitejs/plugin-react@npm:^4.2.1": + version: 4.3.4 + resolution: "@vitejs/plugin-react@npm:4.3.4" + dependencies: + "@babel/core": "npm:^7.26.0" + "@babel/plugin-transform-react-jsx-self": "npm:^7.25.9" + "@babel/plugin-transform-react-jsx-source": "npm:^7.25.9" + "@types/babel__core": "npm:^7.20.5" + react-refresh: "npm:^0.14.2" + peerDependencies: + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 + checksum: 10/3b220908ed9b7b96a380a9c53e82fb428ca1f76b798ab59d1c63765bdff24de61b4778dd3655952b7d3d922645aea2d97644503b879aba6e3fcf467605b9913d + languageName: node + linkType: hard + "@vitest/expect@npm:0.34.6": version: 0.34.6 resolution: "@vitest/expect@npm:0.34.6" @@ -21768,6 +21818,118 @@ __metadata: languageName: node linkType: hard +"esbuild-android-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-android-64@npm:0.14.54" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"esbuild-android-arm64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-android-arm64@npm:0.14.54" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"esbuild-darwin-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-darwin-64@npm:0.14.54" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"esbuild-darwin-arm64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-darwin-arm64@npm:0.14.54" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"esbuild-freebsd-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-freebsd-64@npm:0.14.54" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"esbuild-freebsd-arm64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-freebsd-arm64@npm:0.14.54" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"esbuild-linux-32@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-32@npm:0.14.54" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"esbuild-linux-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-64@npm:0.14.54" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"esbuild-linux-arm64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-arm64@npm:0.14.54" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"esbuild-linux-arm@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-arm@npm:0.14.54" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"esbuild-linux-mips64le@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-mips64le@npm:0.14.54" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"esbuild-linux-ppc64le@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-ppc64le@npm:0.14.54" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"esbuild-linux-riscv64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-riscv64@npm:0.14.54" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"esbuild-linux-s390x@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-linux-s390x@npm:0.14.54" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"esbuild-netbsd-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-netbsd-64@npm:0.14.54" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"esbuild-openbsd-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-openbsd-64@npm:0.14.54" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + "esbuild-register@npm:^3.5.0": version: 3.5.0 resolution: "esbuild-register@npm:3.5.0" @@ -21779,6 +21941,108 @@ __metadata: languageName: node linkType: hard +"esbuild-sunos-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-sunos-64@npm:0.14.54" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"esbuild-windows-32@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-windows-32@npm:0.14.54" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"esbuild-windows-64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-windows-64@npm:0.14.54" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"esbuild-windows-arm64@npm:0.14.54": + version: 0.14.54 + resolution: "esbuild-windows-arm64@npm:0.14.54" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"esbuild@npm:^0.14.14": + version: 0.14.54 + resolution: "esbuild@npm:0.14.54" + dependencies: + "@esbuild/linux-loong64": "npm:0.14.54" + esbuild-android-64: "npm:0.14.54" + esbuild-android-arm64: "npm:0.14.54" + esbuild-darwin-64: "npm:0.14.54" + esbuild-darwin-arm64: "npm:0.14.54" + esbuild-freebsd-64: "npm:0.14.54" + esbuild-freebsd-arm64: "npm:0.14.54" + esbuild-linux-32: "npm:0.14.54" + esbuild-linux-64: "npm:0.14.54" + esbuild-linux-arm: "npm:0.14.54" + esbuild-linux-arm64: "npm:0.14.54" + esbuild-linux-mips64le: "npm:0.14.54" + esbuild-linux-ppc64le: "npm:0.14.54" + esbuild-linux-riscv64: "npm:0.14.54" + esbuild-linux-s390x: "npm:0.14.54" + esbuild-netbsd-64: "npm:0.14.54" + esbuild-openbsd-64: "npm:0.14.54" + esbuild-sunos-64: "npm:0.14.54" + esbuild-windows-32: "npm:0.14.54" + esbuild-windows-64: "npm:0.14.54" + esbuild-windows-arm64: "npm:0.14.54" + dependenciesMeta: + "@esbuild/linux-loong64": + optional: true + esbuild-android-64: + optional: true + esbuild-android-arm64: + optional: true + esbuild-darwin-64: + optional: true + esbuild-darwin-arm64: + optional: true + esbuild-freebsd-64: + optional: true + esbuild-freebsd-arm64: + optional: true + esbuild-linux-32: + optional: true + esbuild-linux-64: + optional: true + esbuild-linux-arm: + optional: true + esbuild-linux-arm64: + optional: true + esbuild-linux-mips64le: + optional: true + esbuild-linux-ppc64le: + optional: true + esbuild-linux-riscv64: + optional: true + esbuild-linux-s390x: + optional: true + esbuild-netbsd-64: + optional: true + esbuild-openbsd-64: + optional: true + esbuild-sunos-64: + optional: true + esbuild-windows-32: + optional: true + esbuild-windows-64: + optional: true + esbuild-windows-arm64: + optional: true + bin: + esbuild: bin/esbuild + checksum: 10/d244f9e9bd0c56f1b64665a563aeeda9d5b6346a1ef68aebcb9b60be7f6cb8c4a552bbb0cafbc2ac1c774e46944253238c1bea9ace337df0c5aa1a65d591dddc + languageName: node + linkType: hard + "esbuild@npm:^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0 || ^0.24.0 || ^0.25.0, esbuild@npm:~0.25.0": version: 0.25.0 resolution: "esbuild@npm:0.25.0" @@ -21865,33 +22129,33 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.20.1": - version: 0.20.2 - resolution: "esbuild@npm:0.20.2" - dependencies: - "@esbuild/aix-ppc64": "npm:0.20.2" - "@esbuild/android-arm": "npm:0.20.2" - "@esbuild/android-arm64": "npm:0.20.2" - "@esbuild/android-x64": "npm:0.20.2" - "@esbuild/darwin-arm64": "npm:0.20.2" - "@esbuild/darwin-x64": "npm:0.20.2" - "@esbuild/freebsd-arm64": "npm:0.20.2" - "@esbuild/freebsd-x64": "npm:0.20.2" - "@esbuild/linux-arm": "npm:0.20.2" - "@esbuild/linux-arm64": "npm:0.20.2" - "@esbuild/linux-ia32": "npm:0.20.2" - "@esbuild/linux-loong64": "npm:0.20.2" - "@esbuild/linux-mips64el": "npm:0.20.2" - "@esbuild/linux-ppc64": "npm:0.20.2" - "@esbuild/linux-riscv64": "npm:0.20.2" - "@esbuild/linux-s390x": "npm:0.20.2" - "@esbuild/linux-x64": "npm:0.20.2" - "@esbuild/netbsd-x64": "npm:0.20.2" - "@esbuild/openbsd-x64": "npm:0.20.2" - "@esbuild/sunos-x64": "npm:0.20.2" - "@esbuild/win32-arm64": "npm:0.20.2" - "@esbuild/win32-ia32": "npm:0.20.2" - "@esbuild/win32-x64": "npm:0.20.2" +"esbuild@npm:^0.21.3": + version: 0.21.5 + resolution: "esbuild@npm:0.21.5" + dependencies: + "@esbuild/aix-ppc64": "npm:0.21.5" + "@esbuild/android-arm": "npm:0.21.5" + "@esbuild/android-arm64": "npm:0.21.5" + "@esbuild/android-x64": "npm:0.21.5" + "@esbuild/darwin-arm64": "npm:0.21.5" + "@esbuild/darwin-x64": "npm:0.21.5" + "@esbuild/freebsd-arm64": "npm:0.21.5" + "@esbuild/freebsd-x64": "npm:0.21.5" + "@esbuild/linux-arm": "npm:0.21.5" + "@esbuild/linux-arm64": "npm:0.21.5" + "@esbuild/linux-ia32": "npm:0.21.5" + "@esbuild/linux-loong64": "npm:0.21.5" + "@esbuild/linux-mips64el": "npm:0.21.5" + "@esbuild/linux-ppc64": "npm:0.21.5" + "@esbuild/linux-riscv64": "npm:0.21.5" + "@esbuild/linux-s390x": "npm:0.21.5" + "@esbuild/linux-x64": "npm:0.21.5" + "@esbuild/netbsd-x64": "npm:0.21.5" + "@esbuild/openbsd-x64": "npm:0.21.5" + "@esbuild/sunos-x64": "npm:0.21.5" + "@esbuild/win32-arm64": "npm:0.21.5" + "@esbuild/win32-ia32": "npm:0.21.5" + "@esbuild/win32-x64": "npm:0.21.5" dependenciesMeta: "@esbuild/aix-ppc64": optional: true @@ -21941,7 +22205,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: 10/663215ab7e599651e00d61b528a63136e1f1d397db8b9c3712540af928c9476d61da95aefa81b7a8dfc7a9fdd7616fcf08395c27be68be8c99953fb461863ce4 + checksum: 10/d2ff2ca84d30cce8e871517374d6c2290835380dc7cd413b2d49189ed170d45e407be14de2cb4794cf76f75cf89955c4714726ebd3de7444b3046f5cab23ab6b languageName: node linkType: hard @@ -35075,14 +35339,14 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.4.23, postcss@npm:^8.4.33, postcss@npm:^8.4.38, postcss@npm:^8.4.41, postcss@npm:^8.5.1": - version: 8.5.2 - resolution: "postcss@npm:8.5.2" +"postcss@npm:^8.4.23, postcss@npm:^8.4.33, postcss@npm:^8.4.38, postcss@npm:^8.4.41, postcss@npm:^8.4.43, postcss@npm:^8.5.1": + version: 8.5.3 + resolution: "postcss@npm:8.5.3" dependencies: nanoid: "npm:^3.3.8" picocolors: "npm:^1.1.1" source-map-js: "npm:^1.2.1" - checksum: 10/e08c2be3cf461cc63cf4c8e97bb3d5185e196ee0a9b75879cf130590f32bc38c7829c6c4e260158e214fb68a828a95bdac84c8f17fefba993d3ced686643c3e2 + checksum: 10/6d7e21a772e8b05bf102636918654dac097bac013f0dc8346b72ac3604fc16829646f94ea862acccd8f82e910b00e2c11c1f0ea276543565d278c7ca35516a7c languageName: node linkType: hard @@ -37725,27 +37989,30 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^4.13.0": - version: 4.14.3 - resolution: "rollup@npm:4.14.3" - dependencies: - "@rollup/rollup-android-arm-eabi": "npm:4.14.3" - "@rollup/rollup-android-arm64": "npm:4.14.3" - "@rollup/rollup-darwin-arm64": "npm:4.14.3" - "@rollup/rollup-darwin-x64": "npm:4.14.3" - "@rollup/rollup-linux-arm-gnueabihf": "npm:4.14.3" - "@rollup/rollup-linux-arm-musleabihf": "npm:4.14.3" - "@rollup/rollup-linux-arm64-gnu": "npm:4.14.3" - "@rollup/rollup-linux-arm64-musl": "npm:4.14.3" - "@rollup/rollup-linux-powerpc64le-gnu": "npm:4.14.3" - "@rollup/rollup-linux-riscv64-gnu": "npm:4.14.3" - "@rollup/rollup-linux-s390x-gnu": "npm:4.14.3" - "@rollup/rollup-linux-x64-gnu": "npm:4.14.3" - "@rollup/rollup-linux-x64-musl": "npm:4.14.3" - "@rollup/rollup-win32-arm64-msvc": "npm:4.14.3" - "@rollup/rollup-win32-ia32-msvc": "npm:4.14.3" - "@rollup/rollup-win32-x64-msvc": "npm:4.14.3" - "@types/estree": "npm:1.0.5" +"rollup@npm:^4.20.0": + version: 4.34.8 + resolution: "rollup@npm:4.34.8" + dependencies: + "@rollup/rollup-android-arm-eabi": "npm:4.34.8" + "@rollup/rollup-android-arm64": "npm:4.34.8" + "@rollup/rollup-darwin-arm64": "npm:4.34.8" + "@rollup/rollup-darwin-x64": "npm:4.34.8" + "@rollup/rollup-freebsd-arm64": "npm:4.34.8" + "@rollup/rollup-freebsd-x64": "npm:4.34.8" + "@rollup/rollup-linux-arm-gnueabihf": "npm:4.34.8" + "@rollup/rollup-linux-arm-musleabihf": "npm:4.34.8" + "@rollup/rollup-linux-arm64-gnu": "npm:4.34.8" + "@rollup/rollup-linux-arm64-musl": "npm:4.34.8" + "@rollup/rollup-linux-loongarch64-gnu": "npm:4.34.8" + "@rollup/rollup-linux-powerpc64le-gnu": "npm:4.34.8" + "@rollup/rollup-linux-riscv64-gnu": "npm:4.34.8" + "@rollup/rollup-linux-s390x-gnu": "npm:4.34.8" + "@rollup/rollup-linux-x64-gnu": "npm:4.34.8" + "@rollup/rollup-linux-x64-musl": "npm:4.34.8" + "@rollup/rollup-win32-arm64-msvc": "npm:4.34.8" + "@rollup/rollup-win32-ia32-msvc": "npm:4.34.8" + "@rollup/rollup-win32-x64-msvc": "npm:4.34.8" + "@types/estree": "npm:1.0.6" fsevents: "npm:~2.3.2" dependenciesMeta: "@rollup/rollup-android-arm-eabi": @@ -37756,6 +38023,10 @@ __metadata: optional: true "@rollup/rollup-darwin-x64": optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true "@rollup/rollup-linux-arm-gnueabihf": optional: true "@rollup/rollup-linux-arm-musleabihf": @@ -37764,6 +38035,8 @@ __metadata: optional: true "@rollup/rollup-linux-arm64-musl": optional: true + "@rollup/rollup-linux-loongarch64-gnu": + optional: true "@rollup/rollup-linux-powerpc64le-gnu": optional: true "@rollup/rollup-linux-riscv64-gnu": @@ -37784,7 +38057,7 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: 10/caff654b734788cbb053886c30c3a7f733af4197b5efc47e82969e9ace1698949cc843755e4aeeb5cf3c2e754e4075022af183fde103fc5e6fdc8664a8e85a1e + checksum: 10/a8cafc19b181c521afe37c4d7601af72dedaf233e1c09ee2276a93b2656f69a08ddbc37766c397043dc413d985460c37184f1efece9d75d82225c5b880798eb0 languageName: node linkType: hard @@ -42408,6 +42681,15 @@ __metadata: languageName: node linkType: hard +"vite-plugin-wasm@npm:^3.4.1": + version: 3.4.1 + resolution: "vite-plugin-wasm@npm:3.4.1" + peerDependencies: + vite: ^2 || ^3 || ^4 || ^5 || ^6 + checksum: 10/4329318a6ece0e4021e89d83738bbe9214e85f93fd8cfe3a9026fcf46cf5fe9d921a37c1ef2f9c726c753e4ace203c575edfb10a14adf817b885a307c0cbb10c + languageName: node + linkType: hard + "vite-tsconfig-paths@npm:^4.3.1": version: 4.3.2 resolution: "vite-tsconfig-paths@npm:4.3.2" @@ -42424,19 +42706,20 @@ __metadata: languageName: node linkType: hard -"vite@npm:^3.0.0 || ^4.0.0 || ^5.0.0-0, vite@npm:^3.1.0 || ^4.0.0 || ^5.0.0-0": - version: 5.2.9 - resolution: "vite@npm:5.2.9" +"vite@npm:^3.0.0 || ^4.0.0 || ^5.0.0-0, vite@npm:^3.1.0 || ^4.0.0 || ^5.0.0-0, vite@npm:^5.1.4": + version: 5.4.14 + resolution: "vite@npm:5.4.14" dependencies: - esbuild: "npm:^0.20.1" + esbuild: "npm:^0.21.3" fsevents: "npm:~2.3.3" - postcss: "npm:^8.4.38" - rollup: "npm:^4.13.0" + postcss: "npm:^8.4.43" + rollup: "npm:^4.20.0" peerDependencies: "@types/node": ^18.0.0 || >=20.0.0 less: "*" lightningcss: ^1.21.0 sass: "*" + sass-embedded: "*" stylus: "*" sugarss: "*" terser: ^5.4.0 @@ -42452,6 +42735,8 @@ __metadata: optional: true sass: optional: true + sass-embedded: + optional: true stylus: optional: true sugarss: @@ -42460,7 +42745,7 @@ __metadata: optional: true bin: vite: bin/vite.js - checksum: 10/26342c8dde540e4161fdad2c9c8f2f0e23567f051c7a40abb8e4796d6c4292fbd118ab7a4ac252515e78c4f99525b557731e6117287b2bccde0ea61d73bcff27 + checksum: 10/ce382f4059eb6c939823b8f62163794752243755d84c71a4b73ad0f7d4d9f4c7a557a6ef4c78e0640f4bcf5ae5ec6b20c7ee4816419af3c81ba275f478b73468 languageName: node linkType: hard @@ -42531,7 +42816,7 @@ __metadata: languageName: node linkType: hard -"vm-browserify@npm:^1.0.1": +"vm-browserify@npm:^1.0.1, vm-browserify@npm:^1.1.2": version: 1.1.2 resolution: "vm-browserify@npm:1.1.2" checksum: 10/ad5b17c9f7a9d9f1ed0e24c897782ab7a587c1fd40f370152482e1af154c7cf0b0bacc45c5ae76a44289881e083ae4ae127808fdff864aa9b562192aae8b5c3b