From abf86c083eb4c57422180adb29562a4bf4c490ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arnaud=20Barr=C3=A9?= Date: Sat, 18 Nov 2023 17:11:40 +0100 Subject: [PATCH] v0.5: Vite 5, ESM, drop support for now builtin `?inline` [publish] --- .github/workflows/publish.yml | 4 +- CHANGELOG.md | 6 + README.md | 2 - bun.lockb | Bin 15859 -> 38233 bytes package.json | 25 +- playground/bun.lockb | Bin 0 -> 45770 bytes playground/index.html | 13 + playground/package.json | 21 + playground/src/main.tsx | 15 + playground/src/react.svg | 5 + playground/src/vite.svg | 1 + playground/tsconfig.json | 26 ++ playground/vite.config.ts | 8 + scripts/bundle.ts | 20 +- src/index.ts | 10 +- tsconfig.json | 28 +- types.d.ts | 5 - yarn.lock | 843 ++++++++++++++++++++++++---------- 18 files changed, 734 insertions(+), 298 deletions(-) create mode 100755 playground/bun.lockb create mode 100644 playground/index.html create mode 100644 playground/package.json create mode 100644 playground/src/main.tsx create mode 100644 playground/src/react.svg create mode 100644 playground/src/vite.svg create mode 100644 playground/tsconfig.json create mode 100644 playground/vite.config.ts mode change 100755 => 100644 yarn.lock diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b2a03c1..12a4ca3 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -8,8 +8,8 @@ jobs: runs-on: ubuntu-latest if: ${{ contains(github.event.head_commit.message, '[publish]') }} steps: - - uses: actions/checkout@v3 - - uses: xhyrom/setup-bun@v0.1.8 + - uses: actions/checkout@v4 + - uses: oven-sh/setup-bun@v2 - run: bun i - run: bun ci - uses: ArnaudBarre/npm-publish@v1 diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ae412d..e6ddbc1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## 0.5.0 + +- Drop support for `?inline`, this now supported into core in v5 +- ESM only, requires node 18 +- Vite 5 as a peer deps + ## 0.4.0 Turn SVG into React components, even faster. diff --git a/README.md b/README.md index 37e08b5..49b5ea0 100644 --- a/README.md +++ b/README.md @@ -48,12 +48,10 @@ If you use a custom `.d.ts` file instead of `tsconfig.json` to include Vite Clie ```jsx import Logo from "./logo.svg"; -import base64Data from "./logo.svg?inline"; const Example = () => ( <> - Logo ); ``` diff --git a/bun.lockb b/bun.lockb index 6aec4684e66e0d31e76fdbbfc0607f52ffdf1cfa..1f31b9a5fbca0f478cd89c72bb82f14a3709e795 100755 GIT binary patch literal 38233 zcmeHw2{@GB+yBs5D^yAg*$P?4nvk*;sYGazEQ6tutwAJ}MEgP_XO7@KBbv7c)qk z5j0=HD?CUXyjDQ4_gr6Q07J_+m=#D5)0(d%E=ZwJ25nDT_I-?{WL8xAn)v!_8}%iR z%sZ-;Wnp|LQpvCSN$~YekO-U)8Bj!j3S-!DXK(fc5e%kKV&*f$7%1W!%9zgx3JYZg z2LyzNP$*(OD3oD9e+AhqLwE&3B?$LHr~qL+gz^yjvO^noI0C|<@V+NId@Df4OCgkl z_s7}cW(Z{=zK|VyLO2BCHV_Vi&;-KX5QYSYhIxmEQsTwP_(BN9;e8N2D3}SwWrTW# zGXs1mHoYhm8F;S?;Q$DSutOns*wmAJ{}96dKrez&8p31ja0feF%?{_YLoaqXg&mr( zLsba-0lzdm6kvyqARK!C7{a~~-e8A$>~KFj+{6y;K=<$%6B6zfzzhnbgwlP8`Uqq( zQMFK90St-|qYATnSCGx-G?m*VNeX=J;F&I zNYbJ05as-D*FTFv_YQ-yC@GNTS_~o5=h5{lVd9motJJ7WDI2jbk$DNRGVzTos~rL! zO^{5tNZhzo)@AYhX0;+y%--}tv+NxT$ z(zdr`O_{Fdx8iRnIvPHR556({tn`4sZX345nu$#HWv#sKGuB=3TzQk|liBoJHyS33 zF4efVmsK|R*zC|%6WVjrhednX%MVj3s8}PVJjN=>eR=5C$$tZOYX^3nUIB_)k+Q1)M!w$f|B zH!(?h=@#|AYWf0ep6`CN%-32s<>93QN~4WRouK)^FJE*WZx}MJi8ySwt_>^@?K4&* zPhiu{mDIy?Jo=bK?m4*FzfpAf9UaRwk5j^uf`*fCp4`1LH|o;M#EgD2Hm$Ey!anRa zYdOn2ZJJ>q9Qdlb`oi{1y?o=H!(%ix;u&5VB7yVl%a7gN9(3=%-Q_PiS-OVC`HGKE zH7;y-O1kSQZl|HQu|@GCb*;aaOj6p;Cw?K>b*{-5HRT0s+^04+hPYg46xvq(R&B=A zayz#V*Pr>$Sl2k%Wy*M=*U5%Ksad`Hq`i?D_@vygf4XKteNAckm2D4hsYcKLdhMv? zmefeP_+xh+$733&*A4DJyw6f)r3G3B!K~iF(_N;X(C&n0y1)CPV znVNR?(W~MWS~}~}|J(JS@Vc^kP{Nf>g7@deY_`zTsLfa{Sy3Sz0^KuT4u%K9p-xH% zzBeHVso+J3x4-@m^Ph*LM!=8aFk}(_*W45e<`;s3j0Ap^H*}SR4Bg?^f=r>O{$u_W z;P>N$|2yzQ2mZ(TdqKhJeDGfeeh)tQm7wDJ;a|!p|5M<1<3s*2!u;{4@yXu`{H}b+ z?+70pKm134--VC-g<-1755EWS&)_5flfdu92fr9h7DfXUmJnnlAS-o#B%%!2IpT6{HARF-{nQvn13itUJZaB_r2ZizukZzl^4nO%P@X7xe_$TsFeic}3OyGk*h)@2LeDb&R z$!`sdE`G|to=^S?KKX}A@h878@LTgy|A+bH|G+1|5iD}~k$*ApkK?2K1$^=g!zKei z`A_7Ne?6c4)xeL&AJp%|RE9IIz+;yVk3Yj;e*}*o=pF1){FcM~e!#B-`J=H9jlsV= z24eorz)xfI<9EL!08U#5{O0WPqrA~L`a2Huo5McPEa1oS-{D1RaQZahAIrnv-SStm z`SG~jU4D5O^i6omkJ`ZRI4u7h;78vtj(0czbHIGLD-mo zH1H$+FQ#Mu1;CHjzlcV~34Re`{v0+x&cD0*uLFKG|HJ$k_ZQi7$}cCw{r-Me zc7%=daRYu-e*E3w@OSf127c83pc^8-Jyegs<8b~@fqy*k!!S(jUBGnew;bjl4*RKw zZ26H6yDPsd@MHO*E1~H9R_5)A{7z$tQm;pZvOTD92Cvqk!LrkNUsFC%-5hHu96dJ)it3z>oTW)M@=m z|MiGZeg!y$0^DvK(LfcsAf(VRk^kf!qxrZ8v@K)CrHBI_!B7A&h-Q2zziu2xB?nP$&f6k&ONjqPFMEevd+gH;o-fA)?P<$9Y4P zZYKLZ3Q-*PzR|q}N(gx5{u@J7j(Olw$O4bu-|yo;>%02Ot+9lf&;eXNr zo&bf!<%OocaywqMmpW!@@7Qm5^9I{Q<)>XbaAftI7AjMb+Uj?4|80Xho1;(5zpPBV zX&tJWbt6vf*5RhjgJNgyT+VQmdfS_gi~3PK?jo_NuLt*7v}C9DsfPl_4`Ue{(sKd} z}f3$3Peas!9v3AM@1+_Jsxx$EQ&TfS7=8Qy1t5vp-^Qc4EnUN%8PWI*w8KLxzu@`S$7YGvO1BEu%b}XnhhB zCs*nZtzsx;SsI7BXY4R}TuaCsLy`UoUMtI&g;4+2{bnZOyAoTP|K0;dOg^UoirgLdYwEg@uqB*&@37 ze6m-h=LOHxZcRa7RMl#pXfhZLEa|A|YieUGPu(9zYm~k+{QM*FjBHu+qY5Kzqcf;Y zhMFs8C7Fex~^bZQMYi=YxDjZhvjMli(liFD-8=>}Mk?X8bil z-u{NkMY|C)UkmreKKGurvgM$9^XlOC6S|4a4SC;MXIrsxk$%zGfgN?Q8|BInt7XL* zf{QK1_w~@*rTd7H^T^-3SM8m1}Hdgm23?Sv0;j zvDJ7_tF8$-wQKS+ZI6xL-uKSTj5Ujr`RGNf6M978iV}L@-FK!=9KO86xpC^(cGwcHtH~2^Xa)cgEPePo$^Xm(}_`Hg>C7 zV*84~r3fND@a~6D2k*9R6?_>W?>2Yfw3OWHde`f@)?-?~Sv=Mr`poiP&WtC?H+*dl zm`+W8e$t9kJJZgn()+Z6%j^0--MvFI#dT=joQ&h6_iuZ@-?U_X(GzKu?IE~||8*bRE?}%uhmA|R511tqzAOWh8=aPd%RDfLgc##hiBFs zcn!E|Vs?(=9`y23T%!8n=(&T3n+zQxS!^Al)f&iB(#jn#wfJe3_!9X;L*K1*^cH=W9gtZDOGUwoIJ zF;>v3Po>)~i8yj%q2H-%N$ja zI(Fx^)7RC*D5D1{6S(9!1jhp$ zM{T$6bH%gRRri+2nezqZn=Gf!J#p1}-VKl9m+dXe0{d9!%#S_08X!7m&BhmoS~mC6 zzOQl-IHq=i_GVgXxM0?rVjf()-a_Ei*N5JVXBB;qxb)OkCbLXoXJYK3+5zWuy_xTB zP3bGAGeq=$>Y=gw7G%3SEmCjxY#A!GZV~;}W*wEvH%+GA=a*~o;KFt`$5E$-uT}4R z>yqQvreIOWa!C)FN~ik65h`yTk6rliEbiT~Ugz_s9O(J6m#lJ`sH66AsnE06j>at= zQt0rpriayF4|5(|G{?t|Y9~2AwO`5|x8lgF$F$t{-`0LH>%#EFC(jNnNLqGopvJlD z%bz-)q_3q03WPs>Fsaq$sv|8i{fn?&c*%9YM`l-fAgEJ&~l4M;kr5w4HYqI&6gK{oEOxb{6y|pt?Ia`*J3ALyxLpXHGcWh z_X27UdE|v{QI4ag^}c0V7#SaZv>>fV(c9ASta+mQl)k)6^3Cr1Y3G&w6D%sDZ@6dm zHJCo`$@7V=teJ(k`|GM6{Nl7}f_9nn{-v43I8Tm4u-(XURK<*2sZFbg9XS;=c7B-i zI?-bNdp(*Z_L_tWmR|@zVbv=qNol}>s}C2mj9+hVn&2O&A$rrzu{N=A!3}|mm-*L& z2zg0d*aqY{YGuTXURM_lyw-2<@rrHRZdVH4*<)c=+GrC$QhVm|%T+79b?n6oKE-Y; zTe{ugnHpW7)oIHLlj}8mM2qb22nQ_d#e)mmYaB<-i)a@17XGkXyX4_V!3@I*OE26F z&ikf&sV;kBuuAUi(eHX$#_rM{G~Ua2*w&Kp32#{n*8L^y^9C`cUY2gCahOQpQi(AW zw!Jux`eJjRtI}2u8}GkMuImsH=&4mF^`Ia|dQm|2s+{!_X)@)xORKArbGIC(G`+AA zxZLw_!64@MQHIV+9;HRs>w>9Q8ig-Z)StsHLu!>R|9R{ zXY^zkE3PtY7-LhOB6ufrsN{tc70QwieI|`6pDlW2_FCFN-RqV&1Nwer0)~O$A#_27P8Wq`UWHS1(Z1Rp54#h1leda!8?RDSz`BZ_+edi$- z&3)@z`-tv7>NUhpV1sEQ8#e|J6*#Ey9s5m?u&e$&z4^_Jtk=gpB5n)so@X#6HnUNn zsE6Z)Y?BV!(0-01`WoND1D-tXOb%N&g|gOT$LQy;uN{MmX_2p-dyd)FhTC>;Wxc1p2ZwGp) zoY$B!bZeAqbEKR-U20%)UVN`D@dv-!y)bpRI7rSPD57Z2H=Gw&wc5vEVDl~Oo9<=z z^Ac|KkU13ZU@S~&i#vSxdwP}Gl8s{x_x9eu|3KzASu2$V`y6!AEX=B+?^SrT zxUlD`qNx3<@Zw6I+%SH8Z#k(DdD-{YU!q?hdhQT5-qm@#IrYZuMY}V44--gfjyt&L zuJ=LufNh({y;lh6@MTmapY+@ylsZRc-(*4$WaoqT;SfCaoN`l%TAk@UrHX4?=DS`@ zx%}SUy&~YHGgV6M(%fA&$83VLC9W1^`8zDGSkXIwtjGHHqx;8y+1nPEezbl`wmyr% zCFgx=yz<&I3S}JDJm_zyn;y_6Wx2Vh2Sej>?46Ep!3|p}vajMNez$6@oSUD!JTb;4 zRoXE#t@oX4qIVA4dXyQhs_2mSByhv8OEK-OC4$%8U$E(q!8XwR0`zNXs?_SqF?jJiUCbwly*8WLWs~*}_fU!ED?Zz|+K_5K>Qw zEV=jk`dR&gH%H?yPAWce?ZTC^*>+o0w=5j^GX!%T;9~k)DdaY8j-#y`s0JV4HY0nDY)L$C&LLx$a zw)vPro35{Ek=z}2+S24@L4ilaxb z8aXF?u!?&)flJOyba`<{1`FI+VL74nD5F+!ZB=bs@@J!|pG=HQat?S)?KfKfYQY1O zt;6;FB-SssmyAxXLKk2Qq2>u)w@YO zkn+MA1jkVe4@QV3H@nX=ONtqBQE{%EgW#I`moj$T`x2liT)eZxQDVeV*4-yU3*}Sh zwmay(dUyAsqu{vKDzEmj8H*V4cCo%w0VC9mzq3 z_VDOPM`>B+&PA#HSLUg1Z_P9*ZJ+om?ZnZzgZh_7uYK0>sj=3$V#S;}mE{X%r__97 zl#H`s`Sy}`Rz4TmV4$~VIu9<~Mc_E<++I&cSe?CK5x~klXuVqD+JoGjjGB#7)6?yw z^iJe{>Y>!K$bMJ4iOU{!r_rly#p+lpE~z`8>u!%*`gv=|of;P&+)*4Gir~S8y8|3Yyf6_r^2f?q|4n5fg|zua;2(;*Kn{f0f| zmZ^5@-18Ur7C1In^TI{{s1|t@_mnrA+G@}0&})-;aE&>rAn&Hb{X3@D?+e;5WMOmS ze2L>+bE-;9_5 z-|*nVSrf-m-9tq4C5P(Q3D%|eyn2{ssoDQnbimJ4_mdTq<$^BC zN~b>^Vew$r>E<@6mP@vF{%zt$Bo;r;_b#GzS&rt&ZE_@V1|>``NfE^DQSDG}fja zobq%!ZE1x$urRn)?s+*tXnll$sb`A+UCAT(f6VsJC*i3M^qM}%Qys;UNyr#Uk z+1HqTjS~8-8vj7ZApCpPq`LQoN*W8o`c~|t>m(UiC0T{beXFHC56*d4up)YZXx2jc zeWi5orC-B8YP{c?TuYAgq`YHzagE-NkY`S;JEG_tBIn;Y;gs%e+eo$!zJatlnz_m=&Y%ebaD_{QQ2cB#*pfd2y4z7BLr_c}+j% zYPweZQ>pR%p$ZG%7-jlp$OM(>*4^4P=w{DhYS&yUv*Wf6+^GM!Xkx5T<8ScmEZGCGuLVlxGE!h_RZo;1z9GAO=_ESdaj(_Jg(u1q3e>gL)#js zmbxzPzpePai_MZYC6SkUf@@5QZ%gFF4&%W!=f&L|ckr7*K-B8*7thD#yPco%LbX0( zazfjK_8W`bCn!#~zW3>%{iNB>IolhXK1hvTt9#;-#k0H-=AUNUgbC(1+@8mSYr%`V zsbW>khLcvwear{RhFGq!>#>0u;aoJ|rLS{8#=2hp&1rKc?kKlkccV@2cFW3Zm1q3! z>W|(WT)ss0_3a|5GZ9~Ta4mUpwcAHH=<9}5oU?ha74K&1TWvVAU*3vY50AJ`EX__B z7ASN7)-Brlm-SD)U3&|wH|QsPGHcft>d_&ybvOO-&dY*4xK_Nl#}%B91a`P@sd(lU zS>F1#ZA04Fn0rA-roGCP>^`XU*xpj@Q*Vd~@9P`l0sM}OD&LsTt z$a!urKbC}lv2h+yZLJzQgRan8<+Fo+VJA4IIJE0dUu$m_@SxulJ>|?kCC1}NB?c%=$mHG zn&*dQj>^bUeC3clrDT|Peq5@{0-@R3E2EEXRBU~AVN!qJH&Od|a3}EM(u?PcIYg?S zE_ks`ew=uf#Jls~H_QorddYapc9V(Po-sN%)s97Xy!mp3?*5=k-EE^TQ&BVTla`nD zmc!vjd*iS2;M(%y&Y}9pW^3$n@V>i4JYW3t5?7(K=3ia}?_agaGH=_e(!dD6UJLUF zWWG%Gd-y~~cG@7r1JT<@FZ!-v zB(ZXAalJF^Uhtj|5i^;T0uLdFb6w!^HeM-JPF_0R9CaVa|Z#8MI2^>SOcD+?^3K_i2I@;@uV~L2;AU~Kr&LG3A`RP!lI#5*rJJ0$FLGENmu1SvMe7T=5hl5%m=4AA;w=@D65Bu zZk#hw>r>&(B-%xFox>m4xG{j}z(EChrw-JznPIzwp6zifZ~r2T2k`?(8NG6!w907p z^2!M3dhh;|mWrg?Otmr$pw~mK#rGYQ8^NxVHDBeCpb&9%nQkR`qk2N?f0-C-(eEz0kbu3zlkQWxwo9 zjZWi;i|u zNeiq7B^`G?UQFwE-m_k;pHroHi0z@8w;L4>w{E%`KS+Ym1G)d;#4GRiSo24pBv*Tu zn#j!^;kVu3^{GLvrepS(H-xpW3O_Q^x~wED|4W-d>CA_RE_BSUsQSo^y%JrMh;Z>e5JKKVlEoWbvL35CY|^E! z@_*TLMcSC{6K_2hRxOQEZTd2#scm5|+huv`8?GkP=RVv!{eIT&J+A%@LWzzZQ74lN zb6*p<m(q?`2HTP!`J3UjwlmlK=G zmKU{$Sr`;T>XadapZnLFd2CYfO}V|k@p{=EYHdHqXn~6lPq$3)R2I|HI2=_PnZ4+2 zPK)x?vS$VI`fJu6@43jTXHRvD#N?Z@Yx4h zqwY zoXv}C@2odQq2OBK!_iTp!WN5a?RE7gB+^e%eJE9r%8!})Zq4l1f8|4^HP2^joJtuc zpyssC<(lp3WapLZjJM5?S%l>^2TV6!T-l84mj+jSczHxjtaP-Q|2(@_Q&XL$_N;lm z&$QR4VomvFbH$Y`DjU4A_qL5`__U$_fYSOl56ksJH`HjF$8S%FWXp^6>&}ZSlJ9v> zeBKgDu;Hl>!|z!wlsV9AO}My1$vr(8t-L9hEqANxj()dCXwc&Is&_SVwbV@Z4p{P5 zch3&>KK5dVH@y=laLN4#4_;i=)Z1ydJJhAuU8uQrPs_<;+JFPD+w}KFxz~JA95r#K zt>xL9GG_VdpDr8RH27FjyKjbie7|&4PoYKaWvmU8yvT8r+<)-o#SQWo^d7!lD*s(? z!Ty0akK3rOrimHOy0^wIpxGy8kj#7GfV)R0NbI;A`XqO|ea5x*MsssVD^9){6rnx& zjZ#vz0U=; zqtw*|Rj8(oiR&w0czm!_cH6lA{Gz_q=Vy-`+Cy)W#FKhAXT|jf?G0nHYJmiB_S$K>&UpX6``^(3 zs!RMgkfh*J1Dw0Zpm+H1@i@Y}f2-gB9SQ&D@;|KsG|nN1L-dU59RKa8!ElHV)gFW1 z|Bgev`0q;<0x#S(iTNGA|4V5I{jvY{l^qLz|1AjH}R|9`F@K*zW zHSkvhe>Lz|1AjH}R|9`F@K*zWHSnLSfmHS(S~)uuHw|TZ)0jb_Vf26i8aAy#b7nCZ zV-@st6hfI%j9_0)1p@^-*hB~l_Jz%JFUVC$G; zeq${IMPM)9G+bYAEWrOuMi{pTq(yuB=r_ga_rK`3x*_0UPnh_j9o-q%0gvutqkGf(;L&|#ba&Vg{3!6~{w%ud ziteSNJEZ8oC%T)7?opyUkLKXfZzs_25&DBi<%I2OWQ&6MdtvBzSLioV==V(Mw@2uA zLJHs&!7G7R20siu`n?GHZ3ntHhwiwc`)KIy*f{X$E)u#ogzoq_fJb*{(7h3)YouGG zXLKI{-5o&Z{OC*`ou8w#Zgei~37!t#3%oaYAMmIOe8KyHp97u=-XHv2@B!ch!3Tj4 z2A_u#gNs3l!F5${C?5gvNOn{Xq<>ToNWVzWh=z27bkzgAAb56j`qx03oeqv*h~Ibi zfe_9ih~K=zxgN5ELexKM2dIgnb|DI01iUbKA@HdEpn5^|GXOlQcU1qV9iaAr+68JK zsGXp?R0FRHUIqMc@TiWI!J|4;1g`)d)g`J^RJW*(QC$xPkJ=B)2e&8GW>7mq?FqFj zpHiX&|YE!6fp*Dot(nRoH;Jv{gW!Lq%P>6sNH+9uBbPG3vj=_-g zz3Os125ct;+e45N7&}H66_j(LjxB{q3AiH#fkV22I*q}$AVdY+b!fWAG(AE?P@6H> zYJ{i&sw1e^7^Ih85MnzMz@uwK)2A6xu!RU`D zF)`SR22e)Q3_*Z@NKH@-Xi$at1Q}bd5JXbz=|WD}77w;L0u&>f0nI?4f^Q38>nK1m zpy}z*bU1c}u>BOOz+ycp4v3AE$EyQrfsOD6=_`N%27kb%nck_r(YwbxX#vz~kxK`U zw6i!bJoK8;Jw0jA4w6j=?Bj;}3O_eq=+$>qrb9{7S{WKuL2R2}*LhD!muKl0Sk~|BH*B#8 zTV@dy0J&(WDPY@5Kj{E!0b4u5R$Zt9pf)`kbkd#zq&*~T_k~MAx60sajKP*+xD;$t z3EPh0Qn1w}Y+Z&+DFrn6zGJZc87>9=`X0Xi7;K@2OTo6Cunik71zUf@R&KZyY#$2S z!QoP{1u1MPhfBdWrm!s?E(Kem!q#@U6l|vo+vDLY}W+*j^Bq;sp}GNEm}H3UMje78kZT#HCzopa68@g!^~dumv`3Y3g?*z}DHY6)G4@*!lcB z1zT#v7O5Z~G(i9Xu`M@jvr3RNo?>fm*lLxaz~YfKJwq6PI-LdRqS;$#y%%~Y)XT2Cn>8uwcDV_CV zB&D-njHGndi;|*Zf8pgA_2OGs}&Lu?#B$$@}-A{X%Pzy zt?=5!D@+(*lc&SEjNi92Fw2>@yusbh|8F@|cRdt>ZJf{l3V&0>axA+ZrO+#{M3 z78Vj}qOHwh_%TDnSPN)DA%Xs(v|yGWkwROG2(-}bbrdbkFA8M>9iu{Yw8GdiXzota zAuL4(f!d&NK@)5(MxYnN$A{t51vZ}S0zQ7!B4+$3493@8(WVa`s+PUS;qMSwyh4GlUc&{={1Akl+-SYS$2t1}vyY?S*P-+#+r3+3KLl91pC1}ntd&;Tsq0$3OAq|+RJV&}FZ zvIswsdD>QYGeU*s7Uk!Bex&l54M(S)<-#HIkqJ-5{+tC5>5noX8!fkCaq)kq{1H6w z_k?PL3;#3akKlj)sJQSyQ~n74r!Sg|{uAMkz)1ygIukDVPXs=|$!dib_%k?%@JHZe z=~357uP4)Vb6&adR*=eMye$pcMpb&yNCeoRaS|Moo<-Fl^q(8lZy5zhG4G#(qCFWij zhx4s+((p{sa3T^K&1g8Of*4_5p+22J{g8^M?Q=NsJ6^ebVV?Li9H%@y@{{j6D>u=9 za`FfcVFdk*N0yZMh&btZzah>`EZ~nxv4}suB?Sry4i57BhnVaknS)EF4P=Id8X7PH zx@Z9Z!T}B9M+lyF@%w0OsW@PG;=pZVzmLT(HwTLy@1|ToXcn-3h<6j~hq?o-AL8A_ z;%yuN#T)G=5>L|uAf8w^ad?_F;PAw{i931sHCmn<(5a8&J5BZlaK_g)Iv= z(oGcZAOo^+Bi%$HRYBGg=ee60oFNee;XHQ}gH!`42j}^ZFvyldVsyWqa3%#%7S1z| z9ORA}xl7hXFVEep0vv7x_MzZh8qGoim|oiCFX6gCVIO$|1p5gI0w>-G0QR}GLg?Oe z17NeM3kY-uf~o}qn1;ay8{+LEJ)Dd{a`>N^@Np(>%pe~|WY^nmyaE9PZxo6RM>QyC zbODLQ(2Af3%tZ;j!h?JQ7(VC`-Uq@3r6|}hgi_J{7+Rp}E(HBo9(LZH;=vvr+VbmK z1w4YWvDjh~+`m#FPYHpWCk9G@(;}32ATx*=NDuR#(?#((X#j-tOz6=NL3pv~Fr{Zi zhR}mTnZaG@>8F$c_tP70sl4a`^dN7B4=feB7VgJ{2=WI`Xga8!cCBS}&<30+fK>~7 zec&5PgRS0x5PDcwy5UI$2s|+&<6l)TKHUOV{79(4;1>ep^D=_Zm)JBW@+0b_i<%_Q zvVeJ}KDu)@Gk?8*EP?`|=9W}5`q5Ap7T z@veQK0(hg{g(Bx^xQINl?gH^Fe?TOjSa*TQ=G6IWs9W_%0(HI|`U4=WBNCQ~b+>4^ z1$DL{>Xt;f^>nr(`XeAH4%8Zkg;;lsMz);J)|bL literal 15859 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", - "vite": "^2 || ^3 || ^4" + "vite": "^5" }, "devDependencies": { - "@nabla/tnode": "^0.8.0", - "@types/node": "^18.11.11", - "@types/react": "^18.0.26", - "prettier": "^2.8.1", - "typescript": "^4.9.3", - "vite": "^4.0.0-beta.4" + "@arnaud-barre/tnode": "^0.19.2", + "@types/node": "^18.19.50", + "@types/react": "^18.3.8", + "prettier": "3.0.3", + "publint": "^0.2.11", + "typescript": "^5.6.2", + "vite": "^5.4.7" } } diff --git a/playground/bun.lockb b/playground/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..6fad4070669a36a02598474e2e7dc9b6d970d88a GIT binary patch literal 45770 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 literal 0 HcmV?d00001 diff --git a/playground/index.html b/playground/index.html new file mode 100644 index 0000000..8055b20 --- /dev/null +++ b/playground/index.html @@ -0,0 +1,13 @@ + + + + + + + Vite + React + TS + + +
+ + + diff --git a/playground/package.json b/playground/package.json new file mode 100644 index 0000000..60a5ec3 --- /dev/null +++ b/playground/package.json @@ -0,0 +1,21 @@ +{ + "name": "playground", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "dependencies": { + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@types/react": "^18.3.8", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.1", + "typescript": "^5.6.2", + "vite": "^5.4.7" + } +} diff --git a/playground/src/main.tsx b/playground/src/main.tsx new file mode 100644 index 0000000..4941d01 --- /dev/null +++ b/playground/src/main.tsx @@ -0,0 +1,15 @@ +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import ReactLogo from "./react.svg"; +import ViteLogo from "./vite.svg"; +import reactLogoSrc from "./react.svg?inline"; +import viteLogoSrc from "./vite.svg?inline"; + +createRoot(document.getElementById("root")!).render( + + + + + + , +); diff --git a/playground/src/react.svg b/playground/src/react.svg new file mode 100644 index 0000000..049ebf5 --- /dev/null +++ b/playground/src/react.svg @@ -0,0 +1,5 @@ + diff --git a/playground/src/vite.svg b/playground/src/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/playground/src/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/playground/tsconfig.json b/playground/tsconfig.json new file mode 100644 index 0000000..eb8a6cb --- /dev/null +++ b/playground/tsconfig.json @@ -0,0 +1,26 @@ +{ + "include": ["**/*.ts", "**/*.tsx"], + "compilerOptions": { + "target": "ES2021", + "useDefineForClassFields": true, + "jsx": "react-jsx", + "module": "ESNext", + "lib": ["ES2021", "DOM", "DOM.Iterable"], + "types": ["vite/client"], + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": true, + + /* Linting */ + "skipLibCheck": true, + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "useUnknownInCatchVariables": true, + "noPropertyAccessFromIndexSignature": true + } +} diff --git a/playground/vite.config.ts b/playground/vite.config.ts new file mode 100644 index 0000000..c27cdf8 --- /dev/null +++ b/playground/vite.config.ts @@ -0,0 +1,8 @@ +import { defineConfig, type Plugin } from "vite"; +import react from "@vitejs/plugin-react"; +import { svgPlugin } from "../src/index.ts"; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react(), svgPlugin() as Plugin], +}); diff --git a/scripts/bundle.ts b/scripts/bundle.ts index 43b6fdd..a023453 100755 --- a/scripts/bundle.ts +++ b/scripts/bundle.ts @@ -1,9 +1,9 @@ #!/usr/bin/env tnode -import { rmSync, writeFileSync } from "fs"; -import { execSync } from "child_process"; +import { execSync } from "node:child_process"; +import { rmSync, writeFileSync } from "node:fs"; import { build } from "esbuild"; -import * as packageJSON from "../package.json"; +import packageJSON from "../package.json"; rmSync("dist", { force: true, recursive: true }); @@ -11,8 +11,9 @@ build({ bundle: true, entryPoints: ["src/index.ts"], outdir: "dist", + format: "esm", platform: "node", - target: "node14", + target: "node18", legalComments: "inline", external: Object.keys(packageJSON.peerDependencies), }).then(() => { @@ -36,7 +37,16 @@ export declare const svgToJS: (svg: string, production: boolean) => string; author: "Arnaud Barré (https://github.com/ArnaudBarre)", license: packageJSON.license, repository: "github:ArnaudBarre/vite-plugin-fast-react-svg", - main: "index.js", + type: "module", + exports: { + ".": { + types: "./index.d.ts", + import: "./index.js", + }, + "./types": { + types: "./types.d.ts", + }, + }, keywords: ["vite", "vite-plugin", "react", "svg"], peerDependencies: packageJSON.peerDependencies, }, diff --git a/src/index.ts b/src/index.ts index 296b23b..dd56a9f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,5 +1,5 @@ -import { readFileSync } from "fs"; -import { Plugin } from "vite"; +import { readFileSync } from "node:fs"; +import type { Plugin } from "vite"; export function svgPlugin(): Plugin { let production = false; @@ -13,12 +13,6 @@ export function svgPlugin(): Plugin { if (id.endsWith(".svg")) { return svgToJS(readFileSync(id, "utf-8"), production); } - if (id.endsWith(".svg?inline")) { - const base64 = Buffer.from( - readFileSync(id.replace("?inline", ""), "utf-8"), - ).toString("base64"); - return `export default "data:image/svg+xml;base64,${base64}"`; - } }, }; } diff --git a/tsconfig.json b/tsconfig.json index d999203..9936fe6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,26 +1,26 @@ { - "include": ["src"], + "include": ["**/*.ts", "**/*.tsx"], + "exclude": ["playground"], "compilerOptions": { - /* Target node 14 */ - "module": "CommonJS", - "lib": ["ES2020"], - "target": "ES2020", - "skipLibCheck": true, + /* Target node 18 */ + "module": "NodeNext", + "lib": ["ES2021"], + "target": "ES2021", - /* Transpile with esbuild */ + /* Bundler mode */ + "moduleResolution": "NodeNext", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "verbatimModuleSyntax": true, "noEmit": true, - "isolatedModules": true, - - /* Imports */ - "moduleResolution": "node", // Allow `index` imports - "resolveJsonModule": true, // Allow json import - "forceConsistentCasingInFileNames": true, // Avoid difference in case between file name and import /* Linting */ + "skipLibCheck": true, "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, "noFallthroughCasesInSwitch": true, - "useUnknownInCatchVariables": true + "useUnknownInCatchVariables": true, + "noPropertyAccessFromIndexSignature": true } } diff --git a/types.d.ts b/types.d.ts index 79c5e45..157d25e 100644 --- a/types.d.ts +++ b/types.d.ts @@ -5,8 +5,3 @@ declare module "*.svg" { >; export default ReactComponent; } - -declare module "*.svg?inline" { - const data: string; - export default data; -} diff --git a/yarn.lock b/yarn.lock old mode 100755 new mode 100644 index 4866b9a..1400102 --- a/yarn.lock +++ b/yarn.lock @@ -1,273 +1,618 @@ # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 -# bun ./bun.lockb --hash: C8ED162F08923DB1-f41a414e582582b2-B9D6BA6C8182A6E8-0d2b4f6e2b470408 - - -"@esbuild/android-arm@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.16.1.tgz" - integrity sha512-zkalq3i2M+l812fhSswRM9FSryXEmoz30bfDlPYOl1ij0hBZd+lU3rRUzHSenU8LpsN/SAgX1d/mwq2dvGO3Qw== - -"@esbuild/android-arm64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.16.1.tgz" - integrity sha512-BHOqlxpx2UNDHvn6Ldu2QftJXYtXmsagaECew1RiY27hd/wqCx+pz5ByQpNRPyqv5S9uODqtk69LkXpmPqSqJA== - -"@esbuild/android-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.16.1.tgz" - integrity sha512-/xaEo77WGtykr4+VUHZF78xc/pfmtrfpYb6tJjA5sPCsqynXKdM7Z1E7LoqP7NJZbf5KW8Klm64f9CTIm97R9w== - -"@esbuild/darwin-arm64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.16.1.tgz" - integrity sha512-vYWHFDhxF4hmOVs1NkanPtbBb2ZcVAkMJan5iImpaL/FA2SfYIFX8IN/W20e7/2DpDxd7XkrP1i5bQUAsyXjsQ== - -"@esbuild/darwin-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.16.1.tgz" - integrity sha512-UFJ8swS3ZiQgT51ll9P3K+WOiYSc3Dw68kbZqXlmF5zwB7p/nx31jilW6ie+UlKIFRw4X0Z1SejwVC6ZpH7PSQ== - -"@esbuild/freebsd-arm64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.16.1.tgz" - integrity sha512-/6kJ0VROu7JYiWMV9EscVHH66HCCDd0Uo3mGjrP6vtscF19f9Prkf3xZJH3AO9OxUOZpfjtZatf9b0OyKVMl6A== - -"@esbuild/freebsd-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.16.1.tgz" - integrity sha512-BKYAYhsgD/6/mOeOwMSEcTyL9GlFBNr2LkgWEaugUp/oXCC+ScCH/EqphD3Jp5MsMNIk71b0YqDDveDHXuwcLw== - -"@esbuild/linux-arm@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.16.1.tgz" - integrity sha512-ZKBI/JEIjcG9YbERCDR1qPBVjr47+BKGp32Iz2cf00001yhF8mGPhVJse69jR3Wb1RU78BijVKhHPvZewsvAKA== - -"@esbuild/linux-arm64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.16.1.tgz" - integrity sha512-3mRaXF3nVjgPcrJOLr3IdidMLolHi3nMO7UQPYX+asKqn3UVnNqD30vlZvg8r1amJ7o5TOHvPXqgHK33ivyMPg== - -"@esbuild/linux-ia32@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.16.1.tgz" - integrity sha512-rTiIs5ms38XUb5Bn7hbbkR45CS3rz/hC/IfRE8Uccgzo4qRkf3Zd0Re6IUoCP+DvcTzLPz1VLfDO8VyD7UUI0w== - -"@esbuild/linux-loong64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.16.1.tgz" - integrity sha512-TgUV9ZpMzo9O48AkwJfgx9HJIMnA9kCopAYmjp2y9TPT6Z7Crxrlp2XVkaZ2mxhvrrzVsHlhwfolcj1scXHfKw== - -"@esbuild/linux-mips64el@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.16.1.tgz" - integrity sha512-TH6aEzbImbo1iUrdhtRdhgynuuiODx+Ju2DaIq+eUIOLj6Hg47NlcM5hQ3bHVKxflPiGIrGi1DTacrEoQOiOTg== - -"@esbuild/linux-ppc64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.16.1.tgz" - integrity sha512-//BU2o/gfw6clxJCrU8xa0gxElP18HiAzS/pN1HKzL2ayqz8WinOYEzPOZrqJvkC4u2Qoh5NEiVd98wTr2C9eg== - -"@esbuild/linux-riscv64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.16.1.tgz" - integrity sha512-pBrrjLBwmlsMR7iNi+W/q5JtfyzlZ97WUxBztZvsGnWBpnmjjgbdPBlwxYbgQAzqzMAsP45j6CJUpGra3SSFiQ== - -"@esbuild/linux-s390x@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.16.1.tgz" - integrity sha512-e4txkDfouCcByJacawPh9M6qmF9TyzJ+Y6Sj4L+Iu7pRBaAldSqI/pQym26XBcawVlmyYhLA51JXVlQdyj3Rlg== - -"@esbuild/linux-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.16.1.tgz" - integrity sha512-2kSF6dFTN5HbSgA+htdS69npthoR/FDr8PXc9O6h6RqRN+l7y3u8MlFMu9RSsOOD11FigiBJnzUYcl3QRT9eSA== - -"@esbuild/netbsd-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.16.1.tgz" - integrity sha512-OkDgqg+drkSEvNOAEPUQrv3g7OlE0hMsLe7on5+GePZvjgQepQ7fQ8T6RGj2nEMGa5Am2Q3jWEVx5lq6bsFpRw== - -"@esbuild/openbsd-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.16.1.tgz" - integrity sha512-YqC0KN4nJoDSIaBVkUYa1FvreYFKu6wOoWGl+lYmcRzw6pj5f96+WSE7+vRiucKpDd52P1CYlnO9yGzSo9eXSw== - -"@esbuild/sunos-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.16.1.tgz" - integrity sha512-KgfRBLjr6W9iyLLAOU58lSJ7/6W7H+KoDV27CGpEv0R5xR2LYMAE2SQ2sE0r2CP1rDa/huu/Uj1RvcVZ5nptqg== - -"@esbuild/win32-arm64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.16.1.tgz" - integrity sha512-UuKMH583a6epN+L6VxbXwYQ/RISJsz8NN05QlV2l0LY8aV79Wty23BkBz0WF5kOK22eXNavgb2sgcZer6Qg+KA== - -"@esbuild/win32-ia32@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.16.1.tgz" - integrity sha512-tnno7oPwPfZAyxRguqTi6ehf/s/x8xq1QtB8TLAfSP3DfIaO1U3gHAf5I/AMVlZPMzwtDUvURRfJK/a72cHyZg== - -"@esbuild/win32-x64@0.16.1": - version "0.16.1" - resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.16.1.tgz" - integrity sha512-vxkjnTk2nCxx3eIolisfjvIN0eZj8vp27iF/fh3vQ7GXkEdK/VzbolT8Nl5YsEddrXc5RRJbHulHM0pGuY+VgQ== - -"@nabla/tnode@^0.8.0": - version "0.8.0" - resolved "https://registry.npmjs.org/@nabla/tnode/-/tnode-0.8.0.tgz" - integrity sha512-ctFFbPPrFIVO/z4ZfUpoI7aGkxFcs3Q6h+jrXCoTBCws9riOxfNtPB+cUGURVP5VQ6d4wW6msfmU82w+q2DXYg== - dependencies: - esbuild "^0.16.1" +# bun ./bun.lockb --hash: 199D9383FD3D420F-ae7aa58b85ebc892-330FAD71B02DAE41-39d2782267dedf6f + -"@types/node@^18.11.11": - version "18.11.11" - resolved "https://registry.npmjs.org/@types/node/-/node-18.11.11.tgz" - integrity sha512-KJ021B1nlQUBLopzZmPBVuGU9un7WJd/W4ya7Ih02B4Uwky5Nja0yGYav2EfYIk0RR2Q9oVhf60S2XR1BCWJ2g== +"@arnaud-barre/tnode@^0.19.2": + version "0.19.2" + resolved "https://registry.npmjs.org/@arnaud-barre/tnode/-/tnode-0.19.2.tgz" + integrity sha512-YctrCVB4J7nC5JwfRArdDvC+/Y9oc+DBOZmdOkovYIAwzCiyfP/q+q1hXtndKl2SMWkhLLj0LWJGmax1OKOFxw== + dependencies: + esbuild "^0.19" + +"@esbuild/aix-ppc64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz" + integrity sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA== + +"@esbuild/aix-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz" + integrity sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ== + +"@esbuild/android-arm@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz" + integrity sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w== + +"@esbuild/android-arm@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz" + integrity sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg== + +"@esbuild/android-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz" + integrity sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA== + +"@esbuild/android-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz" + integrity sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A== + +"@esbuild/android-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz" + integrity sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew== + +"@esbuild/android-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz" + integrity sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA== + +"@esbuild/darwin-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz" + integrity sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g== + +"@esbuild/darwin-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz" + integrity sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ== + +"@esbuild/darwin-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz" + integrity sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A== + +"@esbuild/darwin-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz" + integrity sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw== + +"@esbuild/freebsd-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz" + integrity sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA== + +"@esbuild/freebsd-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz" + integrity sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g== + +"@esbuild/freebsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz" + integrity sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg== + +"@esbuild/freebsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz" + integrity sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ== + +"@esbuild/linux-arm@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz" + integrity sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w== + +"@esbuild/linux-arm@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz" + integrity sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA== + +"@esbuild/linux-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz" + integrity sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA== + +"@esbuild/linux-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz" + integrity sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q== + +"@esbuild/linux-ia32@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz" + integrity sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA== + +"@esbuild/linux-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz" + integrity sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg== + +"@esbuild/linux-loong64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz" + integrity sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA== + +"@esbuild/linux-loong64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz" + integrity sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg== + +"@esbuild/linux-mips64el@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz" + integrity sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w== + +"@esbuild/linux-mips64el@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz" + integrity sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg== + +"@esbuild/linux-ppc64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz" + integrity sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg== + +"@esbuild/linux-ppc64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz" + integrity sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w== + +"@esbuild/linux-riscv64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz" + integrity sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg== + +"@esbuild/linux-riscv64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz" + integrity sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA== + +"@esbuild/linux-s390x@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz" + integrity sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg== + +"@esbuild/linux-s390x@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz" + integrity sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A== + +"@esbuild/linux-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz" + integrity sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg== + +"@esbuild/linux-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz" + integrity sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ== + +"@esbuild/netbsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz" + integrity sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA== + +"@esbuild/netbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz" + integrity sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg== + +"@esbuild/openbsd-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz" + integrity sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw== + +"@esbuild/openbsd-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz" + integrity sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow== + +"@esbuild/sunos-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz" + integrity sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA== + +"@esbuild/sunos-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz" + integrity sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg== + +"@esbuild/win32-arm64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz" + integrity sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A== + +"@esbuild/win32-arm64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz" + integrity sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A== + +"@esbuild/win32-ia32@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz" + integrity sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ== + +"@esbuild/win32-ia32@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz" + integrity sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA== + +"@esbuild/win32-x64@0.19.12": + version "0.19.12" + resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz" + integrity sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA== + +"@esbuild/win32-x64@0.21.5": + version "0.21.5" + resolved "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz" + integrity sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw== + +"@rollup/rollup-android-arm-eabi@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.4.tgz" + integrity sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w== + +"@rollup/rollup-android-arm64@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.4.tgz" + integrity sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA== + +"@rollup/rollup-darwin-arm64@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.4.tgz" + integrity sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q== + +"@rollup/rollup-darwin-x64@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.4.tgz" + integrity sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw== + +"@rollup/rollup-linux-arm-gnueabihf@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.4.tgz" + integrity sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ== + +"@rollup/rollup-linux-arm-musleabihf@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.4.tgz" + integrity sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg== + +"@rollup/rollup-linux-arm64-gnu@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.4.tgz" + integrity sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw== + +"@rollup/rollup-linux-arm64-musl@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.4.tgz" + integrity sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA== + +"@rollup/rollup-linux-powerpc64le-gnu@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.4.tgz" + integrity sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg== + +"@rollup/rollup-linux-riscv64-gnu@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.4.tgz" + integrity sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA== + +"@rollup/rollup-linux-s390x-gnu@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.4.tgz" + integrity sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q== + +"@rollup/rollup-linux-x64-gnu@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.4.tgz" + integrity sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg== + +"@rollup/rollup-linux-x64-musl@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.4.tgz" + integrity sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g== + +"@rollup/rollup-win32-arm64-msvc@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.4.tgz" + integrity sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw== + +"@rollup/rollup-win32-ia32-msvc@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.4.tgz" + integrity sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g== + +"@rollup/rollup-win32-x64-msvc@4.22.4": + version "4.22.4" + resolved "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.4.tgz" + integrity sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q== + +"@types/estree@1.0.5": + version "1.0.5" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz" + integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw== + +"@types/node@^18.19.50": + version "18.19.50" + resolved "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz" + integrity sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg== + dependencies: + undici-types "~5.26.4" "@types/prop-types@*": - version "15.7.5" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz" - integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w== - -"@types/react@^18.0.26": - version "18.0.26" - resolved "https://registry.npmjs.org/@types/react/-/react-18.0.26.tgz" - integrity sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug== + version "15.7.13" + resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz" + integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA== + +"@types/react@^18.3.8": + version "18.3.8" + resolved "https://registry.npmjs.org/@types/react/-/react-18.3.8.tgz" + integrity sha512-syBUrW3/XpnW4WJ41Pft+I+aPoDVbrBVQGEnbD7NijDGlVC+8gV/XKRY+7vMDlfPpbwYt0l1vd/Sj8bJGMbs9Q== dependencies: - "@types/prop-types" "*" - "@types/scheduler" "*" csstype "^3.0.2" + "@types/prop-types" "*" -"@types/scheduler@*": - version "0.16.2" - resolved "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz" - integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" csstype@^3.0.2: - version "3.1.1" - resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz" - integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== - -esbuild@^0.16.1: - version "0.16.1" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.16.1.tgz" - integrity sha512-XbnT9SXFcijZ9GYsay7z69rzSWKlW+Ze7+ULEecEkVAkDyzfA6DLbqGp//6F4hUh3FOydco8xQEejE6LxI1kyQ== + version "3.1.3" + resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + +esbuild@^0.19: + version "0.19.12" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz" + integrity sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg== + optionalDependencies: + "@esbuild/aix-ppc64" "0.19.12" + "@esbuild/linux-arm" "0.19.12" + "@esbuild/linux-x64" "0.19.12" + "@esbuild/sunos-x64" "0.19.12" + "@esbuild/win32-x64" "0.19.12" + "@esbuild/darwin-x64" "0.19.12" + "@esbuild/linux-ia32" "0.19.12" + "@esbuild/netbsd-x64" "0.19.12" + "@esbuild/win32-ia32" "0.19.12" + "@esbuild/android-arm" "0.19.12" + "@esbuild/android-x64" "0.19.12" + "@esbuild/freebsd-x64" "0.19.12" + "@esbuild/linux-arm64" "0.19.12" + "@esbuild/linux-ppc64" "0.19.12" + "@esbuild/linux-s390x" "0.19.12" + "@esbuild/openbsd-x64" "0.19.12" + "@esbuild/win32-arm64" "0.19.12" + "@esbuild/darwin-arm64" "0.19.12" + "@esbuild/android-arm64" "0.19.12" + "@esbuild/freebsd-arm64" "0.19.12" + "@esbuild/linux-loong64" "0.19.12" + "@esbuild/linux-riscv64" "0.19.12" + "@esbuild/linux-mips64el" "0.19.12" + +esbuild@^0.21.3: + version "0.21.5" + resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz" + integrity sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw== + optionalDependencies: + "@esbuild/aix-ppc64" "0.21.5" + "@esbuild/linux-arm" "0.21.5" + "@esbuild/linux-x64" "0.21.5" + "@esbuild/sunos-x64" "0.21.5" + "@esbuild/win32-x64" "0.21.5" + "@esbuild/darwin-x64" "0.21.5" + "@esbuild/linux-ia32" "0.21.5" + "@esbuild/netbsd-x64" "0.21.5" + "@esbuild/win32-ia32" "0.21.5" + "@esbuild/android-arm" "0.21.5" + "@esbuild/android-x64" "0.21.5" + "@esbuild/freebsd-x64" "0.21.5" + "@esbuild/linux-arm64" "0.21.5" + "@esbuild/linux-ppc64" "0.21.5" + "@esbuild/linux-s390x" "0.21.5" + "@esbuild/openbsd-x64" "0.21.5" + "@esbuild/win32-arm64" "0.21.5" + "@esbuild/darwin-arm64" "0.21.5" + "@esbuild/android-arm64" "0.21.5" + "@esbuild/freebsd-arm64" "0.21.5" + "@esbuild/linux-loong64" "0.21.5" + "@esbuild/linux-riscv64" "0.21.5" + "@esbuild/linux-mips64el" "0.21.5" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.2, fsevents@~2.3.3: + version "2.3.3" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +glob@^8.0.1: + version "8.1.0" + resolved "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: - "@esbuild/android-arm" "0.16.1" - "@esbuild/android-arm64" "0.16.1" - "@esbuild/android-x64" "0.16.1" - "@esbuild/darwin-arm64" "0.16.1" - "@esbuild/darwin-x64" "0.16.1" - "@esbuild/freebsd-arm64" "0.16.1" - "@esbuild/freebsd-x64" "0.16.1" - "@esbuild/linux-arm" "0.16.1" - "@esbuild/linux-arm64" "0.16.1" - "@esbuild/linux-ia32" "0.16.1" - "@esbuild/linux-loong64" "0.16.1" - "@esbuild/linux-mips64el" "0.16.1" - "@esbuild/linux-ppc64" "0.16.1" - "@esbuild/linux-riscv64" "0.16.1" - "@esbuild/linux-s390x" "0.16.1" - "@esbuild/linux-x64" "0.16.1" - "@esbuild/netbsd-x64" "0.16.1" - "@esbuild/openbsd-x64" "0.16.1" - "@esbuild/sunos-x64" "0.16.1" - "@esbuild/win32-arm64" "0.16.1" - "@esbuild/win32-ia32" "0.16.1" - "@esbuild/win32-x64" "0.16.1" - -fsevents@~2.3.2: - version "2.3.2" - resolved "" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - -function-bind@^1.1.1: - version "1.1.1" - resolved "" - integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== - -has@^1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" - integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + once "^1.3.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + fs.realpath "^1.0.0" + +ignore-walk@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz" + integrity sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw== dependencies: - function-bind "^1.1.1" + minimatch "^5.0.1" -is-core-module@^2.9.0: - version "2.11.0" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz" - integrity sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw== +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: - has "^1.0.3" + once "^1.3.0" + wrappy "1" + +inherits@2: + version "2.0.4" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +"js-tokens@^3.0.0 || ^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +loose-envify@^1.1.0: + version "1.4.0" + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" -nanoid@^3.3.4: - version "3.3.4" - resolved "" - integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +mri@^1.1.0: + version "1.2.0" + resolved "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz" + integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA== + +nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== + +npm-bundled@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz" + integrity sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw== + dependencies: + npm-normalize-package-bin "^2.0.0" -path-parse@^1.0.7: - version "1.0.7" - resolved "" - integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +npm-normalize-package-bin@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz" + integrity sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ== -picocolors@^1.0.0: - version "1.0.0" - resolved "" - integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +npm-packlist@^5.1.3: + version "5.1.3" + resolved "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz" + integrity sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg== + dependencies: + glob "^8.0.1" + ignore-walk "^5.0.1" + npm-bundled "^2.0.0" + npm-normalize-package-bin "^2.0.0" + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" -postcss@^8.4.19: - version "8.4.19" - resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.19.tgz" - integrity sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA== +picocolors@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz" + integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== + +postcss@^8.4.43: + version "8.4.47" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz" + integrity sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ== dependencies: - nanoid "^3.3.4" - picocolors "^1.0.0" - source-map-js "^1.0.2" - -prettier@^2.8.1: - version "2.8.1" - resolved "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz" - integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg== - -resolve@^1.22.1: - version "1.22.1" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz" - integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== + nanoid "^3.3.7" + picocolors "^1.1.0" + source-map-js "^1.2.1" + +prettier@3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz" + integrity sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg== + +publint@^0.2.11: + version "0.2.11" + resolved "https://registry.npmjs.org/publint/-/publint-0.2.11.tgz" + integrity sha512-/kxbd+sD/uEG515N/ZYpC6gYs8h89cQ4UIsAq1y6VT4qlNh8xmiSwcP2xU2MbzXFl8J0l2IdONKFweLfYoqhcA== dependencies: - is-core-module "^2.9.0" - path-parse "^1.0.7" - supports-preserve-symlinks-flag "^1.0.0" - -rollup@^3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/rollup/-/rollup-3.6.0.tgz" - integrity sha512-qCgiBeSu2/AIOKWGFMiRkjPlGlcVwxAjwpGKQZOQYng+83Hip4PjrWHm7EQX1wnrvRqfTytEihRRfLHdX+hR4g== + npm-packlist "^5.1.3" + picocolors "^1.1.0" + sade "^1.8.1" + +react@>=16: + version "18.3.1" + resolved "https://registry.npmjs.org/react/-/react-18.3.1.tgz" + integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== dependencies: - fsevents "~2.3.2" - -source-map-js@^1.0.2: - version "1.0.2" - resolved "" - integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + loose-envify "^1.1.0" -supports-preserve-symlinks-flag@^1.0.0: - version "1.0.0" - resolved "" - integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== - -typescript@^4.9.3: - version "4.9.3" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.9.3.tgz" - integrity sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA== - -"vite@^4.0.0-beta.4": - version "4.0.0-beta.4" - resolved "https://registry.npmjs.org/vite/-/vite-4.0.0-beta.4.tgz" - integrity sha512-BE3hlg+X3nABeoTCToM81JcifbDmv9fyP0A4sa3ZrQImqQ9WMfqFsqShDrTK8dDQ+VBID5a+m5/iae8qicGG+w== +rollup@^4.20.0: + version "4.22.4" + resolved "https://registry.npmjs.org/rollup/-/rollup-4.22.4.tgz" + integrity sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A== dependencies: - esbuild "^0.16.1" - postcss "^8.4.19" - resolve "^1.22.1" - rollup "^3.6.0" + "@types/estree" "1.0.5" + optionalDependencies: fsevents "~2.3.2" + "@rollup/rollup-darwin-x64" "4.22.4" + "@rollup/rollup-darwin-arm64" "4.22.4" + "@rollup/rollup-android-arm64" "4.22.4" + "@rollup/rollup-linux-x64-gnu" "4.22.4" + "@rollup/rollup-linux-x64-musl" "4.22.4" + "@rollup/rollup-win32-x64-msvc" "4.22.4" + "@rollup/rollup-linux-arm64-gnu" "4.22.4" + "@rollup/rollup-linux-s390x-gnu" "4.22.4" + "@rollup/rollup-win32-ia32-msvc" "4.22.4" + "@rollup/rollup-android-arm-eabi" "4.22.4" + "@rollup/rollup-linux-arm64-musl" "4.22.4" + "@rollup/rollup-win32-arm64-msvc" "4.22.4" + "@rollup/rollup-linux-riscv64-gnu" "4.22.4" + "@rollup/rollup-linux-arm-gnueabihf" "4.22.4" + "@rollup/rollup-linux-arm-musleabihf" "4.22.4" + "@rollup/rollup-linux-powerpc64le-gnu" "4.22.4" + +sade@^1.8.1: + version "1.8.1" + resolved "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz" + integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A== + dependencies: + mri "^1.1.0" + +source-map-js@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz" + integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== + +typescript@^5.6.2: + version "5.6.2" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz" + integrity sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw== + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + +vite@^5, vite@^5.4.7: + version "5.4.7" + resolved "https://registry.npmjs.org/vite/-/vite-5.4.7.tgz" + integrity sha512-5l2zxqMEPVENgvzTuBpHer2awaetimj2BGkhBPdnwKbPNOlHsODU+oiazEZzLK7KhAnOrO+XGYJYn4ZlUhDtDQ== + dependencies: + esbuild "^0.21.3" + postcss "^8.4.43" + rollup "^4.20.0" + optionalDependencies: + fsevents "~2.3.3" + +wrappy@1: + version "1.0.2" + resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==