From fbf8ddeaa8ba43436e89761e9719a8794a0d5fea Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+SamTV12345@users.noreply.github.com> Date: Mon, 6 Oct 2025 12:41:26 +0200 Subject: [PATCH] chore: added react compiler and fixed url to manage pads (#7158) --- admin/package.json | 3 + admin/src/pages/PadPage.tsx | 2 +- admin/vite.config.ts | 6 +- pnpm-lock.yaml | 111 ++++++++++++++++++++++++++++++++++++ 4 files changed, 120 insertions(+), 2 deletions(-) diff --git a/admin/package.json b/admin/package.json index b310c0f5b..43bc12095 100644 --- a/admin/package.json +++ b/admin/package.json @@ -20,6 +20,8 @@ "@types/react-dom": "^19.2.0", "@typescript-eslint/eslint-plugin": "^8.43.0", "@typescript-eslint/parser": "^8.43.0", + "@vitejs/plugin-react": "^5.0.4", + "babel-plugin-react-compiler": "19.1.0-rc.3", "eslint": "^9.36.0", "eslint-plugin-react-hooks": "^6.1.0", "eslint-plugin-react-refresh": "^0.4.23", @@ -34,6 +36,7 @@ "socket.io-client": "^4.8.1", "typescript": "^5.9.3", "vite": "npm:rolldown-vite@latest", + "vite-plugin-babel": "^1.3.2", "vite-plugin-static-copy": "^3.1.3", "zustand": "^5.0.8" }, diff --git a/admin/src/pages/PadPage.tsx b/admin/src/pages/PadPage.tsx index 0d4da31ff..bfcbb9a14 100644 --- a/admin/src/pages/PadPage.tsx +++ b/admin/src/pages/PadPage.tsx @@ -255,7 +255,7 @@ export const PadPage = ()=>{ } title={} onClick={()=>{ cleanupPad(pad.padName) }}/> - } title="view" onClick={()=>window.open(`/p/${pad.padName}`, '_blank')}/> + } title={} onClick={()=>window.open(`../../p/${pad.padName}`, '_blank')}/> diff --git a/admin/vite.config.ts b/admin/vite.config.ts index 0d83abd63..ebe4d949d 100644 --- a/admin/vite.config.ts +++ b/admin/vite.config.ts @@ -1,5 +1,6 @@ import { defineConfig } from 'vite' import {viteStaticCopy} from "vite-plugin-static-copy"; +import react from '@vitejs/plugin-react'; // https://vitejs.dev/config/ export default defineConfig({ @@ -10,7 +11,10 @@ export default defineConfig({ dest: '' } ] - })], + }), react({ + babel: { + plugins: ['babel-plugin-react-compiler'], + }})], base: '/admin', build:{ outDir: '../src/templates/admin', diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7d878a33c..fca8c348b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -46,6 +46,12 @@ importers: '@typescript-eslint/parser': specifier: ^8.43.0 version: 8.45.0(eslint@9.36.0)(typescript@5.9.3) + '@vitejs/plugin-react': + specifier: ^5.0.4 + version: 5.0.4(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6)) + babel-plugin-react-compiler: + specifier: 19.1.0-rc.3 + version: 19.1.0-rc.3 eslint: specifier: ^9.36.0 version: 9.36.0 @@ -88,6 +94,9 @@ importers: vite: specifier: npm:rolldown-vite@latest version: rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6) + vite-plugin-babel: + specifier: ^1.3.2 + version: 1.3.2(@babel/core@7.28.4)(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6)) vite-plugin-static-copy: specifier: ^3.1.3 version: 3.1.3(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6)) @@ -512,6 +521,18 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@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/runtime@7.27.6': resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} engines: {node: '>=6.9.0'} @@ -1210,6 +1231,9 @@ packages: '@rolldown/pluginutils@1.0.0-beta.29': resolution: {integrity: sha512-NIJgOsMjbxAXvoGq/X0gD7VPMQ8j9g0BiDaNjVNVjvl+iKXxL3Jre0v31RmBYeLEmkbj2s02v8vFTbUXi5XS2Q==} + '@rolldown/pluginutils@1.0.0-beta.38': + resolution: {integrity: sha512-N/ICGKleNhA5nc9XXQG/kkKHJ7S55u0x0XUJbbkmdCnFuoRkM1Il12q9q0eX19+M7KKUEPw/daUPIRnxhcxAIw==} + '@rolldown/pluginutils@1.0.0-beta.41': resolution: {integrity: sha512-ycMEPrS3StOIeb87BT3/+bu+blEtyvwQ4zmo2IcJQy0Rd1DAAhKksA0iUZ3MYSpJtjlPhg0Eo6mvVS6ggPhRbw==} @@ -1370,6 +1394,18 @@ packages: '@types/async@3.2.25': resolution: {integrity: sha512-O6Th/DI18XjrL9TX8LO9F/g26qAz5vynmQqlXt/qLGrskvzCKXKc5/tATz3G2N6lM8eOf3M8/StB14FncAmocg==} + '@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/body-parser@1.19.5': resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} @@ -1761,6 +1797,12 @@ packages: cpu: [x64] os: [win32] + '@vitejs/plugin-react@5.0.4': + resolution: {integrity: sha512-La0KD0vGkVkSk6K+piWDKRUyg8Rl5iAIKRMH0vMJI0Eg47bq1eOxmoObAaQG37WMW9MSyk7Cs8EIWwJC1PtzKA==} + engines: {node: ^20.19.0 || >=22.12.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + '@vitejs/plugin-vue@6.0.1': resolution: {integrity: sha512-+MaE752hU0wfPFJEUAIxqw18+20euHHdxVtMvbFcOEpjEyfqXH/5DCoTHiVJ0J29EhTJdoTkjEv5YBKU9dnoTw==} engines: {node: ^20.19.0 || >=22.12.0} @@ -2017,6 +2059,9 @@ packages: axios@1.12.2: resolution: {integrity: sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==} + babel-plugin-react-compiler@19.1.0-rc.3: + resolution: {integrity: sha512-mjRn69WuTz4adL0bXGx8Rsyk1086zFJeKmes6aK0xPuK3aaXmDJdLHqwKKMrpm6KAI1MCoUK72d2VeqQbu8YIA==} + bail@2.0.2: resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} @@ -3943,6 +3988,10 @@ packages: typescript: optional: true + react-refresh@0.17.0: + resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==} + engines: {node: '>=0.10.0'} + react-remove-scroll-bar@2.3.8: resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} engines: {node: '>=10'} @@ -4687,6 +4736,12 @@ packages: engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true + vite-plugin-babel@1.3.2: + resolution: {integrity: sha512-mEld4OVyuNs5+ISN+U5XyTnNcDwln/s2oER2m0PQ32YYPqPR25E3mfnhAA/RkZJxPuwFkprKWV405aZArE6kzA==} + peerDependencies: + '@babel/core': ^7.0.0 + vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + vite-plugin-static-copy@3.1.3: resolution: {integrity: sha512-U47jgyoJfrvreF87u2udU6dHIXbHhdgGZ7wSEqn6nVHKDOMdRoB2uVc6iqxbEzENN5JvX6djE5cBhQZ2MMBclA==} engines: {node: ^18.0.0 || >=20.0.0} @@ -5112,6 +5167,16 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.28.4)': + dependencies: + '@babel/core': 7.28.4 + '@babel/helper-plugin-utils': 7.27.1 + + '@babel/plugin-transform-react-jsx-source@7.27.1(@babel/core@7.28.4)': + dependencies: + '@babel/core': 7.28.4 + '@babel/helper-plugin-utils': 7.27.1 + '@babel/runtime@7.27.6': {} '@babel/runtime@7.28.4': {} @@ -5674,6 +5739,8 @@ snapshots: '@rolldown/pluginutils@1.0.0-beta.29': {} + '@rolldown/pluginutils@1.0.0-beta.38': {} + '@rolldown/pluginutils@1.0.0-beta.41': {} '@rollup/rollup-android-arm-eabi@4.47.1': @@ -5809,6 +5876,27 @@ snapshots: '@types/async@3.2.25': {} + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.28.4 + '@babel/types': 7.28.4 + '@types/babel__generator': 7.27.0 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.28.0 + + '@types/babel__generator@7.27.0': + dependencies: + '@babel/types': 7.28.4 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.28.4 + '@babel/types': 7.28.4 + + '@types/babel__traverse@7.28.0': + dependencies: + '@babel/types': 7.28.4 + '@types/body-parser@1.19.5': dependencies: '@types/connect': 3.4.38 @@ -6258,6 +6346,18 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.3.3': optional: true + '@vitejs/plugin-react@5.0.4(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6))': + dependencies: + '@babel/core': 7.28.4 + '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.28.4) + '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.28.4) + '@rolldown/pluginutils': 1.0.0-beta.38 + '@types/babel__core': 7.20.5 + react-refresh: 0.17.0 + vite: rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6) + transitivePeerDependencies: + - supports-color + '@vitejs/plugin-vue@6.0.1(vite@7.1.8(@types/node@24.6.2)(lightningcss@1.30.2)(tsx@4.20.6))(vue@3.5.19(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.29 @@ -6538,6 +6638,10 @@ snapshots: transitivePeerDependencies: - debug + babel-plugin-react-compiler@19.1.0-rc.3: + dependencies: + '@babel/types': 7.28.4 + bail@2.0.2: {} balanced-match@1.0.2: {} @@ -8683,6 +8787,8 @@ snapshots: react-dom: 19.2.0(react@19.2.0) typescript: 5.9.3 + react-refresh@0.17.0: {} + react-remove-scroll-bar@2.3.8(@types/react@19.2.0)(react@19.2.0): dependencies: react: 19.2.0 @@ -9548,6 +9654,11 @@ snapshots: - tsx - yaml + vite-plugin-babel@1.3.2(@babel/core@7.28.4)(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6)): + dependencies: + '@babel/core': 7.28.4 + vite: rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6) + vite-plugin-static-copy@3.1.3(rolldown-vite@7.1.15(@types/node@24.6.2)(esbuild@0.25.10)(tsx@4.20.6)): dependencies: chokidar: 3.6.0