From 901001f551aa91884e58a6640e1271fe4a86c2b1 Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 09:34:56 +0900 Subject: [PATCH 1/9] fix: update readme contents --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0d25892..7002a17 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ export default definePWTConfig(() => { }); ``` -hyper-pwt uses the [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) plugin. The settings for this plugin can be changed as follows. +hyper-pwt uses the [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) plugin. The settings for this plugin can be changed as follows. ```javascript import { definePWTConfig } from '@repixelcorp/hyper-pwt'; @@ -59,7 +59,7 @@ import { definePWTConfig } from '@repixelcorp/hyper-pwt'; export default definePWTConfig(() => { return { reactPluginOptions: { - tsDecorators: true, + jsxRuntime: 'classic' } }; }); From baeac5d05339172864afae6632307989a7bd6972 Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 17:13:26 +0900 Subject: [PATCH 2/9] feat: add default tsconfig --- package.json | 4 ++- .../typescript/tsconfig.base.json | 25 ++++++++++++++++++ src/configurations/vite/index.ts | 26 +++++++++++++++---- 3 files changed, 49 insertions(+), 6 deletions(-) create mode 100644 src/configurations/typescript/tsconfig.base.json diff --git a/package.json b/package.json index bb94953..a50131a 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,8 @@ "import": "./dist/index.mjs", "require": "./dist/index.cjs", "types": "./dist/index.d.ts" - } + }, + "./src/configurations/typescript/tsconfig.base": "./src/configurations/typescript/tsconfig.base.json" }, "bin": { "hyper-pwt": "dist/cli.js" @@ -55,6 +56,7 @@ "package.json", "LICENSE", "src/configurations/hotReload/**/*", + "src/configurations/typescript/**/*", "custom_widget.xsd" ], "publishConfig": { diff --git a/src/configurations/typescript/tsconfig.base.json b/src/configurations/typescript/tsconfig.base.json new file mode 100644 index 0000000..30e7ed6 --- /dev/null +++ b/src/configurations/typescript/tsconfig.base.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "noEmitOnError": true, + "sourceMap": true, + "module": "esnext", + "target": "es6", + "lib": ["esnext", "dom"], + "moduleResolution": "bundler", + "declaration": false, + "noLib": false, + "forceConsistentCasingInFileNames": true, + "noFallthroughCasesInSwitch": true, + "strict": true, + "strictFunctionTypes": false, + "skipLibCheck": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "jsx": "react", + "jsxFactory": "createElement", + "allowSyntheticDefaultImports": true, + "esModuleInterop": true, + "useUnknownInCatchVariables": false, + "exactOptionalPropertyTypes": false + } +} \ No newline at end of file diff --git a/src/configurations/vite/index.ts b/src/configurations/vite/index.ts index cac0973..cd21fbb 100644 --- a/src/configurations/vite/index.ts +++ b/src/configurations/vite/index.ts @@ -33,9 +33,11 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom const widgetName = await getWidgetName(); return { - plugins: [react({ - jsxRuntime: 'classic' - })], + plugins: [ + react({ + jsxRuntime: 'classic' + }), + ], define: { 'process.env': {}, 'process.env.NODE_ENV': '"production"' @@ -54,7 +56,14 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom formats: ['umd'] }, rolldownOptions: { - external: ['react', 'react-dom', 'react-dom/client', 'react/jsx-runtime', 'react/jsx-dev-runtime'], + external: [ + 'react', + 'react-dom', + 'react-dom/client', + 'react/jsx-runtime', + 'react/jsx-dev-runtime', + /^mendix($|\/)/ + ], output: { globals: { react: 'React', @@ -105,7 +114,14 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf cssFileName: widgetName }, rolldownOptions: { - external: ['react', 'react-dom', 'react-dom/client', 'react/jsx-runtime', 'react/jsx-dev-runtime'], + external: [ + 'react', + 'react-dom', + 'react-dom/client', + 'react/jsx-runtime', + 'react/jsx-dev-runtime', + /^mendix($|\/)/ + ], output: { globals: { react: 'React', From 07461ee4a7494288129adc68cb4c7c8d9a20994d Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 17:22:13 +0900 Subject: [PATCH 3/9] fix: rollback to esbuild and vite --- package.json | 5 +- pnpm-lock.yaml | 858 +++++++----------- src/commands/start/web/index.ts | 8 + src/configurations/vite/index.ts | 19 +- .../mendix-hotreload-react-esbuild-plugin.ts | 186 ++++ src/index.ts | 2 +- 6 files changed, 531 insertions(+), 547 deletions(-) create mode 100644 src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts diff --git a/package.json b/package.json index a50131a..4547329 100644 --- a/package.json +++ b/package.json @@ -39,16 +39,17 @@ "devDependencies": { "@rslib/core": "0.12.2", "@types/node": "22.17.2", + "esbuild": "^0.25.9", "type-fest": "4.41.0", "typescript": "5.9.2" }, "dependencies": { - "@vitejs/plugin-react": "5.0.2", + "@vitejs/plugin-react-swc": "4.0.1", "chalk": "5.6.0", "commander": "14.0.0", "fast-xml-parser": "5.2.5", "mendix": "10.24.77222", - "vite": "npm:rolldown-vite@7.1.5", + "vite": "7.1.3", "zip-a-folder": "3.1.9" }, "files": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 88b80e3..b884584 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,9 +8,9 @@ importers: .: dependencies: - '@vitejs/plugin-react': - specifier: 5.0.2 - version: 5.0.2(rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1)) + '@vitejs/plugin-react-swc': + specifier: 4.0.1 + version: 4.0.1(@swc/helpers@0.5.17)(vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1)) chalk: specifier: 5.6.0 version: 5.6.0 @@ -24,8 +24,8 @@ importers: specifier: 10.24.77222 version: 10.24.77222 vite: - specifier: npm:rolldown-vite@7.1.5 - version: rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1) + specifier: 7.1.3 + version: 7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1) zip-a-folder: specifier: 3.1.9 version: 3.1.9 @@ -36,6 +36,9 @@ importers: '@types/node': specifier: 22.17.2 version: 22.17.2 + esbuild: + specifier: ^0.25.9 + version: 0.25.9 type-fest: specifier: 4.41.0 version: 4.41.0 @@ -45,10 +48,6 @@ importers: packages: - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - '@ast-grep/napi-darwin-arm64@0.37.0': resolution: {integrity: sha512-QAiIiaAbLvMEg/yBbyKn+p1gX2/FuaC0SMf7D7capm/oG4xGMzdeaQIcSosF4TCxxV+hIH4Bz9e4/u7w6Bnk3Q==} engines: {node: '>= 10'} @@ -107,89 +106,6 @@ packages: resolution: {integrity: sha512-Hb4o6h1Pf6yRUAX07DR4JVY7dmQw+RVQMW5/m55GoiAT/VRoKCWBtIUPPOnqDVhbx1Cjfil9b6EDrgJsUAujEQ==} engines: {node: '>= 10'} - '@babel/code-frame@7.27.1': - resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.28.0': - resolution: {integrity: sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.28.3': - resolution: {integrity: sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.28.3': - resolution: {integrity: sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.27.2': - resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-globals@7.28.0': - resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.27.1': - resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.28.3': - resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-plugin-utils@7.27.1': - resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.27.1': - resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.27.1': - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.27.1': - resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.28.3': - resolution: {integrity: sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.28.3': - resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-transform-react-jsx-self@7.27.1': - resolution: {integrity: sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-source@7.27.1': - resolution: {integrity: sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/template@7.27.2': - resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.28.3': - resolution: {integrity: sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.28.2': - resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==} - engines: {node: '>=6.9.0'} - '@emnapi/core@1.4.5': resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==} @@ -367,19 +283,9 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@jridgewell/gen-mapping@0.3.13': - resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} - - '@jridgewell/resolve-uri@3.1.2': - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} - '@jridgewell/trace-mapping@0.3.30': - resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==} - '@module-federation/error-codes@0.18.0': resolution: {integrity: sha512-Woonm8ehyVIUPXChmbu80Zj6uJkC0dD9SJUZ/wOPtO8iiz/m+dkrOugAuKgoiR6qH4F+yorWila954tBz4uKsQ==} @@ -401,90 +307,113 @@ packages: '@napi-rs/wasm-runtime@1.0.3': resolution: {integrity: sha512-rZxtMsLwjdXkMUGC3WwsPwLNVqVqnTJT6MNIB6e+5fhMcSCPP0AOsNWuMQ5mdCq6HNjs/ZeWAEchpqeprqBD2Q==} - '@oxc-project/runtime@0.82.3': - resolution: {integrity: sha512-LNh5GlJvYHAnMurO+EyA8jJwN1rki7l3PSHuosDh2I7h00T6/u9rCkUjg/SvPmT1CZzvhuW0y+gf7jcqUy/Usg==} - engines: {node: '>=6.9.0'} - - '@oxc-project/types@0.82.3': - resolution: {integrity: sha512-6nCUxBnGX0c6qfZW5MaF6/fmu5dHJDMiMPaioKHKs5mi5+8/FHQ7WGjgQIz1zxpmceMYfdIXkOaLYE+ejbuOtA==} - '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@rolldown/binding-android-arm64@1.0.0-beta.34': - resolution: {integrity: sha512-jf5GNe5jP3Sr1Tih0WKvg2bzvh5T/1TA0fn1u32xSH7ca/p5t+/QRr4VRFCV/na5vjwKEhwWrChsL2AWlY+eoA==} + '@rolldown/pluginutils@1.0.0-beta.32': + resolution: {integrity: sha512-QReCdvxiUZAPkvp1xpAg62IeNzykOFA6syH2CnClif4YmALN1XKpB39XneL80008UbtMShthSVDKmrx05N1q/g==} + + '@rollup/rollup-android-arm-eabi@4.49.0': + resolution: {integrity: sha512-rlKIeL854Ed0e09QGYFlmDNbka6I3EQFw7iZuugQjMb11KMpJCLPFL4ZPbMfaEhLADEL1yx0oujGkBQ7+qW3eA==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.49.0': + resolution: {integrity: sha512-cqPpZdKUSQYRtLLr6R4X3sD4jCBO1zUmeo3qrWBCqYIeH8Q3KRL4F3V7XJ2Rm8/RJOQBZuqzQGWPjjvFUcYa/w==} cpu: [arm64] os: [android] - '@rolldown/binding-darwin-arm64@1.0.0-beta.34': - resolution: {integrity: sha512-2F/TqH4QuJQ34tgWxqBjFL3XV1gMzeQgUO8YRtCPGBSP0GhxtoFzsp7KqmQEothsxztlv+KhhT9Dbg3HHwHViQ==} + '@rollup/rollup-darwin-arm64@4.49.0': + resolution: {integrity: sha512-99kMMSMQT7got6iYX3yyIiJfFndpojBmkHfTc1rIje8VbjhmqBXE+nb7ZZP3A5skLyujvT0eIUCUsxAe6NjWbw==} cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-x64@1.0.0-beta.34': - resolution: {integrity: sha512-E1QuFslgLWbHQ8Qli/AqUKdfg0pockQPwRxVbhNQ74SciZEZpzLaujkdmOLSccMlSXDfFCF8RPnMoRAzQ9JV8Q==} + '@rollup/rollup-darwin-x64@4.49.0': + resolution: {integrity: sha512-y8cXoD3wdWUDpjOLMKLx6l+NFz3NlkWKcBCBfttUn+VGSfgsQ5o/yDUGtzE9HvsodkP0+16N0P4Ty1VuhtRUGg==} cpu: [x64] os: [darwin] - '@rolldown/binding-freebsd-x64@1.0.0-beta.34': - resolution: {integrity: sha512-VS8VInNCwnkpI9WeQaWu3kVBq9ty6g7KrHdLxYMzeqz24+w9hg712TcWdqzdY6sn+24lUoMD9jTZrZ/qfVpk0g==} + '@rollup/rollup-freebsd-arm64@4.49.0': + resolution: {integrity: sha512-3mY5Pr7qv4GS4ZvWoSP8zha8YoiqrU+e0ViPvB549jvliBbdNLrg2ywPGkgLC3cmvN8ya3za+Q2xVyT6z+vZqA==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.49.0': + resolution: {integrity: sha512-C9KzzOAQU5gU4kG8DTk+tjdKjpWhVWd5uVkinCwwFub2m7cDYLOdtXoMrExfeBmeRy9kBQMkiyJ+HULyF1yj9w==} cpu: [x64] os: [freebsd] - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.34': - resolution: {integrity: sha512-4St4emjcnULnxJYb/5ZDrH/kK/j6PcUgc3eAqH5STmTrcF+I9m/X2xvSF2a2bWv1DOQhxBewThu0KkwGHdgu5w==} + '@rollup/rollup-linux-arm-gnueabihf@4.49.0': + resolution: {integrity: sha512-OVSQgEZDVLnTbMq5NBs6xkmz3AADByCWI4RdKSFNlDsYXdFtlxS59J+w+LippJe8KcmeSSM3ba+GlsM9+WwC1w==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.49.0': + resolution: {integrity: sha512-ZnfSFA7fDUHNa4P3VwAcfaBLakCbYaxCk0jUnS3dTou9P95kwoOLAMlT3WmEJDBCSrOEFFV0Y1HXiwfLYJuLlA==} cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.34': - resolution: {integrity: sha512-a737FTqhFUoWfnebS2SnQ2BS50p0JdukdkUBwy2J06j4hZ6Eej0zEB8vTfAqoCjn8BQKkXBy+3Sx0IRkgwz1gA==} + '@rollup/rollup-linux-arm64-gnu@4.49.0': + resolution: {integrity: sha512-Z81u+gfrobVK2iV7GqZCBfEB1y6+I61AH466lNK+xy1jfqFLiQ9Qv716WUM5fxFrYxwC7ziVdZRU9qvGHkYIJg==} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-musl@1.0.0-beta.34': - resolution: {integrity: sha512-NH+FeQWKyuw0k+PbXqpFWNfvD8RPvfJk766B/njdaWz4TmiEcSB0Nb6guNw1rBpM1FmltQYb3fFnTumtC6pRfA==} + '@rollup/rollup-linux-arm64-musl@4.49.0': + resolution: {integrity: sha512-zoAwS0KCXSnTp9NH/h9aamBAIve0DXeYpll85shf9NJ0URjSTzzS+Z9evmolN+ICfD3v8skKUPyk2PO0uGdFqg==} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-x64-gnu@1.0.0-beta.34': - resolution: {integrity: sha512-Q3RSCivp8pNadYK8ke3hLnQk08BkpZX9BmMjgwae2FWzdxhxxUiUzd9By7kneUL0vRQ4uRnhD9VkFQ+Haeqdvw==} - cpu: [x64] + '@rollup/rollup-linux-loongarch64-gnu@4.49.0': + resolution: {integrity: sha512-2QyUyQQ1ZtwZGiq0nvODL+vLJBtciItC3/5cYN8ncDQcv5avrt2MbKt1XU/vFAJlLta5KujqyHdYtdag4YEjYQ==} + cpu: [loong64] os: [linux] - '@rolldown/binding-linux-x64-musl@1.0.0-beta.34': - resolution: {integrity: sha512-wDd/HrNcVoBhWWBUW3evJHoo7GJE/RofssBy3Dsiip05YUBmokQVrYAyrboOY4dzs/lJ7HYeBtWQ9hj8wlyF0A==} - cpu: [x64] + '@rollup/rollup-linux-ppc64-gnu@4.49.0': + resolution: {integrity: sha512-k9aEmOWt+mrMuD3skjVJSSxHckJp+SiFzFG+v8JLXbc/xi9hv2icSkR3U7uQzqy+/QbbYY7iNB9eDTwrELo14g==} + cpu: [ppc64] os: [linux] - '@rolldown/binding-openharmony-arm64@1.0.0-beta.34': - resolution: {integrity: sha512-dH3FTEV6KTNWpYSgjSXZzeX7vLty9oBYn6R3laEdhwZftQwq030LKL+5wyQdlbX5pnbh4h127hpv3Hl1+sj8dg==} - cpu: [arm64] - os: [openharmony] + '@rollup/rollup-linux-riscv64-gnu@4.49.0': + resolution: {integrity: sha512-rDKRFFIWJ/zJn6uk2IdYLc09Z7zkE5IFIOWqpuU0o6ZpHcdniAyWkwSUWE/Z25N/wNDmFHHMzin84qW7Wzkjsw==} + cpu: [riscv64] + os: [linux] - '@rolldown/binding-wasm32-wasi@1.0.0-beta.34': - resolution: {integrity: sha512-y5BUf+QtO0JsIDKA51FcGwvhJmv89BYjUl8AmN7jqD6k/eU55mH6RJYnxwCsODq5m7KSSTigVb6O7/GqB8wbPw==} - engines: {node: '>=14.0.0'} - cpu: [wasm32] + '@rollup/rollup-linux-riscv64-musl@4.49.0': + resolution: {integrity: sha512-FkkhIY/hYFVnOzz1WeV3S9Bd1h0hda/gRqvZCMpHWDHdiIHn6pqsY3b5eSbvGccWHMQ1uUzgZTKS4oGpykf8Tw==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.49.0': + resolution: {integrity: sha512-gRf5c+A7QiOG3UwLyOOtyJMD31JJhMjBvpfhAitPAoqZFcOeK3Kc1Veg1z/trmt+2P6F/biT02fU19GGTS529A==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.49.0': + resolution: {integrity: sha512-BR7+blScdLW1h/2hB/2oXM+dhTmpW3rQt1DeSiCP9mc2NMMkqVgjIN3DDsNpKmezffGC9R8XKVOLmBkRUcK/sA==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.49.0': + resolution: {integrity: sha512-hDMOAe+6nX3V5ei1I7Au3wcr9h3ktKzDvF2ne5ovX8RZiAHEtX1A5SNNk4zt1Qt77CmnbqT+upb/umzoPMWiPg==} + cpu: [x64] + os: [linux] - '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.34': - resolution: {integrity: sha512-ga5hFhdTwpaNxEiuxZHWnD3ed0GBAzbgzS5tRHpe0ObptxM1a9Xrq6TVfNQirBLwb5Y7T/FJmJi3pmdLy95ljg==} + '@rollup/rollup-win32-arm64-msvc@4.49.0': + resolution: {integrity: sha512-wkNRzfiIGaElC9kXUT+HLx17z7D0jl+9tGYRKwd8r7cUqTL7GYAvgUY++U2hK6Ar7z5Z6IRRoWC8kQxpmM7TDA==} cpu: [arm64] os: [win32] - '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.34': - resolution: {integrity: sha512-4/MBp9T9eRnZskxWr8EXD/xHvLhdjWaeX/qY9LPRG1JdCGV3DphkLTy5AWwIQ5jhAy2ZNJR5z2fYRlpWU0sIyQ==} + '@rollup/rollup-win32-ia32-msvc@4.49.0': + resolution: {integrity: sha512-gq5aW/SyNpjp71AAzroH37DtINDcX1Qw2iv9Chyz49ZgdOP3NV8QCyKZUrGsYX9Yyggj5soFiRCgsL3HwD8TdA==} cpu: [ia32] os: [win32] - '@rolldown/binding-win32-x64-msvc@1.0.0-beta.34': - resolution: {integrity: sha512-7O5iUBX6HSBKlQU4WykpUoEmb0wQmonb6ziKFr3dJTHud2kzDnWMqk344T0qm3uGv9Ddq6Re/94pInxo1G2d4w==} + '@rollup/rollup-win32-x64-msvc@4.49.0': + resolution: {integrity: sha512-gEtqFbzmZLFk2xKh7g0Rlo8xzho8KrEFEkzvHbfUGkrgXOpZ4XagQ6n+wIZFNh1nTb8UD16J4nFSFKXYgnbdBg==} cpu: [x64] os: [win32] - '@rolldown/pluginutils@1.0.0-beta.34': - resolution: {integrity: sha512-LyAREkZHP5pMom7c24meKmJCdhf2hEyvam2q0unr3or9ydwDL+DJ8chTF6Av/RFPb3rH8UFBdMzO5MxTZW97oA==} - '@rsbuild/core@1.5.0-beta.4': resolution: {integrity: sha512-h1jqpjZunalsdxTcJCbY8DovLu6F4MQgsYdZyxDjUp0xuggQayi1tpcE6MhLs3WWa077g+LZ2Am4gKt/pl/W9Q==} engines: {node: '>=18.12.0'} @@ -568,27 +497,93 @@ packages: resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} engines: {node: '>=16.0.0'} - '@swc/helpers@0.5.17': - resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} + '@swc/core-darwin-arm64@1.13.5': + resolution: {integrity: sha512-lKNv7SujeXvKn16gvQqUQI5DdyY8v7xcoO3k06/FJbHJS90zEwZdQiMNRiqpYw/orU543tPaWgz7cIYWhbopiQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [darwin] - '@tybys/wasm-util@0.10.0': - resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} + '@swc/core-darwin-x64@1.13.5': + resolution: {integrity: sha512-ILd38Fg/w23vHb0yVjlWvQBoE37ZJTdlLHa8LRCFDdX4WKfnVBiblsCU9ar4QTMNdeTBEX9iUF4IrbNWhaF1Ng==} + engines: {node: '>=10'} + cpu: [x64] + os: [darwin] + + '@swc/core-linux-arm-gnueabihf@1.13.5': + resolution: {integrity: sha512-Q6eS3Pt8GLkXxqz9TAw+AUk9HpVJt8Uzm54MvPsqp2yuGmY0/sNaPPNVqctCX9fu/Nu8eaWUen0si6iEiCsazQ==} + engines: {node: '>=10'} + cpu: [arm] + os: [linux] + + '@swc/core-linux-arm64-gnu@1.13.5': + resolution: {integrity: sha512-aNDfeN+9af+y+M2MYfxCzCy/VDq7Z5YIbMqRI739o8Ganz6ST+27kjQFd8Y/57JN/hcnUEa9xqdS3XY7WaVtSw==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + + '@swc/core-linux-arm64-musl@1.13.5': + resolution: {integrity: sha512-9+ZxFN5GJag4CnYnq6apKTnnezpfJhCumyz0504/JbHLo+Ue+ZtJnf3RhyA9W9TINtLE0bC4hKpWi8ZKoETyOQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + + '@swc/core-linux-x64-gnu@1.13.5': + resolution: {integrity: sha512-WD530qvHrki8Ywt/PloKUjaRKgstQqNGvmZl54g06kA+hqtSE2FTG9gngXr3UJxYu/cNAjJYiBifm7+w4nbHbA==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + + '@swc/core-linux-x64-musl@1.13.5': + resolution: {integrity: sha512-Luj8y4OFYx4DHNQTWjdIuKTq2f5k6uSXICqx+FSabnXptaOBAbJHNbHT/06JZh6NRUouaf0mYXN0mcsqvkhd7Q==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + '@swc/core-win32-arm64-msvc@1.13.5': + resolution: {integrity: sha512-cZ6UpumhF9SDJvv4DA2fo9WIzlNFuKSkZpZmPG1c+4PFSEMy5DFOjBSllCvnqihCabzXzpn6ykCwBmHpy31vQw==} + engines: {node: '>=10'} + cpu: [arm64] + os: [win32] - '@types/babel__generator@7.27.0': - resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==} + '@swc/core-win32-ia32-msvc@1.13.5': + resolution: {integrity: sha512-C5Yi/xIikrFUzZcyGj9L3RpKljFvKiDMtyDzPKzlsDrKIw2EYY+bF88gB6oGY5RGmv4DAX8dbnpRAqgFD0FMEw==} + engines: {node: '>=10'} + cpu: [ia32] + os: [win32] - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + '@swc/core-win32-x64-msvc@1.13.5': + resolution: {integrity: sha512-YrKdMVxbYmlfybCSbRtrilc6UA8GF5aPmGKBdPvjrarvsmf4i7ZHGCEnLtfOMd3Lwbs2WUZq3WdMbozYeLU93Q==} + engines: {node: '>=10'} + cpu: [x64] + os: [win32] - '@types/babel__traverse@7.28.0': - resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} + '@swc/core@1.13.5': + resolution: {integrity: sha512-WezcBo8a0Dg2rnR82zhwoR6aRNxeTGfK5QCD6TQ+kg3xx/zNT02s/0o+81h/3zhvFSB24NtqEr8FTw88O5W/JQ==} + engines: {node: '>=10'} + peerDependencies: + '@swc/helpers': '>=0.5.17' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@swc/counter@0.1.3': + resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + + '@swc/helpers@0.5.17': + resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} + + '@swc/types@0.1.24': + resolution: {integrity: sha512-tjTMh3V4vAORHtdTprLlfoMptu1WfTZG9Rsca6yOKyNYsRr+MUXutKmliB17orgSZk5DpnDxs8GUdd/qwYxOng==} + + '@tybys/wasm-util@0.10.0': + resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} '@types/big.js@6.2.2': resolution: {integrity: sha512-e2cOW9YlVzFY2iScnGBBkplKsrn2CsObHQ2Hiw4V1sSyiGbgWL8IyqE3zFi1Pt5o1pdAtYkDAIsF3KKUPjdzaA==} + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + '@types/node@22.17.2': resolution: {integrity: sha512-gL6z5N9Jm9mhY+U2KXZpteb+09zyffliRkZyZOHODGATyC5B1Jt/7TzuuiLkFsSUMLbS1OLmlj/E+/3KF4Q/4w==} @@ -601,11 +596,11 @@ packages: '@types/scheduler@0.26.0': resolution: {integrity: sha512-WFHp9YUJQ6CKshqoC37iOlHnQSmxNc795UhB26CyBBttrN9svdIrUjl/NjnNmfcwtncN0h/0PPAFWv9ovP8mLA==} - '@vitejs/plugin-react@5.0.2': - resolution: {integrity: sha512-tmyFgixPZCx2+e6VO9TNITWcCQl8+Nl/E8YbAyPVv85QCc7/A3JrdfG2A8gIzvVhWuzMOVrFW1aReaNxrI6tbw==} + '@vitejs/plugin-react-swc@4.0.1': + resolution: {integrity: sha512-NQhPjysi5duItyrMd5JWZFf2vNOuSMyw+EoZyTBDzk+DkfYD8WNrsUs09sELV2cr1P15nufsN25hsUBt4CKF9Q==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + vite: ^4 || ^5 || ^6 || ^7 abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} @@ -627,10 +622,6 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} - ansis@4.1.0: - resolution: {integrity: sha512-BGcItUBWSMRgOCe+SVZJ+S7yTRG0eGt9cXAHev72yuGcY23hnLA7Bky5L/xLyPINoSN95geovfBkqoTlNZYa7w==} - engines: {node: '>=14'} - archiver-utils@5.0.2: resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==} engines: {node: '>= 14'} @@ -657,11 +648,6 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} - browserslist@4.25.3: - resolution: {integrity: sha512-cDGv1kkDI4/0e5yON9yM5G/0A5u8sf5TnmdX5C9qHzI9PPu++sQ9zjm1k9NiOrf3riY4OkK0zSGqfvJyJsgCBQ==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - buffer-crc32@1.0.0: resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==} engines: {node: '>=8.0.0'} @@ -669,9 +655,6 @@ packages: buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - caniuse-lite@1.0.30001737: - resolution: {integrity: sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==} - chalk@5.6.0: resolution: {integrity: sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} @@ -691,9 +674,6 @@ packages: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - core-js@3.45.1: resolution: {integrity: sha512-L4NPsJlCfZsPeXukyzHFlg/i7IIVwHSItR0wg0FLNqYClJ4MQYTYLbC7EkjKYRLZF2iof2MUgN0EGy7MdQFChg==} @@ -716,15 +696,6 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - debug@4.4.1: - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - detect-libc@2.0.4: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} @@ -732,9 +703,6 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.211: - resolution: {integrity: sha512-IGBvimJkotaLzFnwIVgW9/UD/AOJ2tByUmeOrtqBfACSbAw5b1G0XpvdaieKyc7ULmbwXVx+4e4Be8pOPBrYkw==} - emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -746,10 +714,6 @@ packages: engines: {node: '>=18'} hasBin: true - escalade@3.2.0: - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} - engines: {node: '>=6'} - event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -783,10 +747,6 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true @@ -838,14 +798,6 @@ packages: resolution: {integrity: sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==} hasBin: true - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - jsesc@3.1.0: - resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} - engines: {node: '>=6'} - hasBin: true - json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -929,9 +881,6 @@ packages: resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} engines: {node: 20 || >=22} - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} @@ -957,17 +906,11 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - node-releases@2.0.19: - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -1005,10 +948,6 @@ packages: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} - react-refresh@0.17.0: - resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} - engines: {node: '>=0.10.0'} - readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} @@ -1019,48 +958,9 @@ packages: readdir-glob@1.1.3: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} - rolldown-vite@7.1.5: - resolution: {integrity: sha512-NgHjKatQn1B5TjtNVS3+Uq3JBUPP8s70cMxLzGHpv/UyCGj0SQUtVYImNWbU2uqfOpNSnqhI+nbR7tmPPcb1qQ==} - engines: {node: ^20.19.0 || >=22.12.0} - hasBin: true - peerDependencies: - '@types/node': ^20.19.0 || >=22.12.0 - esbuild: ^0.25.0 - jiti: '>=1.21.0' - less: ^4.0.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 - peerDependenciesMeta: - '@types/node': - optional: true - esbuild: - optional: true - jiti: - optional: true - less: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - - rolldown@1.0.0-beta.34: - resolution: {integrity: sha512-Wwh7EwalMzzX3Yy3VN58VEajeR2Si8+HDNMf706jPLIqU7CxneRW+dQVfznf5O0TWTnJyu4npelwg2bzTXB1Nw==} + rollup@4.49.0: + resolution: {integrity: sha512-3IVq0cGJ6H7fKXXEdVt+RcYvRCt8beYY9K1760wGQwSAHZcS9eot1zDG5axUbcp/kWRi5zKIIDX8MoKv/TzvZA==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true rsbuild-plugin-dts@0.12.2: @@ -1082,10 +982,6 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1163,15 +1059,49 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - update-browserslist-db@1.1.3: - resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + vite@7.1.3: + resolution: {integrity: sha512-OOUi5zjkDxYrKhTV3V7iKsoS37VUM7v40+HuwEmcrsf11Cdx9y3DIr2Px6liIcZFwt3XSRpQvFpL3WVy7ApkGw==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + 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 + 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 + which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -1185,9 +1115,6 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - zip-a-folder@3.1.9: resolution: {integrity: sha512-0TPP3eK5mbZxHnOE8w/Jg6gwxsxZOrA3hXHMfC3I4mcTvyJwNt7GZP8i6uiAMVNu43QTmVz0ngEMKcjgpLZLmQ==} @@ -1197,11 +1124,6 @@ packages: snapshots: - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.30 - '@ast-grep/napi-darwin-arm64@0.37.0': optional: true @@ -1241,118 +1163,6 @@ snapshots: '@ast-grep/napi-win32-ia32-msvc': 0.37.0 '@ast-grep/napi-win32-x64-msvc': 0.37.0 - '@babel/code-frame@7.27.1': - dependencies: - '@babel/helper-validator-identifier': 7.27.1 - js-tokens: 4.0.0 - picocolors: 1.1.1 - - '@babel/compat-data@7.28.0': {} - - '@babel/core@7.28.3': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.27.1 - '@babel/generator': 7.28.3 - '@babel/helper-compilation-targets': 7.27.2 - '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.3) - '@babel/helpers': 7.28.3 - '@babel/parser': 7.28.3 - '@babel/template': 7.27.2 - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 - convert-source-map: 2.0.0 - debug: 4.4.1 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.28.3': - dependencies: - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 - '@jridgewell/gen-mapping': 0.3.13 - '@jridgewell/trace-mapping': 0.3.30 - jsesc: 3.1.0 - - '@babel/helper-compilation-targets@7.27.2': - dependencies: - '@babel/compat-data': 7.28.0 - '@babel/helper-validator-option': 7.27.1 - browserslist: 4.25.3 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-globals@7.28.0': {} - - '@babel/helper-module-imports@7.27.1': - dependencies: - '@babel/traverse': 7.28.3 - '@babel/types': 7.28.2 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.3)': - dependencies: - '@babel/core': 7.28.3 - '@babel/helper-module-imports': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 - '@babel/traverse': 7.28.3 - transitivePeerDependencies: - - supports-color - - '@babel/helper-plugin-utils@7.27.1': {} - - '@babel/helper-string-parser@7.27.1': {} - - '@babel/helper-validator-identifier@7.27.1': {} - - '@babel/helper-validator-option@7.27.1': {} - - '@babel/helpers@7.28.3': - dependencies: - '@babel/template': 7.27.2 - '@babel/types': 7.28.2 - - '@babel/parser@7.28.3': - dependencies: - '@babel/types': 7.28.2 - - '@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.28.3)': - dependencies: - '@babel/core': 7.28.3 - '@babel/helper-plugin-utils': 7.27.1 - - '@babel/plugin-transform-react-jsx-source@7.27.1(@babel/core@7.28.3)': - dependencies: - '@babel/core': 7.28.3 - '@babel/helper-plugin-utils': 7.27.1 - - '@babel/template@7.27.2': - dependencies: - '@babel/code-frame': 7.27.1 - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 - - '@babel/traverse@7.28.3': - dependencies: - '@babel/code-frame': 7.27.1 - '@babel/generator': 7.28.3 - '@babel/helper-globals': 7.28.0 - '@babel/parser': 7.28.3 - '@babel/template': 7.27.2 - '@babel/types': 7.28.2 - debug: 4.4.1 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.28.2': - dependencies: - '@babel/helper-string-parser': 7.27.1 - '@babel/helper-validator-identifier': 7.27.1 - '@emnapi/core@1.4.5': dependencies: '@emnapi/wasi-threads': 1.0.4 @@ -1462,20 +1272,8 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@jridgewell/gen-mapping@0.3.13': - dependencies: - '@jridgewell/sourcemap-codec': 1.5.5 - '@jridgewell/trace-mapping': 0.3.30 - - '@jridgewell/resolve-uri@3.1.2': {} - '@jridgewell/sourcemap-codec@1.5.5': {} - '@jridgewell/trace-mapping@0.3.30': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.5 - '@module-federation/error-codes@0.18.0': {} '@module-federation/runtime-core@0.18.0': @@ -1508,58 +1306,70 @@ snapshots: '@tybys/wasm-util': 0.10.0 optional: true - '@oxc-project/runtime@0.82.3': {} + '@pkgjs/parseargs@0.11.0': + optional: true - '@oxc-project/types@0.82.3': {} + '@rolldown/pluginutils@1.0.0-beta.32': {} - '@pkgjs/parseargs@0.11.0': + '@rollup/rollup-android-arm-eabi@4.49.0': optional: true - '@rolldown/binding-android-arm64@1.0.0-beta.34': + '@rollup/rollup-android-arm64@4.49.0': optional: true - '@rolldown/binding-darwin-arm64@1.0.0-beta.34': + '@rollup/rollup-darwin-arm64@4.49.0': optional: true - '@rolldown/binding-darwin-x64@1.0.0-beta.34': + '@rollup/rollup-darwin-x64@4.49.0': optional: true - '@rolldown/binding-freebsd-x64@1.0.0-beta.34': + '@rollup/rollup-freebsd-arm64@4.49.0': optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.34': + '@rollup/rollup-freebsd-x64@4.49.0': optional: true - '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.34': + '@rollup/rollup-linux-arm-gnueabihf@4.49.0': optional: true - '@rolldown/binding-linux-arm64-musl@1.0.0-beta.34': + '@rollup/rollup-linux-arm-musleabihf@4.49.0': optional: true - '@rolldown/binding-linux-x64-gnu@1.0.0-beta.34': + '@rollup/rollup-linux-arm64-gnu@4.49.0': optional: true - '@rolldown/binding-linux-x64-musl@1.0.0-beta.34': + '@rollup/rollup-linux-arm64-musl@4.49.0': optional: true - '@rolldown/binding-openharmony-arm64@1.0.0-beta.34': + '@rollup/rollup-linux-loongarch64-gnu@4.49.0': optional: true - '@rolldown/binding-wasm32-wasi@1.0.0-beta.34': - dependencies: - '@napi-rs/wasm-runtime': 1.0.3 + '@rollup/rollup-linux-ppc64-gnu@4.49.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.49.0': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.49.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.49.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.49.0': optional: true - '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.34': + '@rollup/rollup-linux-x64-musl@4.49.0': optional: true - '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.34': + '@rollup/rollup-win32-arm64-msvc@4.49.0': optional: true - '@rolldown/binding-win32-x64-msvc@1.0.0-beta.34': + '@rollup/rollup-win32-ia32-msvc@4.49.0': optional: true - '@rolldown/pluginutils@1.0.0-beta.34': {} + '@rollup/rollup-win32-x64-msvc@4.49.0': + optional: true '@rsbuild/core@1.5.0-beta.4': dependencies: @@ -1632,38 +1442,72 @@ snapshots: '@rspack/lite-tapable@1.0.1': {} - '@swc/helpers@0.5.17': - dependencies: - tslib: 2.8.1 + '@swc/core-darwin-arm64@1.13.5': + optional: true - '@tybys/wasm-util@0.10.0': - dependencies: - tslib: 2.8.1 + '@swc/core-darwin-x64@1.13.5': + optional: true + + '@swc/core-linux-arm-gnueabihf@1.13.5': + optional: true + + '@swc/core-linux-arm64-gnu@1.13.5': + optional: true + + '@swc/core-linux-arm64-musl@1.13.5': + optional: true + + '@swc/core-linux-x64-gnu@1.13.5': optional: true - '@types/babel__core@7.20.5': + '@swc/core-linux-x64-musl@1.13.5': + optional: true + + '@swc/core-win32-arm64-msvc@1.13.5': + optional: true + + '@swc/core-win32-ia32-msvc@1.13.5': + optional: true + + '@swc/core-win32-x64-msvc@1.13.5': + optional: true + + '@swc/core@1.13.5(@swc/helpers@0.5.17)': dependencies: - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 - '@types/babel__generator': 7.27.0 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.28.0 + '@swc/counter': 0.1.3 + '@swc/types': 0.1.24 + optionalDependencies: + '@swc/core-darwin-arm64': 1.13.5 + '@swc/core-darwin-x64': 1.13.5 + '@swc/core-linux-arm-gnueabihf': 1.13.5 + '@swc/core-linux-arm64-gnu': 1.13.5 + '@swc/core-linux-arm64-musl': 1.13.5 + '@swc/core-linux-x64-gnu': 1.13.5 + '@swc/core-linux-x64-musl': 1.13.5 + '@swc/core-win32-arm64-msvc': 1.13.5 + '@swc/core-win32-ia32-msvc': 1.13.5 + '@swc/core-win32-x64-msvc': 1.13.5 + '@swc/helpers': 0.5.17 + + '@swc/counter@0.1.3': {} - '@types/babel__generator@7.27.0': + '@swc/helpers@0.5.17': dependencies: - '@babel/types': 7.28.2 + tslib: 2.8.1 - '@types/babel__template@7.4.4': + '@swc/types@0.1.24': dependencies: - '@babel/parser': 7.28.3 - '@babel/types': 7.28.2 + '@swc/counter': 0.1.3 - '@types/babel__traverse@7.28.0': + '@tybys/wasm-util@0.10.0': dependencies: - '@babel/types': 7.28.2 + tslib: 2.8.1 + optional: true '@types/big.js@6.2.2': {} + '@types/estree@1.0.8': {} + '@types/node@22.17.2': dependencies: undici-types: 6.21.0 @@ -1678,17 +1522,13 @@ snapshots: '@types/scheduler@0.26.0': {} - '@vitejs/plugin-react@5.0.2(rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1))': + '@vitejs/plugin-react-swc@4.0.1(@swc/helpers@0.5.17)(vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1))': dependencies: - '@babel/core': 7.28.3 - '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.3) - '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.28.3) - '@rolldown/pluginutils': 1.0.0-beta.34 - '@types/babel__core': 7.20.5 - react-refresh: 0.17.0 - vite: rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1) + '@rolldown/pluginutils': 1.0.0-beta.32 + '@swc/core': 1.13.5(@swc/helpers@0.5.17) + vite: 7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1) transitivePeerDependencies: - - supports-color + - '@swc/helpers' abort-controller@3.0.0: dependencies: @@ -1704,8 +1544,6 @@ snapshots: ansi-styles@6.2.1: {} - ansis@4.1.0: {} - archiver-utils@5.0.2: dependencies: glob: 10.4.5 @@ -1741,13 +1579,6 @@ snapshots: dependencies: balanced-match: 1.0.2 - browserslist@4.25.3: - dependencies: - caniuse-lite: 1.0.30001737 - electron-to-chromium: 1.5.211 - node-releases: 2.0.19 - update-browserslist-db: 1.1.3(browserslist@4.25.3) - buffer-crc32@1.0.0: {} buffer@6.0.3: @@ -1755,8 +1586,6 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - caniuse-lite@1.0.30001737: {} - chalk@5.6.0: {} color-convert@2.0.1: @@ -1775,8 +1604,6 @@ snapshots: normalize-path: 3.0.0 readable-stream: 4.7.0 - convert-source-map@2.0.0: {} - core-js@3.45.1: {} core-util-is@1.0.3: {} @@ -1796,16 +1623,11 @@ snapshots: csstype@3.1.3: {} - debug@4.4.1: - dependencies: - ms: 2.1.3 - - detect-libc@2.0.4: {} + detect-libc@2.0.4: + optional: true eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.211: {} - emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} @@ -1838,9 +1660,6 @@ snapshots: '@esbuild/win32-arm64': 0.25.9 '@esbuild/win32-ia32': 0.25.9 '@esbuild/win32-x64': 0.25.9 - optional: true - - escalade@3.2.0: {} event-target-shim@5.0.1: {} @@ -1864,8 +1683,6 @@ snapshots: fsevents@2.3.3: optional: true - gensync@1.0.0-beta.2: {} - glob@10.4.5: dependencies: foreground-child: 3.3.1 @@ -1916,10 +1733,6 @@ snapshots: jiti@2.5.1: {} - js-tokens@4.0.0: {} - - jsesc@3.1.0: {} - json5@2.2.3: {} lazystream@1.0.1: @@ -1970,6 +1783,7 @@ snapshots: lightningcss-linux-x64-musl: 1.30.1 lightningcss-win32-arm64-msvc: 1.30.1 lightningcss-win32-x64-msvc: 1.30.1 + optional: true lodash@4.17.21: {} @@ -1977,10 +1791,6 @@ snapshots: lru-cache@11.1.0: {} - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - magic-string@0.30.17: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -2006,12 +1816,8 @@ snapshots: minipass@7.1.2: {} - ms@2.1.3: {} - nanoid@3.3.11: {} - node-releases@2.0.19: {} - normalize-path@3.0.0: {} package-json-from-dist@1.0.1: {} @@ -2042,8 +1848,6 @@ snapshots: process@0.11.10: {} - react-refresh@0.17.0: {} - readable-stream@2.3.8: dependencies: core-util-is: 1.0.3 @@ -2066,41 +1870,31 @@ snapshots: dependencies: minimatch: 5.1.6 - rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1): + rollup@4.49.0: dependencies: - fdir: 6.5.0(picomatch@4.0.3) - lightningcss: 1.30.1 - picomatch: 4.0.3 - postcss: 8.5.6 - rolldown: 1.0.0-beta.34 - tinyglobby: 0.2.14 + '@types/estree': 1.0.8 optionalDependencies: - '@types/node': 22.17.2 - esbuild: 0.25.9 + '@rollup/rollup-android-arm-eabi': 4.49.0 + '@rollup/rollup-android-arm64': 4.49.0 + '@rollup/rollup-darwin-arm64': 4.49.0 + '@rollup/rollup-darwin-x64': 4.49.0 + '@rollup/rollup-freebsd-arm64': 4.49.0 + '@rollup/rollup-freebsd-x64': 4.49.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.49.0 + '@rollup/rollup-linux-arm-musleabihf': 4.49.0 + '@rollup/rollup-linux-arm64-gnu': 4.49.0 + '@rollup/rollup-linux-arm64-musl': 4.49.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.49.0 + '@rollup/rollup-linux-ppc64-gnu': 4.49.0 + '@rollup/rollup-linux-riscv64-gnu': 4.49.0 + '@rollup/rollup-linux-riscv64-musl': 4.49.0 + '@rollup/rollup-linux-s390x-gnu': 4.49.0 + '@rollup/rollup-linux-x64-gnu': 4.49.0 + '@rollup/rollup-linux-x64-musl': 4.49.0 + '@rollup/rollup-win32-arm64-msvc': 4.49.0 + '@rollup/rollup-win32-ia32-msvc': 4.49.0 + '@rollup/rollup-win32-x64-msvc': 4.49.0 fsevents: 2.3.3 - jiti: 2.5.1 - - rolldown@1.0.0-beta.34: - dependencies: - '@oxc-project/runtime': 0.82.3 - '@oxc-project/types': 0.82.3 - '@rolldown/pluginutils': 1.0.0-beta.34 - ansis: 4.1.0 - optionalDependencies: - '@rolldown/binding-android-arm64': 1.0.0-beta.34 - '@rolldown/binding-darwin-arm64': 1.0.0-beta.34 - '@rolldown/binding-darwin-x64': 1.0.0-beta.34 - '@rolldown/binding-freebsd-x64': 1.0.0-beta.34 - '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-beta.34 - '@rolldown/binding-linux-arm64-gnu': 1.0.0-beta.34 - '@rolldown/binding-linux-arm64-musl': 1.0.0-beta.34 - '@rolldown/binding-linux-x64-gnu': 1.0.0-beta.34 - '@rolldown/binding-linux-x64-musl': 1.0.0-beta.34 - '@rolldown/binding-openharmony-arm64': 1.0.0-beta.34 - '@rolldown/binding-wasm32-wasi': 1.0.0-beta.34 - '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.34 - '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.34 - '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.34 rsbuild-plugin-dts@0.12.2(@rsbuild/core@1.5.0-beta.4)(typescript@5.9.2): dependencies: @@ -2117,8 +1911,6 @@ snapshots: safe-buffer@5.2.1: {} - semver@6.3.1: {} - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -2197,14 +1989,22 @@ snapshots: undici-types@6.21.0: {} - update-browserslist-db@1.1.3(browserslist@4.25.3): - dependencies: - browserslist: 4.25.3 - escalade: 3.2.0 - picocolors: 1.1.1 - util-deprecate@1.0.2: {} + vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1): + dependencies: + esbuild: 0.25.9 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + postcss: 8.5.6 + rollup: 4.49.0 + tinyglobby: 0.2.14 + optionalDependencies: + '@types/node': 22.17.2 + fsevents: 2.3.3 + jiti: 2.5.1 + lightningcss: 1.30.1 + which@2.0.2: dependencies: isexe: 2.0.0 @@ -2221,8 +2021,6 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.0 - yallist@3.1.1: {} - zip-a-folder@3.1.9: dependencies: archiver: 7.0.1 diff --git a/src/commands/start/web/index.ts b/src/commands/start/web/index.ts index 395b21b..a79997e 100644 --- a/src/commands/start/web/index.ts +++ b/src/commands/start/web/index.ts @@ -13,6 +13,7 @@ import getViteUserConfiguration from '../../../utils/getViteUserConfiguration'; import { generateTypesFromFile } from '../../../type-generator'; import { mendixHotreloadReactPlugin } from '../../../configurations/vite/plugins/mendix-hotreload-react-plugin'; import { mendixPatchViteClientPlugin } from '../../../configurations/vite/plugins/mendix-patch-vite-client-plugin'; +import { mendixHotreloadReactEsbuildPlugin } from '../../../configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin'; const generateTyping = async () => { const widgetName = await getWidgetName(); @@ -70,6 +71,13 @@ const startWebCommand = async () => { interval: 100 }, }, + optimizeDeps: { + esbuildOptions: { + plugins: [ + mendixHotreloadReactEsbuildPlugin() + ], + }, + }, plugins: [ ...resultViteConfig.plugins as PluginOption[], mendixHotreloadReactPlugin(), diff --git a/src/configurations/vite/index.ts b/src/configurations/vite/index.ts index cd21fbb..66bc6cc 100644 --- a/src/configurations/vite/index.ts +++ b/src/configurations/vite/index.ts @@ -1,5 +1,5 @@ import { UserConfig } from "vite"; -import react from '@vitejs/plugin-react'; +import react from '@vitejs/plugin-react-swc'; import path from "path"; import getWidgetName from "../../utils/getWidgetName"; @@ -33,11 +33,7 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom const widgetName = await getWidgetName(); return { - plugins: [ - react({ - jsxRuntime: 'classic' - }), - ], + plugins: [react()], define: { 'process.env': {}, 'process.env.NODE_ENV': '"production"' @@ -55,7 +51,7 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom }, formats: ['umd'] }, - rolldownOptions: { + rollupOptions: { external: [ 'react', 'react-dom', @@ -81,12 +77,7 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf const viteOutputDirectory = await getViteOutputDirectory(); return { - plugins: [ - react({ - ...userCustomConfig?.reactPluginOptions || {}, - jsxRuntime: 'classic' - }) - ], + plugins: [react(userCustomConfig?.reactPluginOptions || undefined)], define: { 'process.env': {}, 'process.env.NODE_ENV': isProduction ? '"production"' : '"development"' @@ -113,7 +104,7 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf }, cssFileName: widgetName }, - rolldownOptions: { + rollupOptions: { external: [ 'react', 'react-dom', diff --git a/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts b/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts new file mode 100644 index 0000000..3096244 --- /dev/null +++ b/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts @@ -0,0 +1,186 @@ +import { Plugin } from "esbuild"; + +// @note When the React version of Mendix is updated, the following content must also be updated. +// @todo Depending on the React version, we need to consider whether there is a way to handle this automatically rather than manually. +export function mendixHotreloadReactEsbuildPlugin(): Plugin { + return { + name: 'mendix-hotreload-react-esbuild', + setup(build) { + build.onResolve({ filter: /^react$/ }, (args) => { + return { + path: 'mendix:react', + namespace: 'mendix-react', + external: false + }; + }); + + build.onResolve({ filter: /^react-dom$/ }, (args) => { + return { + path: 'mendix:react-dom', + namespace: 'mendix-react-dom', + external: false + }; + }); + + build.onResolve({ filter: /^react-dom\/client$/ }, (args) => { + return { + path: 'mendix:react-dom/client', + namespace: 'mendix-react-dom-client', + external: false + }; + }); + + build.onResolve({ filter: /^react\/jsx-runtime$/ }, (args) => { + return { + path: 'mendix:react/jsx-runtime', + namespace: 'mendix-react-jsx-runtime', + external: false + }; + }); + + build.onResolve({ filter: /^react\/jsx-dev-runtime$/ }, (args) => { + return { + path: 'mendix:react/jsx-dev-runtime', + namespace: 'mendix-react-jsx-dev-runtime', + external: false + }; + }); + + build.onLoad({ filter: /.*/, namespace: 'mendix-react' }, () => { + return { + contents: ` + const React = window.React; + + export const Children = React.Children; + export const Component = React.Component; + export const Fragment = React.Fragment; + export const Profiler = React.Profiler; + export const PureComponent = React.PureComponent; + export const StrictMode = React.StrictMode; + export const Suspense = React.Suspense; + export const cloneElement = React.cloneElement; + export const createContext = React.createContext; + export const createElement = React.createElement; + export const createFactory = React.createFactory; + export const createRef = React.createRef; + export const forwardRef = React.forwardRef; + export const isValidElement = React.isValidElement; + export const lazy = React.lazy; + export const memo = React.memo; + export const startTransition = React.startTransition; + export const unstable_act = React.unstable_act; + export const useCallback = React.useCallback; + export const useContext = React.useContext; + export const useDebugValue = React.useDebugValue; + export const useDeferredValue = React.useDeferredValue; + export const useEffect = React.useEffect; + export const useId = React.useId; + export const useImperativeHandle = React.useImperativeHandle; + export const useInsertionEffect = React.useInsertionEffect; + export const useLayoutEffect = React.useLayoutEffect; + export const useMemo = React.useMemo; + export const useReducer = React.useReducer; + export const useRef = React.useRef; + export const useState = React.useState; + export const useSyncExternalStore = React.useSyncExternalStore; + export const useTransition = React.useTransition; + export const version = React.version; + + export default React; + `, + loader: 'js', + }; + }); + + build.onLoad({ filter: /.*/, namespace: 'mendix-react-dom' }, () => { + return { + contents: ` + const ReactDOM = window.ReactDOM; + + export const createPortal = ReactDOM.createPortal; + export const createRoot = ReactDOM.createRoot; + export const findDOMNode = ReactDOM.findDOMNode; + export const flushSync = ReactDOM.flushSync; + export const hydrate = ReactDOM.hydrate; + export const hydrateRoot = ReactDOM.hydrateRoot; + export const render = ReactDOM.render; + export const unmountComponentAtNode = ReactDOM.unmountComponentAtNode; + export const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates; + export const unstable_renderSubtreeIntoContainer = ReactDOM.unstable_renderSubtreeIntoContainer; + export const version = ReactDOM.version; + + export default ReactDOM; + `, + loader: 'js', + }; + }); + + build.onLoad({ filter: /.*/, namespace: 'mendix-react-dom-client' }, () => { + return { + contents: ` + const ReactDOMClient = window.ReactDOMClient; + + export const createRoot = ReactDOMClient.createRoot; + export const hydrateRoot = ReactDOMClient.hydrateRoot; + + export default ReactDOMClient; + `, + loader: 'js', + }; + }); + + build.onLoad({ filter: /.*/, namespace: 'mendix-react-jsx-runtime' }, () => { + return { + contents: ` + const ReactJSXRuntime = window.ReactJSXRuntime; + + export const Fragment = ReactJSXRuntime.Fragment; + export const jsx = ReactJSXRuntime.jsx; + export const jsxs = ReactJSXRuntime.jsxs; + + export default ReactJSXRuntime; + `, + loader: 'js', + }; + }); + + build.onLoad({ filter: /.*/, namespace: 'mendix-react-jsx-dev-runtime' }, () => { + return { + contents: ` + const ReactJSXDevRuntime = window.ReactJSXDevRuntime; + + export const Fragment = ReactJSXDevRuntime.Fragment; + export const jsxDEV = ReactJSXDevRuntime.jsxDEV; + + export default ReactJSXDevRuntime; + `, + loader: 'js', + }; + }); + + build.onResolve({ filter: /.*node_modules[\\\/]react[\\\/]index\.js$/ }, (args) => { + return { + path: 'mendix:react', + namespace: 'mendix-react', + external: false + }; + }); + + build.onResolve({ filter: /.*node_modules[\\\/]react-dom[\\\/]index\.js$/ }, (args) => { + return { + path: 'mendix:react-dom', + namespace: 'mendix-react-dom', + external: false + }; + }); + + build.onResolve({ filter: /.*node_modules[\\\/]react-dom[\\\/]client\.js$/ }, (args) => { + return { + path: 'mendix:react-dom/client', + namespace: 'mendix-react-dom-client', + external: false + }; + }); + } + }; +} \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index d13c5e8..944dae6 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ import type { UserConfig } from "vite"; -import reactPlugin from "@vitejs/plugin-react"; +import reactPlugin from "@vitejs/plugin-react-swc"; export type PWTConfig = UserConfig & { reactPluginOptions?: Parameters[0]; From c971df45bf536200d74f2d10252bcff713368ec5 Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 17:24:15 +0900 Subject: [PATCH 4/9] fix: rollback readme contents --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7002a17..1d9783f 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ export default definePWTConfig(() => { }); ``` -hyper-pwt uses the [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) plugin. The settings for this plugin can be changed as follows. +hyper-pwt uses the [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) plugin. The settings for this plugin can be changed as follows. ```javascript import { definePWTConfig } from '@repixelcorp/hyper-pwt'; @@ -59,7 +59,7 @@ import { definePWTConfig } from '@repixelcorp/hyper-pwt'; export default definePWTConfig(() => { return { reactPluginOptions: { - jsxRuntime: 'classic' + tsDecorators: true, } }; }); From 7612fd41d7074083edf2b9cfade0427cb37473f5 Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 17:25:05 +0900 Subject: [PATCH 5/9] feat: bump version to 0.3.1 --- package.json | 4 ++-- pnpm-lock.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 4547329..5429b34 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@repixelcorp/hyper-pwt", - "version": "0.3.0", + "version": "0.3.1", "description": "A faster, more modern, superior alternative for Mendix PWT.", "repository": { "type": "git", @@ -39,7 +39,7 @@ "devDependencies": { "@rslib/core": "0.12.2", "@types/node": "22.17.2", - "esbuild": "^0.25.9", + "esbuild": "0.25.9", "type-fest": "4.41.0", "typescript": "5.9.2" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b884584..6230345 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -37,7 +37,7 @@ importers: specifier: 22.17.2 version: 22.17.2 esbuild: - specifier: ^0.25.9 + specifier: 0.25.9 version: 0.25.9 type-fest: specifier: 4.41.0 From 9c2a892cab1db96b35246134482dbbe006dab22b Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 17:26:19 +0900 Subject: [PATCH 6/9] feat: add custom tsconfig contents on readme --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 1d9783f..4340c76 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,15 @@ Second, replace pluggable-widgets-tools to hyper-pwt in widget's package.json. } ``` +Third, open tsconfig.json and change extends to hyper-pwt like below. + +```json +{ + "extends": "@repixelcorp/hyper-pwt/src/configurations/typescript/tsconfig.base", + "include": ["./src", "./typings"] +} +``` + ### I use custom rollup configuration. First, proceed with the basic replacement process. From 8814b122c6bb7da781d429ad02b9735f6cc5034a Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 18:32:05 +0900 Subject: [PATCH 7/9] fix: fix mendix module import issue --- package.json | 1 + pnpm-lock.yaml | 153 ++++++++++++++++++ .../typescript/tsconfig.base.json | 4 +- src/configurations/vite/index.ts | 19 +++ 4 files changed, 176 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 5429b34..a8df593 100644 --- a/package.json +++ b/package.json @@ -49,6 +49,7 @@ "commander": "14.0.0", "fast-xml-parser": "5.2.5", "mendix": "10.24.77222", + "rollup-plugin-typescript2": "0.36.0", "vite": "7.1.3", "zip-a-folder": "3.1.9" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6230345..adfc614 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,6 +23,9 @@ importers: mendix: specifier: 10.24.77222 version: 10.24.77222 + rollup-plugin-typescript2: + specifier: 0.36.0 + version: 0.36.0(rollup@4.49.0)(typescript@5.9.2) vite: specifier: 7.1.3 version: 7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1) @@ -314,6 +317,10 @@ packages: '@rolldown/pluginutils@1.0.0-beta.32': resolution: {integrity: sha512-QReCdvxiUZAPkvp1xpAg62IeNzykOFA6syH2CnClif4YmALN1XKpB39XneL80008UbtMShthSVDKmrx05N1q/g==} + '@rollup/pluginutils@4.2.1': + resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} + engines: {node: '>= 8.0.0'} + '@rollup/rollup-android-arm-eabi@4.49.0': resolution: {integrity: sha512-rlKIeL854Ed0e09QGYFlmDNbka6I3EQFw7iZuugQjMb11KMpJCLPFL4ZPbMfaEhLADEL1yx0oujGkBQ7+qW3eA==} cpu: [arm] @@ -670,6 +677,9 @@ packages: resolution: {integrity: sha512-2uM9rYjPvyq39NwLRqaiLtWHyDC1FvryJDa2ATTVims5YAS4PupsEQsDvP14FqhFr0P49CYDugi59xaxJlTXRA==} engines: {node: '>=20'} + commondir@1.0.1: + resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} + compress-commons@6.0.2: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} @@ -714,6 +724,9 @@ packages: engines: {node: '>=18'} hasBin: true + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -738,10 +751,22 @@ packages: picomatch: optional: true + find-cache-dir@3.3.2: + resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} + engines: {node: '>=8'} + + find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -803,6 +828,9 @@ packages: engines: {node: '>=6'} hasBin: true + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} + lazystream@1.0.1: resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} engines: {node: '>= 0.6.3'} @@ -871,6 +899,10 @@ packages: resolution: {integrity: sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==} engines: {node: '>= 12.0.0'} + locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -884,6 +916,10 @@ packages: magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + make-dir@3.1.0: + resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} + engines: {node: '>=8'} + mendix@10.24.77222: resolution: {integrity: sha512-sxDa9DrGFJY65bE1XbREozEUWmYKZUc+cmATxq61mK8qMGININaN0+qCat/2Qb6iIMlcid8JUxUL7szDgRonYQ==} @@ -915,9 +951,25 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} + p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + + p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + + p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + path-key@3.1.1: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} @@ -933,10 +985,18 @@ packages: picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + picomatch@4.0.3: resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} engines: {node: '>=12'} + pkg-dir@4.2.0: + resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} + engines: {node: '>=8'} + postcss@8.5.6: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} @@ -958,6 +1018,12 @@ packages: readdir-glob@1.1.3: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} + rollup-plugin-typescript2@0.36.0: + resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} + peerDependencies: + rollup: '>=1.26.3' + typescript: '>=2.4.0' + rollup@4.49.0: resolution: {integrity: sha512-3IVq0cGJ6H7fKXXEdVt+RcYvRCt8beYY9K1760wGQwSAHZcS9eot1zDG5axUbcp/kWRi5zKIIDX8MoKv/TzvZA==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -982,6 +1048,15 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.2: + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} + hasBin: true + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1059,6 +1134,10 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -1311,6 +1390,11 @@ snapshots: '@rolldown/pluginutils@1.0.0-beta.32': {} + '@rollup/pluginutils@4.2.1': + dependencies: + estree-walker: 2.0.2 + picomatch: 2.3.1 + '@rollup/rollup-android-arm-eabi@4.49.0': optional: true @@ -1596,6 +1680,8 @@ snapshots: commander@14.0.0: {} + commondir@1.0.1: {} + compress-commons@6.0.2: dependencies: crc-32: 1.2.2 @@ -1661,6 +1747,8 @@ snapshots: '@esbuild/win32-ia32': 0.25.9 '@esbuild/win32-x64': 0.25.9 + estree-walker@2.0.2: {} + event-target-shim@5.0.1: {} events@3.3.0: {} @@ -1675,11 +1763,28 @@ snapshots: optionalDependencies: picomatch: 4.0.3 + find-cache-dir@3.3.2: + dependencies: + commondir: 1.0.1 + make-dir: 3.1.0 + pkg-dir: 4.2.0 + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.2.0 + universalify: 2.0.1 + fsevents@2.3.3: optional: true @@ -1735,6 +1840,12 @@ snapshots: json5@2.2.3: {} + jsonfile@6.2.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + lazystream@1.0.1: dependencies: readable-stream: 2.3.8 @@ -1785,6 +1896,10 @@ snapshots: lightningcss-win32-x64-msvc: 1.30.1 optional: true + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + lodash@4.17.21: {} lru-cache@10.4.3: {} @@ -1795,6 +1910,10 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 + make-dir@3.1.0: + dependencies: + semver: 6.3.1 + mendix@10.24.77222: dependencies: '@types/big.js': 6.2.2 @@ -1820,8 +1939,20 @@ snapshots: normalize-path@3.0.0: {} + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-try@2.2.0: {} + package-json-from-dist@1.0.1: {} + path-exists@4.0.0: {} + path-key@3.1.1: {} path-scurry@1.11.1: @@ -1836,8 +1967,14 @@ snapshots: picocolors@1.1.1: {} + picomatch@2.3.1: {} + picomatch@4.0.3: {} + pkg-dir@4.2.0: + dependencies: + find-up: 4.1.0 + postcss@8.5.6: dependencies: nanoid: 3.3.11 @@ -1870,6 +2007,16 @@ snapshots: dependencies: minimatch: 5.1.6 + rollup-plugin-typescript2@0.36.0(rollup@4.49.0)(typescript@5.9.2): + dependencies: + '@rollup/pluginutils': 4.2.1 + find-cache-dir: 3.3.2 + fs-extra: 10.1.0 + rollup: 4.49.0 + semver: 7.7.2 + tslib: 2.8.1 + typescript: 5.9.2 + rollup@4.49.0: dependencies: '@types/estree': 1.0.8 @@ -1911,6 +2058,10 @@ snapshots: safe-buffer@5.2.1: {} + semver@6.3.1: {} + + semver@7.7.2: {} + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -1989,6 +2140,8 @@ snapshots: undici-types@6.21.0: {} + universalify@2.0.1: {} + util-deprecate@1.0.2: {} vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1): diff --git a/src/configurations/typescript/tsconfig.base.json b/src/configurations/typescript/tsconfig.base.json index 30e7ed6..f02bb19 100644 --- a/src/configurations/typescript/tsconfig.base.json +++ b/src/configurations/typescript/tsconfig.base.json @@ -20,6 +20,8 @@ "allowSyntheticDefaultImports": true, "esModuleInterop": true, "useUnknownInCatchVariables": false, - "exactOptionalPropertyTypes": false + "exactOptionalPropertyTypes": false, + "preserveConstEnums": false, + "isolatedModules": false } } \ No newline at end of file diff --git a/src/configurations/vite/index.ts b/src/configurations/vite/index.ts index 66bc6cc..9829f08 100644 --- a/src/configurations/vite/index.ts +++ b/src/configurations/vite/index.ts @@ -1,6 +1,7 @@ import { UserConfig } from "vite"; import react from '@vitejs/plugin-react-swc'; import path from "path"; +import typescript from "rollup-plugin-typescript2"; import getWidgetName from "../../utils/getWidgetName"; import { PROJECT_DIRECTORY, WEB_OUTPUT_DIRECTORY } from "../../constants"; @@ -38,6 +39,7 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom 'process.env': {}, 'process.env.NODE_ENV': '"production"' }, + esbuild: false, build: { outDir: WEB_OUTPUT_DIRECTORY, minify: isProduction ? true : false, @@ -82,6 +84,7 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf 'process.env': {}, 'process.env.NODE_ENV': isProduction ? '"production"' : '"development"' }, + esbuild: false, build: { outDir: viteOutputDirectory, minify: isProduction ? true : false, @@ -105,6 +108,22 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf cssFileName: widgetName }, rollupOptions: { + plugins: [ + typescript({ + tsconfig: path.join(PROJECT_DIRECTORY, 'tsconfig.json'), + tsconfigOverride: { + compilerOptions: { + jsx: 'preserve', + preserveConstEnums: false, + isolatedModules: false, + declaration: false + } + }, + include: ["src/**/*.ts", "src/**/*.tsx"], + exclude: ["node_modules/**", "src/**/*.d.ts"], + check: false, + }) + ], external: [ 'react', 'react-dom', From 378af6d48d796d84f8369b8d2ca7fca9ce880f25 Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 18:37:01 +0900 Subject: [PATCH 8/9] fix: editor files build logLevel change to silent --- src/commands/build/web/index.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/commands/build/web/index.ts b/src/commands/build/web/index.ts index c880620..472c400 100644 --- a/src/commands/build/web/index.ts +++ b/src/commands/build/web/index.ts @@ -85,12 +85,14 @@ const buildWebCommand = async (isProduction: boolean = false) => { { ...editorConfigViteConfig, configFile: false, - root: PROJECT_DIRECTORY + root: PROJECT_DIRECTORY, + logLevel: 'silent' }, { ...editorPreviewViteConfig, configFile: false, - root: PROJECT_DIRECTORY + root: PROJECT_DIRECTORY, + logLevel: 'silent' } ]; From f5dc192701f1e923ac33d23c8d83dea5d614510f Mon Sep 17 00:00:00 2001 From: Chan Kang Date: Fri, 29 Aug 2025 18:46:37 +0900 Subject: [PATCH 9/9] fix: reapply rolldown-vite --- README.md | 4 +- package.json | 5 +- pnpm-lock.yaml | 796 +++++++++++++----- src/commands/start/web/index.ts | 8 - src/configurations/vite/index.ts | 21 +- .../mendix-hotreload-react-esbuild-plugin.ts | 186 ---- src/index.ts | 2 +- 7 files changed, 613 insertions(+), 409 deletions(-) delete mode 100644 src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts diff --git a/README.md b/README.md index 4340c76..eeb3d80 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ export default definePWTConfig(() => { }); ``` -hyper-pwt uses the [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react-swc) plugin. The settings for this plugin can be changed as follows. +hyper-pwt uses the [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react) plugin. The settings for this plugin can be changed as follows. ```javascript import { definePWTConfig } from '@repixelcorp/hyper-pwt'; @@ -68,7 +68,7 @@ import { definePWTConfig } from '@repixelcorp/hyper-pwt'; export default definePWTConfig(() => { return { reactPluginOptions: { - tsDecorators: true, + jsxRuntime: 'classic' } }; }); diff --git a/package.json b/package.json index a8df593..79b06ff 100644 --- a/package.json +++ b/package.json @@ -39,18 +39,17 @@ "devDependencies": { "@rslib/core": "0.12.2", "@types/node": "22.17.2", - "esbuild": "0.25.9", "type-fest": "4.41.0", "typescript": "5.9.2" }, "dependencies": { - "@vitejs/plugin-react-swc": "4.0.1", + "@vitejs/plugin-react": "5.0.2", "chalk": "5.6.0", "commander": "14.0.0", "fast-xml-parser": "5.2.5", "mendix": "10.24.77222", "rollup-plugin-typescript2": "0.36.0", - "vite": "7.1.3", + "vite": "npm:rolldown-vite@7.1.5", "zip-a-folder": "3.1.9" }, "files": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index adfc614..872c695 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,9 +8,9 @@ importers: .: dependencies: - '@vitejs/plugin-react-swc': - specifier: 4.0.1 - version: 4.0.1(@swc/helpers@0.5.17)(vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1)) + '@vitejs/plugin-react': + specifier: 5.0.2 + version: 5.0.2(rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1)) chalk: specifier: 5.6.0 version: 5.6.0 @@ -27,8 +27,8 @@ importers: specifier: 0.36.0 version: 0.36.0(rollup@4.49.0)(typescript@5.9.2) vite: - specifier: 7.1.3 - version: 7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1) + specifier: npm:rolldown-vite@7.1.5 + version: rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1) zip-a-folder: specifier: 3.1.9 version: 3.1.9 @@ -39,9 +39,6 @@ importers: '@types/node': specifier: 22.17.2 version: 22.17.2 - esbuild: - specifier: 0.25.9 - version: 0.25.9 type-fest: specifier: 4.41.0 version: 4.41.0 @@ -51,6 +48,10 @@ importers: packages: + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + '@ast-grep/napi-darwin-arm64@0.37.0': resolution: {integrity: sha512-QAiIiaAbLvMEg/yBbyKn+p1gX2/FuaC0SMf7D7capm/oG4xGMzdeaQIcSosF4TCxxV+hIH4Bz9e4/u7w6Bnk3Q==} engines: {node: '>= 10'} @@ -109,6 +110,89 @@ packages: resolution: {integrity: sha512-Hb4o6h1Pf6yRUAX07DR4JVY7dmQw+RVQMW5/m55GoiAT/VRoKCWBtIUPPOnqDVhbx1Cjfil9b6EDrgJsUAujEQ==} engines: {node: '>= 10'} + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.28.0': + resolution: {integrity: sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.28.3': + resolution: {integrity: sha512-yDBHV9kQNcr2/sUr9jghVyz9C3Y5G2zUM2H2lo+9mKv4sFgbA8s8Z9t8D1jiTkGoO/NoIfKMyKWr4s6CN23ZwQ==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.28.3': + resolution: {integrity: sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.27.2': + resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.27.1': + resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.28.3': + resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.27.1': + resolution: {integrity: sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.28.3': + resolution: {integrity: sha512-PTNtvUQihsAsDHMOP5pfobP8C6CM4JWXmP8DrEIt46c3r2bf87Ua1zoqevsMo9g+tWDwgWrFP5EIxuBx5RudAw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.28.3': + resolution: {integrity: sha512-7+Ey1mAgYqFAx2h0RuoxcQT5+MlG3GTV0TQrgr7/ZliKsm/MNDxVVutlWaziMq7wJNAz8MTqz55XLpWvva6StA==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-transform-react-jsx-self@7.27.1': + resolution: {integrity: sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-source@7.27.1': + resolution: {integrity: sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/template@7.27.2': + resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.28.3': + resolution: {integrity: sha512-7w4kZYHneL3A6NP2nxzHvT3HCZ7puDZZjFMqDpBPECub79sTtSO5CGXDkKrTQq8ksAwfD/XI2MRFX23njdDaIQ==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.28.2': + resolution: {integrity: sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==} + engines: {node: '>=6.9.0'} + '@emnapi/core@1.4.5': resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==} @@ -286,9 +370,19 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + '@jridgewell/sourcemap-codec@1.5.5': resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + '@jridgewell/trace-mapping@0.3.30': + resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==} + '@module-federation/error-codes@0.18.0': resolution: {integrity: sha512-Woonm8ehyVIUPXChmbu80Zj6uJkC0dD9SJUZ/wOPtO8iiz/m+dkrOugAuKgoiR6qH4F+yorWila954tBz4uKsQ==} @@ -310,12 +404,89 @@ packages: '@napi-rs/wasm-runtime@1.0.3': resolution: {integrity: sha512-rZxtMsLwjdXkMUGC3WwsPwLNVqVqnTJT6MNIB6e+5fhMcSCPP0AOsNWuMQ5mdCq6HNjs/ZeWAEchpqeprqBD2Q==} + '@oxc-project/runtime@0.82.3': + resolution: {integrity: sha512-LNh5GlJvYHAnMurO+EyA8jJwN1rki7l3PSHuosDh2I7h00T6/u9rCkUjg/SvPmT1CZzvhuW0y+gf7jcqUy/Usg==} + engines: {node: '>=6.9.0'} + + '@oxc-project/types@0.82.3': + resolution: {integrity: sha512-6nCUxBnGX0c6qfZW5MaF6/fmu5dHJDMiMPaioKHKs5mi5+8/FHQ7WGjgQIz1zxpmceMYfdIXkOaLYE+ejbuOtA==} + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@rolldown/pluginutils@1.0.0-beta.32': - resolution: {integrity: sha512-QReCdvxiUZAPkvp1xpAg62IeNzykOFA6syH2CnClif4YmALN1XKpB39XneL80008UbtMShthSVDKmrx05N1q/g==} + '@rolldown/binding-android-arm64@1.0.0-beta.34': + resolution: {integrity: sha512-jf5GNe5jP3Sr1Tih0WKvg2bzvh5T/1TA0fn1u32xSH7ca/p5t+/QRr4VRFCV/na5vjwKEhwWrChsL2AWlY+eoA==} + cpu: [arm64] + os: [android] + + '@rolldown/binding-darwin-arm64@1.0.0-beta.34': + resolution: {integrity: sha512-2F/TqH4QuJQ34tgWxqBjFL3XV1gMzeQgUO8YRtCPGBSP0GhxtoFzsp7KqmQEothsxztlv+KhhT9Dbg3HHwHViQ==} + cpu: [arm64] + os: [darwin] + + '@rolldown/binding-darwin-x64@1.0.0-beta.34': + resolution: {integrity: sha512-E1QuFslgLWbHQ8Qli/AqUKdfg0pockQPwRxVbhNQ74SciZEZpzLaujkdmOLSccMlSXDfFCF8RPnMoRAzQ9JV8Q==} + cpu: [x64] + os: [darwin] + + '@rolldown/binding-freebsd-x64@1.0.0-beta.34': + resolution: {integrity: sha512-VS8VInNCwnkpI9WeQaWu3kVBq9ty6g7KrHdLxYMzeqz24+w9hg712TcWdqzdY6sn+24lUoMD9jTZrZ/qfVpk0g==} + cpu: [x64] + os: [freebsd] + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.34': + resolution: {integrity: sha512-4St4emjcnULnxJYb/5ZDrH/kK/j6PcUgc3eAqH5STmTrcF+I9m/X2xvSF2a2bWv1DOQhxBewThu0KkwGHdgu5w==} + cpu: [arm] + os: [linux] + + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.34': + resolution: {integrity: sha512-a737FTqhFUoWfnebS2SnQ2BS50p0JdukdkUBwy2J06j4hZ6Eej0zEB8vTfAqoCjn8BQKkXBy+3Sx0IRkgwz1gA==} + cpu: [arm64] + os: [linux] + + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.34': + resolution: {integrity: sha512-NH+FeQWKyuw0k+PbXqpFWNfvD8RPvfJk766B/njdaWz4TmiEcSB0Nb6guNw1rBpM1FmltQYb3fFnTumtC6pRfA==} + cpu: [arm64] + os: [linux] + + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.34': + resolution: {integrity: sha512-Q3RSCivp8pNadYK8ke3hLnQk08BkpZX9BmMjgwae2FWzdxhxxUiUzd9By7kneUL0vRQ4uRnhD9VkFQ+Haeqdvw==} + cpu: [x64] + os: [linux] + + '@rolldown/binding-linux-x64-musl@1.0.0-beta.34': + resolution: {integrity: sha512-wDd/HrNcVoBhWWBUW3evJHoo7GJE/RofssBy3Dsiip05YUBmokQVrYAyrboOY4dzs/lJ7HYeBtWQ9hj8wlyF0A==} + cpu: [x64] + os: [linux] + + '@rolldown/binding-openharmony-arm64@1.0.0-beta.34': + resolution: {integrity: sha512-dH3FTEV6KTNWpYSgjSXZzeX7vLty9oBYn6R3laEdhwZftQwq030LKL+5wyQdlbX5pnbh4h127hpv3Hl1+sj8dg==} + cpu: [arm64] + os: [openharmony] + + '@rolldown/binding-wasm32-wasi@1.0.0-beta.34': + resolution: {integrity: sha512-y5BUf+QtO0JsIDKA51FcGwvhJmv89BYjUl8AmN7jqD6k/eU55mH6RJYnxwCsODq5m7KSSTigVb6O7/GqB8wbPw==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.34': + resolution: {integrity: sha512-ga5hFhdTwpaNxEiuxZHWnD3ed0GBAzbgzS5tRHpe0ObptxM1a9Xrq6TVfNQirBLwb5Y7T/FJmJi3pmdLy95ljg==} + cpu: [arm64] + os: [win32] + + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.34': + resolution: {integrity: sha512-4/MBp9T9eRnZskxWr8EXD/xHvLhdjWaeX/qY9LPRG1JdCGV3DphkLTy5AWwIQ5jhAy2ZNJR5z2fYRlpWU0sIyQ==} + cpu: [ia32] + os: [win32] + + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.34': + resolution: {integrity: sha512-7O5iUBX6HSBKlQU4WykpUoEmb0wQmonb6ziKFr3dJTHud2kzDnWMqk344T0qm3uGv9Ddq6Re/94pInxo1G2d4w==} + cpu: [x64] + os: [win32] + + '@rolldown/pluginutils@1.0.0-beta.34': + resolution: {integrity: sha512-LyAREkZHP5pMom7c24meKmJCdhf2hEyvam2q0unr3or9ydwDL+DJ8chTF6Av/RFPb3rH8UFBdMzO5MxTZW97oA==} '@rollup/pluginutils@4.2.1': resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} @@ -504,87 +675,24 @@ packages: resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} engines: {node: '>=16.0.0'} - '@swc/core-darwin-arm64@1.13.5': - resolution: {integrity: sha512-lKNv7SujeXvKn16gvQqUQI5DdyY8v7xcoO3k06/FJbHJS90zEwZdQiMNRiqpYw/orU543tPaWgz7cIYWhbopiQ==} - engines: {node: '>=10'} - cpu: [arm64] - os: [darwin] - - '@swc/core-darwin-x64@1.13.5': - resolution: {integrity: sha512-ILd38Fg/w23vHb0yVjlWvQBoE37ZJTdlLHa8LRCFDdX4WKfnVBiblsCU9ar4QTMNdeTBEX9iUF4IrbNWhaF1Ng==} - engines: {node: '>=10'} - cpu: [x64] - os: [darwin] - - '@swc/core-linux-arm-gnueabihf@1.13.5': - resolution: {integrity: sha512-Q6eS3Pt8GLkXxqz9TAw+AUk9HpVJt8Uzm54MvPsqp2yuGmY0/sNaPPNVqctCX9fu/Nu8eaWUen0si6iEiCsazQ==} - engines: {node: '>=10'} - cpu: [arm] - os: [linux] - - '@swc/core-linux-arm64-gnu@1.13.5': - resolution: {integrity: sha512-aNDfeN+9af+y+M2MYfxCzCy/VDq7Z5YIbMqRI739o8Ganz6ST+27kjQFd8Y/57JN/hcnUEa9xqdS3XY7WaVtSw==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-arm64-musl@1.13.5': - resolution: {integrity: sha512-9+ZxFN5GJag4CnYnq6apKTnnezpfJhCumyz0504/JbHLo+Ue+ZtJnf3RhyA9W9TINtLE0bC4hKpWi8ZKoETyOQ==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-x64-gnu@1.13.5': - resolution: {integrity: sha512-WD530qvHrki8Ywt/PloKUjaRKgstQqNGvmZl54g06kA+hqtSE2FTG9gngXr3UJxYu/cNAjJYiBifm7+w4nbHbA==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-linux-x64-musl@1.13.5': - resolution: {integrity: sha512-Luj8y4OFYx4DHNQTWjdIuKTq2f5k6uSXICqx+FSabnXptaOBAbJHNbHT/06JZh6NRUouaf0mYXN0mcsqvkhd7Q==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-win32-arm64-msvc@1.13.5': - resolution: {integrity: sha512-cZ6UpumhF9SDJvv4DA2fo9WIzlNFuKSkZpZmPG1c+4PFSEMy5DFOjBSllCvnqihCabzXzpn6ykCwBmHpy31vQw==} - engines: {node: '>=10'} - cpu: [arm64] - os: [win32] - - '@swc/core-win32-ia32-msvc@1.13.5': - resolution: {integrity: sha512-C5Yi/xIikrFUzZcyGj9L3RpKljFvKiDMtyDzPKzlsDrKIw2EYY+bF88gB6oGY5RGmv4DAX8dbnpRAqgFD0FMEw==} - engines: {node: '>=10'} - cpu: [ia32] - os: [win32] - - '@swc/core-win32-x64-msvc@1.13.5': - resolution: {integrity: sha512-YrKdMVxbYmlfybCSbRtrilc6UA8GF5aPmGKBdPvjrarvsmf4i7ZHGCEnLtfOMd3Lwbs2WUZq3WdMbozYeLU93Q==} - engines: {node: '>=10'} - cpu: [x64] - os: [win32] - - '@swc/core@1.13.5': - resolution: {integrity: sha512-WezcBo8a0Dg2rnR82zhwoR6aRNxeTGfK5QCD6TQ+kg3xx/zNT02s/0o+81h/3zhvFSB24NtqEr8FTw88O5W/JQ==} - engines: {node: '>=10'} - peerDependencies: - '@swc/helpers': '>=0.5.17' - peerDependenciesMeta: - '@swc/helpers': - optional: true - - '@swc/counter@0.1.3': - resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - '@swc/helpers@0.5.17': resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} - '@swc/types@0.1.24': - resolution: {integrity: sha512-tjTMh3V4vAORHtdTprLlfoMptu1WfTZG9Rsca6yOKyNYsRr+MUXutKmliB17orgSZk5DpnDxs8GUdd/qwYxOng==} - '@tybys/wasm-util@0.10.0': resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.27.0': + resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.28.0': + resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} + '@types/big.js@6.2.2': resolution: {integrity: sha512-e2cOW9YlVzFY2iScnGBBkplKsrn2CsObHQ2Hiw4V1sSyiGbgWL8IyqE3zFi1Pt5o1pdAtYkDAIsF3KKUPjdzaA==} @@ -603,11 +711,11 @@ packages: '@types/scheduler@0.26.0': resolution: {integrity: sha512-WFHp9YUJQ6CKshqoC37iOlHnQSmxNc795UhB26CyBBttrN9svdIrUjl/NjnNmfcwtncN0h/0PPAFWv9ovP8mLA==} - '@vitejs/plugin-react-swc@4.0.1': - resolution: {integrity: sha512-NQhPjysi5duItyrMd5JWZFf2vNOuSMyw+EoZyTBDzk+DkfYD8WNrsUs09sELV2cr1P15nufsN25hsUBt4CKF9Q==} + '@vitejs/plugin-react@5.0.2': + resolution: {integrity: sha512-tmyFgixPZCx2+e6VO9TNITWcCQl8+Nl/E8YbAyPVv85QCc7/A3JrdfG2A8gIzvVhWuzMOVrFW1aReaNxrI6tbw==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^4 || ^5 || ^6 || ^7 + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} @@ -629,6 +737,10 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} + ansis@4.1.0: + resolution: {integrity: sha512-BGcItUBWSMRgOCe+SVZJ+S7yTRG0eGt9cXAHev72yuGcY23hnLA7Bky5L/xLyPINoSN95geovfBkqoTlNZYa7w==} + engines: {node: '>=14'} + archiver-utils@5.0.2: resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==} engines: {node: '>= 14'} @@ -655,6 +767,11 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} + browserslist@4.25.4: + resolution: {integrity: sha512-4jYpcjabC606xJ3kw2QwGEZKX0Aw7sgQdZCvIK9dhVSPh76BKo+C+btT1RRofH7B+8iNpEbgGNVWiLki5q93yg==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + buffer-crc32@1.0.0: resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==} engines: {node: '>=8.0.0'} @@ -662,6 +779,9 @@ packages: buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + caniuse-lite@1.0.30001737: + resolution: {integrity: sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==} + chalk@5.6.0: resolution: {integrity: sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} @@ -684,6 +804,9 @@ packages: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + core-js@3.45.1: resolution: {integrity: sha512-L4NPsJlCfZsPeXukyzHFlg/i7IIVwHSItR0wg0FLNqYClJ4MQYTYLbC7EkjKYRLZF2iof2MUgN0EGy7MdQFChg==} @@ -706,6 +829,15 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + detect-libc@2.0.4: resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} engines: {node: '>=8'} @@ -713,6 +845,9 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + electron-to-chromium@1.5.211: + resolution: {integrity: sha512-IGBvimJkotaLzFnwIVgW9/UD/AOJ2tByUmeOrtqBfACSbAw5b1G0XpvdaieKyc7ULmbwXVx+4e4Be8pOPBrYkw==} + emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -724,6 +859,10 @@ packages: engines: {node: '>=18'} hasBin: true + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + estree-walker@2.0.2: resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} @@ -772,6 +911,10 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true @@ -823,6 +966,14 @@ packages: resolution: {integrity: sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==} hasBin: true + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -913,6 +1064,9 @@ packages: resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} engines: {node: 20 || >=22} + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} @@ -942,11 +1096,17 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + nanoid@3.3.11: resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} + normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -1008,6 +1168,10 @@ packages: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} + react-refresh@0.17.0: + resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} + engines: {node: '>=0.10.0'} + readable-stream@2.3.8: resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} @@ -1018,6 +1182,50 @@ packages: readdir-glob@1.1.3: resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} + rolldown-vite@7.1.5: + resolution: {integrity: sha512-NgHjKatQn1B5TjtNVS3+Uq3JBUPP8s70cMxLzGHpv/UyCGj0SQUtVYImNWbU2uqfOpNSnqhI+nbR7tmPPcb1qQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + peerDependencies: + '@types/node': ^20.19.0 || >=22.12.0 + esbuild: ^0.25.0 + jiti: '>=1.21.0' + less: ^4.0.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 + peerDependenciesMeta: + '@types/node': + optional: true + esbuild: + optional: true + jiti: + optional: true + less: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + tsx: + optional: true + yaml: + optional: true + + rolldown@1.0.0-beta.34: + resolution: {integrity: sha512-Wwh7EwalMzzX3Yy3VN58VEajeR2Si8+HDNMf706jPLIqU7CxneRW+dQVfznf5O0TWTnJyu4npelwg2bzTXB1Nw==} + hasBin: true + rollup-plugin-typescript2@0.36.0: resolution: {integrity: sha512-NB2CSQDxSe9+Oe2ahZbf+B4bh7pHwjV5L+RSYpCu7Q5ROuN94F9b6ioWwKfz3ueL3KTtmX4o2MUH2cgHDIEUsw==} peerDependencies: @@ -1138,48 +1346,14 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - vite@7.1.3: - resolution: {integrity: sha512-OOUi5zjkDxYrKhTV3V7iKsoS37VUM7v40+HuwEmcrsf11Cdx9y3DIr2Px6liIcZFwt3XSRpQvFpL3WVy7ApkGw==} - engines: {node: ^20.19.0 || >=22.12.0} + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} hasBin: true 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 - 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 + browserslist: '>= 4.21.0' + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} @@ -1194,6 +1368,9 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + zip-a-folder@3.1.9: resolution: {integrity: sha512-0TPP3eK5mbZxHnOE8w/Jg6gwxsxZOrA3hXHMfC3I4mcTvyJwNt7GZP8i6uiAMVNu43QTmVz0ngEMKcjgpLZLmQ==} @@ -1203,6 +1380,11 @@ packages: snapshots: + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.30 + '@ast-grep/napi-darwin-arm64@0.37.0': optional: true @@ -1242,6 +1424,118 @@ snapshots: '@ast-grep/napi-win32-ia32-msvc': 0.37.0 '@ast-grep/napi-win32-x64-msvc': 0.37.0 + '@babel/code-frame@7.27.1': + dependencies: + '@babel/helper-validator-identifier': 7.27.1 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.28.0': {} + + '@babel/core@7.28.3': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.28.3 + '@babel/helper-compilation-targets': 7.27.2 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.3) + '@babel/helpers': 7.28.3 + '@babel/parser': 7.28.3 + '@babel/template': 7.27.2 + '@babel/traverse': 7.28.3 + '@babel/types': 7.28.2 + convert-source-map: 2.0.0 + debug: 4.4.1 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.28.3': + dependencies: + '@babel/parser': 7.28.3 + '@babel/types': 7.28.2 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.30 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.27.2': + dependencies: + '@babel/compat-data': 7.28.0 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.25.4 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-module-imports@7.27.1': + dependencies: + '@babel/traverse': 7.28.3 + '@babel/types': 7.28.2 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.3)': + dependencies: + '@babel/core': 7.28.3 + '@babel/helper-module-imports': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@babel/traverse': 7.28.3 + transitivePeerDependencies: + - supports-color + + '@babel/helper-plugin-utils@7.27.1': {} + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.27.1': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.28.3': + dependencies: + '@babel/template': 7.27.2 + '@babel/types': 7.28.2 + + '@babel/parser@7.28.3': + dependencies: + '@babel/types': 7.28.2 + + '@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.28.3)': + dependencies: + '@babel/core': 7.28.3 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-react-jsx-source@7.27.1(@babel/core@7.28.3)': + dependencies: + '@babel/core': 7.28.3 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/template@7.27.2': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/parser': 7.28.3 + '@babel/types': 7.28.2 + + '@babel/traverse@7.28.3': + dependencies: + '@babel/code-frame': 7.27.1 + '@babel/generator': 7.28.3 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.28.3 + '@babel/template': 7.27.2 + '@babel/types': 7.28.2 + debug: 4.4.1 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.28.2': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@emnapi/core@1.4.5': dependencies: '@emnapi/wasi-threads': 1.0.4 @@ -1351,8 +1645,20 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.30 + + '@jridgewell/resolve-uri@3.1.2': {} + '@jridgewell/sourcemap-codec@1.5.5': {} + '@jridgewell/trace-mapping@0.3.30': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + '@module-federation/error-codes@0.18.0': {} '@module-federation/runtime-core@0.18.0': @@ -1385,10 +1691,58 @@ snapshots: '@tybys/wasm-util': 0.10.0 optional: true + '@oxc-project/runtime@0.82.3': {} + + '@oxc-project/types@0.82.3': {} + '@pkgjs/parseargs@0.11.0': optional: true - '@rolldown/pluginutils@1.0.0-beta.32': {} + '@rolldown/binding-android-arm64@1.0.0-beta.34': + optional: true + + '@rolldown/binding-darwin-arm64@1.0.0-beta.34': + optional: true + + '@rolldown/binding-darwin-x64@1.0.0-beta.34': + optional: true + + '@rolldown/binding-freebsd-x64@1.0.0-beta.34': + optional: true + + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.34': + optional: true + + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.34': + optional: true + + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.34': + optional: true + + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.34': + optional: true + + '@rolldown/binding-linux-x64-musl@1.0.0-beta.34': + optional: true + + '@rolldown/binding-openharmony-arm64@1.0.0-beta.34': + optional: true + + '@rolldown/binding-wasm32-wasi@1.0.0-beta.34': + dependencies: + '@napi-rs/wasm-runtime': 1.0.3 + optional: true + + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.34': + optional: true + + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.34': + optional: true + + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.34': + optional: true + + '@rolldown/pluginutils@1.0.0-beta.34': {} '@rollup/pluginutils@4.2.1': dependencies: @@ -1526,67 +1880,35 @@ snapshots: '@rspack/lite-tapable@1.0.1': {} - '@swc/core-darwin-arm64@1.13.5': - optional: true - - '@swc/core-darwin-x64@1.13.5': - optional: true - - '@swc/core-linux-arm-gnueabihf@1.13.5': - optional: true - - '@swc/core-linux-arm64-gnu@1.13.5': - optional: true - - '@swc/core-linux-arm64-musl@1.13.5': - optional: true - - '@swc/core-linux-x64-gnu@1.13.5': - optional: true - - '@swc/core-linux-x64-musl@1.13.5': - optional: true - - '@swc/core-win32-arm64-msvc@1.13.5': - optional: true - - '@swc/core-win32-ia32-msvc@1.13.5': - optional: true + '@swc/helpers@0.5.17': + dependencies: + tslib: 2.8.1 - '@swc/core-win32-x64-msvc@1.13.5': + '@tybys/wasm-util@0.10.0': + dependencies: + tslib: 2.8.1 optional: true - '@swc/core@1.13.5(@swc/helpers@0.5.17)': + '@types/babel__core@7.20.5': dependencies: - '@swc/counter': 0.1.3 - '@swc/types': 0.1.24 - optionalDependencies: - '@swc/core-darwin-arm64': 1.13.5 - '@swc/core-darwin-x64': 1.13.5 - '@swc/core-linux-arm-gnueabihf': 1.13.5 - '@swc/core-linux-arm64-gnu': 1.13.5 - '@swc/core-linux-arm64-musl': 1.13.5 - '@swc/core-linux-x64-gnu': 1.13.5 - '@swc/core-linux-x64-musl': 1.13.5 - '@swc/core-win32-arm64-msvc': 1.13.5 - '@swc/core-win32-ia32-msvc': 1.13.5 - '@swc/core-win32-x64-msvc': 1.13.5 - '@swc/helpers': 0.5.17 - - '@swc/counter@0.1.3': {} + '@babel/parser': 7.28.3 + '@babel/types': 7.28.2 + '@types/babel__generator': 7.27.0 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.28.0 - '@swc/helpers@0.5.17': + '@types/babel__generator@7.27.0': dependencies: - tslib: 2.8.1 + '@babel/types': 7.28.2 - '@swc/types@0.1.24': + '@types/babel__template@7.4.4': dependencies: - '@swc/counter': 0.1.3 + '@babel/parser': 7.28.3 + '@babel/types': 7.28.2 - '@tybys/wasm-util@0.10.0': + '@types/babel__traverse@7.28.0': dependencies: - tslib: 2.8.1 - optional: true + '@babel/types': 7.28.2 '@types/big.js@6.2.2': {} @@ -1606,13 +1928,17 @@ snapshots: '@types/scheduler@0.26.0': {} - '@vitejs/plugin-react-swc@4.0.1(@swc/helpers@0.5.17)(vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1))': + '@vitejs/plugin-react@5.0.2(rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1))': dependencies: - '@rolldown/pluginutils': 1.0.0-beta.32 - '@swc/core': 1.13.5(@swc/helpers@0.5.17) - vite: 7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1) + '@babel/core': 7.28.3 + '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.3) + '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.28.3) + '@rolldown/pluginutils': 1.0.0-beta.34 + '@types/babel__core': 7.20.5 + react-refresh: 0.17.0 + vite: rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1) transitivePeerDependencies: - - '@swc/helpers' + - supports-color abort-controller@3.0.0: dependencies: @@ -1628,6 +1954,8 @@ snapshots: ansi-styles@6.2.1: {} + ansis@4.1.0: {} + archiver-utils@5.0.2: dependencies: glob: 10.4.5 @@ -1663,6 +1991,13 @@ snapshots: dependencies: balanced-match: 1.0.2 + browserslist@4.25.4: + dependencies: + caniuse-lite: 1.0.30001737 + electron-to-chromium: 1.5.211 + node-releases: 2.0.19 + update-browserslist-db: 1.1.3(browserslist@4.25.4) + buffer-crc32@1.0.0: {} buffer@6.0.3: @@ -1670,6 +2005,8 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 + caniuse-lite@1.0.30001737: {} + chalk@5.6.0: {} color-convert@2.0.1: @@ -1690,6 +2027,8 @@ snapshots: normalize-path: 3.0.0 readable-stream: 4.7.0 + convert-source-map@2.0.0: {} + core-js@3.45.1: {} core-util-is@1.0.3: {} @@ -1709,11 +2048,16 @@ snapshots: csstype@3.1.3: {} - detect-libc@2.0.4: - optional: true + debug@4.4.1: + dependencies: + ms: 2.1.3 + + detect-libc@2.0.4: {} eastasianwidth@0.2.0: {} + electron-to-chromium@1.5.211: {} + emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} @@ -1746,6 +2090,9 @@ snapshots: '@esbuild/win32-arm64': 0.25.9 '@esbuild/win32-ia32': 0.25.9 '@esbuild/win32-x64': 0.25.9 + optional: true + + escalade@3.2.0: {} estree-walker@2.0.2: {} @@ -1788,6 +2135,8 @@ snapshots: fsevents@2.3.3: optional: true + gensync@1.0.0-beta.2: {} + glob@10.4.5: dependencies: foreground-child: 3.3.1 @@ -1838,6 +2187,10 @@ snapshots: jiti@2.5.1: {} + js-tokens@4.0.0: {} + + jsesc@3.1.0: {} + json5@2.2.3: {} jsonfile@6.2.0: @@ -1894,7 +2247,6 @@ snapshots: lightningcss-linux-x64-musl: 1.30.1 lightningcss-win32-arm64-msvc: 1.30.1 lightningcss-win32-x64-msvc: 1.30.1 - optional: true locate-path@5.0.0: dependencies: @@ -1906,6 +2258,10 @@ snapshots: lru-cache@11.1.0: {} + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + magic-string@0.30.17: dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -1935,8 +2291,12 @@ snapshots: minipass@7.1.2: {} + ms@2.1.3: {} + nanoid@3.3.11: {} + node-releases@2.0.19: {} + normalize-path@3.0.0: {} p-limit@2.3.0: @@ -1985,6 +2345,8 @@ snapshots: process@0.11.10: {} + react-refresh@0.17.0: {} + readable-stream@2.3.8: dependencies: core-util-is: 1.0.3 @@ -2007,6 +2369,42 @@ snapshots: dependencies: minimatch: 5.1.6 + rolldown-vite@7.1.5(@types/node@22.17.2)(esbuild@0.25.9)(jiti@2.5.1): + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + lightningcss: 1.30.1 + picomatch: 4.0.3 + postcss: 8.5.6 + rolldown: 1.0.0-beta.34 + tinyglobby: 0.2.14 + optionalDependencies: + '@types/node': 22.17.2 + esbuild: 0.25.9 + fsevents: 2.3.3 + jiti: 2.5.1 + + rolldown@1.0.0-beta.34: + dependencies: + '@oxc-project/runtime': 0.82.3 + '@oxc-project/types': 0.82.3 + '@rolldown/pluginutils': 1.0.0-beta.34 + ansis: 4.1.0 + optionalDependencies: + '@rolldown/binding-android-arm64': 1.0.0-beta.34 + '@rolldown/binding-darwin-arm64': 1.0.0-beta.34 + '@rolldown/binding-darwin-x64': 1.0.0-beta.34 + '@rolldown/binding-freebsd-x64': 1.0.0-beta.34 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-beta.34 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-beta.34 + '@rolldown/binding-linux-arm64-musl': 1.0.0-beta.34 + '@rolldown/binding-linux-x64-gnu': 1.0.0-beta.34 + '@rolldown/binding-linux-x64-musl': 1.0.0-beta.34 + '@rolldown/binding-openharmony-arm64': 1.0.0-beta.34 + '@rolldown/binding-wasm32-wasi': 1.0.0-beta.34 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.34 + '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.34 + '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.34 + rollup-plugin-typescript2@0.36.0(rollup@4.49.0)(typescript@5.9.2): dependencies: '@rollup/pluginutils': 4.2.1 @@ -2142,21 +2540,13 @@ snapshots: universalify@2.0.1: {} - util-deprecate@1.0.2: {} - - vite@7.1.3(@types/node@22.17.2)(jiti@2.5.1)(lightningcss@1.30.1): + update-browserslist-db@1.1.3(browserslist@4.25.4): dependencies: - esbuild: 0.25.9 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.49.0 - tinyglobby: 0.2.14 - optionalDependencies: - '@types/node': 22.17.2 - fsevents: 2.3.3 - jiti: 2.5.1 - lightningcss: 1.30.1 + browserslist: 4.25.4 + escalade: 3.2.0 + picocolors: 1.1.1 + + util-deprecate@1.0.2: {} which@2.0.2: dependencies: @@ -2174,6 +2564,8 @@ snapshots: string-width: 5.1.2 strip-ansi: 7.1.0 + yallist@3.1.1: {} + zip-a-folder@3.1.9: dependencies: archiver: 7.0.1 diff --git a/src/commands/start/web/index.ts b/src/commands/start/web/index.ts index a79997e..395b21b 100644 --- a/src/commands/start/web/index.ts +++ b/src/commands/start/web/index.ts @@ -13,7 +13,6 @@ import getViteUserConfiguration from '../../../utils/getViteUserConfiguration'; import { generateTypesFromFile } from '../../../type-generator'; import { mendixHotreloadReactPlugin } from '../../../configurations/vite/plugins/mendix-hotreload-react-plugin'; import { mendixPatchViteClientPlugin } from '../../../configurations/vite/plugins/mendix-patch-vite-client-plugin'; -import { mendixHotreloadReactEsbuildPlugin } from '../../../configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin'; const generateTyping = async () => { const widgetName = await getWidgetName(); @@ -71,13 +70,6 @@ const startWebCommand = async () => { interval: 100 }, }, - optimizeDeps: { - esbuildOptions: { - plugins: [ - mendixHotreloadReactEsbuildPlugin() - ], - }, - }, plugins: [ ...resultViteConfig.plugins as PluginOption[], mendixHotreloadReactPlugin(), diff --git a/src/configurations/vite/index.ts b/src/configurations/vite/index.ts index 9829f08..1c56827 100644 --- a/src/configurations/vite/index.ts +++ b/src/configurations/vite/index.ts @@ -1,5 +1,5 @@ import { UserConfig } from "vite"; -import react from '@vitejs/plugin-react-swc'; +import react from '@vitejs/plugin-react'; import path from "path"; import typescript from "rollup-plugin-typescript2"; @@ -34,12 +34,15 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom const widgetName = await getWidgetName(); return { - plugins: [react()], + plugins: [ + react({ + jsxRuntime: 'classic' + }) + ], define: { 'process.env': {}, 'process.env.NODE_ENV': '"production"' }, - esbuild: false, build: { outDir: WEB_OUTPUT_DIRECTORY, minify: isProduction ? true : false, @@ -53,7 +56,7 @@ export const getEditorPreviewDefaultConfig = async (isProduction: boolean): Prom }, formats: ['umd'] }, - rollupOptions: { + rolldownOptions: { external: [ 'react', 'react-dom', @@ -79,12 +82,16 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf const viteOutputDirectory = await getViteOutputDirectory(); return { - plugins: [react(userCustomConfig?.reactPluginOptions || undefined)], + plugins: [ + react({ + ...userCustomConfig?.reactPluginOptions || {}, + jsxRuntime: 'classic' + }) + ], define: { 'process.env': {}, 'process.env.NODE_ENV': isProduction ? '"production"' : '"development"' }, - esbuild: false, build: { outDir: viteOutputDirectory, minify: isProduction ? true : false, @@ -107,7 +114,7 @@ export const getViteDefaultConfig = async (isProduction: boolean, userCustomConf }, cssFileName: widgetName }, - rollupOptions: { + rolldownOptions: { plugins: [ typescript({ tsconfig: path.join(PROJECT_DIRECTORY, 'tsconfig.json'), diff --git a/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts b/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts deleted file mode 100644 index 3096244..0000000 --- a/src/configurations/vite/plugins/mendix-hotreload-react-esbuild-plugin.ts +++ /dev/null @@ -1,186 +0,0 @@ -import { Plugin } from "esbuild"; - -// @note When the React version of Mendix is updated, the following content must also be updated. -// @todo Depending on the React version, we need to consider whether there is a way to handle this automatically rather than manually. -export function mendixHotreloadReactEsbuildPlugin(): Plugin { - return { - name: 'mendix-hotreload-react-esbuild', - setup(build) { - build.onResolve({ filter: /^react$/ }, (args) => { - return { - path: 'mendix:react', - namespace: 'mendix-react', - external: false - }; - }); - - build.onResolve({ filter: /^react-dom$/ }, (args) => { - return { - path: 'mendix:react-dom', - namespace: 'mendix-react-dom', - external: false - }; - }); - - build.onResolve({ filter: /^react-dom\/client$/ }, (args) => { - return { - path: 'mendix:react-dom/client', - namespace: 'mendix-react-dom-client', - external: false - }; - }); - - build.onResolve({ filter: /^react\/jsx-runtime$/ }, (args) => { - return { - path: 'mendix:react/jsx-runtime', - namespace: 'mendix-react-jsx-runtime', - external: false - }; - }); - - build.onResolve({ filter: /^react\/jsx-dev-runtime$/ }, (args) => { - return { - path: 'mendix:react/jsx-dev-runtime', - namespace: 'mendix-react-jsx-dev-runtime', - external: false - }; - }); - - build.onLoad({ filter: /.*/, namespace: 'mendix-react' }, () => { - return { - contents: ` - const React = window.React; - - export const Children = React.Children; - export const Component = React.Component; - export const Fragment = React.Fragment; - export const Profiler = React.Profiler; - export const PureComponent = React.PureComponent; - export const StrictMode = React.StrictMode; - export const Suspense = React.Suspense; - export const cloneElement = React.cloneElement; - export const createContext = React.createContext; - export const createElement = React.createElement; - export const createFactory = React.createFactory; - export const createRef = React.createRef; - export const forwardRef = React.forwardRef; - export const isValidElement = React.isValidElement; - export const lazy = React.lazy; - export const memo = React.memo; - export const startTransition = React.startTransition; - export const unstable_act = React.unstable_act; - export const useCallback = React.useCallback; - export const useContext = React.useContext; - export const useDebugValue = React.useDebugValue; - export const useDeferredValue = React.useDeferredValue; - export const useEffect = React.useEffect; - export const useId = React.useId; - export const useImperativeHandle = React.useImperativeHandle; - export const useInsertionEffect = React.useInsertionEffect; - export const useLayoutEffect = React.useLayoutEffect; - export const useMemo = React.useMemo; - export const useReducer = React.useReducer; - export const useRef = React.useRef; - export const useState = React.useState; - export const useSyncExternalStore = React.useSyncExternalStore; - export const useTransition = React.useTransition; - export const version = React.version; - - export default React; - `, - loader: 'js', - }; - }); - - build.onLoad({ filter: /.*/, namespace: 'mendix-react-dom' }, () => { - return { - contents: ` - const ReactDOM = window.ReactDOM; - - export const createPortal = ReactDOM.createPortal; - export const createRoot = ReactDOM.createRoot; - export const findDOMNode = ReactDOM.findDOMNode; - export const flushSync = ReactDOM.flushSync; - export const hydrate = ReactDOM.hydrate; - export const hydrateRoot = ReactDOM.hydrateRoot; - export const render = ReactDOM.render; - export const unmountComponentAtNode = ReactDOM.unmountComponentAtNode; - export const unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates; - export const unstable_renderSubtreeIntoContainer = ReactDOM.unstable_renderSubtreeIntoContainer; - export const version = ReactDOM.version; - - export default ReactDOM; - `, - loader: 'js', - }; - }); - - build.onLoad({ filter: /.*/, namespace: 'mendix-react-dom-client' }, () => { - return { - contents: ` - const ReactDOMClient = window.ReactDOMClient; - - export const createRoot = ReactDOMClient.createRoot; - export const hydrateRoot = ReactDOMClient.hydrateRoot; - - export default ReactDOMClient; - `, - loader: 'js', - }; - }); - - build.onLoad({ filter: /.*/, namespace: 'mendix-react-jsx-runtime' }, () => { - return { - contents: ` - const ReactJSXRuntime = window.ReactJSXRuntime; - - export const Fragment = ReactJSXRuntime.Fragment; - export const jsx = ReactJSXRuntime.jsx; - export const jsxs = ReactJSXRuntime.jsxs; - - export default ReactJSXRuntime; - `, - loader: 'js', - }; - }); - - build.onLoad({ filter: /.*/, namespace: 'mendix-react-jsx-dev-runtime' }, () => { - return { - contents: ` - const ReactJSXDevRuntime = window.ReactJSXDevRuntime; - - export const Fragment = ReactJSXDevRuntime.Fragment; - export const jsxDEV = ReactJSXDevRuntime.jsxDEV; - - export default ReactJSXDevRuntime; - `, - loader: 'js', - }; - }); - - build.onResolve({ filter: /.*node_modules[\\\/]react[\\\/]index\.js$/ }, (args) => { - return { - path: 'mendix:react', - namespace: 'mendix-react', - external: false - }; - }); - - build.onResolve({ filter: /.*node_modules[\\\/]react-dom[\\\/]index\.js$/ }, (args) => { - return { - path: 'mendix:react-dom', - namespace: 'mendix-react-dom', - external: false - }; - }); - - build.onResolve({ filter: /.*node_modules[\\\/]react-dom[\\\/]client\.js$/ }, (args) => { - return { - path: 'mendix:react-dom/client', - namespace: 'mendix-react-dom-client', - external: false - }; - }); - } - }; -} \ No newline at end of file diff --git a/src/index.ts b/src/index.ts index 944dae6..d13c5e8 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ import type { UserConfig } from "vite"; -import reactPlugin from "@vitejs/plugin-react-swc"; +import reactPlugin from "@vitejs/plugin-react"; export type PWTConfig = UserConfig & { reactPluginOptions?: Parameters[0];