From 52a67a93360e22874bc733ef5278df2a414d8189 Mon Sep 17 00:00:00 2001 From: Archmonger <16909269+Archmonger@users.noreply.github.com> Date: Tue, 21 Jan 2025 21:30:33 -0800 Subject: [PATCH 1/3] Bump JavaScript dependencies --- pyproject.toml | 11 +++- src/js/.eslintrc.json | 31 ---------- src/js/bun.lockb | Bin 100329 -> 105515 bytes src/js/eslint.config.mjs | 58 ++++++++++++++++++ src/js/package.json | 13 ++-- src/js/packages/@reactpy/app/.eslintrc.json | 19 ------ src/js/packages/@reactpy/app/bun.lockb | Bin 21733 -> 17707 bytes .../packages/@reactpy/app/eslint.config.mjs | 42 +++++++++++++ src/js/packages/@reactpy/app/package.json | 6 +- src/js/packages/@reactpy/client/bun.lockb | Bin 5001 -> 5001 bytes src/js/packages/@reactpy/client/package.json | 2 +- src/js/packages/event-to-object/bun.lockb | Bin 17949 -> 14653 bytes src/js/packages/event-to-object/package.json | 6 +- 13 files changed, 124 insertions(+), 64 deletions(-) delete mode 100644 src/js/.eslintrc.json create mode 100644 src/js/eslint.config.mjs delete mode 100644 src/js/packages/@reactpy/app/.eslintrc.json create mode 100644 src/js/packages/@reactpy/app/eslint.config.mjs diff --git a/pyproject.toml b/pyproject.toml index 868e884ac..8c348f1e9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,9 +60,16 @@ license-files = { paths = ["LICENSE"] } installer = "uv" [[tool.hatch.build.hooks.build-scripts.scripts]] +# Note: `hatch` can't be called within `build-scripts` when installing packages in editable mode, so we have to write the commands long-form commands = [ - "hatch run javascript:build", - 'hatch run "src/build_scripts/copy_dir.py" "src/js/packages/@reactpy/app/dist" "src/reactpy/static/assets"', + 'python "src/build_scripts/clean_js_dir.py"', + 'bun install --cwd "src/js/packages/event-to-object"', + 'bun run --cwd "src/js/packages/event-to-object" build', + 'bun install --cwd "src/js/packages/@reactpy/client"', + 'bun run --cwd "src/js/packages/@reactpy/client" build', + 'bun install --cwd "src/js/packages/@reactpy/app"', + 'bun run --cwd "src/js/packages/@reactpy/app" build', + 'python "src/build_scripts/copy_dir.py" "src/js/packages/@reactpy/app/dist" "src/reactpy/static/assets"', ] artifacts = [] diff --git a/src/js/.eslintrc.json b/src/js/.eslintrc.json deleted file mode 100644 index 8536da62b..000000000 --- a/src/js/.eslintrc.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "env": { - "browser": true, - "node": true, - "es2021": true - }, - "extends": [ - "eslint:recommended", - "plugin:react/recommended", - "plugin:@typescript-eslint/recommended" - ], - "overrides": [], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": "latest", - "sourceType": "module" - }, - "plugins": ["react", "@typescript-eslint"], - "rules": { - "@typescript-eslint/ban-ts-comment": "off", - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-non-null-assertion": "off", - "@typescript-eslint/no-empty-function": "off", - "react/prop-types": "off" - }, - "settings": { - "react": { - "version": "detect" - } - } -} diff --git a/src/js/bun.lockb b/src/js/bun.lockb index e935b9cc807d85dd1f0254bac1510073af862598..ff28eeb7f85e566069e72330dfeb61f50556011a 100644 GIT binary patch delta 24807 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 z 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 diff --git a/src/js/eslint.config.mjs b/src/js/eslint.config.mjs new file mode 100644 index 000000000..7509afebe --- /dev/null +++ b/src/js/eslint.config.mjs @@ -0,0 +1,58 @@ +import react from "eslint-plugin-react"; +import typescriptEslint from "@typescript-eslint/eslint-plugin"; +import globals from "globals"; +import tsParser from "@typescript-eslint/parser"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import js from "@eslint/js"; +import { FlatCompat } from "@eslint/eslintrc"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); +const compat = new FlatCompat({ + baseDirectory: __dirname, + recommendedConfig: js.configs.recommended, + allConfig: js.configs.all, +}); + +export default [ + ...compat.extends( + "eslint:recommended", + "plugin:react/recommended", + "plugin:@typescript-eslint/recommended", + ), + { + ignores: ["**/node_modules/", "**/dist/"], + }, + { + plugins: { + react, + "@typescript-eslint": typescriptEslint, + }, + + languageOptions: { + globals: { + ...globals.browser, + ...globals.node, + }, + + parser: tsParser, + ecmaVersion: "latest", + sourceType: "module", + }, + + settings: { + react: { + version: "detect", + }, + }, + + rules: { + "@typescript-eslint/ban-ts-comment": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-non-null-assertion": "off", + "@typescript-eslint/no-empty-function": "off", + "react/prop-types": "off", + }, + }, +]; diff --git a/src/js/package.json b/src/js/package.json index bb21320c4..26962b2c6 100644 --- a/src/js/package.json +++ b/src/js/package.json @@ -1,10 +1,13 @@ { "devDependencies": { - "@typescript-eslint/eslint-plugin": "^5.58.0", - "@typescript-eslint/parser": "^5.58.0", - "eslint": "^8.38.0", - "eslint-plugin-react": "^7.32.2", - "prettier": "^3.0.0-alpha.6" + "@eslint/eslintrc": "^3.2.0", + "@eslint/js": "^9.18.0", + "@typescript-eslint/eslint-plugin": "^8.21.0", + "@typescript-eslint/parser": "^8.21.0", + "eslint": "^9.18.0", + "eslint-plugin-react": "^7.37.4", + "globals": "^15.14.0", + "prettier": "^3.4.2" }, "license": "MIT", "scripts": { diff --git a/src/js/packages/@reactpy/app/.eslintrc.json b/src/js/packages/@reactpy/app/.eslintrc.json deleted file mode 100644 index 442025c3d..000000000 --- a/src/js/packages/@reactpy/app/.eslintrc.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "env": { - "browser": true, - "es2021": true - }, - "extends": [ - "eslint:recommended", - "plugin:react/recommended", - "plugin:@typescript-eslint/recommended" - ], - "overrides": [], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "ecmaVersion": "latest", - "sourceType": "module" - }, - "plugins": ["react", "@typescript-eslint"], - "rules": {} -} diff --git a/src/js/packages/@reactpy/app/bun.lockb b/src/js/packages/@reactpy/app/bun.lockb index 8275858ebd8e499b666e1e6444641934c5af0d41..67c24cad15e718b01312495b71de147e9cdf9e31 100644 GIT binary patch delta 1354 zcmb_cdrXs86#u^VgFa|!i&UVigNV=v^rKK{X(We6P* zHdzqP=7@wD23hd61si7;vP>}{IB@|POSS|QH;oe942f(K13S0Sgg^G@PV(!y=l9+7 zxc8pZM;GWzAJb=8O>;==wTrJL#+Zb;&u*A={5m^II@_PW)bgg>s%2$YNna-A6}G!5 zoU@`EX-uYN+eH*5p{QmCbr9+_ka0rf<+ZhSCyqF&8^~@$)`fl&&l?;AowhVMr0>sp zH8`Z5KVAQ(Ci|V)_iI{zxH8x=`qjPAhUr*^JWAFQ>6kRH)QJL4K=J7|3Jzf+$Rtg)A2a7?a=-T6VN}AY3k4a&(C!*8O|B;wrbjw6BPGe7j=l z5PoqPbTzG5z+rg2-DlZNf?S zuV){+OPSmC566Y`Pg*s7Yx33a7sFfJKf_;{JssyI!{^_decHaa5ps5g+7nu;q&-8N zUu>6khn_@Q9o6kW$wo(=Uw-qW%Cq8DH+A|=z4++b@!t(S*?aaE+Af-Uum62{{87Q_ z(*9*v)`3{OR+?Iqtf7v9X>}3sqr{M;$q@Kh9fYZJ0kjqPc#P+PW*-;dj1Nt0nWu@( z;^AUNn9OdR%g)06WUFFreM1Nti)h^Ztd4_Xv&BqakQg~r55$=n_B}%LwgGGzUM&b~FP(#1vbBhXB(Fh%aq}jTIi#BN_!jUE; z_CZny%2*P7k+R#*%<5SaETqW2D+7#JUxV$|>>UY7Y~n54Mke5(l&#OdW4Xtti{p)~ ziA{hHta{o2Ut5#7Mr{5E>58kV%N&}4uC%a9-+=q(mO~dCFbSr0VLUSWzR8r*#dE6&CiF2RdT$7Cso6K>GEu2&-lw!F=@{CYr zYZW$cnvm&PwMB?xHcrRZRi12cmbogbbmfO@jysRlx(?UWHoRL}*HEdec2zscKNTF! zRYG{4KitnvgH!n`u8Gw{dO<2gyv2h%1tDB464o7R2y{p`FFD^H4vUU*D6}i#RDl+{ HwY~oWdB$-z delta 3861 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 JL}=31zW_T8T(AHD diff --git a/src/js/packages/@reactpy/app/eslint.config.mjs b/src/js/packages/@reactpy/app/eslint.config.mjs new file mode 100644 index 000000000..7c41582b5 --- /dev/null +++ b/src/js/packages/@reactpy/app/eslint.config.mjs @@ -0,0 +1,42 @@ +import react from "eslint-plugin-react"; +import typescriptEslint from "@typescript-eslint/eslint-plugin"; +import globals from "globals"; +import tsParser from "@typescript-eslint/parser"; +import path from "node:path"; +import { fileURLToPath } from "node:url"; +import js from "@eslint/js"; +import { FlatCompat } from "@eslint/eslintrc"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); +const compat = new FlatCompat({ + baseDirectory: __dirname, + recommendedConfig: js.configs.recommended, + allConfig: js.configs.all, +}); + +export default [ + ...compat.extends( + "eslint:recommended", + "plugin:react/recommended", + "plugin:@typescript-eslint/recommended", + ), + { + plugins: { + react, + "@typescript-eslint": typescriptEslint, + }, + + languageOptions: { + globals: { + ...globals.browser, + }, + + parser: tsParser, + ecmaVersion: "latest", + sourceType: "module", + }, + + rules: {}, + }, +]; diff --git a/src/js/packages/@reactpy/app/package.json b/src/js/packages/@reactpy/app/package.json index c0f27e92f..15da9eb3d 100644 --- a/src/js/packages/@reactpy/app/package.json +++ b/src/js/packages/@reactpy/app/package.json @@ -5,11 +5,11 @@ "dependencies": { "@reactpy/client": "file:../client", "event-to-object": "file:../../event-to-object", - "preact": "^10.7.0" + "preact": "^10.25.4" }, "devDependencies": { - "@types/react": "^17.0", - "@types/react-dom": "^17.0", + "@types/react": "^19.0.7", + "@types/react-dom": "^19.0.3", "typescript": "^5.7.3" }, "scripts": { diff --git a/src/js/packages/@reactpy/client/bun.lockb b/src/js/packages/@reactpy/client/bun.lockb index 5e4b0581745e9a7cd1b79961eab3970dc6f224aa..35e6ef1c57158ecb8aeb68e2ee78f2933b6e6d6e 100644 GIT binary patch delta 14 VcmeBF?^NG#iI>r2^JU&`tNrE^JU&`tN8Zn6S=sZu^pDB=uGBijGLnS_=j+P@5Po z&%~#;u|k7UAcvcQfuDh)Aqq$f0qM;@7!?==-Yi~XFxU6b;w4)5x=TGZy*3vxpW)!N z2FeQnO<TJ+l1s)4!ykh z>+Icw&+dxsww>ktjqAU{+p3&Gor5QMPo}(CJ-Jp+V)9!#Z${P0opSz@iZSF+@f~2V@BYLx#@eATyWAGt3;gWrLju}-ffy{bGlDKjNUH#tAA vEVZaOGe57mJR`BBJY6?8GdH!QvLJP`qqEXvS!ajIdtKC-fp$->cbx|SkngiV delta 2578 zcmcIldstIP7QZ(HA-ok@L0(Zx5+u2K@JMhY^3tUitzi8?DhPQ%=n9cX09STn3tFpW z1*R0Gg`y~JwaP+7jn&#BK9E`?>mqGs0Uukd77_Zn+e&rMgj~tD-G6t!%y)9mne#ip zGc$M2>7u4;vW5!T?^v3^>TIY}#eLr}>Fa;w;_|_viPr9It4!N}<%hAh8WkAl*ThS)~%B6X<;|1OdM-`Br_k>$IJYD=7+(#Gq@fevNuM zhw-l@n@rok@E<#MFNZ9D(7IpLv|_5YB7@mpUcC8uZ+rAf)oXJ0&#nu)UWjQKuX%i+ z<)pveTeE%6HF%q419aS?oYBEOT~+aQ>$KdTevUF94BB_f>B=S#;|Sv`N7f?Xj|9vxG|pfeRW9D-8V7JMgo%f(#G#=uvE;+V14~ScvPwv38NZRnwJt&b zFKCn7OD-|NAFxj3CXX$b3lHmt+rk<f?zq=xKM+Nft^+pEYcos=Kb$<#q2BQ$)R6WO95Ejgj44O)A zb;>EJAvf4xWv*NsemlH=-NcPluhoik*U&#TEhBpbm%O(;*880~J2iYHX7X@RQ_ki! zdzs4`{+72l9Z+d>t}X89`2L4C_*EB*B~6C{R~}67Ot`r)_~R3CtMvN6?6}EZ{jk>I z)zc&2#0xK{A00ctzPVu4q2|_C3jMy*dM;Sx-qjRl1I)7p&Tf>3UaoULs<#?Emv(sPI2CVSYI(-m#;@xAU zeui;~EpYLh$$xtJjPCf0xn0qJf8(ef(dl*Oc=OQvo~}_}PNiHK894BV1;s`qf%^|mrlzj1YV?n&*mQ3&H>=$SS3tAHxY>yxcId|Rb%l3Q zdJj}`!sVZi$nQOwO6xBF*M-QTpz~Vk7p00@TjRxU&nlEEgW;JWBgy&4xIOQE8~D4H z-rMyY`{l907OdNc*Qehxpne5Av#j9b(#A-FU3OyRuZGe}YC2 z3}0k20AK27}BLQxaJEyiw6D#o~#eAQRp4=;j0-5fw>=5d_`*=r#o&2~|#&69nBZ z>BeU9h$to`+J?Ri_0iLPlJ01*KuU=)k>94XW+UjHOLs>G`I!qrctGWJ_oe$JphZlh zsSA`^RbD}Em7)H%k*&2RFHBxc#X=&wMbpicLH-#C;JW??xv*)t-Ik_K5QCBEc4z|P z@Z;t>N-bwWY+X7no#Z-MG+SK9^ENi{lbus7M?sb3{!v+6OsR{N*&Ee)N^L=@U_)Ms zx-Ws5P%=*4Ua?2m*kXIn}x&dyO62^6{< z5IAL^tpPA>RRKiS3Fe2+6a@=r6ma7sh9p*Qx}pu1Dkz!59QZ#&8WceU@O{M|a}cAe s;eqb>v|t4mz*dA>sQLagI|`l|MIff&;^HW0jT$@}HCQC*Ls|2G0ApSSFaQ7m diff --git a/src/js/packages/event-to-object/package.json b/src/js/packages/event-to-object/package.json index dd674d162..781527903 100644 --- a/src/js/packages/event-to-object/package.json +++ b/src/js/packages/event-to-object/package.json @@ -20,11 +20,11 @@ "json-pointer": "^0.6.2" }, "devDependencies": { - "happy-dom": "^8.9.0", + "happy-dom": "^16.7.2", "lodash": "^4.17.21", - "tsm": "^2.0.0", + "tsm": "^2.3.0", "typescript": "^5.7.3", - "uvu": "^0.5.1" + "uvu": "^0.5.6" }, "scripts": { "build": "tsc -b", From d2764fedaa187f29fb9c3cebb66d0563beda31f7 Mon Sep 17 00:00:00 2001 From: Archmonger <16909269+Archmonger@users.noreply.github.com> Date: Tue, 21 Jan 2025 21:43:44 -0800 Subject: [PATCH 2/3] revert happy-dom version --- src/js/packages/event-to-object/bun.lockb | Bin 14653 -> 17949 bytes src/js/packages/event-to-object/package.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/js/packages/event-to-object/bun.lockb b/src/js/packages/event-to-object/bun.lockb index bc2b65745a92d360a0295f0dcda16d1e862a9259..d3ca6e7e5e97d09b74ecc43b26aeb5c6b41d8cc3 100644 GIT binary patch delta 2566 zcmcIldstJ)5Jp(sjQt#Tov#%jGqd?582sYTjK0UxbZiwOPfL#lT+ZQ^9-eOXArb^|gxFAL}Q)eGi^nIxsli(zRuUaqFM_Q1({+V!}KGH7Wkg z397v;h>=?7ND#9KV$&9ot{_V-QV!Aq^j;@|fZwKki@wr%%1*}>7llP&(A5^dN;#Fo z@Gl03k-BI8_uIA41uwnZvPamsY_g?1oz+&R*?6R*sJx$VnI&MME$iU9d%DCD!YThruN1FBp>^|;raf6#-nE9nWdjasWhjeT- z!VEzi8+-Ogz#cIdvNgfW4Ba$LlY1o}(B#>6&f9cVJpFv}UJ(AFI1bOo%@cnw&Q zkj2Mf&aphP3yz;Y&;rEhF zF)w?_=cIVPlz66UYh@b$*0Pvw<;d6D6Y0I<*bL&4>m#T!5Cwau=(v`GuwZ?pS5@$; zl8;ODxq-e4Q^o4A8)0>8#;>M$tjs=r8U3JY9^Ofw_uTYA=X3JZBiE6-}gjr;wV?@Q~5zcxSc> zG~-}vV9o1EuRV8Cd*tcd&Zw_nK4e35c$_@aH2A)|bL1D3$rp$F_r5akFuV5kw>rML z?EBKZH?FjmxfyPYFAiLY*SCm&9~>7 zck!jMciI(`9P0CNLoDMzGuyU0>z2j5MJej`T?|&6c*i%@&$|95)iCga6)?W5^k5BC z^M)1?|JZjuq`P%|+a<>YU4DkFIMi?CoJ*0*OsS>)ckUibNm*Oj;2U1P;r2joW}6i*NwdYcSqUGuYe#jpg*TIX z_EvDiWSgKI^gKLch1!c?ANM5?(2> z;Wxjh?F=R#Bf~)|m`a~1K%QKg2$V;Urv|p;x`FMJM}^j_El~+VRKVq;YObf(Gq5ZG zW*|)bY2r(XKcygafa`6GPn?fVbJxzo731hK%R?j;nITs2s-mz9XTV`N9K&EZ3~h!2 ziSH!lhff-VsxW032@z=_wSDv}Zs22qgKMn`W2-6WWd z3=t&;_mk#Cw-K`^oC0*Z&Cv}BJVGjh3MB}-;nA%LJYuShDkBKGMbgd8>=9BdNVElg z5#ptzdn4V&V1a}ZVj_P{XURs;eU|QsOvYzU1mOnN(jAxXjer(Dg{CZ!s}*?#xt035 z7l$|37(Fm~5fuZ8=(bEZP$uJ_KmgbEf5?SS!M$g0|HS6S zQ_?}El}2$ywLzYSdVZ2)ih28~;@nr|8V#k?$g|cf^W^G+5^`N$v9ds|P?9;yV!5hR zl~r7tOVWHTYJOh6vUtOKWvMbdPqB`~ampf1p1MGT3d6loFE?EA&G^XwrHKX3QB4>3;s`&289d8Zn6S=sZu^pDB=uGBijGLnS_=j+P@5Po z&%~#;u|k7UAcvcQfuDh)Aqq$f0qM;@7!?==-Yi~XFxU6b;w4)5x=TGZy*3vxpW)!N z2FeQnO<TJ+l1s)4!ykh z>+Icw&+dxsww>ktjqAU{+p3&Gor5QMPo}(CJ-Jp+V)9!#Z${P0opSz@i Date: Tue, 21 Jan 2025 21:48:46 -0800 Subject: [PATCH 3/3] remove unneeded deps from @reactpy/app --- src/js/packages/@reactpy/app/bun.lockb | Bin 17707 -> 17643 bytes src/js/packages/@reactpy/app/package.json | 2 -- 2 files changed, 2 deletions(-) diff --git a/src/js/packages/@reactpy/app/bun.lockb b/src/js/packages/@reactpy/app/bun.lockb index 67c24cad15e718b01312495b71de147e9cdf9e31..b32e03eae6a437553d4641f596bf6f470dc78bb9 100644 GIT binary patch delta 2215 zcmcgte{54#6u!58?b@vy8!*_T{AP0wx2`|dZXojsBMU0s7D2_JP;{Ur8w|@pB-%28 z_ye=SAsGfpShfgrX)-7Qjm8=I$IQj(ANxbmfEvRlCSszAF`$0;_PsucE?J`SCSSkr zopbN)JLjHv&%kT^`m4OFfv-Q@xZD|Lj7?!IF?je*E$+fYHXe4yTA>)*9DAxg+S1Ir z6~<=3zE9^Ca3P)_(|Lu?6*?E`tbnIu-VJM-zXngk^RUkEfT!a5tu)6IM|DGo&TTqx z1Q%dpgU+=&SAg?jpQCfG&Mn)UH^rW1>@f*?82)h zo{q(K?rGc1`d|=m8cvP#Ak1H+GO=o#NnheMYG&wv{ku}`>9{ic!b9B z+eKwIjekH&TjQS*_R3t3zeMYL* zoMj5cYPo=;JklzhR?cM##DmiLT}D+P&(g+sQ`DvLB=x&ArxQu7M=q@Nv$dKxQdzF% zI1ZaQA(7M6soa&Eu3D8i(jkXn1SN`+A(0H*${|?zaE8*3Gn8X8EcQVyiGpUOa@F5B zK9S>pvg5TTc(Xg~779<98OO1T3X^&8>Fn3zx}8PbVu-x`hxv`mO>a;9Bocf_7-ECT zg!|9)*319@7aL5xUgo!CQu$52TW~F(52tz-UdxFu#+LU0<$wne*~W(}D;b{|6Q?99 zS_FMJAd)948lM8o1@eHoKnXAtm=E9@W%Ga{U;!X17&n=?kJxPBE?^WQ&UK=KFb-1CTS*PR85R26#Fo*$+x8D7do7CC z5wDgoT1LCQr=#w`nKvv-fG&F%@Y8h58|E&0$QR&)v^=QNG2aEAOO1XtXk5^0yS>-G z)a_Te*W(L%d^OCt!h0@U31@H5j+vfXI_X#4#+7gVa8-2G)-6q@ebapZ8?= zX0L^B2zb069Cet6s??Ctx)b|rf+PI-yg%*_ grDv_7$3ubCnb3fX4uxjZjwNmytaGJas5{I50=_9y>Hq)$ delta 2131 zcmcIlT})g>6rS0=yX?Y37h5QorIbRktit}Vd!bb51!-zlx|CFFY+^R01=B@VNEfsX zq`TEx(X_VBd1#EGmY}AHtu||_#wJDjVk2s6G||5JlL!*^p&B0=TlJgEy}Rg(jX#r| z`+alH%-orC&Yb!F89w$>Z_v@LV{czqXM7i97jXzX?1henQ%XSb!)EBksf&POKGe*CttEHH z;{$v9yV(>pVyDs6JioyC9-1(#wlf$dj!m6rADuMY_~+!7R8tYB9%(&qrwK{r!!(cY zYvi`5{3=B)s@-8?%!gSP@>}Y8BhAAyOm3^n-=-+O*J#43S}wsw5724rU6z#=#=;uw z1-oBkQ)#x$YUp;Q+4(ecW-+!!o3R5dq_Ih`4vqbqW^Fdc+9{UPC}~9eb}r2nc&uHU z@MM}@0o$bMRv_`I8oH0@=G+~Q0qhv(OxMiy{1I~J zs1UGD@lq#RsjL{N6Pdu?076 z^?q#ME_RAGO*KBRA6rZo7gXl&uefi<#v}d)kIz%Dt&0sNN8WwqlcLA3R2!B6tD+@- zxuzNOMa6pfv!O>1TsS>$l0=Ykv}9Db3|hyYXnpF`VUx6(Ui7Wv7wJ7;n2Xr~K0`4@ zric9JTt2Uq=ug+vf9irE3WyPr92e((h>N;QgO~!6i_==`bdCvN}QyI%N-Neeqlh8Yu z&%S-^&95`|S@H*Dex2F^vdef--p}edzVW-*bY@f;B?7WyJV19_zu0#+YiMc4Zah(! zTYf5SvkVtxED`z;D;rPR)?Y^UUcG5PlCh5v56XO$TtT_Sco6UTX!pUqpO5a#jFKGG z5iC-S2j_?Jmwcn)8{;M(2_Vi$gujN%$s>q>2hp6O(V(n|4E{$cq6fKDDK X`eLa~b(0RdQRkxmR!3@G>skH>ILLoX diff --git a/src/js/packages/@reactpy/app/package.json b/src/js/packages/@reactpy/app/package.json index 15da9eb3d..21e3bcd96 100644 --- a/src/js/packages/@reactpy/app/package.json +++ b/src/js/packages/@reactpy/app/package.json @@ -8,8 +8,6 @@ "preact": "^10.25.4" }, "devDependencies": { - "@types/react": "^19.0.7", - "@types/react-dom": "^19.0.3", "typescript": "^5.7.3" }, "scripts": {