From 16a90aba7807a1957d3df369ac4f84bbb069c376 Mon Sep 17 00:00:00 2001 From: SamuelPull Date: Fri, 15 Nov 2024 10:47:22 +0100 Subject: [PATCH 01/23] Patch critical vulnerability (#2098) --- blockchain/package-lock.json | 6 +++--- blockchain/package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/blockchain/package-lock.json b/blockchain/package-lock.json index 3793d8807..505c123f0 100644 --- a/blockchain/package-lock.json +++ b/blockchain/package-lock.json @@ -4418,9 +4418,9 @@ } }, "node_modules/jsonpath-plus": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.0.0.tgz", - "integrity": "sha512-v7j76HGp/ibKlXYeZ7UrfCLSNDaBWuJMA0GaMjA4sZJtCtY89qgPyToDDcl2zdeHh4B5q/B3g2pQdW76fOg/dA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.1.0.tgz", + "integrity": "sha512-gHfV1IYqH8uJHYVTs8BJX1XKy2/rR93+f8QQi0xhx95aCiXn1ettYAd5T+7FU6wfqyDoX/wy0pm/fL3jOKJ9Lg==", "dependencies": { "@jsep-plugin/assignment": "^1.2.1", "@jsep-plugin/regex": "^1.0.3", diff --git a/blockchain/package.json b/blockchain/package.json index 0adf74174..e5174948e 100644 --- a/blockchain/package.json +++ b/blockchain/package.json @@ -80,6 +80,6 @@ "find-my-way": "^8.2.2", "cookie": "^0.7.0", "semver": "^7.6.3", - "jsonpath-plus": "^10.0.0" + "jsonpath-plus": "^10.0.7" } } From c152e72e494113666346947b1814799e8c05fbc7 Mon Sep 17 00:00:00 2001 From: pmolnar-dev <55734106+pmolnar-dev@users.noreply.github.com> Date: Fri, 15 Nov 2024 15:01:48 +0100 Subject: [PATCH 02/23] 2097: New TruBudget background (#2099) --- frontend/public/Gradient-Background.png | Bin 0 -> 801849 bytes frontend/public/app.css | 11 +++++++++++ frontend/public/welcome.jpg | Bin 38215 -> 0 bytes .../pages/ForgotPassword/ForgotPassword.scss | 2 +- frontend/src/pages/Login/LoginPage.scss | 2 +- frontend/src/pages/Main/Main.js | 1 - frontend/src/pages/Main/Main.scss | 17 +++-------------- 7 files changed, 16 insertions(+), 17 deletions(-) create mode 100644 frontend/public/Gradient-Background.png delete mode 100644 frontend/public/welcome.jpg diff --git a/frontend/public/Gradient-Background.png b/frontend/public/Gradient-Background.png new file mode 100644 index 0000000000000000000000000000000000000000..71245e4e0c3ee2e05164c5c4d90e337ffad7e6cc GIT binary patch literal 801849 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�)|Mud)JUDs{F4Us=Kt2Aqm^ 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 Ltgz|T}@X<#dU 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

Bq!X0DCUYMgIN4aE+B@#+VTj09}A#m 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 YWnveCg4IoMR!>^BR^n|$Ph{iE4C+kfj9#DH*J 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

t>;?|Q=ON`vl;oVv@=Wqe%JZ)3GR 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

kMbe*P|Yf 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

NF)rb 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%0D~hAKCb()jB9qa1 z?VD~OM-0MJJ^<$C;vege58M>}2VTS}8#Wwt@J0v2ujmG2J-&7OmsZd=iGN^lj}I|^ zGk=7K9<^|WK7p-)T^iWse)-8|omBNZDlSJtNDHh~TIg>yR$=opp{wLSL?|j<2R(0y zNFak5FDB~=N2d_oi_ySLmO)%!vJh?ZBn57AffKE$e$kGJ35?eU&~Er!+hYGE7X#X) z{)W<7Oz`vp1|IajJExriBl{L=Ljx@y{s2oFom3XXqhXt{eHk>W#=p`U9z`3SGGSSOErEPbJ}~WHk*J&prwVkR3$YO?&$}FM z3Z9~AX@EqsmO>I1kn#M^kgftRgPn;%~avs`*#RTt7URSI=cXO& zY_9*M`-#%Y2g#8RlzN$G0aVz_{&;BP@iJNck}l6#-|@fH^Wcck3OEC8%bZ; zd=A&-tPwFSbDRo<;%3-oFGdr?;jt8bxMMMqUKB@sfBrn!zna)x5s6lYk4~dsFY#Zd z{g+K0YtaVcPuOoP5t|;f4>XY_o+0f9_K&!9-~lP6H{4_k#Ga1pQTKQfq@ z@@wApPHa6f>g536k@13#V4;iWs$`$--0Z~4qx7P1M8(iUjz!XuC+G$bfFzwos!|1{ zOkq+n!(W(D(IZ81Ar^*5NP6fudA(?8_^#9oNDP0YePm<%KT21$l)Uko>9SYM?sE+b zZiyf5pYVR>$qZ<`TYnCmjtlv=_AElWn0WO5(++j&mJ_z^Wa;CT3lWn|N6MzJ<0bS~ zg@5|wuywKjRY9p9Yeb04^X4ZGozN$(>+B6s`$0s1@5@vM!O)u%QdgSCr08e_h> z^dUU8YkjZpoe}=ikjHD&iLH+#BzZTwzQW(}Xw#$qPFRL-vIKGh#6Mk6_z-q~|1EuT zA2X))8jojN#RPx{u$6p$wFMyi0$+!PFg9FIXeQUV*Vq5wT(;1Uy!AQZcOU%p z8_>N7ITrU}7!{bVlx4B?pw-gg=+PFH-YSgjeyPkv1WoWw-L6Uu4zCAR>U~S}>YfTt zw*Pjme0izXI&3LObMZI|(QZI~vd#Bp%TaiN3TTLV^HbDTxDA3IirzCcoj#`v&4?Ep zbB_HpaEn(tK0o^czF;v*z^suSH7#+r;n~P}&!Prhkz47e2fcWP1ootWsOmb1$V4uV z{Nd_`Au=~Mym*{#+0*2ySb63H3RAnMI^-&yF4$5SNB$IGzveyoGKyDnr*FY~Ey4-< zT4hHbJP1)NVi)^|0y7mjn^Aopt<85I(OvO>$FEy|P&dM*wlx3AHN6y|f zo)*6C|bOpIKSEKxAfw3*@n7pY_!+094tO}pAzFv!>ogLYWh32i~H2U82z9B z>;L;>-4P1|;R0lzBos%|k%i8KMPf~SAbvXZ#k#W7L>dCV2qz>xnIHxD&;5_^TD-5# zzfl4x*s=4XPOBq)D{%bgdMn!a3F9m{ySYa?ptmuf_fIl7oQsTt<3r$4wbf;81&>4E zk&#BxT$%!d^BPwv25&l%If_UN#(nn?-eECAGw_KR_jTJ?V%44y{MRpykNqTYSMV`h z`J}yqvq8Dt#>GAMPr7i5w4Dxq+6mk6bVs&$v4<0zsne>w06cPoXMHb(;_2Q|j6?p~ z29UgN63MTwC|*ApD%d0VEa&wGbA7+ir`-`h_)djlF@as|AKSU8F2fBpBy8QSslJVn z*vSt^A$TiDPkm1Yb}|Ni|B{qHUrP7<&4YMWS{4Q=lIqQr(WWJFxRVPdO791;o6?b&uhcS_#f2}$y+)Zv2bv*Yy0wAL=f#O zE|KX)H<&)~*$3{;kMg(-=mlQNB7^R)?Ei}k>9D3s8}CZqn`n~W7shPYzmojbg*-I+ zAEN&p_cs3^`?1+!d%w6k|2=yb*>V0xZW|80;Cgy~!v}DwIESb%@3xryuh-l7-^c&g z_m9$93V8YIqK0#A$2s`F6sDi17;^W4<01bag@UBtbXwSAb-ynz{Pyyh`L#}=UNl>I z^c+ndrZ0{LimUPbL4R<6FfVl9iczP(2Qh-@`5oMm5_xD>m60Kptl%4V+tVk1Mi-owQ@mkrQ_azlSn zsC437=hJc|MW}z6_w6E`#5s7;t>t+Y3IDWZ z4|$6JcYaQvwFqk+w=~`TuN0j5>f`6p3ACNK@Ak!Pr9XV}fdr!EJhpVX+5f1Csr`Hw zf(*o%#`t+#NkuF?T38R$pT8p-CBro!&%dsFnh*vW6Y|@1uljZd;hkomLNK3&5)2kj zP5R*q0+?RveA-+i8pub8^!`%K1`;%X6XC7+>?jP2&u89x&L`Q|FriX-r|bg``?lC< zhh4^h^ePqG&m=0)8D3eZL3sE73@-$%cRjX-&OJX$lZu`r@w4t!Qsy6 zgCXYp!*l6RF?lz8)>a_XoX#q$dHV#R^&7=c#pjY+)6odn{;n04Qr14F&SNY7qArwt zEP-S*I6`HPyAYo2;qZ5O6E}+k#r!^=Z#1S%N@jAqLeCBz zhnI)mR&$5Rg$)$MgM}UyoTCeyYqdqc2JqCg^Z^Gx`Tu@0e7o<^BMel-HUmobFN?o2 z&;`@3WzDYsf8O2%L2@0(5(NDIN9;O5^$oh)F&QG3_W)34@iS|f>0uH@VqZvzX8%+u zb$kopqa7R{`Qw-2oBg`L-Tfck-xfNvM&v%X4_vn34;-JM2mXBsnHPKar9BXB3V*+9V4bdzZ_C_rU1=^?9|e1DGp z-!}c?8HUj9UgTZ=#&dlmou31xG046~>9PJ3yJ&iEo7c9+?8UX~*c*LHAAb=5JkLZX z7;@)vF?PHD)V95~ZeddS64w9HH%Iv_iUxj7h399Quj4j5@Hu_`->-|PzxIDgrVKT7 zYoNI-I-&nDZ@h1pw3A5Fu>QZ`sUm(oQL?oo-;jlHe>XIP2!yO${6T|HAESV~bcse` zBT~gD79x`;yXgH9ZP-8Z4MW;I{b266L;X~I&hb!)+x-b+7`e9k$-A}dDmqsfX^~S6`bFN}$!_@#@Fq!kQn2!h+t3pi-Kfr6yiTLSU7W~?9WRN<}!>ICk>y|6LyH2 zO@6fIsWGR`BRF|QIIg*Z(8Y9{Wc=^Aw|D&FJF~4)$KmP#z^AjAKvU*%(a~ca_ zn)fjR*yjHsVu*LEy_@uJzu>85rTw_e0{N29{%?eB&SAd{8+x9k|AUX8k@SKotG*sk-tt^?0tglR-WGn8Wg9nl52HPbFbx zhvIz=irl>Nr*fAW7_s#}2yiJL%KtNp>h{_C22EOH?n@@Xk8^R3)wt=Da`%65;(_)i zI}nH0Zon_9YT)#ni?B7eh%+z=m>d&An&Ar}+XEolf5= z!UEskr!VV&jud=EAr2xL_&*i@bOEF=ml%*%_}T?w{;aR5J0Do^q5ajT7$)HJVV8^l ze-{8C{=C_*DFN9|jP#=5kWZijT(;uT8P_7F$^^+OG=kL+E4=P^Bh?0t!v3!x{Qq@d z8S=0XbF}%tfImmR=yTBjL0}lqBx0_0ysSuTVSwSj`+x6$^M9@Tom1I>cwk#0dal< zx=5Q}fpzDxA}Y8r8-=uVP>l@dnWle*&o94jVX!7M$}^n#^@;kb0>xH&SNYZs2XL(Z zZ76@$`w+Vu;S$+KAD&qBdn^=(pnW55tfyzlS#a5xa_{&YR@&mjPoWunQ;!OroE0xV z8^3AnfEy~F;;pZdXvSr_`B)fWwia|fb(nJr;yhyOlLR} zkk9nFPtAcIzCVrCe$re7b;xkLubcQ;IcJ>pmcVAv*D{Qu_Q!RGC*&ovK zrTYUf54XNTsG?{rs7n8LUKrQ@+zr;^MUzn3_~7fw>}IQ<+S@!u8YJu`7{B{JKp@+> z#hSV=O>5*(JaOiTV=OpiELcKZ5w9^OyY6w?`=UTAe{-B(*DH)G@Jj}*9Jl8G%^=C{ z-*Ux`=72#j_vNpe!Wv3sky+$_U?DVzbco1Tm^;4qObYyGI%S3ztbBa!|1!f*4%KC? z`9@O{#@qS;RKNFM#=pTF?QiLq%>OiQ&1lQ~71s?n;z3>5G~+&Olf_@z;R_s*UB>nS z|35%W*DVjf!XzO%*o0Bf{KCu2yCv$Hnf(MQ= zN7y_5H@NROvDsQwcw7I!Hq_HihYkN`)0ve9b{(hES5R>!23&>+WT*&u)E|3GuW`_lK;Mjn+k9b7f$E{_+v zldbf5lZvstBs^h)-X=WqPy=oZ99J3W_ln?9)*0h*7$!*Z?KA3j zS*h1sR4{-q*Pu*q{1{f8e6yFur>#*BP`9F599_(@$2Tf9z`2&^Q7b;jQ-vaRo=8lX zrf_mBK~|wM=n5{JZ)M)7_zWi_nvj6kTv!Ui)5E6*zur|}dOBaPmMBm+=t}S(y-PrO z=H|(`ezFgW&kjGp?)tjHpU z1s=^nI>I&SnPWzrG({aYB+b{u#%vUy!{`1Ot7>0O&EoU(BnyqDcQ}0<>jf)$$SVe@5OMRLZU9!P!V-;w& zxIpry!7+v*%dH|m!Mn+@kx^t7<~MX|@P}gq2R{_KX|X#}my2!vc84d8{!X~XUza1u zQa5;SINNxHS0Uf;n@o_z4Zg~kcp3c_9*)B?_Qlv$7uB+8D^PLPK0TjPz`2^l$SJjmTxKv&*m-jrCP8^7`B$%sh~w&=Ako%`e7m<#m1* z3S0k)fW|mIiNyM2GlkpwAMs!1eP#TU-IonxG2)R6D%t?vA}gFZz=v#LZLje#J`DUH z!fexseDxwG+)2Ubu0=wT_3%q)L4=1OB-WPLSmKlM-|IOop z4YFQ*AxsWT5AFI*Mx*Ais^KvyV`#EfBoU5sliTY5Wji1I zKP-GZF^+cK_-EQ~v6HRiCZzjm>k)tA0Trp;PHVx|d}HG3ehI!vv_~Ctl?~Yr&=Y~V z=;+bj{a+n6Mw5QBx$uT9N1@*+#=&?&X`^RD_J|cU2T_*Pu?f9?8=~^R2_@_w&pTnO zm>hifE{XPZuBV*|+)k zn%vvJyZ-O6aDDjp?1m%7eu4FJ&yk_lPKzPsctpu#G7pUYuh##thQ1fp+FT&wy8i&W zMr?F^Pt^ELjU$dhAF0Y<-Nef&H-mk1?oc+3fbkmp3~Pd->Zo?BvU5ds}q9$nI`qU{99- z@S2?5N==WEjXkcIJj+54m|>Gc0de;eOOA^H;9*!XlgebV`B z!x%G`H_PBlPFVNJ(s^rzKe^xt0%*Tf12>*1hJ)EgE`Wiv@79KI7mZ_^WGA**D6P*x zv;88^{IgcfrwuL7GEyxLk;go2jt@9otGLLrtqbT;Lb|ut`XBfGNS-P+0#4tTI4AfL zy9SF7Obw020EY*rY6jW(5Qp}7^35dKP9yxI8kJpLfD z)9?kxBappVle3~g0Lr-(pDfl-T;wU)L;*4)Rc_EtFnWbMHcAQy*$VKW_;x(cl&Q-v z5<(^w5<|U=Ii`nhZi5b?-yl6Gf~f;#mq2gSfhR)JR_d0w0y3u?|#+yiZ8Un*q-^~`_L;P(<_8}F6$8GZ$=q+4}+8@Tuq zS`)+yWYi5K3U*8&*`qXA!kNbF8W<^&G zKZA35CC%582jTt_i;V>o(&DI5 zO>`K?=?!P|6{xxeVA|ze*Zm((LsQ`G`9FF+4y2`(?tL+5mH)MAVe4~3D-K?oA`b2T zzpR9p;&C!IjJ4|hO@p;N7Qw6*eXdJ2s z=z+86|Bfg#xbzGFyaHU4(y8M_d~6reR$J0VFeV`nqiwQm>N}n6NT7hHR~wdg9DzR!|2m*c9!-0F{e zW=Cl>d+Rhil^MCQnW@YLfC2c*BTv6^6nOr-ITqu@Jw@dOrNk*W<@_&I1am%MU%D2Z zZ_jqDq7*`E{aKroI*nNPgD)#xqe}#g_=B}igp(S+_`l;*4?9M(;LJf6{@6qo{dp(s z-($!R*k#dKaz+Yiev@%prEyf;_W!XeKsyTm$T<)W_2U1Zidf$kB9)XjeJ}enR!Orl zW99}SBC)qk`Q)>*+pw2B~FPTaWNe1aw*USf3G?Z9cYWI3c9AjjyH6!i~nEH1bmjKEqSi|KW#wf zE6B|ctoc77SH`>55LVxEzO?(l`)kA~bdUbBYreRMd#RdE+yCEay7~Xc=w5t=o-G`y zLCn{+pJ{D=*VhRhzQ~&Y0|$PFT>A5@eHE@BZTTI(V%+d+v2UjElIMhKtIbVip>4X{ z9czS|?x4BB?+V!hrU|{>`IOw3g`h6Uhw{BZvV)+zG?V&DHWs5z3^TNE_OtNhD3mgO z6mX#UC-IXR3L&00;i0cAdaCEi_!>2@25itTDQB$`pl3cVuIvybld_KPGHXNo@o=Dx zu0MQ1@jR{OM^j++Z;+o)EFoJ45Mc*8JklxXDxy{ViTewm2(zv;wHZ28KmY!WWpq6@-$2AX9uLz>&>1_K%vI#*w{;-T@^qlg#TbmI{R7A?5o z5B@RXolnCz*wITq*1+Rs*pV5-bz==0AK%xz|NBooXy7#}_gdx_t;H=R4U8=w!^77> z7sdM@vAEhB+8h>qUB+oh5qGs1OSDm}-+V@Y_9TigYUtDI zKMaWDlBRlDRCWOVuWen%_zGqycq4n+?I}+k?(_yzKttE`f3(*&R z&qu@4)&0t=yz|)6FQ(E$;66@(maZy$8Q)+j_Rq&PRprC_Uq+!C`}?>Dk10lYDm_YPGw zPMi*lPe?a9@U!!&Mw{}!K|jcKUcaxOsP#fa2!XyQBQiJr+KM>J5RQB}lE$!*V!ki{ zSxOe1jCEn>8EWGmX)JLCOdjSo4z~K|@An_>|5=S-BjF;-Hk+WEKZYG)K`TLK)Z7bI zcBy6D3sy4iNky^{-fYZ*=bGJsMa<}Nh(3I8s0^alOkCDIT$K&&5hC`;ivF$~4-l5c zvITMftNr{S(V&Y~0HaUv1u7u6Jdu0%h&2rbH|Ga<>+n(Uvp6ks1q;ussC?+%_FrdT z`r`i!_~HK~3X^UBZ;=0sZ|vb5vNepq$zSuctNevW##CR8``16e<-T%#gC!f)AkZeL{>A|@;@b%k5YDzxTN=JKpkU$8c!9WF z&w?`+K)gsnGFM3228l3Ex0*ZTDZpZ}I)k^%AIY^-tTkdy^OPJG+$1-n(ocOx#X%iF zWxlpR#H5G|KM0W40!uF_!$HHK-Qgt;jH^%=kS`9?Xg!#vY`v6MWY-n6|_obpYF6L3Np@aHnIEwPvh zc~lmJ0-Y_ePAO09ET}PW}iY# z*QPb6Rj3%9vEG;HQ4ob~1idJg-TiSa#dMSPbgy#3J9CPkOcu;9dKk08I&q$VN(?7z zz}>FX1jAudRtZPbKrS$?`LRaS@n=?WoU2UyTA?WE;J^*{c&$aRXaq$eSinv3IOuGV z-J(q8xPF^qM*@Uvggs=xHIz@%51(E3@XUg}n_Nt$J^)V}mh$f7(LJrrA*q6W*p1ir zDVK55VIu!_pL)ZGZF^mv;Zr8Bjhv4v#j$v;FVAkY2+Y&J!*5NO=+231xyBfdefUhI zMQm$$0Vl2>GpuNvr?M8bw+*{ZJPPYjRqFwd$T^?G|7kri*8dfQnI2IpV%sw3YOQV( zy#Uh>l^||d{}&FGwI~$&zU2SBrWg5!{KOcb@3Q_cBRRVr%I7nF z8Twc}&k61iK?~AGlnC+IdAP}<``Mo%|Led1k9mzv0RbOnr5F5NHZiMdKD)LfT*_h}w%!%}%jswcFJaLR-;q zEW#)e3fS-d`_>1hWL#w4w?%XLOqVC0D&K#LmYAxijUwCN%>l_G%8(vk>7tm3w(Ry> zvC?{=En#`iL#Hi2FGe^2e}oHfVkA!~y!gMk|3jhE@I}Dj2NdoUC^+iMZ{O&>$Zyjx zjje|^Whbb>ltIpouU#(jbZecS@m$UZhH29%oqg~BZ#1+Qky}55D1YjKlVbD&i~X_s zSPnUtH#{POi?A;X&ueZ9SWEtY6Dh*z{dgbm$Y0?&H$FF2>@=Xbhv>s8 z!vvOv4=P+2-EqoYa@D18E@c|skd{Wje9=@$HV>^K&k$4_lSR(1-&iBc7raU1F`|?( z4hlo+|*!nKG+Fk{(VZBGwE((^u-w_@8pJMlI zo&U1_7hG}}%C!-MYmdIE|I~D$8<~$o1kcZJNZ~^quQ0wM0_^15{=dLyR&rrY&c2G$ zWe=N2=B(9q4W8?;x9lf~U?-c+JBd9b1~C+I+FpiWkz9Dpj1IUSu00d=wdcqZt^fc0 z7X*GA{8n7-ZPYO~AG_J!2!Snby~Kj=+Kf$OpQbi^WZIO?{iha=SHHUW|H*3id0ZR$ zfJ4n|?u!R3avQ#qG%hg=XgFi_yMDRU#JW2-K2G1_|KOvPzP|N;zp2emIqI1a)-VbnIWeBtwTr0&%4t}_Iw(kGRb{Fsy?P`PIC4jHn@9dknq^)H( zdH+=&`^(rw@pGBi`hT!6QG>N!r-s1UvQ5tjx(pfzC zlhcpnEjQEhI~TEy_!iDSRfnujVfxRKRA1a9y7Yaum{UCXH3c4V+nJ6Zr)=|QGJ2uP zf*n8UDo5It|2e>=j?m$)eg=a=J0>6KJ3j*vAdyyq{@|xCK855NF!@wz|1Ihx)HszI zJZdFWDlDmJ+L}UTq*bJ}Y_s5?UZVIGu`a$#g{#-Emq{GVJ3G zRFdhZ#k2VP_}=fQ1UlioHIwq24xeXXq_T)u2>;+i*7 zYYNd4MAFua&sqfdbBDyVAis-jrO=R^^%L##MFXIyA8UQXd0eLfqT{pniPLVn#TDF; zOQWkBry(pWd(ADu!gHLuo8=OcTcLS`JpV4aG8T}qh_OsQ|%xV{yi^)fcbW1j_m-OBW2 znOK|2g$``Gh2q<%9vY%pqEI}|V%laRBI{az>pQqq);x@B=w~9>%*uqU{h8?~Oj!0s z7FY`#2q~A%*e5gN)c#+_dsR~z#b>Kfp8IH!cZDr0JkS0m@Uo0?{~vUcXW#b!;J>tP zQGvCnmYcV0u0sgV|7F=?ajF+&kPm5e_x5$c2bb#s6jTf4_-W@JAnq7}c3a-wKyiPyR39CAib6aRT#2`l+Yhv^kvW%uQdr|6j(Y z?*A(emccmzeS|+xx^=YyovxN+hXR%!8$*$D6cSg$vMWhKx z5#BTD7<4Q?(0Dp5L!93whf{1mg$6ezGdeX#GBadpyn6kVou*Aa?k@ zo$5>eSjK?2(@=B}1@5#*tc$MIQC0 zCuIk+<`-^EhXn8iEuBl?)C^JymT+e9sl`Jk7c7udTm(8ScqD)9;wXWIzgN-w#s8m& z<^RFRyZ=X#66uvLOD`@)I7pdfMXyF1@J9^Er`BzH*n%`aR#;Fpd+2_*+21&EE%@yL zq`qSCQOIJObRwDUIehV>{{y~&b)yXn$R_tw&^5l}So}ZvL^xqY5r=D*ev$vX=C@3M z`CQuzMl3?>R;*}nv28edQCk)LUv$7~^T3wKiO@GtcpF`rcernDV7fi1y*9*w=D+De zE05j)8|ZC45qrZe@&&Q6x@fwHmkl>uD3e8=pLp8nT={A`5R|Ljf@&M{mC~wB*Bs^y zvRZhzze2aq(-yQp;Xz*gURL5~yUB5T_O%aOaM(hcG@O4kPw&^(x)RNZ&-aF#X8c^o z3WpyoCcokP=6N*8w>PQ0Z6@E^vi{HO+jzI)uQ|{*tGG06Wb^<2V&obp7P`N-C$N_>r-duk=|9|1=^lgNlq#B9 z9te4%@rLHr|4nk`k>j%v3Pkv&He232B8%P@K5+4W{p|lD)Bn@HOxG-8HO=`iTSYt* zSMV;Lg;}>BZ3JwM<bKb(XI(7lE;3I2FFt^95m)o4+H>FI=<5H{ z=8@0%=r|7+Hez?1C0f2{HFmS0pj)IL8^Kuo86S=XdJ~=1t@HT%Kau~NE;c`qa{@Y$ zVdgsbs5pe3aF?7BS8*T3XJDIwNEs({V0XqMVVMp_G1+WyplTjI&~iu&bl$JcKcYxI ziTk5`e&Rl^y0PK z9TY4Q)!Dfxf#VGf#ZJw?=&}heU?sSv_-t%bQ6)mx%0h%8ei1B89)98&mU;2n?SxK0 zj<;3e%UlGr%|fea3C z*p;NwFdi2FQwAJhZl|96^LC2+M0~ShXITVHb#kE-$CZo?o~u;x*(Kz5nsHBD)^)lQ zS|nB-AulXm{qGod%WR;qoBvl~?B@T;G2r*&vx5J^du@wEtL6WPyrjW@5830t_^}2< z9#yuSxwSa)-SsaBWyEI@S&Gm6f+AvXE*eB|49M1>3B_Xwvu+2b`4UdizWTf5l-aBQ zL)?!-v&sDL0rXF&TEPm|K3#AP|MvwJ+vnlQBy@6KF666D!*59J`M=}IT!AFD7;np| zXIaKm!P0Tsh66T_9bPX+Yooi(3q0|!8e7P5^4-{X%?lp!V)LLp<`Ci~lzeDL86o>5 z32)slFNieBYKqd}Gw5#KZVP_|@FoPG{G2{Vo&2(F2?q#`V&sq;^OAiw%n(h6c|&UB znXy?9y*uw}b$wHuwQFrttc^2UXuj~l#J|{KpJ%oBP_QT5aS!B?dA1E}U4ppKFa!PkT;f zn7xpv>4>;G==X3hV%cpUWjvnbXowoZnq1A}7u_bu+fB75#kHFJpYP3Yu=yrIp6?3ubCI6$2-~68od3y}!LUf-u zo2BEUZ&}%Y_Hq9I#r&_3{}+FGLBG(WBaaUI{+H1I>%aeRIf9|^BLlbw;53uscs$kA z;2ayTaf0sMo#dM~)zt?WIT9!i3y;OM6e2aqN&`2sJU#4gJKG1n`6rA0y(6aDiS3VyI?%FwRc z+uhSIW;W<595|lkGESoE`)>j_Bo%mV8p2S!V%*jAlla*ReBly9!yfUc2k=C+BPu(^ z`-od!tfp10Iu44VmJi&}zxMy&!TB^k(Y^UU_Cefk&-2tMfMNgl>KyZa$jCTU4+U0a z+llvaZ~1%j?*BI4j!uVSzT{IP0N->un5ca8f0Aqq0BNtK&Jhz9h@6kUXmvun{Jfqq zrTrym6uQ$dxp?g|2)jccR6*S;o)47_MVbHO-taVW;DPnPHZJ+-K1MS5s|+U{*T5b4 zN>CXhJl~MncYoCBTsOLNUh)7YtHLw@lvj3Ve8~RSc6q+ydci?X*W@x_JKu_P+kLEp zb1dQ*MEtE0Ec|pjUgo55dW7j2$(FvQ{k0k2^dLK(&HrZxMYu6$!?oFNrwee1K;UmO z=sX*fd>!|nXm2>0I$wSI1Dq|U>&vqo12j+`{bJtV<&nRKrTa;z*u0w5vhxbsWejWl zalbw5<2I7J1)9lgqrG1&x2PB@yQSxRX&ZnkAJq@1!~Tih{%Q^rUu&tu*x19KE8)WO zq8sErhj_6H_S1pSZnkW2kNxWSmV%qS>9y;m4d3?dWCO_(pR}iW3vKv<;@RTM40q}` zbp%8PFIb$s)hSlCKiSzA_FTYj_O+!H5jw#SH4{XapAahoCfW=-GOqa#e*uwUkNb;k z4=fl@I&E}((E>$n!nj6cBJ2L%fWD73K#qTkp)`3a;~UYkf{3 z6_OdftR)9y-^TF=zJ3{}0;xzdAfbG7;GP2XhlK?dTPVijI48z;Yh;RJAQ~Bv72c3dG6zb0C-KYP? z|D%|UxGh!L_!Swl;rVjGQCGwNdDCa;lj#5F#lTxMvV;n#w4M+_{$fEg|0I;iLziO4 zTakOvcNhC;8)IN!=xeJv=v+t%`i#7grN_w5i~2xa&}{rG92WqW+69j;^kQ6*_L5hn zZIc===z8`U-(mt&Hl0TD|DYG+o9@aOeLQE#ZIL69dI@ybrq|fGHXPeU`4L8^|HIe~ z!L7jDU-N#22L>el3nSf3HnY9SV4M53y#8Uc1>ZKt>B>u5=iHkj4{iJwpF^xzgh+MD zcWs4R>lN*V@UfSvE#D`Udu*BnaTF4Bp4`^|G7GNq!dTP8 zgXb^o`MY&FHQFHAZrfvD{TIa`w2yq&2CI~8t0*DT3uJ>gu*03s(#tot`LUT$L1rzA zi`$JlT~0o&|7&2v%`UC=P9NWkq_SNnK)v!HW9SA8?C-Xe=<%lsdCg$kiy5(4Uz6RK z$WR*DQxEqa{NI|-ihL+?&h@{%HTI?Acb*nr$TS)I?*r%ai@X4s>+-)ablxt;-Lj*?p+Ypu8#4}+Vc)p$WEC>p;@A!9N2nP~#Q#ap=I zE91TYcG3^v(pO`jYnvx|w}Q8(gFsi)P}l$!A2wS#liAi(deK4ncGlEpM(elqf28*Uye0IOcIZ>!S2_(M$f45PKuR<1ep3p1n!AtnE zBhHZ+t^Ci&=131qHE#KRi)Hy__&>6^6|s*{0hZuT zQ1rBd`2l_UpZmW-E(_doedr=)%==6moVS-PhW;=4ZIyVMekvpXv`;)2G0^#o1`*Cr zI;!aA1ZlvD>n!pbtOquJ{AG~d#^5?+r4?<=ect~RKBM>ycs&oUu)4Cupbw)nx^?vX zvbElusIcHTGROrN!<2MlTWA<^Gw8P#&url@=JXZ`44#erAMlhxG@G7udmiVw+2*fC z6ZwC6+~tD26464r0w0Tl%0d@y@R(Cm=^CAG$OHf6%hv26ul+Oa(=MWG_z7lz4m_hN zV*|6KdwKa>P_5U9HQ zwl+fa#pZ(92)#Mi)JkOM` z?dt!s+UGmV9)&FzBQc@wHR(s&?)$o!8yRZfQ(OE$3o&C)=XiQim5>6?v1a!WgG zIWg%>JrK^loqg2)Cr!ss*Trw18NWLFP`;s35H+lmseS+`;YRoC1L-zPa=jYL8L%3h z(1CP(N@fY>L?AS9O4)+8cb@8H9=If>ozhXS*NuM{oYsE8Yf7a4lW z`d`)>s>qxLO*wPdmw)~|%yX>&8_u9RM1;{*r2JpDKbx_m@6pSp-T%>)toi@asJ^(! z-x|Cs`1V-stJ@_vRI;sKI`d|97?)zMB8%+K8YvD2K8C`rrTeSFoUb*%%IR zG5&y3y2n0*i!ko)5CcrsH>8)~VJ~CpEr7K*sakI+GC30LsR(|X_24?J6%F-OYWR;{ zd9#Ik$MR7sllArV;C7-o!TZ<7t)Ei!PW^yT(ixb3a!=WKtRnGIhV9^Ce%TGS3^>R6 ze5YHQ>Vf1RwpF%)UMu`(N*7^!+TP?96U{acz5^0YNt)B)*KL_VP8EGWooD$E%lQ&2=hX9z`l%AmSnumu)S}@ zy(3?k25=L;w@?00_5^KlI|;h2!CD{~yv$EoBn+CqH3V7iS#%sm{kpz^fiu7lj{na9 zkT19d;`Jpl;fZEA$t(P_ZwWF3&ZYmwZaIa}lSVt|f*57(8S%5s7s1oo#n{PL(Y?xL8T$|TwS^a%!~V{;U*_E4d>Xsy zMDEYt$bFtcoR;N2`Y4BiY_^#iU$c{|yiJ{#ZX0ZuUt{@1rjV0ukMRZteqFxaApT|p)k!__QVr(&!vEiYYLEvXaO3CeG99;syr#h*?Ud{c+h`kRNkX*i!QzOO{? z2g9>CP;Z-n=3_?ZH#D9;MX6 z%L#C=3wA03L?rHfIh_0tLRrI9$KxdRVDL^GY_G|9u|18`#{Nf-@MlcIPnGOLJ3U1c z2Icn5_zi3YiqfSWJ#{)N77glV_Yd9r%3Q&>>{`RR@5bJq1bD+Xv5T2orqKqC>oa3#8)>gqjdXITK=Ucv=Q z{{GUyR`q7nlfLi~;}`pRl5-ZHU&NY)dP(}94?`Z9Hj}aX6vimWxr^o!VT1+xxfe4H zckMQD;F$ZrVK8S#9=Pp9v(+i%qCKb#UkK)(|C#2=2c-~p^MC#Z3XvmB>P+NGZ#x-X z^ieL-ps~gX?Ka|@NfsPwoSu$FI~V9f5>mc=euBgMmt2xFN{$jycI5vPXZQp(6^Hdb z=UK-EaGh)&1c{7dw*yPM-qSzF6qsLR*^C+J$9X?;j`Wv3;b)BDLpw=hj5m>tE4@D_ z$_!@7s#J1KCkT9qTV(P6D^kKy{_nKLtrc8b;As2YD<=jq75M11XS^lmNvZzdi@(k zIBWbwkrl_;x~y$Dag1^#MYoDmg%-T%#sASpfu7#FM6zF5@7td0fx7Jf!`29if7)g4 zu(~sEjWoc?!92a&J zzWb<|Hs;>XyQ3S^3Wy!qim^2ecuiczia+qc=(v_ z*0w1#7fpP(B#24gwslw;_&pz>!wa(DVcTR4{XH?%w_C^K?G zFbFV&?CL&&bSuqyOf?q+&8R-K?Nrz4kG-1;{*GrGBYu3$PhTE+b0N^g+6l4xTD(a6 zjZhh<6|0IBUiz82<+K@{K$EQq^65YH6*1*vhnJ95Hgj}W#TYk z8rm5cSK(=Rn?HPnyWx2{F1{(5>h7L77`89)*F`rEe*V(bO>66C)MCF42gtVkUn)mC z>=>H35O&-fiXO~I8$I?CHjT$pTxop+j>;~>1<#ZhF!785J*g7UdXslS+G$wA`rXOy z(@8(rKG3zw*FKE9z(F|=IGqliJbcqyyz8L;3f2bqhDVoS!xnc?8>-$e`<83}H|-5( z((;5$!IN#_RkSvvO}WthbGz)zuvq+NJTEbpn~Bt6BtG?*>wlmr;a~QhJm#7Bkp|3F zSrFIz>Da%ap$0Fx{Ms&d+Qx(q)!^jxj$<*6``@s38-J|_5kCsVe)ltQ|b@AIpMuvEZw+oF@bFeQ_7}6l}l^!vsHd^{RmR^@Hv3SS>ZCKF;|Tfjt-i9X|7}G8x-{TNNp_cgB*E)^$gmO2Gd`-rTCAs_n?c`#T^5pKzS_V^rvxs>u<>IXPLncTJAW3=uOM`Z#gFpTn0X2t8okeK z{*BLb|78A0)0a9MkbR7@3dEIiV2ppx;xodiLSRNHjd}PfW!WNp0wJVR;|!nXEC>K? zK$5?(@ae(Jg+;&33<3>W5}6E{Oh;EZM709EsEQTRWj1>=tk#9?t-ZNXS~aV)e<4f0o6ox92BF4mK}dg(s4sNSMCOO?Vd!+W5$4PL42Jn4tPIwmpA83dOb@ zf%M~j%t8Mr^D;q^By4GgFS1V&P+#2>1a1mkOqAA0d*70Bq*H*|1?7pA_?HF5RQglkY7#^6{g^);k@@&!5j< zOQr1NE13uW@_*N~83y#E@yJX-DYZ7}O2U}78+i>@`1JS82uUzkMo7qcajgrk2AlJ` z6Q_U&E_s}=*i>rQC;WN*-}_8Bmf_`_P~2Cv_XQ3GkBqoyjTTah4LI~#>QzBANFvnR z)Xux*HrW*C>XZWPWV+z|eF{bsU?7`u=~@1@>?C z3sts*z;&~)Jm@tZu%<*OjKG!q##Rrx`hVPS4O8oLAIec_Pk4d)rT-iB<47eYRO{(tB!|HrhIpUv(}fIsJ^TM`yTqYz22sD+sD+`+y>bw7dFYt2u!^3Q1K ziy%kDfBIZ5i%+2cqu;MN$LZ|(-v}3szt~>pjqdLf&x`IZrz9S9oVZl#+XTik47le) zMgKPcFQ4zr%I5$0U|bLXKPRC7_Dx-XYkYg&`yy!On-+jWC!sGeIB;OUkb$yN_BjZD z1R2x0R<(x5`@0Ky(54f0*!=B9WL}fMkb9CYaFRzc=vQGX(e=Gw9h)q8BtMz<;u9lC zjkoH`A`-s#QHu`35$l<@w=fAtX|Ww%`JL>*UX>WKfp?t1%&{(~u|Vyk5G~YGnoVU9 z%x&Rznq5FQ?F6S7t??xTiY|O~niG~K@5;wh{ByMxNq@=H>8Nk5-<2g)@SEI9dAAHg+o4*py`kzbsD?D5RjT#nojqBHzN!e3r#sX^=ZMoVusV? zz1hn7r_M;3=rU)VD%KWO(l;x_=!%2MHd!~9BDLNX;^j6+`)N34RXg}SiVQN$le)kO z+w0i6{EKEw>|#1Aj@5n6{Yz|}-XV%tkQJnATS8tiWzZZNo&MtgcifqeD!kc7Uc)(jqn!;ZPP%^~b#p4-^t#JzlGV?}w1z1Kz#2y_k+8Y^ApQ|+zVUWe^V;$e*y18&SEUSAkp)) z3i^SADzx~B%mTdsC+{QrB0^s34T7%PPh>XR^9d@v|1UZ&cJ;||E-I>;QzAt ze~17gc9QPdz}eXCuhnQiQfQE=gy%L3zWRUI#GDD*{)QN+?Nfw-(%x=`qn?!`d{Z!%3pl{ zanGf#kK#mfu<<3kOdS@+zjgorDgSqn`q}@hUdCLEnwl*3R#1fZF8Ji)|M~nqjL8?g z{e4>_%Afw9B=YulW(8;b)ukj7o{Pw+>W9xK!%%78lFy*%0++;hD?VSU{kgCS>`^q% zH1zBT1@anaNw0fVWowl&&psC7Qq2Nk{_Qe z{&oAL(;TE_3})5)@83$HZ9k`>MGe0kK^seoq=G@vOEJoQ(p)}3$^$Q{FhlQk+*Y6v zsIjQR_9P2da^5@pn_j;gGl2yu+<3xMxd0S?P|w|0Tuw=D-UQ(cyH0qrpfo=#8Wsmg za{51*aN+39L|CrOJUe@w5U%HC$JX;fsKtxY$Nx1>D(ie{hA(E0LC({@hl%p9^OwbE ztrsroXBn2fPi5dm@McCu=PF3ET7m|nB%)~ti>OI(Ek+o4Wbzzu7?gG4@9jZW@EmpI zFODp8M=xYD^0LnZwu;XRj;uL{{1ogqsR|GF@X3PqZATbj{#l+@j_tz$Nw8*-Ie9Vk z^OT!-NRX+kskG=e6qSOXro7Pqg$x&l%rMjEVBF9q>xf~d83W7zLx;SwsBwoFU~=INxN9MNw%RI&>hD zE*t#7bGZQN{1Na4mI~=-134Iha6mw?a#d^a&3JM&P$qf^qG}Qk>X$f>97L3Boe)780AZjRF z2aS^E8yZ^=u{3@R3YCX<6N+#nRL4ZWQ7j&{F)+A_&$5I_1^kH1*q(`InfrfjcA8P@ zQm8S9rBcN&0UJ=TN$E5Li@;m%Nw#^-|Mgq{r}ze%ciQthJ`H5xfBu!9+@nV17PJXt zzgD0*v6_;3+-VKCLN9gFqEQXa|9$<>_Um-lsmvNP3%;_)UgMV>X4}CamRHbaNrT8Z zp5Qi+vTc4A`~MN=I_?&il-K`GvycvgEb{+_KPCAzKS`||Px1Y>Y=uu)a7q@EtzOz7 zuI_VsS+1eqv2T@?5x;#O8TwiL|A+;O(UAKBR*XT*r~QA>jRH>^g=oRgsbh%X@H}*2 z0FUL4@-yH;hpZ`v{wMN()8Mc6JDq@S};_>mx{4j z==A@noxjPA%$)a%Z@8l320;W_X`6R4NcU4B%3jL%Z>H&@^{8KQesloaCKx_<8A)s}0jy%n0yt#10GgIIdgk1b;Cjg~dvP(9MzXi2w2L zkfI%fD_-E_c5zeMz@10%Ryk)W2vn>s8OMuFEG82c=<7z}^>@-=pmHWNjG}*JNVJHz zd~7G41^%8F5mv?n&46B86nlhZaV>ET{*|8!_kIb*Y}-ED-vjj*a$bNHc#b{_YfZzk zy_w4|?MhQN>3b5o$iOKWPoliwB9h!#x<1ga38z40Rw6mP1z9Z>I#7S{DuR&>jIbA$ zA^+1@)gkVZ7k)N)a=Q;bfDa{wT4ji$DeTcIE|cODeDV3xy1Z6iHhym7`?IZolLg|r z!Sb=w|LG$@(x<|w${gS4$>rGvHGSGbg9-+`Jv}Z%k$!Yvh0jjX2*&}!s$ZAqIOew3 zf(>QOfw{N6Ro|e)2EH8aa)`*IC6QTiLog<1kr(1k!4QZNg+Dg2L0rQF z{TbrRf&+OZhp0NpqGc9sy?na{pqIvSzBV2HFPr^FaYWmbdXAq`9u6|18DsD1G{9cD zlQmu%0Iray3U-Q6p(L|%6~{7m#_&bP>4D2$rtklKxmon8+XC2)!Tx^;w4qmvVw^He zh0ivp*EdSUv0CByfI55ie@q8k$QAH^snuF&fU+0)l&d=QE-VfzoCcY%J~Cr)`FoD6 z___Fh&>M6G&Uk?oa{_)Z{)H@9JPH)C{~O@d)fYKd=2KK~*9G9Xwd5)NWyUh}%dh=k z%KxqD6zSq<-~B^mD}pZJBxhH8pYcCNj+cKR!?zfl^-1i0@&5{fVOy?SxAULyVFA}l z`6PmZZ_V%J3;(C^%Z5V5_Ef(Wo*D{qlJmd9nB+6o7RIs1{4?Yf^rJtl`5*j0pZ%r( zH|G!zyw4y11P2C$860Hvk3#c5Y*8Q%Hu&N4tO*nsVdy|(fur*{evXe^tf0^sBLMUK zb7o?)J&t0rh`aDJY#0>MB0ugW8OV}k3 zb>ESCkE3AQRlP%oSb1DvN5sXyWY}tc&4Yka12OlxnzGWYvF6WpAY$S4p-sN|Amb9s zJ0F)k4DHVrKiKRZWA;bK>F@yNj0`g;fNw~9p`ved3xXz zHoy0OqwW^N1ILWjW(?@r3Hn?u`i-RaLxa= zQLHuDRnsgfBH>qiPBgbKX^Fz&wvirR9fx^0UFXLArf1!3r)18u*yF?$UBw)QK9Y4Y zzRKvcjDf#CZbX2#|F?>V%{*Pdb$x5w{w`rH^!9xi>XUKvT7K1UM1YjsM^3e|^)Lz9!$<{n{u< ze2DK`Z0P2Pa*Uk5D?P_EkYKgl2RKg|IildsG%N*KFe{7>co z>FHm!pCNz*XH{^Ew-DRd&PZ>na~rGDf>Iii-@_kP?X~&m-YkQ9Hwd#*$Jk|Ad;s5q z+cNqzC>EU4bV3EfbBdv$Dk#^xpBjmSi%$xEN>Q5Kn4i+Hl@U+EfafKe4Se;erl1y7|Xv%h;g7|`ntSMda`@0i-ebRU92>Arlsfy|EH>``zG6HoJfuM!o@%p zj6-p{Rs^GGy+r7z{{5RC!Y{&}6~R*(wGkP*hBX+EtgP)MW!b$@@tOReBS4XFi|6_2 zXfUgC{?NN2TEH(d!&>0wIrMD_(?Lb%B&lz6fMsWaKTbNM|5tGGdkJ2Z{lK&>%}rX& zUY^V1{~RJqu0!evNahusvo#HV`U@(ArM0zb&*Cq>DG|Lq25ELcVP|P{O5e1I1fV&N zg`{YwTLXJ0GSL4;hMd!{ZT4rL!uYJb#k1aLb$?=PiXzAX^8DYRkyj_}8SsIC;e{ft z3tpQE`@h`$p8_GuacfG?!GKX#GUuDLtT~>4W=AdJJE6Q1YJCjK0AX$LK#95a447>m z!LHklg^%r%TYn2D#@+O>_=&Z@$1B2GFRt~>Q@-{MaLqHmHV|Wnv-JmUF$U?#1Znwv z?7g7i<$ps2cHrfM6*dq_qnv+E{4?|=t-fa*Qg~Li@=YC9@8v<1+9X%?FAnDTmQ!~ zZ~iY;9EC|vo68%87xpZ7|F`a&Fa~W5X*eIan)4H<&_HTjUlNz2uu5WQWBma)8(pZ!g%^br@E6)?S4(-=J%Wy-i^Yo& z$)Dx$C}1)&fd-BQTGr8YU1?35%wm{!zT+*kg>*hQT^uj`KX7IN7sk8s<0%FK+yzi6 zUUZ45;PQV`-2A`Ig>m~F46zk!y8q+7twnW9pFtNm{Aq;i44)z=UV6Z>VdVwj1b)($ z;ZSXT7C%){FP>6-Xs;G8Ljblxk=*kSr3!PSQFZ!Ff?t0TnZ}Bzq{H2+Tn7P9i=bj0 z-%27q6KYvB!yKzCW8*WTtC+Cas9ddmj03dWfYg7I7M(Xk66v?pf7Y7;?ZgUu_Ca> zPgyf24x?*ZWEnASdyeaYF*mKIpEC0}n?cC(bKC4{hv~FNzS|nTwnbMGTlcMXvs_nx z2EEA~7y3k7>h_RKC`5=Y&gGZJWQ1ao)jg^ZYWv{a_8@IC^`|lls3twuPs&wV!CNKw z(2<;ZJ}wTx4&7cbsc~*jf(2hXNF`?9`-9$ITsls>j`gz28b&4;BJ|SY=KpJqbK!_C zkI@$SQHFc5QQL?NW|w%j9U@fO{4_G=!KJdD7F8IiqflrU|7UwJUvPw#vH#0rHzC)X z|0~5fNw~p76$A;YbpnMTpfq5!N1Xn&)17)wXb zg0sVjf^>|F;xs->9s){@7i~U}8N~h4Kwfd}$RjBp*^1QH?$aFzkC49Vb*fkoW$09ejuk>H#EgD=O+ z3xNRLu!n;R(#8c(jTMAgTC65{g@XILC|@0YOEp=l^A|C#%vbBHc|&E~>pv;Eo* zL)-nshsyjmjnj_BWr6#UomCD`S>$I}mzG}%)^WE9E_KM_EkZcvOK3vuUP}ePjI$=7Qs( zP&^BfOGBKw4}$x^sz$cg_iVNl#IU~?g|>Jp%$;O$A@DReO8bwzz=(R!JVitI7-B z{XgtA3Z7dLEXOsYL;pu#qu4k+ONdVrxqy76;!(Xw3Ar*2Ij7kjz6i;JVfX*w!O4tT zK&&t$MS&Zqtsy?^u_r%pBK!aGl`e*gaY#QJ!#Ri})QsdU9q1S@+Pn^Yru%Mq&I&`Xh)I{i#Zm zk#KksBe{$c5pX};w3Q{AjIY#MrmxHv^SKkMsrQ@W=SklvG#IfUhQ(*qWfL!~#u&%2 zYp6AsCqS_b(8`Vnv7p-sM#TW7ofqUs6+Elq^yeppcw(>ItvV*1pA&{SOXIT|gER12 z{Xf(v5VY|#s5)_MleWeQWJjLA-HoT4j|?6yS`?~de9;Bw=<}+G3^*}qN|SHjbZjlt zrN($&PMW8UWyfl7MPrPCm(SyOcC}bcbAoXvr6cXoztZKtnME1w7mx!kZl&mx8YBJ1 z4)S4BmhbnL>Qn{U$kM!U&OTbQ0R_-P1LMJ`w)lUpv)07~$C+9HoZPNw9>`Q1eAU5= zyEGtbUKt_z@e$3!kP#g47G%f#e}Zw!i{+|aSD4GyplVyRA=%Wi1Rx<43VB3(KGD*j zF)?xCIoG4Z|6&~4qxJhJ5FiX$n(Hj){wV9j?C$>=4i!nNYv(s@B(7)+BNEElSsJOK9JVqR~?ri=oGa9Zi+KTllsf7^8b=uf*k&zh+JpPkKO2W4~s%Ky%4kJ zjET-jFDQ@jIen9j5;zi5pQ$vW`tbZt*q~P|%Krl&#x>-LWC-J>H4`qHZ+QB3oBw=h zjnM^<^6LBR0}* zvbi#Z6oY#az&ZV(yv~}LE_RXtbpjdTmu)%Lfmo)3y;I6q!lP3(CHp}}!x@?F1Y2$6 zmS#2U*KIrUPwxLa{y+5nKw%gth(cFh1O6(uf&Q~NqBTzV00R|LB=&-nu6PzOv95vg z!2%X$U25Q4-T%`crTSQ=(}Va^WPjlmQ2%}Zzj^ua&kfI*UrwxE_zmCJyt6gFn6+q+ z_8M_^ZRL9!_R-?CUgp#SX7PW$_<@8BOU}2LM(}d7P+>1SF=ts6w>9ZA;0ue6l+nNS z|4@pk*y8^i=N5eaq3gE_s2PKV{V!>PJV0VloAL9R1Nt-egE#+I9PfF($MTZP;awsB z;|4e3Z*`rfPxP%B(=nlWA5B+u8RwnhD8wGd;@*d%`~Nxr!|;3p%*c!`Dl#L_k4yqg z=q;5=TKV;qS%(#kEOZI&O@GIT$p3QCGB*%C*C(hsU}W z$FEJ1M@RLqb6?bZ!dezaf*@6@jUANs_Oc*z@+gG0Q_T{EQ2YHYe%lx**YBr=^Tj+q73q(}? zn>@B6;I%Nu&wY$Q;V7P$D0?voQ=Nym0>)JKm%3RHg~An{W|Ru`+HqskDzvWtFOo%( zEdIVY?m2;4sS)P~@#-ODSG~Xk<6EDb#V9Ft;)%~b$7GADz97LupL%~3kcR*FVj&{2 zhVjpwA2En6Ls#)40c}B)ZOUpH9FD8!T7!87X<1f4uTeVffygH~mu6D5(9(h75F+DS z0(X#3GZ?nG*(QzC?DHj^ar&1GH9svA=;r^r`@b!ggoS34^vk(Y$>9uFU=Hynzz@Rm zyI+ICzw6rz<_O|I(8;Gr@$Z8fkEFiqtc;H}m`t!-MiBe-CeM&tC#t{5G49I3c=}E8 zpdNc_@fTU6iXzqRHWFhEV~O+a_)|_I_iD{1+(#c3b;-xHQbWE3K)(BRzO(~*whV0! zm)P9M!bvcf{U4)gjl!Z*JkM>gt{GJZPY%{z2(<0qK8%Y#|LeFEnFM$XSn6ZBtmMAl z%S1WGeL07c%&@6uo(kgxo;C1SlNO=Vj`4RBL%=|4j*mhg6&eA@1spXj8m=2@gM&mEX%N1Ve@ohD3QcFY!cf)8Th{;dB0^sj zypG}Pn5ZHC%y;dNgN3?SBH zA2Rrppn8j1rpvyqe7S5&E5&W3{H_1LvS!Up-AFNRSkd(i2~!T!Leqco|8BG7|E>5Z zi%zhh7oH!CM8Wg7`@hQ+;{vhYZtyVToB!iMFBP^SlimO0&A7Pj1k59Yu=d$9hc}-Y z1=wxwI;J}%z+L9zSfpe4zaX6AtKi9~Rh%1>cnO5_bG0{2foXp8{}jK#=jFxBP5O1U z`@df1;KKS(`~8i8QTD+_=kkZ@d!uRQi`akH3mMBD0LE^d6?AHwZ@{Zl>A6mvKK=~a z|EKc5LjI4Q;#}cRT0f4B0(4*C7)yqV$~Fm}Z?rjJL|*{tZy55el2oEfTBMxocS}y5 zY_n=R#waW_I0?)^MMkHf_&AYz`VY1TSZ)X}iPP%Y`3+vl;td9kUP!>ggffdiL2ArubdJ_ zFf`j%%t;#f=DId%;Q+3cf1q_EfR%RF~t~0E4!w>3d#s& zcxn3bz=}->{mE9!C};+jr7Nh4@sc!U;U9Uw5fnvCZN46{-4L#C8NAxcKk3r#z;^!+ zwPHL8|Ce%7gM6YLZeu|dy%z9<{l!Px>&5>K^dP*L!sqdjZE8LzLap?zXq#k1=Y7a$?WCE8QTL|Tp0ZV5{-7^Kez8#f?!G-%L?7CuzLNP4Ls}o$ zypu}4GE^#EXY5lrr<UQq`5KD5hsSa%06Mu z|7rhk9FNhL`}pDiS}_fIB%Aw7|1TbGorC#53c(wElw0Uw%S8_)(xVa{w6>5n!i`*| zFxZgH2Fc{cQ`q-E^Z$RG|83D>qix?DuYTbL=r0yVV*!9PwR?Iy1${Uc9jhEq#ysp> zS-{0eFEHc3;j|e6BS69&4lK8#vYlWAg~Ii3N5(pR&gP@VtA zBtuV{0ctA{#mUFmxc*>BuY#0DArQd5wuWb)XXTTJeEwMpEkaNLC(F71iAyZ%JB%Y= zi$Y`3CyiX!9TYtqwU3$bVnra3w7|3)$$}VvRwLvPe2#Hi<3;AFWR?0E7Pp+JUQeU# zGCh9+N7j}^l!)TKy)zJ@d!%hCP-4-x;S?-}F7uwgpC7pix(bt6U~*SRzqA-3u-ecn zO0)Mn&r3^my@=Kc>rv6|O=`YBk^1l4v5ea)QEIXzELMdPzE}TmMdvDcHMxCio1U2z zzSc&c0pA9NF?ccYcs9z@Dov9;StRE-|93h`p2jv8I>m|;7Ew``SO1?)%glQ;UwD&R z#)y=SMjzTOYENYVC{t_p{-^y~6|;k`5=IgXF}jJ=zVm-a8bK>~6DzNs{vTuYvJ-;2 z-46pK+E(Cq8xYSGo@b=5o!rzU!MpCVfLH{iS7M% z$NaC`rHL*6|K5(X|JQ&2zh9q+kS(1)2KTqnop1_bM|RZTKd)rPTor-pAXQruE+y8z z6$ip=555L$r=InvNM}!JRE3WUS}&5uY1IAFebnU`JlG;H3PgdyZW-ylDPV`G<^SCR_MEpH2EdZ1F#lF( zSTOt8&>uwh$g||iF&x})9VCq>)=%#LnoVZ`Bci{t1rmK8JtHEM?8LU^M4bm{i_aG*Vb(G=uP$*HtfG}b$PMR*U8=3 z7h?gg!xE_-SMW7r2HN|rFbG4(GppDau?F`40{d=22{zXKPH15IK*0LkKKOr^8&0F) zi#(c+4d!Xnk1YPL-Tz^2f^<*}zxbm{^ZQ2ci?_YH^onn3Z*ULaz%$tKO_xI_#80i? z5YJVY8;#*J0B@c15B-1S|7AV!P5x)?utdFQwJ<0BwmP9(tjyz5O99=}gx8A6ynf)R4VI9~N!0Q20D~P!!+!%;)&e zWDH&v-SKDbG@du$lD?LoL2-v)p|5*?M1}UoR!Se_|FZrjYkvm(@M(Ny zc*vg%F@u0@Gy&ZTGz$1S;J_2S`8fQ)x%o)djqdd)6}o=$+8qyd6S0hn&qCEO$fJNKfVUiOq+F0+kD9&z4-j6 z{kEJH-ffb`0O+V&&h6z%!)rP{%zqq^HYBw^!s0iSONcs_$0&| z!WW3s+>B;^ZjgG||3hvlZ;DxHw<5#;ZMO-w;joXom;OBDC8c}zfA7<}zVX>VH~EU_%<$eF(`wkw^KXGa6=hn7;TM;SA-^hMGz);=_c0xry;O*l7FgjOwp)0d` zcAl4_um0b14#MNpuvYY1Not(tv|Wn0XFoPtdbNpC zTEnqY8hH9N(ud6XDj>@0ZZ;|HpF(KSzu3;c%#g~glK+HLR%w|;tqj7(uy+xRU< z(}4FBqebd;x^X$H%N(4StbAQi9sWYk{jr_@ssD)=md#H_OBTh=wW^b-bE63@+D{bq zVPOgHHVpZp!XXn_PK28br7;mwCjT#u3M;KYuG`Cv(*+Anvyz2D!AzNl^TGO^UvTbvM#sJd_ z9%yGsd-wm757WkN809tWYRvsv$KFFg};SgAE6RRAk}Dd@eTs*>WDVAP67&MGb~f)?0A z&j{dDD#%)NL;yM|X)J0kYDp%HTM^ne+fP(Vc6Rp3N;DYm|3Marb3G`RArR%ua@oB{ z1Ph#^Ms)_XCu@Z&DuM!r*#BdZAFU-+h%+br!mmBP5H=}V{aS#Rh-HR!NytC&3g{B; z)rQ?hk*{bqVP(~4CSbR%vca&Wl2@^<2?pyZ*-IUoV6SG3(sor@BDvr-=CI$4jVmcGe6c?2wh=Z%_1^@x%u*F1|MKo@RJ=pOzW@yR-GDrslB z>k4CFzATPZ;inOD%Aq2bCvt7~BPwP*dM{cZ@$0E$M)A2J>H@5lKo$ujd8_~Z`Tvn^ zz;+>f)T+Yu!Ewkxo5pdFnj6OU=qd^2GU&u*G8X2^M4<3+-i?{WZ#kL=j2Q1YwS*>H zQMNwIZ#lqGVfh3Wg6kE4DBM29?(+%r8(qf)FxV$FkP*BvX#v-`IIi&$;gBHD&sz|j zh>;2L&}jny0YRqKe2h>_|G~uVylUTD6UAlI7$KX#W;KVWh7IL^Jj^ZEy3wiLj8M3+ zBH&{pRTy=6SX7JxPKOW0s7|tuD-W=c(qF&MzZHcb{!+oY^NfWjuYS|XQ|aVpK9o!b zDpV+ykaZaf%&|#tZ$q!HLnA{v-M0CElYc7&X51JPYe^_6e}+5rYKX3agD(7_9gv(% zV7Vt#HX1m99?vWmlU0T-8~jVfxj)yx34%X^rj9?zZaN5^1SZQk>K$GrWL1u0z}|+9 z=;Hq}%%nbHd6n{W`$II+@zwk*VBC7!&*Ri)m zI(wV2Jeq`F;{JK0)ATmIQA841Pm|(&xUS+wof1zE2S3KBRmG38R|7lOPLI=pfnHt4 z6%}O6QKYlcAhnMIn-YQ((dDt02v=77e_tY88To?Orq#A^+*pjr?D9mAtVSlvacO4_T`Un{cANvGCS3cx=TtP5)_Q z8+UckPOE6#_*R+zKi=?KeU=F++hrE&z=yis!i%3Q2qum?oh{h6_&=@yUiSYiZ(E9( zA+^Xier<-hVmGY|+_4sRuq7ykK9s?#e`C80{w@dUWB^hgZ{Ys{pDwI!6?lt$759cX zmwIHarJ?@k3m^I9|5|@p<$^e7FZuuN#h8d@@%p*$3K{-`)dLk9ak#jB##3$5vfvy3 zgB#|}|G#Zyw>|$4;uK=p;{U?_pR>|laxN60m&Fhlg>5G|@;fk~w2mga^D~ql!4%`a zn@6fDguOa`1_*)Ra1Pm0ky^v(-Sp7Uxo})R-{2cP)%;95&dEIAy+$FCNQXO4=O)kP zuaBA03E?<795!NF))MjVcvpA=Y>Xqfm8n-uP>?w`wcl7>2o@H0FAeos$mGy0Q2@43 ziYEZDwL_r)2M6QcmO$)|hXrRMq3lCLMh>84fN$P_?t+J#19$`l+mpXqQF)OCCsNnp zA6qf_X%-7zYW`#k{v1Zk30_DM7C&9msvK6o`k+yyb{|7N{CS~jNeK(BR9JC{Slmgw z7m<4;4@5%6fnGqwVFf-|X8KflG}?GNh(9*Vh|vA77mh4Gwf)J`u*d<0XbBn&WEce^ zxiz4|3wrr7D1)SmP=GDp)4=KSz~6Ia|Cct~1{se&JKr}Mk4gM+fWa3y*5(`f7Q)4%DLbx! z|EDh)&S`X|ZU~IgiEySX@^hyDn!nk|5T4tH>Y`7~|DA{K{~O#GfBvyP9&9l9318#j zD0M6j^utVP%{T1r`9)a=iqDYmy2PJBVgHw1_s!SOW6bYM3^N1khKQT~FIk{3(iX$c zm}A9&lo%t7{|XR-FEoIFXUs2t+T!?V&g> zmCXv_(EC?pvHfig3z*A3s?flgg=)HXn7H;GYvN{^IX3><9Njkc7g{U6bA0}g|4CDj z|2;`;#TlTj;qNpCE&T1uLfT3g!Xd>!plDNlcz@B++x=zzALQw{qZlRcM=})>XKp=%K$qF#|J_{7>BwRl6>>`3NPprFS;n78B}A*jmdWD( zXzj}Ks11M(I~}q%wodH-^%%tKF1tlnpj~psA17DMDy9UjxS7L(ng(4ciyQ-mPvO>2 zdshr8x#UX{3<(Pi@;8;?e@j@*@U zN{sbzQgI}0md9`Y8h8RmuplZ_|HJs1C{}njY&2t~hTWHtu>SW*{kL8S){}FOF)QN@ z*qiDlPC2b5=ZcGkxZwV|{58fuZmcH0=Knyk_`m9&|Mj2bf4zBpn`8ajfREsbeDX)$ z+E;I$Z6A+9uQ&FU#4>1Ga|lnm_%;O-p->h544}XT|JK_8eAD87U>xqi^YG^#p1-(< z#DYaf!Y+WvpDCT-^=!`upGKt4Pr&5jX0UP`KP#y{F+;(J;wvTq80)^<4J$*1vBN4b z4cugk*$&Ww({8ZdDWp_H0 zJt>>ivcdnsoeshV0DM4$zs7~)7Twe42JnIHVj*|&qavo{Vqq|-_Y$_4T;c`6$ihKA z{{{coj=zn)`CZTe@*w^r&JZl*=g-{IaOJqd9zV-6{a=cAb(;{&`S}-i0MS+zW!IDp zI;GRQ^$+N@rVlf#WWhU})~^@W1Y9MH&BsinXVT(+fsIHao7cTV za5+%?sz({$C^pH5hGSfAL^R2fKB#rC0Pvd!&>S3#&*bHP)6GT~;5V4}bZdQvxJ2Yy zbo6!Q+S&#?$K8sS8rFPZ-imYQQ&w1c`mND~oBA9In{B4Y;EMhK^hPYOG3RY<^=-Qq zb)xW@_|yn~=8nE;j*#g^wc&oKtKiMXBxfOY<&P<= z)Fz*%0bfx7`STfHO%K@1C22nQN6Pf{B4Ww2`gAEAn&HVoZd5A}w&NxLlZz8PD?Ax$ zGII6!^S%G4et}-wib_e5(cK}rRz5m-Kk%zSKOr(QYhlm%UF>w!ae@zRyZIETHXSL+ zaI?WI=n1c_{07F$XlY|=Yv$;M$*ssH&3*(TQP4*2|A&`fP52QisBUG*KX8s! zUtshirAqo_@I|$*Bv4lW|4~?fYw3$y#o*ureeuvQwIo6PbRSe9I~(=CZvC#uD6EGb z4E*v|SG?68wOOd;>Iab)Ut!g$XW`rx{%GL;!7IjOq+|7eVgDy8J>NWikh`?YD#r(e z=3h-7SOev@pM?JF{BIGxrvK}k{~P$fF}*=^Y*7B|zyEIqAlZV`LNFq>lx%ZO_2int zT=-L(!9oxa6;P+9gW#ej=4Y_$2`GeAV2D24AU#9l=Nfo}K?RQHpLCyV0ywq26e|m^ z*Jidi8H}RniS5&2+Kd)U(TX4)iBE(Bv9MYS>0B5ryskafugSme)2&Uk1yB!C1@lNI ze|H;W3+uBJWu8>wK1Zzf&wA{_nvKS*d~RzVju>bO^C8Hs;hdHh*f@tQr0m;*_VUq! z6PR+xYEcviB8DBrNj&hZ@}VCY#XwsYm}zz`VYRsu!_w@ViF8_$9wQhy>A(xzYb@dZ zmm>MvaQspnC3eGv7Z@}yz24~A>MorYyhWIAbG605Pw=;*mR$;r-?R+Ei_X8*&kZ*f z#)W0n3;QVt#2FE{8|6%U7{=bcTVB=Vi2Dz3(PcixHHr8pK_CGxS z>M)DG7cFxI8_4^Z*Lc3!#K*S#eME z!a(X@nD3BhyN_J`$cp#Xw*^?Z`Tyoyjo*CX(D8iW z>DB+qw5JW?`~l~K|Bvj|Xbqcz{XfZ@c%WJjWJ@TF#W*qKrf9wT(8sp;{{xTjzXm1W z`~NQ#=QrA8ZPrf!bYC4fn~ziMw}NfAe2uF)&>gYbVue(#X2OH}@c+{Vkx5z3BR&Fc zS9vYEfAxRCy&}JuBER;f+h@D_Y~NQ}{$c(f%Q;jd+3_C3{=#qk1T>D>60%N_$J+r} z3<+pU267DfxYnNsQ~b(Mz75jCsTD1#A3p<+3DaQkcFU@8br$XxPZEZbVKd73RC<&A z2Zhn8Wk2QW6L|9382BkzY;}BzLbAZwoL+p!t0+!Ny_Ko2(sh1{ud3Fz4R~`LY&v>i zRQ-HNG2)&{{GPm`SY>8;#EIQ1KIfbFI-M?|&G@fCsx~|d4zXki-2+P$xN(c^^zLss z3zrYq&3|z0bFx`^UWF~UpA2e2hFV)}Stf?Cbtp)K&2bFDxa5gQ3P*q@g3aNOZOUt4 z_S0%HJ#0epFUH}pmbWJsrzLpnG++ot-xf@wm^6CvN#2_-MRe>tFS(0{TK5#)F+Ro_ zC8^SZPTyPaw8mnIiQsA@bUudV(%lu@C zV?iq~xZ>Ga$=Edj5Lp7+5=0(>HKkt1Z&Tk$#PNefqiU@PW^?`ngy`0S0p z$|HX7mCL91x509z$0q1^*Xgvk8y!YVr<4`SiR=UXe`65k^;{dnb=c<*;1CVL>(YL- z>{V-pR6H9PmKE@fwH(uoYzqz2n%*JTXp1{+Oh<3%P$TY`;2Enp`rl(_QK{IKIP)7c zVAmxFC3`mD;W>G3maJwm+e}6T-E^%Y_+p~sw@Yvu<8p=3Wsk%d9@lFdqObf5gL6%5 zl}bo5kh5{Byy0vy33F+hwgjXkeT8+$R^evPq!}mHkIv!Tj$@{|BHVG z)1(Ce*a6s{z__rf$dG)9r+s>(Vu*vvQ=h;Kt;t8>hjMGGI}0>jw_QC{OaoXS{Qr^| z245oOYX;+n?iKjaf{_~lfNgL7kFG%1U;_fau*8}8d-H$A35t_-jYEAe)%{<(|GN!k zokWb}5VUh)3*;ayv*;gdcK3(X{gGB^h_ms}LB8{U!UA+A|2WSi z`Ck`xEjE+?qaj=QuGkVECVOdnVGF_2@c*FS<=!(v|5k|^+d0dlkzp7M`9%0uLyQ+V zHK*{_-|qiJq_VuDKjPM~Bg2ab&L;c<<0fqOfu!k!z49~6g+_YELWbS^zsWM@DCB?d z`zgpdyBMZp{eDl*2p?Tp1#fm`*;$RA=e>e~C`}Y9s2Ll;U6JAm*TVVEMpx4W&-63D zPA9h_n}fukS-|4tQ%F3!qYBy94%+`wN&Ta9i5QJQ3{-q}>?V(>aOVis4Xn&Y#_|ppD^>;QsaOXKZkAMEM7Kj{A~U zfl8pbU}L_5ZhZre1psMHW%qt24QNr>{-cLzH;>wNYFf8Bag7Dvu(2@WpmF#?F9bmm zPnIH)w!#(OV`150Q2Y5gS~gtf^L3fjZx{m5STr#Itj}P3lUrf1F~IOznKo(oufL0p zMY+QiJY0AQ@_SdtpW+Ea#6H`#j4RAW|`{9)kY4*jh5wnLJ0%aC01<3M3nJ z#=KP~Qafl{0LhEK@H70sgP@`_`a$IEEw>2!;k7w)DMM|AMs0K`*H@$eHYf9+TpYmR z`99~l%#bV1uLGCk`&s-yV9@(^}|D_Am+5XO!+m=Ac(KKj78*n!kNY)vGA<# zi`PAfl|N&I16!^h#uMT}|&p-1O&74np}cW3_(-B^rwJ?0Axu~y___@7!> zlV+CUIb5XH6{dCmv?AH|Vq;PuDNBoqAN*gTFYx3i$OG~}CqF6W_y3W?R9fNhjO>NMZ}O4ql7_G7HBVJLs(S)u|VbcEJ{l8uWf&4G|AEE*KzlPm3-v@fN`@c1NiIiiw zL(&#+g=p<`Z!gAT%-w&iT^BL7_`iPR|I+;5h%f!G|Nei!A~%Az#EpCPZG0$G76Cv% z7MLmch_xiszk&r$>^L`pPB_lUAKrge@T`bv7L%^|OQqED_?!PLhP6}}9zT%*JsQ3$ zf$ZGEhSWE7sr2(x5=8B})_5%Y*WHo-ZPCd*y^lp*{=pGHwE(`7LyI1Wwa>qt_}){< zYwJI45X9=wUv6W4`lH1Q*bU3Fk z{Dw)t`^cq*9JJx5=Q~}wyEph&_FeG(VjPYAT~?4`SO2;DJai30W>}I{+z$Tb6P*j zICMe&|10IH)Huc@X2np`G3XPKDA=aOf?m2 zXqm=xnhKNIro1FDn)PwcuLiU(|M{il<}ip_{8*Rm3vHVMe9Pxe?cY_8{0x%$J& zc`vBa9k=!79J|G@#IcC7cQ2@=g)(~9VQlxk-JWm#jxP#MWY%YW`gK#V&TZZXuLl7v zV7G#Fa-hBFH?Q%tP<>wie>=9V|6k$V_Zn{--@j}quRo;y_&uo{bS*OV{RZ=I#$+G+ zKVH4dzU6}~6oB_Z!8ZyVlF#}$E>x@t-Dc6g)?o|%5#6i@XF*#P>B7bWNZjiM{@eYe z6AH=nVAH3sp2Po7*UR`CG9nWA?#KE=1^9A*2&2fu)Q6A3qS%O`%Kim9zVSw3Nbzg_ zFLCp^RQX)Qy2RrT{)LPDHya+YZp1!uo(1BXtTtP7KF6nx@9G0Dwt9AWd9hy=sAqlf zf043Znb}rbjb+8>qwn^HV_*Dpm1U<0p0v1N?mNhj$U;xE-I2BheklR_H(e2KS!37M zR*U}N|7q{acAZbHAR}&m>GE&n{|n5m@$+~8w|~d~XaD6tLilG~2-t=p${i0 zP-M3^gV_~gj5JJ2J}a~dbid4UYxeePA$%;`jw0#E9$2phBY^mP8IBu%j~ z8daOaQ=Ue3BJ{8z>634*3j}|gI10X%tHufAQ;-(J!Uh5}S0>JAK`%e8<8^v$D@Y50 ze7;9=f2r{ddg(6{IsehZ(+w;=6&%yJMt?f|5p*w7$faP@J7WR0o_Id^y&uBtnV2?` zKd;e>%?j6&C+VEFT4x7zrauWBIp_45ai0L4VqEM}|J>{z?AwrODgI;>=LDY57BV1c zE*~CPGRRm7a@=4er^&4$=RA1TX`t_}yQk z*|LyRbwBiO*ZWVB>O2DNz#rs}!s9Tm#T$|IRj8Z)bu%g27XJrY&p=)1C%)4+-w>Xx z{}id#pS?&Sl!~$d>iP?spP$$G1sIV>r0CUHDIgC)PcKHxU$i7n>I)`i!#Khg8_G9% z!yh0{h22z2KXV^=CZ(`=Zk(e7m0Q}N9epnR|93GZlvD6Y`kpb&EF-a`6QmrN7B$ct z6uPa`i?cTWPhXOy88RTmB{J7zRNezMXMI+p7vNPx@;+XT;w^F)YnfMuCa!bTHI+b zC)#f9)eIDLBj-1uyYyo3y25^QBVoOFo%Uzf;%)i=Mn#Ufh{WjM(0$XhN410GaU_Mn5H+kHd^q zXaj(aPor=w>Gx3-M49kvVQQxr@8a`@=j|kP6(-#O7gP9DXkY!m(h2^M+3@c;1p?*G!)8Dz8d zyu`NnzxB_5nEx+D>%@G`#q9r4u`B#B=EeWd%+|m9|4#{W$M3L|ukF$w!CWMbmJ^R; z4lD+B1hlw5C4{?!Mc*n+ipNzrJ@b9)foJ~1?NKyVc;l?y#RBxhtyY*YSrifLkMlOp zi->9D%84;iW{7u}j)DoDRFX)#K?K%An%p|a)jp2Y^4RHVdmhVKk@?`bg z{@MUtFc!ZSx2MhCA|D1^odpv@6eql&pR}=oJK;iM*EU+QFZF6d%YwDFLNNLO0hJlg zg5UT|nma8zq8s}$#BG{bx-1*&`hd?KkHe3A4DK#8QfwJk{Tszqq8rvcgFY?acK)aT z>&5?-b@}Vm#v2{eRz<2frNR=c^%>wCt@9&n*Rq8PlWR=Fd-bu{w*(j6=5MW!aepsh zGU8Ii+2^B$3YaxMZ?xz#H?F&^ws9)EtI9G@DVmNVvc0gig8hWIjpMbX^rFxazS4U1 zBuVpy#LH>5OOforp!NTd^6aa5{c|g_S%0SIS+7rQ#k%Vn%9eXAi^RiDi4;4!Jct(M zKr>_q_Rw_}_ejG=DqKtQdak1o6rB+RNw*7+c+!$qQh?AldzM|#1+yN|>n3+UEZRi9 zpwHckUuO|#JXWTyb$g5JVQ+nl8@!@jU^oG2`H6z~3;#Enk?i$_3W9KZ!BgMZPve0f zvkq+fzwtl(4EZq~dDY}*7cf#8|E7;9uGOCY{ImK0W|6Vki40dTkr!EOLH+(#d@Z`b zhBM0>*-RBj_~l9TaWQo^8+@S8n)HK|8{9&1|Ky^k{9L~VC$p*n~c?(v~d`}$9$BB zzzS6V1NmRyPe3ow0z%qs;rQVHJufwSn*aZdcpW>DdLsyb4_rv87;r+iJ}-%L8y37N$huH*LdEbEyP&357qYYI=cX+f)ut^(d1Il1@K;Obs{N zvB?xR*9y;;*Y!19C`2wBa>A)0pQ8H`NQK_GKJtj*t%DIiC24V-{CHAn07E_^`Ro`_ z@YTi96yKmZ%=1z~M?IKfS_SNfr}Ddv#;x$ImqiGklz!;`c|QL{Wwqt&PzSx{T=-7B z7wW*VCB}0>Kt!lmf!97Uf6E#EM!ZfuZEV7Fv({l*Y?nt?z8YERihC?*feIeBetQ z+tR9NtoRJLWogmxZ2UREZ7o>>cp<}RFnfR`{}(nf(b$eI{x3HDKdI581IJ3+2wL-9 z;=>lZbTcMey8qXFT%Ks?Q5T$u_;(gej!u8-K4Te5vHD>Nl27sTtr_v(`0Bcu5i>EB zjP2DQ@w#3}Vfm-vgaO8HOcN}}`w8Fqi4Vs?W78oP{}-Ua!O4oG;a1sWEZCMzhu8|^ zddW{QX`G5z6$nNvjr20*B?q35BZ&HTjftc;^#=Mum>O_^H@WbgFi|340(P}pdvp_bxqP2GGV3h@^n$r{d(qBkQ)~qV?NvERu~-nc`2L-r|iujq%87IeOQUaV4lRh&;E}Ed|Ui~ zXyc-PEQ(d9k?uKigFaGb11b;_CsUWKwG=4>Ux`r@A{T}_J`)rg%0xjtfBJuaRfZFV z3cB9{j@;}Z3v_LXW0N=8vQ;eFYDEMSVi&R5#n)`u{>J|mehW> z{tvNv=(7(}}FzC+O!} z$Y~hBz6WL_fI*LXuoR&;G}gy3K3v2&E7cF5GzXmF&^0%3^`?NO7~7B3mqk&+H#Fw4 z>d$Qz3(xbRKnICyFFjxL{EeT3h?{})?{F=72s z01*nefzoOhh+)YR4NSw_4WH)pS(7K&{^VD|uH)LOFKCd)A3T4Hazno=6e?{S9C#fu z>%eMP?!5jv`S}#juvn-^rjwwEAzg3H#)Al$=Q-8yEjjSC#6B2f*CJ>sI_6r(smwD= z3Ql)t+>4$R4#Yr_g`>S`sZ=9R|GEBYe9^U)EdZd}k_LU1yE6aBeUEPfIXz>)f2K@) z0O}go9jgxm9|rJMA;cPwO@6F+K8fb=X6Otxp4;*aVu^*{Y15(kwq~`X4mV)JnkR>- zbTh(IkA@*i*;1OIbZ+=LkCZmD`7n@;KVLJjq-{to)V0zmjfrdg(_*`bQOIxb2;!@0 zgFE=S_w`t(FLPv>a~o$b^ZXh&M`=7-bG3cGf-|8LvT+}4H7xqHA~71+I9(@_l=)5yfYvSl zf9?OG;6ENqtWIkOj?ETSn;na`TnPE!-t&LKwEVn1+pmrA#yu9CgNEYE$GYuRmJxvk z!(Y*li=n(x4%dM%jQ`G_i@1dWiUBzo3>P2P|gN>-W zek&&a@^AetH7*&kCty?Y#~z*%(2T3x(-^Y!kh3$g9=pBk<_0;(OKJ}GX5Epa_Ck#7d!=gsessUqNM<=u2AnQTm^{X)Mo`# zpGN^m>NlSI3yFB)AZdmm7anW#)N~2qoXRJ^)QqFG01z7+6VK+jF^2-LLQyvg(_up; zKZ)4P5wJWRWDTn)b-1$Il@%Q8{aL&K*iroOzqCAD4<{L|SgjE7df}mmGc3%?QdC12 zSV+dg^6~e=7x(P{f`w=DA6#EKKS(zg_JUq~0e~J9;|vPm#IB5hERAKLS!VIH0}5Hh zr;ZJ(BLka+0+mloK5&nvFHLPnLH z5RiFQOG(e+|HL8xW#0aC|C{mXjQqpLFYsXr0~LTYiHLa0w%Lj`*YN5EIL`3J9pL$Alj6qZHei{^@LorL^Zmi$oQtV@e;FqYcr zSLP}0!F?n0iKPp3o^G*;VD~{iKS;?XZC~D-z4UEv@eMq^%{J4c9?Gs#Z4Or+1^_k;chbFSD|C{ceR(P)5yU<(rk#lCW zB*4H9to*(zOrk-1Y;3kc#m+{7L8l>36E57i?nd!0X$4%Zjs3rrp11K0@y&3ZUTC|LueS!yV=a@o>dx|6l!EgpVfxIxCyU zv!dGL^R)b0ZlxfQP{yg@{~mMyjQFqr{(rwRgGj-q0H4gbutJd(?4e(p z;6hnyyWtxrxjsL~q;dq<9VfHmXD|#4)`tFg0(TUgtzZI8;zg+QAG)(qGdOVYWUe#d z5bz%MOox=9sLG)-?ABbUHMa@9nK{r5oOBxPg^$n^Jp^j3(Hh(EPrM*HS2k@~6fgNfEYdp!CbV1=YlIJEZf#U2l5{n5%hC|`|SKiF- zpX>9TT1(&he^st>YhXA->vB-pCk$m>h&iBysL{N4t($-#1 zcgr^E$qnWo9KQ{YdR)x~f$g?~x@7m~zHUXyBS#dHYjig!#xbuBr!8VK1(CT0f1+jD zLvAadB28xaNs0@)}b(uBM8j*xqV}~tmUQWV4ZRJI_LJh5Q;ltZRT^%V;!)`2YFKQ z?r$5)_3_qC7pPCaZ|nc;+jP1138(dCPVE`W-q_Mx(W9FznYsxXi}yW4ZS$SF&p;)s z<>N@wTl`B6bSxrdb7;4{_5S~lxHrLaB-fQhf!O~R?*h7e4Nv$lL=0vC=u&3YJ>RP$ znX&tFLCb!f+(Q@4K6#H{FXQ{!2DZ9U>L^!1onfgV(}vj9WgH z3U4v!W^cxSkCwl@zHlvze)>@k=Gh;XI)(kHWQy!s_gSB1+ksq@o@`|n?DT$}oXLYN z3X7XxJ=LYo`Cs6FqdPE<=O8rZ6cNf3WP>eMKLmh`MGd<%3qLQ zZaIL)kae6<|5Hhuo*rfY;vL8VZzqH(<=K1=Jl*PIF^-X~4tA``f5t2(BA#RXDH%mj zek{0umH)qp!}Dlai*!}t7TYJ5yPZu(C|mIVlLO+L3#e=eLc1#EtgISgmKMnPaF55vX1+8ctyL9=t*bEK)NOEwJ6WKm=)fjqAv04Hn!@z((;X-NL%5? zS9u_rw=zX5`-KyvPYUXu$b(x*YDL>Az?kvT@g;2$j9LcIQRvfCU=-3-LcgAI691C; z$0C8?OrTWO|0r7EqN`=-!-_tAeMUbf{`coO0&2yGpX3YrIWWfyrJB#2=WmX##Tpm#B=0ebucMMHL2}a&_1r;DtX1=2H!_}qkHjbNE&C@80beh zfI=}XusQG_fe3Y@X}`fA;r}Oha~_diLch6VFj+}`o8Z?uWcEbwF(zuv~u%e_q_AqhU$ISk{ioj+YmQ>}=M zBG7VV;S-R*JqLP~$XZS?zZY|DEbRGD%$*JBoi?)&c3pg~dPmgoHJ3D=@sFfOQCaK$ zivPcx|IcXgRD8zkcYAP8viHLnNO!!bkU561-W)KEXPGY6T|L&=rfh}u0~o?2*TR9! zh(Ow8#~6XI$n|7qCTlV%jHmLc_}mY(t=Oo;uj2ev}X@J~8s|HY!- zv}eO`6mX=;19x)nk|B-#_HDDUr$6sIQv>VS$vG*#8^sUe)n%lw06=DS&pw=8mGu?R zoiFsG;@x!v_>Z;CIv9`~TO0my z{!iDXEH2!JOfhcydOaun%LV^KM+W{~^1q*0@Lx24e%L7InjPei^ZzB!>IMG-_|N(( z;oBev1TA4~NMT*2;ol!N{QuOzS_!QvP3IZ~=LqPYJPpZ*L9LW0L;QW&#{psn7j`5{ z)rVb~=s&A1&7IFy#b<}0##bxUS4^mpjVi#NfuSH7C6W9Z4vm?F81@Uq9Qy^BnbR1_ z@qHHMP_%*q8$^WEmg+^HUfGUhk%73df$FLq-){qEfmHyUhmN*e7L%29pZDDoo(D40 z<6j(o7qZ|4t_NoZga{SOm3+6p+qoB^jmGsAf9!^~KCX>qq~KdBP%-sl7bJvIY%fd| zeY|Jj|6Y)b0v#q_D0Jcu+SLHskRA8d9a~N+ij$&HJZ(G={8#YTs!CBX7Jpmh_Hb4p z?U-Hg?{rZ&!I#sbuin7VWEkPk?I7ohDujdITgv?={`sJ<#EFGJ@`<0>sg2)h#=ur_ zV-yk^y?U-f1r}q<3;t(ZH=erYiNYcz*HFQ1`2&sF{m8(lf3IJl1Js4$b;AFQ5B3PV zMaE5$JuX|92~bS<-;@jbL+l_+*cNM7h5rxHvKIzXE`O0EQhL`e52!r`qQYau7{Wi= zz?v?{q`&M&KDeBPP7LzDmVHE){4W_t7uA4n8veA~U%T8TdrX!2&8rMQKlm5og_l|; z+8(wS>7wmkL=o+&4cP0#Lmnrr>=7tnOo7%qHPBISXHN+@!7iRp+ zZezDm7aU(6At$zcUc5~7;l4CF+UPyCZCWyH8(~@{cPt5B%ly0@+jHZchq;3l?s?)7 z-1&t4sjw7t>0WfYEHVujgK>{>?9V&Cn`mNW^$FWei5&77s*vWYH_1 zn{WUK+B^Phqn}8P$kBXtm-O7{fNECqHvES^)Hwe) z{D%xFixes16vt8csrsMbi;1Hjv3b} zq+sqkA3wx^Y9lNFL{Uh1(Xaxg5b2}tm@Y>hyuazgF`nMq`=p+D5$5?;RH9v~5)`&HuG_yS`gRBbrPcFyQ_8Iu65RB9dc>$@o=Rt!AXzD6GVSL_;2@tmqCh zQD$j1YZf=9s9of2^3vw3}6n6KyiLzMP@h& zNzq7nzr&y9@zCtW19Wim?Ih_t%I-ABRQ;rLZ3Fd<=HGts!}iKCn~emq<(zCbg92FcioTF>0mgaj=cn)= zlM&S=xSR7WLWS5fuk@eH|L5roi~iGEQ2UW4hzCJ{(2ta z46GdY7R;4DTHO;B&Y?H_#}Z+S|K%6%BCKL`gDmPx%@b44MmjKpT*bF~Ib@CZ77If> zv{~wc5h1q2ThKS*o(Odfn3n%)_3i!(%}OnDaZB#H^9X$rMjH)mtL=UpCz|vc{5JnP zZtmwEne-w{pQpO_Q|q<>r0%k7X%zL^y}c0jd~EA2ZE>6M|Muoui$$UA+d}j8(4Cjg z?Rt*35r{Oj)azj&HQfPV8H8tHVc85y_-^L@+0)C zmbao3d{6MZ;Fm>Jl?;F?71YC}G96je1*pS-QCx zjV;m(K*6NPaQs6)$XAaRsZ%bjl>=+j7wHdN!Wq`MKjI0{k}75gzpZgxx}#qU%R)}A z#CzyGf>=CraNq)*7ClT(5IW;rWh>&~SXFcYY~YV9NAQ9LK`{!e8EM?{mG~7Xs(7c@%V(on-30J| z!2-DU)K43e3q6v$twQlMTH3IT?cLC6UP>OZXGuubCZ8W*XkmOBZ_sK ze7%^gHI@?LYQV)&?{uw53+T-IY9S;4Fy->=@lgzVKU0{9splGNKB7>3>N=(3W8@VD zJsl;*IDtXLQr@%BWBCJcL2VDdASl3*(=P?Fz!8iap%#Sz^0 z0&o-{v+&tHI(WkTAGrto^-UYc==>_H1z&!=ApfVnb?OJlPktI*C@Q1RCjQ}N%gFyp z-N0H;nmN>Qs!fJ=C zL17^9pkA*DQl$-zO|Nc+8GcLfF#(5t@e--=S!E7b_ z0nZ?@cR~6hQizvR*vjHU6$6v)SU{pET3@}v;5kHN>R=b0L_tl6wy~mgU84yUK%%wT zT}OHRcxXd;5rl7Kg-&GX>}m(vrTfK^?e`G+p)*~W$dXvdc5cu2KNZX>Cz=j@!dp9E zaoPy#1lS8N>pdPPzs4nBbj)J)n^0Ofti6$~>Jj+Yd4PTxjf-O1dBy|Tal?(!albpt z#d}fn%^OIFlCu*6&p%M`N%?s+mbuhuM)()dc``A4e~StIdGLedwdW+#5c)p$pmpN~ z>HVCozDGSJZ;XL5Z}Inz|1aaujo&}Q{{x-4*L*!QIwA-hO}k4g>cg)UVtJSMW+xHA z;F7w-_ZvL}vgT7C&A;@k%RuZ4owkb!SV!Kf-_?fcD{FAL_&WY+V$M~SGJgmB0UH{` z8vz_!i&~AZXs66Wwv0UY)+g{N4gc?v`&sK1zS;e13|B!3!iD_C5LjV6ZpekftvsEGO1C--tVg&zmo8e&o;j zUh}QI7GOpR%01o!m6WvZirk_N=|Lc5yhKK^82Ke1YGd8}tLwPu>8AsPUSku+E_~Fc zJ~zGLb-$;(6!a-FqP28(g8f_f@TiM>D|E1{Zl%v5F?d#{Sa!*6LptA8xYq0+yjr7I zi}iuEqI-L`Bt4Pu`TcZk&tzb@ktf6>cIe)DD+)+vc7?|RztPb=4fxt#~_X8EvQ`0Dsw^Zn=l{m*M9 zMuP-MBe;i?{5(0=bx_{};(gr_wzo6=lju}?C^*WtkQxP(ETGN;ab5T5ThD#=uOc^_ zRYfe?kY8*omdL>V%fpyEu8^O@PiEuN%6lq)sN6s0!!v1ZM5ftg zw#CKuO*`pDSBS`UZU|CWgahtjo;hCy9s+#5l)c>Zv2M6R_cBpEqk_w`oT`gXxD zQdzLy$5FXx>T%_QKq~CK_}A5YyN_$7@7852-LffQyz5LG{z+_;xeHokEus+~THjV= z{09Fj@?d+R$h!Bl;ro;w0AE;)yWxNM_T}Y8=~eddxdk6O8pc22zxh7Bkcr`}$!XB) zoArN>1x=QGkr6t2X^R~b>(plFc8j?bX^ZT|20SKk3W4+vTd2zvZVBMzgB@baK3Wx3ZU|5^0b zVSru)+!o08SWHrHZ}}!UOe4#&EQF331E%d+n=(<+t}P5P!{#Nam}SUCJIZ@vd@VvE zs)Vaq335%RVzN1AP&mC|Q#+PBD)Ee!f6YV#7buO4=9M$`un~mRNVyCqCXI zy>~G$$C*nO&bnGNhy0%ZxL>b?&c{#rqZ?bIK%A|9<@2x55#0(4mz-rbJU z1@qs|d+{Ni#;wnY+0ZufIyem{2^+hU$2i*Duss{?elEpRim5(!9|y_a;z{Tb=>vR5 z`}m92V=QI-^J7W>H@n*kI|R7iwnI(YwCN^OXR?$BidU)Gsj-eo-zd|T%P^;PEcd+Q zlvE)`TTPf$7Txv3q~;R)s6?y#S;|^!$ax74+?;pA%!r8~pUFMCcdnmgwnaKwXf6ke zbz7YFY0E-i!o#}WO5+s=r1=&5=9E8*6q|ob_N8K=L@F7B zda>D`6q*0DSiSpsVCiB%yqAMm6%;o-KVUhq7(6Q6yUDxRNM!z&YCRM3h~)8#agK{O z`yq|sf8%k*zw@BjPsvMHKaH8mq5lE@;M!Sudqs_k8$OD%k!l{{JNZr{Bd07d@e~Z!s=fB>qJy zzND;6E(w~LcRc@pE#ZrJW3jqGT7yf6glvY5d9iEN!iE}DzE?;c- zzKt_8Yw%2G??pR&9)nk^%_9RZ@?lLk$d{ifaX2wVUxfj~C6BNOS#U<4d&^(90;MZT zLuRe1R`6Q^BJ?Knc*G%CsmrQy@5T84y~=l@-M30sk?ESv9M2e$hS4Dh51IF_a!U^} zD^Gbdui@rnuxR+dHSO54WqfaUK5YPy*ds-$P-)>w$JhvQl{o_9el$hD4*>TN;4g-- zC@QiPg_AeLvo0pJXWqX(6ec8qsU-gcy0X?MdDKt?@b4WEADic60eayJU?YtMx~FS! zU1Dj{*Jm7lxPQx)8-LO~)#PI_;G3d!&NqF5xNx`m$k;uUTDlhkZ?wKSFdxJm@!HPk z&$RgNf~6eNlCxv#i^9^=!oM|af;au=ZIw^+e|et&3l^Q`PDIz>QpAu3SY-8^!}wdlF*<%*OnjCN?cvv3Tf|(njbe0vzS&h8{6Ezlp76iM z9q_wtz%I^JCx7-LfO{^HGehCw@A&AmY*AQ@@%zHUI4Lszdrti;9kh1RCmF1x;_Fi6 zLx11!FG_lP!oP@$KH-0p_nR2-3I7-?T?C5Hr;#(D3tm3NMev>^k@qEiLfXCT`E99gmzs~U<Z$*|6725Nxf-h^4o-hfF?7C4Ku$VXd72#-4QLD@nLx1)N$F7E0^Q8yH+uQ z7PC=o;d>rNw*{F$E6yz&0H3qK61%(1S%EM5+v-Q9xmM>Toq7Kl;u>PQE*{$TLM(pA z^3vM>%A@dG8d;q8FmG00$&u&vTrP9=yG^SIj1-E}+E=#`zt!HtTLjW#WG=p_4`e;i z)2M3I>3H$6aqKrA7a8Fz(gSBB_PB7}NW%oA^VINw{!7KO>>v|^I0h6UhB9soYT}V; zT<^8({LW=`%5ZfaRQ=I;+Iwqns$ps-wxVP=B`+NVV> z`f+d9d*ysX_9CgU@Xa1954K%`?W2zm0Mlvu20e;`n8?^;0yzic_>srP5QLdtknQu{ z-$Gk{eN)gaCFQQ+72g~FzdSTzOD~o;{z;aHG2S|IUg_Rj=-n4&j+HVstYDWVgr-a2 zb*^AkXv1uV9w0(t33*@iGunzYoIvwdC=N{V*>WJSPY3W5G00$S_7#2q>XAxetm~~4 zFWZCM-S@ur#ap+$uN7yswTpv-XY&XYsP`K(^o?M5!kCJ*M5Mnk{uFif!@c$x7u;8xP9tF*k6Xm-#pZlAwfm_k$GeGT zED(F!ZwoDJQRKt%)UN#bzViy(hA`3R-S%Riry~1$q0xBf=x6ODf^%wZ90=L?bF5$+T)qvnglTq=R=T&LBgu8 zt1AP(_h8Lf&-Ts*?-J%~tY3_sQ6lvnzN5Y0Qr@As72f*GD0Nx}JZ~?|h}Wm1tNyXk zKg9n+|8MahvFL03cOre92VnnW{I_ut|Ec~~C;2pfq#1Dg(rxe&qeLO!+-QkmM{6=T%Jz{ zzF@F#@E@4g#jatG@ALnUoWLCq`-Dl_brCGXOWhmvRdDw!wXxQ2InC=JVJYl?H!>NOTrz6jCAvSpv6etjxrMbRLvihGzn4RU#`y$)fls5~$WI*aFUAq#igcjPUB_yTll?o7 zaj)ZF+K+)9TmjL%#yP6aCVk9`L^$S4?T~AzdE|eq`ZA z;L8f12mZT%T4%!2QpAX;U~!S3`Mo7mB--Qrh3Sy_Ia4mcgY*6IKpQ3=z=oa&utVBa zwN1OclbCE1B=b4R)Lmg(GDd)Gh|^cJ{W;ox59jj#lK=f`jPR=*;2ZqIvq-Jz2OIuT z4!H5;uVmIptU2IdiqvHHhH&uVED9qBZ=BIR2qXOL;=b z=Hb=`v{b^ifriUacASUxlYn35CgrXWqqL3x>s!RA7QOHBf8kPbUTO1r?}@n;$ICn@ zLVR`(pl@B9(AZ{-e~I`}yjH#iU#n~cd{}3Hk;igaI$q|OE!?$`!|^E25vxx4?bEZ7mdCK&GsuhBpF60}PhBYcCg9=34b0si7%77vpdl{<8dv4$BtbgI)n0Hi;| ze^U5>|K<2o{Ik#c$qTNn^?iTZ`WPq-{G+`%Z2|smwilWBFQ_ZsQ>TydhIq3UU&m|$ zctp(nSY_{+8DY*6AwNCiKjXi!2x@hD9b3sibL&1+&#LGR@z7cx)$%hHn=xs@>R0&B z8C}D_wES-^u$y5@)0@A@;7zT;KtkG7q~-oDedA`KLw%-@RP`N>WE$KW!hK|$N1TqPd1wWR|@!X}ivk(UeKt1MMS0KZPU*t7f` z_4NRwt$=M0a(BK0&${9NdX82G>Sg>%q;%=x$cPmA`PC;B~jz8!rbe=A18g0S!Gqs5}N z2&P-%^1@1P1_CK{*#!lQ-g}PidAiLxNj4b{e&c)4)#kVhpFU&*g`cc0bPInX-|lcW z=i&0(oI<-|zobdTla^cq!c8|zsG2RB4Y+vC{x?X&_>}+uP|iF5{`~5Hs9%u`S)lXa zr@P(_|GAFCSm1OE4$l^CKyxRcq|CHN^m&A*B2G+qh@~X={=su52e0}?u$M&j^aNIiM?|n;B&=KbU ze~Nz+s4i+8z`vEOu~9eq8gl~1<8}PY@d^LI#}od|Z!6%vUnlyDy#j=UuZb{M|6$>lo1$WX7Fi6B0ZncuA^w|37?ShK^ zP^7n(EOJ-0#^%1TgX`RqMo@+za&{)84h|o0lxnxW%JSxjc`n|47lKlIFFxm3_%=+t zU`SXrcTu>Ma(31q*wR}+;q&mbG^T0lBfQ98d}z19q*&|-?w;}oQoKn8I&DE2Lgzh# zl>a#X(=8wIub?0i&Mt<$#Cv}@mntmRs0&|jjDuRktDw0kiYP6IZ&Wj_o2Gj7SM zD%T=dz`-4Z@vqs$U!aYl6=)F2Z64FD=X#M=e9li5nUK01$&33E!)6ljqHNhP3h|P9 zARgVLY+au?Y{u>ILWq^ZFs*cX_%QNyYsGy9KwDEycXaKSr5C-#*9`b*Y8_kXh(3iK zd~S4JyWZuZCs_(M#{T-Yg#vvedkWA{!O7giq5RxN`Y((Z%)xi;PD_aI_HqYgB>YDl z)bh1LhL6|MKjmo9;b0@$E)SYk>z)Drm*a`ncyMcbM59)A>GyZ|Z`sbr3wvT*G>Z8` z{uiMNKu8QM5LxL!mwJ{t0pgAFZ19&Nf2fnr4)rNX1@-gT{|XVmNJTND6%H@@g7{@f0JZrA6uD^b9AK&)IhDYF+l zeHHpgd=3GyUQsW1B#E7%jy*7e%&(Ie@L%vhB{CW7j-aiORRtn+>Z$Ij3gG8{ti>l` zIXnIh#_O~K@li|)_l*JrB#Q6x4}OGx`AHU}9lYNTSpS#W&3yvLQ;ZRaQPwy5${*oB zANlUm=qD!JE9eQOr?oII%|B(=6BhcQ{vhMGcY5E3|A?FU(nO4X26+ZOr4%qZ2>H<` zWx1E`mGz?(EOSGDsmh3(_?LeZ|0)Zv!JY=(v^Wv-MU~CIjQ_ZY_2`mInYM~RC35d=NW zka{fy_XKELwS8}hWKW^m6_0xh&@W?cd$*LN`9Z?p&aizDSk}N&=Bkz*1+fWWV6wQfUff^i`k0OA>`bdIjhD>~D58Ba2Q! ztU}>2#&xD=&SZ#bm;mMiWVV#I(Mty&^M&~zVUI`h{kcR(*1q8zC zKW(gP+tWYbUmE@m@vra|AyPUXMJX89+mUPqo@|GXeO^jLwgg*60Tq0Yx+g!9g~%+r z0tfn_ugpsFfJtp4r2nfl*3LQf!PuoR$Un#baJ_Oz8cQ>t1wL>>se$Jp21R4LgzoHa z(u8DwP9OI_z=}a}mN4x;heYri_vd1A zEizLdbnosMwG*<>$#Vh#bJeYI*RP{J_B-?xw5@}e^UQ`_aZykF5pINvom=4u@L%_Q zw$%%fZ{E?eKrVKW(ctlkKM4?RU@}=>3iR`L`(tB;u?^1+iyZ53Ad>d52)DL&-`TVD zH%Hh!6u=hNFKBbD>V;b$#h!8Yslc5tNo?eQiQ2)yf26+m$1?v{5u6?0#Pnbdswo?m zAB)s(KWpPueCUPL)9CPx9{n<jvg<_&iKfc~+849PdX9s1cLsskU*28ACln{8hN8QabGQzZ#>z z^qe__Ie(5z+0GT3)cyqjpb7Np^lQ|Y`_#*H*sW**W&ro`+3_#(=lMVM3O!^ys2HpQ zdJySF_$&S+4jT`%;a@iV7e3EdaQx{J&YuIlnF$XRY4wMifQ2C0Un2PB@6Fa^Sfyo= zq^P?7x;*rgLiK4Mw7G|6Q8m8O0SeCR=n4}!vl)=Qn+kET(BN>BJ1L6{FxlDyAp zEP3v4^7&0|1S3n`^d!(Yps#R2e)0{X%O%?F$Y0$cyWh&PUVkEh%O!w>h<*L3m}@`ns6DGg$2gD}wozR%1I zad3}(OLua{ioqU=7JogdkqfDl=t2|QMT%`bj3!vp@NYcS&lf&}4Tk@B2mTX4h*9!YAt05#MTTRP znAwJk+`pf%hD&KEP_&<{MNxYg9(Ri8{N*VwI6(|`rhG4K*!8>PzqJbt{eH&Fh}9qU zfg(2JoD(xiB|kW{jO2Qt-}M#kelQ}0??D_Nb3MjJ#mP?#E0vnn3E=-hKVohamezPoae3Uw_Q_MCp83q82hQfK`Z}T1{dL!K<8^hDo7)gEv_W{i z%2*GrYt!i>!QZay)6?KeIxa5ut7G@)b>;{3$4)r^2MdgS0>CwYxAi9Q!x3_9Ypb{( zV<77g$u9U$K^FYWC;Xc=h=bjSsJh$d3V(q@ovF+P!1Sq3Z{&o(z<*K6GW>Z^$1X(E8|FTt*}!us7)g|SKut=w7)$qd{AVtD$ZuD^tljx<;(y`c zn#1z?pW}bK9)sTUzvG|%=S%#{^gmr9o5=(IYuuk0UGS|yam56*5y<3~!AD(SxZQ$u zu&5Lm#J^61hQzOZCHh^3{6$VXn8( zI9}{d9LQ>g1Ak$P#pfJdKZO8sRrdIDxIE5x^b}rW&cpGK+|}E|Po@WA-}$_kqqV~F>U#@DYXI*7}Jh3@9ZefRTuBj@k0e9QwziLYY`!C=fR zF4y5Zw%@AcuZoH5u&*jAleho(&;(9{{+szh!e^$*2(YCP1eAmiocGcuxzjZK4GKd1 zNBtz#a{Sl8k0o)W-EpB1AW0tNtYk^U+~)t;RbSN`p3fD61B8_?)b08yItbRlTI4B#!1teL_CrFl?M1!_m%v- z3^WRoU3#jkYCB1wX1VR}YiL4tZYqH0g8zC* z*-+seeDL|O^u@~fA*W_>CjxKar9Lkc2*_Wl6XeMnuh~Wl|I%_{{82T)b<)wMi@*%> z3)ss13wlVtntB9Zctrd{dhBS)r@o|QNPQ+t$8TQ7V~I#iang1#z-Pu#;XHu^a_Xwt zUrH5pYQ`>R*~aCNE$PqW%yrtm97HNkgpJ?_6KZ#Nq-Gcgk(Jb`$J8EY@pHT9F*O`O z0mrr6QWy@EsMlT8IggTvv*mpYIkgW%qRV6_ItYJN z^r!HtO@*fU{@79uxgO;+Y?&w?pC7&0K-lN3+1)}uOaF-I zn7ItrPuCr)F~h?3+?A)EI!+|ZqNO$bqYo+cfmRt)9qSke&SIMJNHfC0U_}&?C+rUF z{2njJWvVzf?ku+Sspx#fVP6VcW*=evKe)-}ad3^ryZtK_hOHJeROIj)PC)90f4(8L zdswgj5slY4g|K#iRKS1t**Hfm_g$gB{y$^>3H~wv+tK04o(6J?<6H%6WN4e*AuaN3 z--q~5Ybi{l20!skC;lrxdZ(7g!&f(3SYQ@>H*mb+>{@*GaZpdauUvG2vR5Ub@ZWzk z;IHtH^x*TAb*z%1k4JtAedQ1F|M$nSYsWu6{ww^a6m*gIU;(`2ABj8E{`3D{XALvn zrmBctbzqV~uE7Z6R6PNw%ZZ!8jHblpou=HR?|eQ5pxVuQd_oMq&-r*J_wk8qw2g6v zc3bpfakdFlLc8||&~namfs;FxnmVHm>?jk|g^$nm`{YyS+YfbJ%lQfm!#6(JpLg=s zZsi#dsVfDJ0?EOxzhs~UY|7S6o6qA|E}t6=O!wvHUb?;sDyNd&C;jC}+RBw(w%bND zfj`uU7FF~s>`*=`xZ_MNx=3Hy`~ljrk5v@TMP;zN;S_wX{2bwiV)vm_Q^LE#p7L!xwe0_=jhy7rv(@eBJB)g<{%w`2X>=uDz}9x-=6m z41rISPq+TyGkvRkF^SzaRJPIXz;MZV0fg)qPRb7EofC=A`Y#QMU z$7J25%@I2y>?cxzPCHgc7#eDDUytkQ<`t#tsTOa9pMP|MvS-_8#DUSVU ziuN!Ws|xLYiE~U@@Bj+M7=OjTv^@vpf-p2PlfC+RL>b%(H)3MmTl5SnI3}xF~&q|;W+ncv7eck2jNBPQ= zKlEqn$i|}b;qA6or2H>yLBeD`KKbA(6Smg{|5yyPUbL!6XG@$;pHx}>v#&)X7!Pd|#qLcP#4Gxf&G8ZcCrju}^`t}8)0D}16`9z~SSfu%LfO{-DgG&Ve~4?} z#H(-czqR?)=TGo&BGT}moTeTzci0047q;}8{@vXM7^yFPR8X{U_zSOrYQvNkn;Gqc|W-<@>#0^5G*ch?JUk~Dn3Vkudm(s zgGt5np<7T7J=vwtvHcOQ`lhXyF2O$romG|qcLpj7Yyh78C%Wa=y0ouoX?}_Nts!v% zMZP4m7e2tBx|pP@2xnX2NG@<|NgfxwSoqCrX>Hkm6EW1T-TMUp6*q2qEbxku#YB5N z+9xlM$E|?27QtHaD-8Ho_{T6NyM9v7zeHYA1^H^b;QwOZg`YUA^La7XV+dcKkAicb z#$OKSS!SVO=c)7DY)Adx&t8BnU5M@cWL6WQ;(N_NZ5eN&hx*nVk5DYmv1}F-Z~jaC z;{Xf(1zsk!Lf6`M#eeIkGILfo7P&uI%x#^{aeE2t|l5x#0aFrU$Jb$=$F|a<0b;G#N2vYqHbR=~JDS&2hoS zIp)fPPv4o4buKvYZ_UN#c%$M>?Z8LKMi04%=(e1_D(6B+wfP6fq~Qk;v#$9c>?}wt zW#4Y@2T3vfG4+I-0M^Br$Sts+=XUA0-2c?Jjdh&FY7V>n|6De`=a zkw?95yu|evHhHVBW|P z0nqd-?KQ|+7{AB%Ou^xggLu2LjmGb79LEOl3?IqF8$O|Uzn#C)*B7OsERq;b+rq*EneLzI zc)d^|_1q+Xhj8ct4*(GU@lKM#`?GAN-%xyvWuW0hN;9nHuQ_Rqhwz7f6-(|%FMdL? z3+8Md0WJFw7G2)Nc;dgL#2E8_LiTk%NAa0B2K)=4touus{WXIxQ4G-twp!`J+D~Kx zk6l5@BHjtok<`@%|K(4KGlf_uL$?%XVGO+vQZ_1)j2nlKNP$(+o(6soMvl1OMiV1F z$!Gj;#i#9jYa4C)%^#ik|2@gCy^s-0W)Z?M27mbQiht|;Jjfsy{G*H;4S1QuSkj8M zw<76bXcIrNz(oRD%I3)@=3?|^mB=_LLB`O<@63{qw_Gpwl@sF*k^JMR z>0`*32}!aQHlrPU?{ebbN_DA50#5lo#pXB%RRP%Ok`BzVm~%s4D$PH%Xc@;W&Rgvh zu_y~KEpJoKmlJd24`e6^Y$!;KqaFX@BcX32{1l$bUlA9g;OT}j)<{u%YS#?Nm@FMe(XP-XNUv=~2w z0#PjL#Lu@PLtk`m?F8tZb6YBDQu)56Wc9xTTV51yS0c1dQpdshJTW7T=!7e!HInveG+v~?ONm(&^KZP+LXTHhNSO?{>jG_b{+at&4B4Xxw%1L z48p~FG~2$5PZ5_RI?_6n@6miKvzIc(Zo5CkfAILz;%3Kxd?dE9lqdx1G_&NbMfpjxHQOdpmFbQO7qM z?`xqQ&qqr!i1zKiKC`gc0j(O%Oz(`bGv4@e|5w^&{cb`BYZ^I)ZTf4hBael#@oV|5@LT#) zB6{1!v+@Ry4f%V-zmGHcfmk4WOq}=!zFT2s;NSbw*N@=%PqGX8+Y*=J`Xw-3?##>7 z+cL}rXM#Iq5BuTw1OA-e7J?OfHEl<&K0Ezs^Rw%nVzB#5=$x<+J|!Ox(2aE;^YI7I zz#Api3*A*!SNt2y&RjmR788!IR|DYjwD2J=1$JImDQe9CWH^@X_MdQ(S6&1%|^vv{!{=g(7*`1|x%DOuhK@8N=GR=*N8= zY-oT1WPVd{zh}&!EC-HBc>(S%IF=T3BOe+0)Id@yIcF}|GI~Z?kteuA* zfh2tZ$H{vMaPWo2&(TlU9hrODg5 z_RLTLQTm`mCnDtTO@|0qK|`2D-+4uaU_Yze6I#z!4+?ir=?D9n2CT7zzXQ+4RqnDnL)3b^Kf zj4=2}GyX6AAI)Fcigv#1T4L*$N)^GOf}kx01XE>q_*WJg3<6K?vTlXvw5cmyFYr40=NSJj6XuRjnA0P9lfEe;!<5A>{ofhkl(;z+82&1{@bFy6`uq3@kb`1TWLiB z!vp`a;~$DosfX|vr%Z0%{EB}Y#42S#%!)^vj7kM!kb~lD>Q$PJ6yg-<)C_c*@E5~E zs73Fv9j4$Wr-iPI|8R8XQOF*l6O!4Rr~w`#^mISSIL`;^L4YUe?G3Oasn-N)@IZ1Y z?er)3hjVoMhuz}`cQy<9MHQkVW*oVZY%#<5XJ4I%P5gtx>JN9;IEwvx-&_TQV&|b0O3}VS&T7A+iAwg zfi&xMkWZi`8DEv8&?x4moDn|J&>vJ6#XT<4E*K)x>bW>^J*)mtWG1B_8 z#74QK#w@=ym=i*;nPV`XXRDB_VrV!t`<}4C2_jkW?~e_rq+fV0NX50>2k}B8en*TT zJ_AGTXz?{;T|7hlsZtzKCX=6c{AYd&)oIy6^J~z|cXfoektL~n_&NAkZiOfh#S`;( z>YoQGRh)@)T#Uxg5yI%RC~MP1;$LC`2zgf`=5wxQI!g|hHorQK=W;|bbL9U}vmKA? zMVEK`kXKw*vQJ4li}@E_H~mnvuv3!Nx*xjMhA`Xo+x@*{o?c=kcj`KH*6nE=vT}A* z01wW9r@D^cybOKD8k_8^YTIOr{6a4q$ zmwmv$`~m)7j{ml-*y0^EfH?6r{$;^`kJH)o1OAu%5GxeAtEFL@sc7+T#G0mlHvDgO zmXC)be<7Pn{`Lqi-!fNuG|B`YvoZ7qff*CpD2lql^W-H?w%nEWCd`Bun=krj#;SJ2 zoK_nCkwz7v|0VpRE9)KqlFzfXgr8t>_HXmQEcqYNzTv;lpdM>V@zU5~{~Z6YI?w!{ zx&@jo|Nl+`{X3vZgYw;BOIw((8;hWA(nh`2B3k;Rn4H8(dZR;R<+1Np>BZM&6c$wGvb7Z;P5d$0h>Qu6!XHQ^mVsBTdtRU!{#O0u<9Cr>edT<1IE$Bf!-R`Y=glpnsD^3D&-sM}%6wa=Qy^<{j z(S`5DzXWldg$~dQVFcueF@G>+;vk@NTXZmQm+zTS5i4Y%8F1hOoxMB0%rWQvCY#p% ziZz`!X6gq#&`>I4_jdSV(0RiD(4kEHXFs8saMx2<+S;`wMrs&i8FnFop0;?B3;L3` z`RhIA#@N8i?~(WqUq#=$;88(*!#>{cx808{ajeIlNt1GutZo>PUNJ?O)jF|K0fQsy zT=b?-_+RFUiT`R--eEJI{yzB8oQ{v!ocLGL^U=+myY0J8A!eq&B2GGYj{pom#N5kv z${2X_tA%9c$9-NQByGsC_z*Nhbdb*h&Jin()G}gStI>@VZq9S9|FLMC54JVQIQnxa zZpl`_5DbQ=jonBubL#6nTW&j;XPsw_gz;pA|kTquj=<*ZWEcF+kKVk zu`E-L1>gTa;2-&1Y5zg~pMGD+f5LzHNsF1^;vXpgoB99E)?wra7|`IZ94S9#Ia;6( zR!=2Ab~A&+S2{ub!W$ZU|D3>AUy~5`B)StbG3kCPCjH)zAMEo~#KUX2r&uTqUaa2N zgeShQlqEIr0&iAYb6xbxfq|_`99qaj(D2}{FfqpBbLlh-yk(Shq%{a#15JK!w6(+^ zp%Csx;d@*0A05AKj|&F!6roAKF)#22sqY3SQQn3yFH%)8`YbTb{jK?!92>uVq0=+) zfs#df@j2ptMFZ|sW98;|{tUfhq{bH&haAa|uzz$)*y%%IYp z7~r)OryGthIFsfRJ(fu1 zNPphx_QSxA^isi|@o&si74{x-H03+1;*%RYc{P*4u^G_7=&GPAjxL5EQAxion_4E) zkf|l5X>N)MI`Rd!D}sn4Baym|YlaCriScgp9wj$+{9ERNh_C45lN<5xmPcIcC2nbA zoCgKD@RqXv82?iC0Ub>IYh!xxbH6r-r6h0Ok0-X^7=0;p2Jvnv1B-nXC-$BHN~hDO zHvBg#87HHk=LraQBR^`_gf0BTldu8VP_qF|BjOp_%1nSAX)r8Nno_M;!bQ0Puja1( zsW^ep@EY4=ktn9mKv$6l(CWLI#-c3GW!@(Tm_Eh6MEIxn6#eMB{B^_o`x^90^s{iP zG$wS;d$}0hAt7n&KbZfMZP31WO~bTyB3_KT`CAOfFC6iHhAS0_N>F?PmnO>qY-m^P zNf6ai>r)?mD*0It_KCD3g%f3ZYH~eniwvH9a2lBbvCwXU!-s-~ zHwB<){9E^{YPS~HwB-7Te|Tnq|B(7y{M&+mf!K)h(kt}^|M8Ns$4GqnG%}x$d9uDy zAy1z$*NMo2Q~Qkn?-kl5Kqn@t65ugI&M3u`SVV2wW>;#oQtRHY~=nRL`EJdNv&lV0@0bNn0q^>VKpm-Rsb~tF* za<9{#?K}OA8tu0JBm>e*-+$r>7W4|#vse*Wj3SY?;s-8#`nme*!kDk+AZ_%;Hx%&D z+N)f|Ul4YFthFH`x^eQC_y=8dJ3vr$*veYaK-;KP%zJ@8q{U2=eRWZx6#8y{&V19( z@H_l>-BLrAA>}tf%mtqK5@#YrSfSY`B)lV=Fh*!4~$_lNMQ<|(p5l{Xc{}(^&69Ds>N8#0vC=$B7jDI8l4~3_^ zr~?5XPCF|A=H?jMjEwiu$Y6wwxyCWbri?5H#~qCO!_->38Dm~~vW9;i&(+QTO*j>4 zfpx|m#DFh1&bmnQyXr~48zLxXO*m0IQjS8*5XQguPMy{R{=Hu>{ORV$Yu6SR^_EO* zV(c+)fS@QB#n}r66CQvIr={2?*lK?CzD@Vbz8~$@4rq6vS`T33i%VGdZpCISwphC- z%k|F5`s|zIo1IWKzqe1hc*N67oR$YadF)GVc>XU>bMI~3zSFV}*SWUqrz7mt?1kPC z*9v_ecW^x(J&p5i;(6go>0iH}s9@T*2cSgMmREBi5srNQ89aZqUtj-2A+?6-p`CqX z*M|)T4S2+)5pV}AL)&UYYYM%32Nqs6JxItE2fE?E#ZlE=2aogr&KD}R@ko65xX1(Ufc}{O z8~uNZ|F7bMeCZp1fd9CI_&=<4o#~ZFeZWPw`FHaF4-JZwF$=*{uKrd-D|lodErYuz z`0Xry#CZ-DPgHB%Kv(>j$Sz>e1_6x=FizVCgGH8~uYJ}DIf$IRxjD@^j4F6e=_D)8 zGtp#m-ur|8ZeJ&%gRd&=IvV{v?83$8?uM`EYxBF3y+88;1#efNZMu55`^Co3obb6Z zT!)rm@m0>-r#c^p=(!JlG;~AXQ|<2MyS`0e9HRsq^8y-WBDD$^WP{9&%?}al#ZbGY z8QTt3|IzZZGaW5ob zciq`iWDl)81vtjP)S4Tc1Yd-IDLIk<;BSr9n)C|)BE)3Kzv6$&6ZT1)68}9GX-+Zf z1Y~m--+DlodC6XUu3^X~;L^Yh(swYv zv^ql?Itbfl~uUO6aZ@|RNhKg5^|7UUQfGvt<{0xU78~@&X-4eckA}#v9=g}o` zoiyTF8^a2P-E7|SV82fN6`d9TFw8sv|689#gVqju_u+h;m{aFL$OcBrEq$CWP8;*T zKs+YfDdWuB82I4H{}ce+X9fD=93)zzFZ&|GP#1^`)E+u%*P0YQAyx^ENv$(rGX7mZ ziAUfi;)@TT*h75x<7vOsI@P1*J-i7&)GjjzLhcU-Su@=YH3} zqOEw%a6LA80x4M~w@ReTi2ztiu<#+7_~zWQ6kzj^i> zI#$qu`vpn)7x*WuR{~4yHA=_Z0slBN=VG>Abs;kKwcE$qr2&`YDUmx45x#_DaOl`x8dKu#J~KD`0u>^)BOLZ_^*6| zKCMI{^2>I_bBT8U-TeO}Rb=L+;#7pl{uZJ7yf2SoarbQQjKzZKneBQOi~GmH-F(E2 z5u<{?s*Hbtg^DjFbg<^335rj_%BQ09w$N}M>#GaAopPTy2yk{(YHbNT036q?jS_f{ zZt;@}v{al{pAZl&!6SS+3%BhV3l43-&H*4hbXq+0X9mUV;IRdg+WMrh0NQ--1mN>b z3GAnMj*~=lyT50Ir4dos#)nl4u zVWpf$Gd)*fSp{ck*xvQRcu*bF6O^$E=L&s85y&IZT(M>ONBD&B0s8TF(WEB-1{6rxvim>26q)Tu5=D}XaS90t? z3iz~bN@-23?(3y__yVoe;yj1d_y~wyLJ&>VgmNJ1z4R9HQFt|oSA>6SGqs7MH7~}P zRzm03iR5?I1;f{F9k5o8rzkjNI(Dtz8?b9iW zZmH8nHle*vC_(C6cAP~%jIbcWOM{4y0(g{!h%|Q}bjJ@gwk?J?5*Q~d)+qOY93j&2 zAr$b{uL=L*hiH3@4R76W;G%q(b_^b@p1E%0y7y&15htKu%dTxsZ`l??2jEdMe#AAp zAetmXr@O7MKQQxT!?yUW_p)#v*ZqJ3Gu?wZ`%#PmP-wkguzcv1K)047KFmICW8Fw-Qc-^;HFHgq@+5`WuR?P48wd_o@ptWuF z$!sUekCK9(g1NW%#3H$0OTNcHS<&WaE^2%nvJaZw^%r`&*(G^1U7r;*z#ZyNTbvQe zI8ynFeK~gX)_CU6b;y84%=FLY&_$k%D^Z*j-q>~ewfX;u88`yR^RR(`~&=(`&mwa)JVUmi+?l!-|%m(trMwSnexbf=q3Ma{rpY-&u0*ae(QVx`M)nC z<@L#wg#i_WS(H|h$YevO3Yh95D(31dxMZAjGG#KN;(J9+w*)`jKut2+99 zm`P9C?*83ouIWs1rywu;F@jNoM6d0o&{H|f+9DQcgmMJ)6SR8@G%&6j&GrWWE~MdZ zYajc4PaQ0Eo^qe2Sp_`2my6z5QWxD_$$g5ymP2!4wG$C^)v~ibsX{8y9~uz&{mim( z5{5!^=|WSm@C&TvbEh1^NLzD}XA36p!{254KU~MCal#YQ`dH=KXx4*xIg_}0(|NnW zkMNG37|166M$E91>s$P%VO+PrpI#Ibq~~lr#wc%8Itw}i%rseoC%O0t_`xQQNDJ1T zx2qmn48FRMF7|MKUI|+tzO{SH_)42*II@lkr-61PO@I!YUjTPNh`(xLSXxfVr_bmB zr4O6pMYIX?#cc>9@9Tv|+}rUl@->q;JbeNG^zR(2*>$50g)NcGxOR$Ke}w;}YY^fu zxQuZGcwTaK%J$RpcMwox8aMfSZdYt~=_|;m!m7a-ht1!!7^#@jF$aay)yF)F#=AlP zBZRj@VHzD{UGnXjn6&4Jm&^lEIIaA!pnP$6Bc71v!p-E}zlMc%c%IT&8zcE_^Z#}c zlc3~rWJH+CRKMWoBh34OAjljAzA399aNc9<4e$6|iHrd)O+I9y+a+tc6RAO5(Kc4< z>7pzXfg%@OTU5TzoKtGv`)-(H-{#uO{iAefhl@R>oDh~Jc{>8HR@iE23_2yC`}3@P1S+U$7qf9eE87Jmnn44$GuL`7lj zqa7a(U&O#j8x5oFGxQy6VjH|7zm;pTm{p&AUj)xf<}uqA#y|QTiE>&0TQ5or>Ukb3 z{^`ZT-W7{UaC67GUht1aZke%*^~GG03EJ20e}6Rnr0mopeR_XV*IWHhqSfNd{RqFjaw zb6S*+1&Z5t6qxcYeJ?(P{K}37%sce)?Tr#x&1oCHK{<0fqkgt158q1D#H{Uv#nM?Z^eFG$#tBz{%5ST6IHy;X2$^r5PZJQ^t2gkpmZs&xeK+KQprzAv^D50ZW# z_jnhnCT@%O$$)JIZ~ufjn9%NKe=sRF8)1x4;e|9jvu;D;X-py{cNm8qpcrN}PK~{* z-~A#T-C&&3g?0kgc|v?Z+%l=1;AW+sw7cxdN(HwHfW12oLjq}ja+w;IXF!{<_YcJP z_ymlpu2VdD|Gti!-in_6Ub8{;CGju#$Nn!9r5IO(T4azk0(|NN{s*6tEu-iRg|0IcGFjM#X$OA= z4HO47bZZF=lZO8uf6TxKgLd$_N4p^w_$Se;FGLNCWX`8#;(FUd#^R zUxntFo#(o?JN~0X;J@|J;1hi}#juHg#HC(z>hwd1jG=G3*vVuB0d;=RrkP)rc+X%K z&(n4mCd!@qZ+3h-58l(6KL7UO^CoBJRg_H#%P?(oMAYM;Vj@<3;Qdd2B}eKJH^kuL zFRm5tzdJZ>pNCsp9PZKJM6|6CG3d6V3IG+qaefk?_yfIViTj;1{}kzY9sA_9IZq~! zbl>f?=`*p*_%9EPe*ocR*P<1V6m11-QbMZD9l3ceGb)t`IXDCTVJ8rW$oh5$Ucf5TMtX}V7SVNe5JlT&TGD%;vIiay%>BmE6; z8}O);S1S4gt`B`_oN8v*@I%u2t# z$Q=B}uI%b1KAuP~KA%2bPqdoLbS#k{V*W^dD9x^K_z#}T&+5fg@h`GU|3&_P@)cR| zZ(rbFAnx0O)7;6dobOa@_~hT_|Grxq;)wp||GW;-t;&x|z_+gXe6)Af#CHN?V2L~d z3?6?Ei|0Fyk{PZ~1KYh@q%UTpNEGeI;upE-3)V(A3eJ}Tb)Nt3wBkSfb=3BH#aEKd z39dS5@oO|}eG84Br*HAdyUMH3|K=dij}GY%4C?h&)u*>}AD>GqH~c16he~qcy*RII)m^HCBp?-~vYyskTDk;asbZu6(|E@0=OcJB!=Tl=f2oy4?jiqmCF zzoq`|xr0!*{st3hU1SkheCro{G>lPK<1wyu;^^^2C#@R5dEJPUUOWCp@|OvI&nNy5 zy}VZo{0hL4Lj11kl(|92&?f$mL9w1}qnDT(^d4-3x?2=3_qW_hp>+=L06y?uHbdX+ zC=v3Fn{U2}r#RGMd`&Mgqv(-?8?EUgnC9x~yi;JEq4>tVwTy{I2@So!b zbH+vXt$kw1KX3VVGEy;bi$QBFl*P6BL}s+AH@8+~jI8pHT1tjBo% zzS7nv#>kn{#A8p##8y8(;(uZjU_0{+$%j4xn2B71Z3m8;FJrsz3%7%GY;w>4LNP+D z;{tUNV((ZUdN|#RkDwV3GDk=%#Q2mbwHq~OKArk}Gk|9~=Z=A!U?$s+%F|iLd0&|K zXEOR9mhjoO;H_Pp6?;mFcD=qm>-gAnbEjsSHMEo1< z2=q?cA|cX|nrhtry7}B@YdRdW`~qiY9uwB*YO6>5UhoeLzFzzr5*z;MS+hgYEF%s* z)w;HL)%&y0>-R67OG~YL!^^Xdo&HQ3Rz3N^_^0LMAyhj>|XZ2;(ZGOIff$7QeSa#SkzpD#v~k^ zxzWV0#MpMJzwg8Ny zVIvbB?LOL^Zv0xf^a6$EHk|weYNetD+3q*hDBE@p6`*AvMz|QfgoaV1g<=U7R|0FS zAEM*tB_p^9j6)K#QA7NvjGDa3vLNQ&06;g#l?DGbrO1vQ{}rW*{_j7prI_dK)5j(yq@vKn3;6*@Z{)62O@0pPA(5>)flgIoY^7gq$n;#S}<%}Bsjf|xnmOUco9ed0aWuyZE8F^}%aoQ^G zc%l??-1IDOmm$jAH5*MFo1goqr+-l;nGAX-t{v|NI!wMc{J#h$LSWZFg@_*r{WYknd{sGVC>4b&2 zV?d$=gLww^mcm{=#CU5`nNHrU8oEjj;_;(T-3|#XK8La6UUF+o@y%%3qtbV@ZM&U_ zj$t2QOsgOoI}Wp`u+9G|zuMz7j4JhMD^2vxUQCn5@6-9P#2(Wt@+U#|6Z&rpYqliDpaJ36d28_U#{1q zk+3aLl&vr_3i%Q0#?+qOpzkC_nyR6*>SP{fu=S`jD4QEMAVtCC{f1F(wKd5B=L#Vv z{KWFy?a=s)^9^^5?+gARd!nylf0e?&fj$n|!y)3Iqj$r2;8feSH2edPM6tE)#j@?F zsCmIZ#tsqi7wdvR94s$8wvOAjj9&hc{D;oLC$#%`4#g`G^t~uPhV4-Q;g4C;N*n5w zpX3fvT0xU=&G(40bX*u0@CqIY{bNiK)H}}V;ym=0xZIZ!sgog>$iM>kGa}N*XXuD3CZk_ri}bPgji4?DJ3azW_uijs;FEZ1g?;E&3CtCjLcw z?3To5`tpxW!{C??=U?Q1-vKS<+w2OiWSzu-ESzQK{Y;8uCp1h1k6o2|8x{C{7I;HLXXBEY$b8zJ&hX7x4$yb=7HRcw zyD+WTOS_yy0g8PjJ+;n}J&$H)4?C@IM=0#LO@9BLLEsW+xaZ7r63fqxb70bv;eU)`SJ6RJ1-`zy>{ zssqB}RWZ)RFulmo<&VOWlQ(0NqD%>V96wHwJ?-%}{Jb%r1L!nRg(SAiCI{Ff`2zY_ zG9!F$v}7{L?G!`zT~8)G%tx3YJ1t&;L*3y2jQ_|hUFX>5mjLec#xZXPGAld7BbQzA z-wR(c#rTouox^>|hjtW~uy2i1WLn=W#$ED%kLM^i`tB|Nqb3Ia73|#ObCm(TUp!4`ZuH+mev5xZBS`Z z*p|A4rpS-z=Q(DzfjK-aZ9 zfG_x8e5#)he-QTP!PiX}m`zcpcOSiULbS}W_uq;J98i+`L;M$t1?^OI81(BJR{=;j zyFDGNodpWp$fuGp(sh;bKY4%h)lbKQ(+mEueuZ)W0sofA&E|eeW98=Z86>>~1UU53C95nf_M);8NlCK2V8i2ryD|P~ zO_)iaxX@B+KjGiBmKO_mSp1PM57m!yqMl@=jg5~B{t3@Fd$tY=eu4V=y&nar5lb+h z&dCc4CRGQ*2CEFfPcLLOy1MDY+ih>7kbpt3)0qyM5+ny(?MVD0U#&Pnaaqd7w}K*# z0gH0SDrx*#~iz9+U-jAzId4#?kCncyp(lityj?EC8^8Y8VSV}x{7Y-s@vqK`_f?P^SWF%K z_Au+p?MrHbD|`s=vs z*1zz!(wFJy=^Q*Oc7Hh!)CV5CT;_@K4CkYb|2!{wZwoWEYet#A#Twv)% z5^@XK<|0q$&{1fI+n*Fy%XG%a zLQ}));OFMsIbQR#;V)aq<$e^PCswO~UFXmE$HIQxzvAC&M}5dkoY@EbhmWjwvP!P6 z5B^7!fs4OxxK2DdS9Xt+R8W*Vj#2I#{>g7>%)`_bZ>TT7X8xXIckw6EJr`}lZf4Jz z6_H+iu1~0?z_{3E1UttkHy}t0R2z$zdY3c zp71ZDsEjOY-raaPwDx?bj{mp&{fqfO)?NSkKmTKpsG>nMtwIUAg^l4*+G9T&d@J-~ z(Sa5^rP`@d9Rr&P&k@_REU=vUBaG7*FK#45Va&2C-(w$Pw4oWOpC}z zH^50+3PTQD6+DhtFbR0~-*y?7_bks~*Yz6}ImQvD@R~~FWZ^8V^5%K?sZDPnUSP2+ z?2{n#EQC4B)@T@vZf%^N)R)CEFRV(gVNtF7$w&B?OzW3c7Cd!aeB}Gtn@JRiE%LuyEVp*6}Y~IFXY1N@NR$i%;<$n6@{6C|X$~4u@bTj`;s#x&Z4U6fMTmJ7aJD&VbNq(LmtBm{rSG@bS@tv(2 z-ddhA(CcKc#rd41<@6|bFf05Tn$J1h8)YlP@jRUE8ezy>zt^IX&_e&|__zT57Y>N4 zbdRsQ73+TDzZJH+o9{AM(Z*LK3u+|oBC=wmyAt(3cB5MueFXU1)X-q4{$9m2Ln?2TGpwIA@;Mhzj4H%{0{|? z=pR{?igGvK!AD(Y@QJaj5(-x;E&nfIn1x6L0JnR@Kl$+;|2K%N#|^yA4+Lfc#s(RG zsy81&k@r!ii*F>~U&Xf$a(Ph?)Z;wZb@U&-G3whqm8c(dV9>N@0$ulN)D5|P8Ep1`TV)#|6j=eKb6S5 zt-W1DDL5nRmP6o=pc;JsN7Ch@658Wp&Agw*cyIaM8Z_d$of17b50{YAzQ&k24)Bou zcp)73sDKu2pe=>HGd?-```QPLd98y1+5t6H|Gwl5wn^yWD96(@Yrch|Yva|R#e_YA z{t-Fr$5LCB-aAEHKRA&%w14jrbF@q?_}v^R|MO|Nu^ZV= zDa=Xwo49{~QP5A&*<<1CPOUxg<|5F2*rx!%@^aQBcD^^amyHtnwL4dsQ-S6vAW6le z=!c8XjBRdG3;g@%$eySV;7ve3bkF|^t?89E$pHhcg1wOtNr-bDR1thk6!3$};e}3D(mi+(Q^ruuCJXCPc*6CKSnU`Zc zP8HJ#>2INX|EDIrFqZpg#3+$l{x_j=0~CyB{$Jv$`&~YWwl9c7IF}gRU3Pam#AWf+ z?k%!PE4WKwn*1K)SmC{P%xdKaDXg9E5Qh;}AYa6g7+5spTEvoM%M36DHW;7gc?$h< zY3cGs-g6VS{NE1D|8e~SJZBrZ<6qb;20tqMvEv{7SxTrK|5oSFhW|D}_@jA2S|+!l zSDY`kF_Q+2rNX{}7KWZMlID2nr&4o&vMZU&sisq!f=)7p2+U=dujDYTAH1K;L3pxc zI5%7T&QW8Ys)`cup*;Whev)(DPHXF*@#WHH^lA9Vd$Y~F2iSgJZR1vfMtE`merQFl zyMVP5f~;2mh)lh2X9bG8WCxSAC>g~^(LJ^l%Me<@UZ=kRU?8q8MXtD~k)kfehJk4X z8({{*w%YoGJ<`8KiTBj)D8dK|&-myC249!OIPV`(V8`uG`Va@LvaKa_B#qy^QTW){ zjjk}8-ipuV!wUMU2x}N(l(EJO081qy{!2)qiE0#aE!fv)QyN>}Z63?*v%9;hzpeF51cq z@Pzo+hJS7L#rXbQY}Dnl_|G6m9C8O+@GpS>$sa^{txq$?_Etp4aXS7n|Euiyr+7!c z;xQ+13i!7R{!5;shrCi8!Yt?Gm~}sz_*ZT88vc9H9>*WoE&t2KA59AXD&OH>vuD$Z zwD^J;Pf{h16~pWIKmW`5|A$&I^!ib6(2918WDrQyLqa?HJ#%Np`>`;4TPHYDp$X}Y z$v(z$AzY)1^hKX)6)??2m8Di%@W7%O22rLbX#@4ik=29*8Eb=ygu|UeE&%A=t|bbe z5S*g!8ra2*C))X)b`NcSKeJ$*5zz(^Qg8j9(<|8nCN&Y$03U*dCX5n5lzDVnQMOn# zsoZoTR=(5PJoAjqR67QrG3t!skqKJyqYUTX!cr+T3j%hk4usd<~HElQ? z;&?wQM)XkTZQaN->*~b6HaJ0H=3U@|JYZCu=wa59iH84#V@$0eOG7*e{5S2if`|JW z310px9sd#-II4F*Sz1}P!(cIvyc$T`eW>Duky^BWb{n^6M`o1YNk&mos&Ux48v7(f zWyew!MZ?$77hg~?%Bh#GDw;W@J~L`4FQ}s}f%*Xr(Wa+Y@@Q}Yw{Aa)z%;yq+LF9!+PjnWDX~c&%8Aa-svwVC6E!s>w{%b6A znqt;su2B%kC6EeoLkH^B+LNM-w_W~M_cOhWunns0o-R+~ztc9%t&1N4W-3+|Zmb?K z{)va;zwJE`?fJ`N;+g-8@cbY1Kb@G9eh*YOq=H-jOy=Nz{1NbE*XP1M$IMSuP@CrP zgwCMNiqUbz9QqVJP=|K?yx?D2+>#cDu5ApTS@Fe;G7{=urg7=qaH=w)^!HNX_g8X( z72!X#U0*-Yf?9fzHELVW7a85B4A?H0kLWTPt=XQEE>udF+OkLOI9FEH?Fe->8w`KQ zf`_cUp73cRmo*a>(JQJ2=rA(G_(5|S2d@$r20{1mQAIA0EA`FP!Ynzib^0P%gl}1? zXhzYR`O898NZnPt+Fr7tRWF{5p5G3_zkI;I>+8DK#e$b0Mp_&43uQl#wzs(1@Abm; z_1R_p4^E@HN|kIzzszLN|Av3t##iClLXOWm&#(n!BoCd-u5%(x+<-p-pfC705WoD4 zTF4D&;fv9y7S~lQ-;S+_9(f0Ig-Y{Jic6;zGdA%byl_EXh`%TN1TCa*-v7-K#$rVq zGX5i{{2njk97&^f+h6j(J_d5`6Zn7dURC=5l(WFYkPxJ+@aBKq4_NvA z{CN++0L`{qe|xYd!=|6d&hX;Gn6lP#vJ6p^>4r`u*LbxatX(2GfOgvQ;eg%Lq32(Y zyvTun6mjzH1n^f^ju@Mqc`y2E7MHA?UC^@pJFM)FSHuC{JIs-!P`Nxc*8fX+9h)WP8GY$t9>G1HG(6Hpabw9eq5d z@vIkDp74*}qB}1*B_MsFU;lpooZr(X?!YD{H6BhGx;R5Fmq{*c9`$s2G4{Hj;@3(v zVw3ifym>pV!&W zz{O=b&_$XKI9*HOKcAq4GEd|2OHVYJ!deMfhbY)7MW4CA|?g_l-1cddJU2d2ojt85)Q=eY)1 zllx$dC`O;#Y|pp8EB<@LGm*XcLSbq-aE4+cy>Hkkn=bSJIDfa%6={RFuhul?=%0Cm z7XY=pZmd_N%ZU+JvOW8M_mR_od$CbqgSAuG3#TiatcZh$b~VW;KkU98dY2|g@&P_# zgu50aD1r+0?Qvklh2{?%-m2%}Fay@7I8f_vxk z@(yZkLHvS$ppkv;LDNR;!)Nm+x!j{8cv{90C;*22$@j3mIU7nVs%-J#>o@bmdf#b6 z4Dm4{E_{mRJ^oiVx#s_R4*o+LBBogvkM?Wh*iwJ_B*VXk{}yw|o$&Jsn>nBj`_fB? zhJOS6V=TSX2Fcb~7Wz2U|4IHQ`6=#7`Z+bc#20)yQTeIiUoeWv^6dNke?ofqy&6Fl zNfZBSKRF_5pVem>)v&MO8yw?F7w#ms45~=~tq02qxXLiX zdD-+1tU3X)C6syCoFG}qdh}IeNfycjG*oe+GynHFmict2qxjdd2@ z5puQK1=*0r&l&$s4_S1{+w)N7Va5N}G2_q@bG!@cjrfT6Xnwr!rb=$0pu}qtWqT2C zXW+Na=bs+4P(G>L*7%qMMQpBlPUU~AZa-ij zt$s<{gyK}icD5BRg{Bo%dNKsH3)@QW@`%<*b3;VmV4*Dv-R8FSt|#X0SbWah91Qy0 zmE#-E%iA1#%V>R}T7g7qo_xlgYqO47Y;!wmm(|z!4|8UJewMzx=++tm6DklG)2j)l z4t*V^p9o=%I?A>kdSA~_5$n)&-JACdwykzrlgHD)APdl`7Cxrfu)~pEqk(L@{&=nA z`TyD6sk4f7F@~i>A3YcqO1du5KhLlrvz1&YST@{smr)?(ywo!gSot%3K!7w946%S% zvKr}-i?{85WKy8TxTsG9O#7%x6|j6qxET^RpL`ML1#Cqnf<6EF4^zDhZB%$h_0_wxS- z{QqR2@=54dOti(~TkLWm_dB6KgeGzOGAW8ly_*<|P|3X)j37042O?=9v-w}Sw%Q?) z6G}gi&nPr`ffM*M40CTI5ASv0u7&Lgd~dqSx{lq<3Uvzg0&=)oz7;w0u+#_SIRW=1 zpwkH)r)QUP2!yeu_{pG`I_mn?(90rk={9U=r`S;eqJm!!ghqNpsw%vwaJ^7cOzwJt z_3$MMzGVWC@!q&VOBQ0`77^AOqLqTMG!`Y^TnsoL+k)nc&-DQRx3sHK8rb^~OF{*o zUL4yKD6(s-K3kxyU#-rc28of7oKcVkTrI^zN=HjGA?C}_K+@t%4hhr$r zbpFsTw%EuzkLYW^1Haf=Gn9)6eZRDbj9snab5Pt)-W105?=W6}<=+)-crVW_8<+_D zvj-Fdm&+ukHI2;UU8K}%o8K4fzPjavjjx{Jw8^yjcAgteNBg}y{u`|_A*o8+czGZD zdHBPbz&JL!Z%6p=u*K_IO_A=8p|>|3e`%mCdKgS+Gkyuj4)Fpp6cxF@>-Pn^d)XeR zG6pqXH2+CH2LAVe0{Az;f7v2E9b%UOk7UPJ6yu7qfvx24$Wd8ZWuGfa=`-$wOuc|q zFO<-SZQ?%)=UNz+sOO;GI(V9FjDKD5AJ4VN^!8gd*jO) z^u5~)u78Suv;!5dMaU-#zxP%CSFZml z#9*`wVn!j-b^KFb6ZbRad`cm;@weodZ}We?*pqtvHU9ti=70Y0|CS1R3J)=(k+i~5 z2E)-OP7e#eD*35%d~VPKigyuW&T~vj(#~_7cXRE}m^Fp0AxdA5VfXJuj^Sav1YPWg z9%EtQ_)erie}6MpD|nNd&1)OWcG(q@+~5^E1SRq8!fLg*>!@ROmKR z3$p9c<%?oQ5W{OlzC@_#6O4iE#aHo~{h#>qlq9wkp^@j*waVfzPX7tl3vF5YD3}JI z6!4l0wJMHq+)k~gY%5PugrMB%^fcKh+uP1IkH0wB@NI2U2*}J`%_5TV7zVNzsG}Gm z^Z1SLxMSMEkijqUu^J5@c!+!f%%8$y#hZ$s)d?fe_xb@}pnD+n79*A8U!F^&DM)X*wZ;z1 zF+}#MgmTNfzuaOIwQ2D!`vkUx^FP>`a$y_yt&y}*ALH5YQdZ3WPNl{lRwoiPhaoM2 z7Rx1hQH#Jl-DuN-M~eQ5$8AooAe(heg>ZIT8$e@R^xvB{c{}!GTZiGZIObZdew7$N zE?M;Q^R@qA!WMlQ5cU&O)E``ntZApu|78!1Q|^Y}MaQ)1`BY$)dEX!wG5H{tNsQPdYyn#~)-SAClIO ze9H-=4XIJ#fo#xg5Ix>*I52HGlcE#)dGa%nF9SgNG4h10IM;Ln@-{J&Y z9(gMNs@NW+Dl%Auby-Rgh0Xq4ked`TgM@V~~YsClX^_J#bf=yQLc|5yAU zFuw;_^PtinArxqUgXaQI&;{c}8%N&$EkYDyT7r*f66*0b8QPlRL-o0+G8`w0mO)R) z=WiPmcvTj=nc)-9YbSBYh;JnjM^)sdJ_da-_w-%F_%`%SSp|1N`>H=&!qPdzysth9 zF8W7ikSn|KWZO=%&qSgUG<EzVE*m91~C-AgX*X{Z57BuR&Z}!1v}~3t>(xe2HYnumL;=%jIw2 zy9Tn+^g+Ne7mb*)rO-#gH)>w)x)6~nP9TSPp){Qrl+BPPcRY{3z<+!a{-=~BOSQxI z3}FX-bxw-*d)!yUKa#h{g>f>bNm%#~i~+Vn$H}({$BmRd>@UO=qA>9j?MX0s3zhl* z-S#!(VBjNSRQhTmQPBSq3+Pv`ibyJi;Ow6B3wB!tJxId|)mlrd_NJZ25g(+v$M3!Vl_1eK`~u~Ieyl@?!x{VBZ(fp2*yf-jdq8aX%6Q<+s%(B8 zZ6IfL-b2P5*JPAd&}i93bJX`!+=Xw^Rb`JlHgy&Ud_Bi$Y1w_@g7pF{C+jRG=kDv# zbsaIO=`x-NA2-^XmH?Wyc%Yc`z7_aqY6`xcnzd?&IydkMpB^kc31B=FZt*p2zyF_k z@|iz63n!rXeA4H`g1EeGr<5vuj_;Er=KHn_O56M&ueG%?qBH4jg=Jje zZCKM4vOAEB;o_nCaP7M86Ns3}DB$K+7?G6~B1ioc!y(INJN}?=joAm`BB_

n(x6J>(C>Hd$>Dkzy$qN>pa6x_+0IiQs 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 z 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λC&sgh@<@TN+BMUZxlTzu$FWaIM@Zp{0PFwQ=k#HnG8u()S1+RJUXO}eN zCUkUul<*h)gYh32;{rtvS$-s5eEZTo2g^Hsfm+erGspKCXKY@B^uKm{y32Is*!=Lo zKg8*kl5bztgqzrj_Y~Le;}7^}H)h#KEZxa_u9>@U%9*;V_kh~W9`N71HU1wYs}SfU zDhm~TnTB0d8vpej$TavhCi7_*Qyclji*sCjd)Yr9&>Yq&XIA{6^BUhCY;M}FidocW z!~dHwDr4B9g?1XjG3R0Du^;ds#^LXtwGCrwCikw34dF#671MC3rXB#447Uw45BDqi z3C~TE=%$0rdsqJNIF@sOw&fn5Y{0+RW;^2BVVZyFa-OhHd&J$sf4oP@6>r{S!69~s z*s_&#FS3r ze#m$6YnR)x&-SGEysKXB8a5Df=p(PEzgyH>Q>S@ZQcZ{@GJjDJm3N>cMy8LqiY;L7tdIyh<{GKgPAn#1dPdZ6I^HPjtN5^C6W}3Zpep#i}Y&s|EpnI0e-$zZUNo3CH{d1WGdu9m43=(#K+zAe{ z85Y|?vJozJp?!ZEeZGRDXv5cuQ!c_Y9MOU;7ukuSnvHs4iu?9`+(#~Ek4`$;WMMV?`;nB5K_-v4v>ZIxhXq=pt@jn8q;zNeP*C&2A`i$ z1OZxn&D)pW>K^wAW=gIx1j%V*aeI3AzbEa}f~bdk_SqZ;9lGWj9^`)pQP7idZOD$e z-_u&k9hq|l2Ny@R*u{mvi_eo&&^xDyRyxR5P%7S=xAGU3ReZ(3yTVe8O8|e;ljHW{ z9?CO|zP17wvBVA#10IStpk~a_!03o~!zWu7jd6*CY= z^$@oK!GJE3pZhR#`6Rrl;W;kwm_yH({wuQ)#)Iy;ZL(#qWQ_}j&nya0CjL>po6MtD z{PrcL*A8VKQ(_dy!AWHH8=g05@s3rIG5Mb3syrh9Z+U*Z4j+CraX@$;KFx9*r9#8N z9N(tQ3tu;r%~$D?#v3d?%Dd)&vJDkaO@iN-L-c{)k6-c6BJm<%p)>u0;~3ke@)M1+ z`BKp(QOvcEEADRnw4byt`8~_bJ}~hg)WyFbv}a2Ci~7IL@xIa9a_k2G?3}up@q5nK zo^<*f{(lC4htj70e2GojW-7@>?B%J8W7kmyKUv7)D^_@S^E}660ow9^_pw7-blt6a zz@lq>ZFK(7McO3`E^a$f{C4^4VORR(#b@qcF|y;+u5hgDDZZC--N~|At+w07WBsxI zzk!Z1PCVlFuc&-*4myrya$POWbDz9vP74vkBZIe%mGjf)+KFd((dHMQFL|c=88=*j z+4xLeEhQQc4kmBcZoPWtf0HiBLUM07xL6zb|Mg%wXLIl zTRXi{imhnfVH|z+K)!W_=v0}r2 z>2esp9`p>QT=V}Qy~hs@3Z3al9504eR)4dHn78=%|HIq6rMu4KN`iprKgX_qsv3pS zxlCLl08sYMQ(r4{|CT9|xCTH%verBn{3mAb{&xz?HECb}`z>u4l(~3_I=(NC_Kb%Z z)8jhQEJT`4{0oqK#6S9gFptGg>+=Kt*QLb8;Q#6SiW6MS_DvXU2&|F9h+RdNiaSRQ zg0ZX2txhY>k=^)EOoxpxSis~0eBD6HCcCWV2;5MAie9i8(q(=HZJ;cMghC%xUEMN#y~@P}r!srtPi$ zJ34Y7McW8YCW23K9ly~4rrQzdr$1EOi6=}G2jQQ@GjggSM$=;$zjR@3Ov)d;yse7T zNCyf9A2HIWfD9WM*g#qEIu-)l4}4=@nCJsz__SBz-?e4E$AeA(xS*D(y)ZM|h2I3!zX zb77YO`KXK4Y0$NG6A9-)u#Zz&;;4p7ig$s3;qQrmW!)sHTDGKo#O6c(Pn$T+GL~qM zcQ__;JK8sJ|Bn7DW33TN-HOk|SIC7iN)ofsNft1OtXLJcVd^%>0seK;uq9VhxXU<# z7khulmkF;uiouk#X24ut^GMUZlB3(=+7YAt+;Gzo_78g);~&(aFxR@yZm~kCE%K_1 z;R`CFX^?m92xkd6ueTAU%9+NUJj#XR{RbE8NWK+j+uKL1zDROZFyUy9G|X&Wd8Xa6Xw zR#=c_fjH-q;KPU zWo$_s-&VRwY9)KMDdc~>tHV%T$ukxnN+f_&_WR)3+YJgeNV^v@(occ|O{Gh$TOuMD z%#RX(Ek0{2Mr_@0dRdCku-}I>Nt>1JCOd-%qsJhv>s65$N3v#qZ>3^ul2m=qrktlHWk)wVq8k^;VWSqdBT6S z2nK-u3xOVY!VhBwme??*el0wl27{Y$&^u(>_6K0X~(BGs3RsN zoLI}jPx#kZBbSUNi&Q)`^wB1=fxP~Yp0Y2_J!6MLb&*e=@ehGd0ie3bn(P0TV^nar z6+AAuxQ0EgC!qUgG31EFf4lCRvAM|%mEbi^m+KZ!L990PHm(yxg2`v+x1w^MKOI{? zt)L`*156u+rW<4`^TEL7!t=6uiBt2*pr{`+O}_cd<<9zpofjUgig2qgX{;u%XouXn zkYT~@6)WfbWN2UHubaJCi~=o?TO#Brwyi`iEkFx8X>VV6lV-!z$3_VCvFL^Hfg4c~ zfd`KOw~a@8uz%n>7(x6eMwwy$2C{~)g)cNUlz%W!pY|7QrW>Dvh1#w>*GCqwor`32 z$SpE30b_$9&3^t}FqvO4l>`iE>)PcWe*~WV2K)ymw*o92n-7n+zlPTr{7c315#-|i z=hnt%+>~43Prvwjl*5C++oacNZAa&&pZoX08`uFC1uOnRJ&$}m$=>uym_lqNO^j8B$aWL!n0{-R z=BqvsPbNH7ckC6XK zCp&Lnk4-yWhLo$}5eiWmApsxLZv5150c*t*uQx!yHyon^B4Kq!mTyb5&t(z&xD)v(4#f4uG_rcJLaj8FPWRf*AVg;Sc;9 z3wk(C_F6&6DB9vi$Aj&0CUm_(l4*jBm(Ifmo!*dD&`hcygH3PvXCdM`1egI>5?(qf#azXyTVHQZ|jR$1s9yfdbq!=g5&BO=a`7I_| z7NA=Zacpw!Qt-nKU$hHv0K0mUxXfofBdl(W56i}8?9+H=8|nF9kDi`Hnr^D!91BG= zRoc9bej@3Iy0lOFGS^IBj@fV9R6W=hdGZMld_X1@q3x+%{Ke-I%3}Fb0^+nbm=FGU zlc&>rJhW5JZ>x?+Q9|8c?lx9fSJRxddvso~V25qcxJLO^KZW6vuHI_qj>h~ZefWcl zZ!lY?6e*me4o&X9uZW;q%c~zhFXu!5!^pRb^+eB1U z3qJd{C<+yEJ?0zu2j8({=hJG}$42mQb1>ar6pkWxv|Z)MDJK5kAD21l<`Mt0;NQl@ zjGJh4>%}ht>~#X%jTA!H?tG3MfVxQTWsjd*yIx|IUHbR7;1_AjFZsEIn(?Kvk}<7# z4Zk~d`uy*r9YOo`y5qmeKVqy3Y+d8O-b-7^#8|M*Ep6VP5B-PyPXKcsqaaCfYD&HG z9kNCI8>3|U5n{@iuMf|Eu`d(qFFq!6$3OZSV$kvb;oUAb4;7O{#s3Naq?dVzY+^KD z7E^=wzD2s(9%$+PG9Oy_OOiKSM_g6-ZfyC{zuN}>u<2(o`~oQK#qlxnj4}RAo2-$0 zq=dYzG5hDHBf3^{cmbMw*7W&wBnE6QF5q5GaYOy-V*l~8Twdjvq1UDDX7r%bi@KjD zpp7@f+jxBumaKP$hLMV}-P~f398Idg^TfUcD#|Am7olxacnaO-PpQEM>eHq{JDP6= zO^D0bXB861Z8s2D2cJIOCM1A>Pi?yJYvZbc&zpVc&7}M@<@|L1R=By(IXL>diSItO z7n#KQqWP%cd*01+qec7w%luypTr#8GH~e!kJ-aqNSB)Un(I@C>g`+QrK?I#}n#Cl= zwhIka9{Y4NqOQe+MO&9Ktm7~Emq-A!Ap4V_EcE!y!1qt9R4Oi?crS7b+Y_JGtv;5t zp8QWlgmRj3!Z>o2KDJ{kJWlz!Jt=R+(}g$GJ$~Qj?mC+{!5Ti6Vr}a95tmaZyN{jE zO;0!c_ab7s==@?M5b#wLPSQ< z_+Rla7{f7Zw3`pI$2Qd^jwP>5|1(~5(eVYZ(#O#g(C(Ks@M(kXjNJnbo+~jPj*b3O ziG`0j(>}iV&7dUTOf?Gyxd7rtb#e&j+w|C$@o?9{6HnW8x1;w#eLeNN+BUA`Ky>6r z=~SLD110~oDSA4T!w^$iHh5cc2RHf^587BID?svEDGSkuVo&I#7h6I8`9z;CIkJa2 znc?%F{8`6Mj~*;~vZvq_VdV2YM*hkBUNJtTup1p|`T<{o;}oAUNs4d6h4r1P{5yFw z7YcT@$2=2xdis)&ooz#7^35J(^Cw&K#Cd#rncVr81(lIT+7Rj&__*Oeed&z6;$JrW zx49X-vipWX`djeRrl92q`a|>Y5!=7`;G%|R!j=mxicGy|7X>(M2eqxVHl|?wS9j|< zxy8SmAH`+gmyTE~QOJ_vo6_QIe)L$-3UyPIhxLaD;6Ky^JOOE<^G#nqj#REfSRZYd z>uq6jp#^@CirDZ_^9;<6^tAZ+Cyt6J4HTgTDPnZxx8r|acL9J8kBNU1enRua?cFzG zI*#*)M}e)3?l#N(Z;-mQ;-?n3xQqM6Psp_07kbXeSis@&`!T~;&D-18@r;$jrVX6k zXcLqocS8K@hix-zOcq*lskENh@(ZTy{Ji-rg;&8Di_rdE#H{IH7C(`<-kwif<9Meh zOPf9xmey164p=R}Uyq6ZTgEt3i{s7*TV_a@PcAXHHkwl9jMHGiJU?JT&X^uTn@;`h z322%T(}x-OO1~jc>WmiRJgKRyMPStJ`OlMnTakyuhpmOE+xesT`fzb8hU0mP&%Sx1 zjS)>^E`PMdHXoU3U!HKV5u_*V1nh-2T;^jsz9?y~yw`zs&kr=Z zEI;Y1IFz69|IIF~h!!@#@pJ4hIoG-Zq%2r`TyUFo?SYm^d)j{S|4rtK7jor6sZd-0 zebR3)wBDb5AE?apUu}NZ&5ypOzu|ui06lih&fFBm((P&bgs9B?a4-w_ZTbKGfPbpR z{9nMoEcoAUf{EwUOg%27UFM`rM(s=7dpf{hUU#bh=+u@6N@>`r+Ymtz$cIpb}L{+hu9Gm%8DK~@D2ZsD13~UC8 z!I+ceDjqE4GZSrm4*$`TUX3TCAUgct3MarT>*}2dwC>Ar)-iBJeHh)0omynx(0TQ^ z6uR_i5XI+o9JZq=FKh;1?gL7;X!Z^I#?mJZiFAtnMd}{4QXbZYhm77h{%`KL(eIlK zXg0Cv3&k&6d!4ivIKp|Q;XkZyl}-v<-|#;pJhD{ycm1|)?)5NNXS*@b=SHksxXlv* zFfiqVz&PSRA$d#qHNmunxNmox6wWRGA+5NEJU8DZI{01Je3&`x@4LT(gD?|*-^)dY z`Tx~o#u9J)G4}kn<}AYh=M#BDIizB`x7!kjX0DYV@;|iUHTNqkC|rm{JL63N+k;7; zH&??Fbii*+L`JNV&#y|@=UPBWKVppT_@8;Luw`tcRJ;l25{#S>XCU^4epd`>3y#hg zjnCMkl#?ZIj)5Y_{Ikhe-!H1!uJ0UNqe6$f}1+4rP zYkOAq{^cWK(4jM#PrwPZp^7vn{v(b7XlLBx*5?ml1)q8(PaX{cW!rq_&deLz7@xhg zzPk_N)9~L4vDX40(&#RQ2wk=biAeK!nvq8@JrD0elRyBzh53p2w}>CXyQCgeXI8FE zAoJ+KTp~~xu!|1r_Hak4ieRK3ATc9!zGV7A+%D`-w$c;O(I&ClSDJ70@!MgvgvwSv zO<4RF_>au~L&4KBo|bRV`HwZY_}s7rtJe4kFB|&rbinV@^47D-cDO&hI`*9MM>gmU z%P4X`L%9n7F=vyTQJd~^#_%=ivOM5Fxw_yV(?QGsI^saY{_eQVZ|&m$Tdafl;gY^`k?P6EF3kJJ zJI*8Bnb?!SQj2L+j}4{OH;bu#AzYiJbc#W&V3jG^rluyfdC}w|Ly$pTh3vXbRIbSj z^jd_jv>II>lm)QO32%-`GHpdQ1$*PCZbc5aO!|R>zI(roWkKiMiIfP!>$QG}ED z227)`rwW5^c@t%sM8iI{F*uNKHj97C1%&t`RirDoS5D+}WU(mpM)9^6l58n*UA{~A zuU8^03+LjvAmwY>Fa6=YXnG$qs4kjTN$>&V532l!Alkb^*i;DMJi{oil-Zjg>)B}j=7ZV8H|usmh2R~EAfXh zEWSf~_vz#}{6IsT1^*Q7C7C!Odcp5k{9}IN7*#TDxYl|~)kMbY74SfrV98-nh>o^K!s9D! zo8|Dh(#Qf07B(?Y<$v1P`amD}zmxx4d-#V56{fL2#tN2f2x=lg2)2@&cbn4hY4Gd7LXcJn~T#XB< zAZw$%)=K@4xKM355y{wy2&^%>Z{F}9*LqG3eWl++t_U8LGxqd-us`~A^4z0L(a+o_ zJI;z3SJNpHeg=OwR%O4_!|#BX-u=Z0Q6T;lf#n1bk;Rt2@`nQPQb?Ay`dJck*v^Ss zI}}${Q1+V^wB>&zf0NC#Ee4(>eG0*aB=iPzE3VecBEEo!RF5V9pLa{Qu9kGFASvV3 z7+&;WpCUgU(vH$~SCjl1uG-f^HhSx;D&$swOVb5VN1MjnBJ9ZVM+viN6;Da_!VVT( zbCPUB{-2*J4FUEi4dXP!nh&(KuX0E~8*|c^)p%Rh?^*>eEbeayn%u zorHelIwm^TyNO7D(loSZ8=XuZHTOXsGt*^=e**HvG)Uw4gyg?mJDbY4V(%=3g**m) zp$vTjDSz1TFXgvpJN?tG0!w~JTTp?m{3&SUO&!o-JZ+jI6hf8>*gU32zi&R?<(0x- z_y1Vc%E7*6 zAg9>$6=R|=ZhmV{L++T@D;S|DhJ3HeWg11L8`{L|5cQ`+W-4*}t-zx0$p1#-u7y#VwDklvcr2GT_9;LA` zFU3#E6Q>aejC@`|pI7{gw8Ar-haXwUhkZa7?^vRFO1J+8|Hl4itSc(03_)TSF6lQZ zJIGJ+Y5hxA*z5#z70GA3;pmwgf);{`%iNNgAUH$Arw=t{cvF`&a({Wz0fI~&vUyl-AN5I#4M@rsO- zQ|k2_!>?g(vrDvZOj8jR#%n7a-HOoFK~_h|{9@US^8ZKZzV~MXdOW5A5F#8OhC$F+ z@>#qHOHVF3<N!@@h@CR0-!Xu%`>%sc{~(o_9D!usM(?;J+bOIy!i$m zvq&8UxB@-FUlGFsfN=c3HQyB+#a1lpr9Pp6x5<4jV$8t*#vdM)iGr#BnR>aaYvuP-$QW3 zMbtMgnO$z$|1bF8ia^D?0=}(w(K>HL_5whrLywhzxO^M$uTUqcOS!~oIH(}6?0byu z!aq--95r%_uIVe8nT>rRr21d~C*Pu4j{4zE);|J8iTx%Vho#Y>TMG5fnnXBNaHZhU1#-cRGGc9M!&a;1ip`;YP~Qd-2KW&f1e*HsNu*U0j!Ayq2#G|0>)_+6*Yvf2y&M z?dQa&ejbULnGxgrhDD50xfZ(FN?40yBqH|3{mFAI21U z<>hm~Ym=9RwefJH(PeJ9b<@gsc#y9D_i?Qe~tZ}$6pWC$#+g;cl<;6rXu%<*8+-18#3Nc?%;t2 zwp8Tzm$kzswr1MFT(3R<+suu^^3du8Wv9|g#SYzK@Omy%YZABQkH^;OmvIY;jYz_zA&;NDh|2EQY^F4*ZPZdf9ol0pnV&6CE3(X^df;am2VnRfr zY++hSmuYT#miDy!B6QdBk-2Q+t;W{{@DJcTDeLH}KZ7Oo6mTnYtMXG)*2d*ic%);W z6ZpN$6=P-*NScgPC=S}vk?0=KoGG&L;kVA4U2|?ajPajpU1WcfaU9*PW%6=~zk-&4 zjVFD7Ws!r!#L<PQZ|?f>gypDZq!c zYmCUvC%2oPZEh|=e`FV0@VU>?rgk%E--MTd=@=(Y>0|N7YGJWnms|T~lkFnGazf;> zKmj4IpQpP2&fhjSYI0fhVb0tNHG^mE#+8o0p;uv}QA?`+vLWg118X|G7m*7-IJiU~ z+W4Hpn@~|P?WOdTB@JPU@{sVP2N6En=*?FYi%#C5&((Bt`heV2HIRw3j=7jL`bK}P z&2|Ohu3wuf_`I{#>IpX#U%ufDHsXeQYMb+A94(^`8~lf=6y*4X#qOt)AU*zPq?@u; z`H|q#r5B%@Vm@+dEV1TdTm+)9Z8|_NjE*84NCN+07jioV9gmB12$~pq`RJ$46aOJs zFFXt2e?X)!eQz-o^|i>BOPk;ud>U~PJjd%-pu4QL1G!@wlkdl^AMiNlL;Sy_@EGI% zCx>?Yd(roA{@3w~&tdf!<_?<}lcE)csh-hPMK1J270&;F8R<90dYtrlh_sd04MLm* z78m^Y0z8TWKFx9Yf)u^vf3oTMPv*eC@1Ebyi6TFOei-w_ADg@R(~Y0)=-%93Y78Wq{rrq!o^ z-vWTP`J`%7svJ+{hoh6&1_dh(FLqn&U@WqVk+QDAH=b0mcuX3A_=9wNyii;$D`Agd zc&rOff`v+c`uKeJVeXr)Kv9B!=HL@o(At1YH=Tc7*`ZM02K3|JG+p9O|I!U{?Q_+iypAmVk zF7A>|+ae|3?j9S(VlP^xDYfb25CPugdyIQL28T{h>%7OU>}k8t-bj$b@diwjfMQNM z+_+&wV`d>EE?{(*3a72WKB-5{xD_xPK02+X?^b*!8K7AA>DBeBtgHXJAV2tt`7q(G zID~Vwhkz3=y!3ds7E|jcYf>fm<3M(o7Eet3n92 z*?H1FWi;UMjw#~*G|aYWx4tG^Vh8d{@xA<6T?-}4h{%H2p{WB7_G6q_{EmHP*8gZY zT}K%JzZkEtaRI1PC9882axykL-^=-@0KFBxTA?k4IDR2_q4Ao6vKFx-yyf?0(H;Fj zp06NNENv+3)VbqVP3%}AfY$6bog!GpiT(s?+WbF!q0h? z#)r|EOdrTs*YDr=H}jJ^30lPj#j)Jwyf5+ULs~ERudZ0^CIv;PSD-uW+NQN8+vaB| zBNcdBKj-Q*Do<#O9X5%KqF2+E)W$@l;wbx>kw0{Kx*OJYZ8xAU_Ryx*>xA6D zA?o+TF(DMw87EgWBM!hvpZJtVAB6n&4gd1vp+a$Se|W&yVZb!n=SwbN@o8jMfQ5o>*&v}VHTypl%$D&@IUf7q z$!IKGYndAho-m<_Tym2UUBKbVK1%6lv4+y@U9iv)AB1^38cV&xmU)487EU1!&Hbm0kVy3z6su`xY|z z#(a}&Jhk@ixTPh^rgf>hO!{MLT8%s3-v5m^V5A2g-q$|KSw*Wh$tM%oc{Rj{WW~!k zG8jnGyce8-<0aazGFguW7fev}s3@038rgM|eY#k1(?lNgf(@BEdzjxuEnmOUi;ppf ze4$oJqT)y2AEMt~Wz2ESk=>s7WIEfX&(FDe!+&66qpzS7A`oAdeZle1*F+|PPlv*P zzfI2TViDT=Hh;o^;=k*8 zjX~Id+<={P;>xb*#Jm;n6ev@ilo+pzy^Fyu_VA4zx#kYaLBg>d*T0f2zaLeE{$iiT zUzvWczX{KP6PglNMgLiL{6GKuXazSqX)!Da)p)}-lHLWBWC_LwY0>Kwt+}k>MhKk% z*^Q=F=6gI;W)TD04hg5Nvcni#eNb-1V`Cn?gib%Q5Rv2urUhH0(bKV0kFE3I?`kC4 z*kE_CyOv{Nx6!bDM<1FOk_X}ziWnG{bNa!^w%O9MBh9{~%b|4X1Vo++(St8Y%xU7j zNzl9gNDe=LLt#guFS4(fLK9_=NFSvfDr_yqg0<~U$yRp%y5RpU>HAsa>GOZ|_u_CG zn8`kpxJ3CvsLx;0@jiqzVhe&OZM&U(B}+9P%^b6t5}d2jt>!T$@F z`^!y~s~`Pve8c5t{SV#uGcL*Z+T8ug{EWd{Oz_KQ6z9pl2$U>R_4v8r|6&%x&_zO} z?%#E-TmI*qSUD&bo$EAoGM4BfBg_2i2OQ%Uez!65Be5<2`y|%ZHTmp^{Xnx_BYixM z{Ste<$B?1tf32PrcLvc-IUBZWU4rfo@Mqr~KJ^ekbt8!~#XQ}E+9XNWCOB{{YHe-W z)>|B>TkaB*8IQC%x4G(ZGaZ5a)e5M8&F@yA{A>3pMm}S0qpIFUYS1`wKd>+UpYM}C zpFa2C@zaN*n=d{-gc=WGi?z~o!k1vC3M{Hcp?i@zzv8c3?`t0*CatYF0lP?G$J8Le zIR_^Ali&W-pESR{fm=l6vc_2bep#YP6}d%r{2Y5}y?*1gr>@Q#D_p}C1_Cpl(Yrxq zdkx2}2&qe9FN_%<<>v?_ELgN59U&QIRA$YmlA#g|$= z;Z*OY;}}b-OqvkOS}YP`v8~k%sDntL8@o&2kmFD0TN*3l9 zKN|4I0MumyIkYKo=;52Z;oAb(?QzC*_(yVYGWaoy3+?;D<1hH18j{iP8aojGsyhI9 z*43`%ujU!1_?eu|_=Wlj%=SY4uLo*ltN;De(L<4-Jp`Px<^K`rA9Bq2UYK6YQGbLm z)>GmO6M+fhbW5sBzhs~>Wh{Vh#jWW0={wykpr9tZ0hHGgf?lZYyQJvTTVr@`XpV&R z&zdei8}hdNG=nD-{;t0dtyYAj+cgH~TAXHJQ{q0a4SA{0a*WL<6!!kkeX}89bC*w? z2P21 ziNV(CjwZv$GmI?$k1;M(F8xy%`RKdHfAn)Putga$@vky{CU8#pcP13%Mf?*Tmqvgofp72p1NaS_>*A2Y_BES19BpHZyK4FVHUEnYz1~dR{mWzyOgh2u@~_hb z*IDHlK6>-n4gWgj>*LoP5$6~OVr|oXJ#tv{K@`BqCq?9zcR|O+gX4vKv*@BA8K0$3 z(hlA7Kja_jGRFB0fc2H|FCP2gk4ut0<2%|N{U~x6;(v2wuyfq_V*IzhxE4(v;2KU! zpHSPZUnWIK*RdVE3B>5J&S1tvPZfZoAM@okITkmK&`Mzf1ok?Tnlu29FI>MmzM8TfZ63b7-0Pb z{#}}Q3dmxy@#*nbrWV);X^n9KK~67*#rb*qZ9WN2g&qk&XwH-KhAXTQJDdRLH}a2? zABq~zpC%31rFc=nfG^}RifVWpYs5=<0x$Ws_Fbl2=CTOzB5UzU(&uohkn`X~yH5hm ziXo+&3VLKK$S)&*S)*gR{tFs8%yu6Ro}!qAcu%=Ru9=*ls_rC=&R2JW^K!f3KPfgI z@jK4LUPL@}Hvl_D9MtqlTK~%|RF&?xEC~yj^i6$Q8cN|meYPvTe+9e_{AcKApUQ}@ zr33O6EghKc@DHC5Y51S)O209NvAN<6;5`hHF{9{2j6{h9u{2OA>-WV={~7=-)0jZiPBM9vX*(IuWZLu@t#s5ZIz zE`!!s%jhE3_1H~)`<|aTiLw>{zPuKhMJ^MTtmIQphn{2}^2^aZ+^`r=C*yb%_CpE8 zFMhblJm$q~vJ5u>o_0MM6KMviC(lzQ`Lv}XMq8C3{qf2Fq;vqWPvj|NCEvnNeXjaN zG780N@7JH4Mj1DG(cgP&d6H@P@zetIyv4A^*ZebNp4j^P&#PkBz#G~P1;$Af7*x3G z-y2(a?dPb6 zo39L!x3~h=C|(%*Z1fp_FTf;HKgAl^o8Mhbzx|y7QNq})~TVDd+1oMBWto+@iBFDi4Q4sdr z{s~M|(N!u3pna6OPv7Xaxg8X1F73B*&H(--vUG4AC?sp>VB|~6LKN!;&JFX!XG8`H ze!@zM9`WIXI1H$|SRvTZjYl*(=VySbj zD)q{U&o#Fu(}ljI4s)Kw49#iv!!Q8Kl6Y%wx&GvVUbj)>pP%k(M$>AorjUDi0x+=k zktF=%DBR<1KC@xrGku*R^s{dW1qPctH>rA#P~FSVNS^K7au1 zKz6A)qL`(EPix{+Y~O;9J#A;?ua(8T9`P{F5&2>!8txLK4c!KosX(z7h1B+(WJ{Mi}!H{ULg|4}gzq-~8&cjBze0o{O_=8?dO0 z7^qmqN8>*Oft4pYLu5k-nTnZ%7?bYzg&a0qqAb$*|lC0mIKP1+KsGe@}>g z3TjP7*MQKI4s^?6EZ(3v0uKCth#_t{XrAeq@2f7r=atsKlC*LIB-kc1_8_6PD49xc z{SEl0-i*UG)q2=v4EXYT69?rQbGpr(X0VHKq^ItG3sJ6@SJNxxgMi^rxrXwH%sJ6t zmBf_&rs4ywj8o!q^3tcxbz-R(Ya30Db&?97Pk$cGO#HW-DQi&gMeM((m-Kv}b4Z&* zZ*l730QX<!WUW zk2M=FrUYL9bM}7AzF>9jC>CzxCO|5~q|Yfw$NE%|vxT`n&sg|u!kvP84hw(z^gd5M zTcBGyk3`ea`uUc=7D%?mryh$68;JQj=%!l;2A6KkBWM-fdSUKX+*u3aOEIp+b{J6e z$)Lm5>o{VeBO-#X+blEiVc}LJwPF3b$XbYvzKZDRbDS^M<><=>iF$u%XSlh3c+gu_zPX9eMKzLKS7jfgdgS;qF;!S-%k9?Q!(|Q z@SigI!y!unnet%s-G~=kVSTqv!@tRb^&Whfc|#p-YlnsAdaUtds)vSvJxgl>i;|1o zZuH@LN*nl3ebUu+O>)}nx>5$8ab}ANUFKi#zeK`pTx0hy$723yH<3%OsB1l#C3K zbTTa?&R@*CDY%Nz*Tmjpjmo8y>~}K4(EFGV-^l~F$LZATQcU?fwx^h>;I9Z+A;q;n zNF-S}6n;Wx6ryqCD;%S{tkFN)>>}5Ovv2bXu3?goQFKOH&<1;@(pPt8x#>VQ=c`8J zV1(UoK3h*HS8+;h(+P+*u(oaV1$<3w{DxB#mgN z8*0+yqVKeIPSs+g2xA9}(1|m0693rzuIYw0^|%<2UAMxbP@m>gB&szTXs$2#AMy4w z_7VTg8`~HKu+fj??J~!;CtZn1ca<$n{4}2~aR~g4;xSHOSL7~zrS#@B(^uq@b0`M> zoxk~y#feaS3;lnNeq*HJzO3@M(S!?w)LAyG-fF}OW#n`JUBh(I3#^W)%uUv z)4nDkW~|?_2kKs=>Q53Y443(&?U^P6A#di=HfIxTId7TkW|Zqwy*`d|K5y#X9VnJn zd<74}H9+U1T;GVN)Ro=%X8kYn6$gdT3X?WfJ z+!svr%0fjkRmz8!E%RsIPvTm=*oKPNr{n7)kT2xjil<$%So`6y$&ah;O)eZa=GbiEdRXPp zc_T6zotNwrXE%R-xCuAp$gp)yiiJ-Q2LQYkyf7*~@F3EPYELrG!n3-r9^Ah4PE5-x zZ_8H$V_%DVf0y2}u83MJ95TsrE$Cvwl=KDjet|#W5&GM+uiWf4ZwAch!nr_-XPhhX z#jA%Z21C62QdBK}sM$r9A~z`NdSfB`EOJT1zl0LokcLOO0Chl$zu_PFHJkcP*|%6M zmvHk7{`>rwW6d}1I{IhC?Eb5X-*{ks{}1s$pMdTG9T%`6{U~UQaICs)+~Sv3FRD z%uj7y$J;d;cR1YfFU)*6Fs`-miD%IBMMU7ah4(f-`$X-O_?Y+^TGs^+(quB=!x|m* zjWI~r|FdXJfdzn$yliQ4{%vE>|kLknv*x3fY&~;3@Uhw~!@NxqN+ir^pnnTkS zDukG<$Cm$JTYQ>D_RLwp%)koD@7)GI|BhP``m0?Z;%XytjmZk=82a7Tc`>P7VmaV{ z#F?52eC0Dy=&24{jD|@5&^v!T4rZmUxuMyLqERf2SaN!H62tGdLw%!+@g3QTSl;pq zN~%4PAZPL%AQ`FojTF!KP4GBGUjs*`WL`&Ouk+1xCoSb&F25~+w z13^@cuKTZAz2@P|zEm8K!REg!`H6z~&1Ed2;S+{};7K3K-sLidhAPhO` z(`?*i8hmAuM`p)Kv(WS*V;5xg;>%Kux$!jkix|wdCH_V{>cu$V4abiIY{P-x_nMDI zwObgeLVC79L_k^2cV(9CZu?@;TGTC)sPo1~iNc_d4#-U_L#jr%MXZH}L|^^J#C zG3ZR8g9Vf?7NhEN8}><^Fr9?Np*lcw9RH0bn|>0TC718>k08Q*)7KQ_ZM*@f9&KO{ zzD!}R$}1457st_>Nc}H^rkz0fY3Ekpp*e@nee|$%>HUHhJ}#SK@-yI9Ll>4&Am@p} zdm7f(_fLk`@e6|u@M0%rc5Bk6$L?LW;d#J6u%JtP0X_EOb0;V43yKW8y*~PTDX_n# zxjHA_t)?6J7mEqHvDxiIz9?X*4j%KO^MC&LQjYJj(ulZ%a+4gc z!uD@H!sTDQ9MPp)#?#HoK<2n;?r*e{rdNolOw4Htka6?fi^(;2=~)(BIzPsJqn%@% z0V~4;2B0wZ!VIme^0cjA>n4=9L|C6G!;Dr90#4JA-5Rv{fiWM}I}Q9FA21d6y(Mle znyki`)cwe}`$O{Ro!-X2w-K`SwD8}^Mx!mbn0|3OM+`S>vXP8N0XTDT&;NLkUkSwh zip4=kyfxmBuIMK;XWg*Lf87alPF?0Opb6j82F*{AZV1)$A;?>C;o&fdo3_O1AdlCr z#|feJNPed^!^{d_kG^h9?HGKM$P@5)whuR)qmFafMz@~0ZEd+p`j30PsYva5z+$21 zH%Xvinr1ih<0S_vTTPx{8SBBHpix5VFR_`$Qnr!`bs`TuOF4vY_NHYF5NqF`MAI7UsinCmW+FU3Ie zC+*92bWZq^`(Y}^wD#5MS((pIqKWXkYNv%di!nyA4;~fR1jo7X0fM{Ogvk zqP?pW^FR29A>++nI;ZA5;C4^^_s-JsYl-{odckDq0yBQt?#z9`zcl}mrvSEJ*Ad){ z%Aq?kyUm>Ve~7hb4xYc_!v+86@~bh=PrNeQ>f=o0lBtyDk3z&59tBmEJ^0ku6IKcn zSO7U`y4_pA-BIw7eI*w~G(@Gje1o60HeYRNF2ZqNU2 z%nba8PTv>&>jVBdh!mgr8SQTfg(i2%)BFZ8F7W^MrBW2?fq_pu{Pg&3^d8sG@#ov^ z1{m4L3zaN}kADL{+KYBQ_8Y|o3!po_aEsHEaZd6>yINPA1MY)wOEHj-5i{~D1kaGc zi9P-4gbdfoGo%5G>9=>je_0h-4{om^NNM^N!v|SPvQDL*$bc+*R);{5k4}^tuap& zxcSXvqnPLg%g%>AtO*QmaKvRG-`VNyy2J|@Z{?_ZULT@n((#h#duj9mE{bQV8g;w* zxtj@e6W8Fp`owwaCzu&~9gHP?IpRLE@jiF57+GM$hy`)-j&8ctegMTGF8n=)~qf3X1)yIrneDBBI%v{|}!?Kln+H!6%5Dx~W}> zUz{&K`jejhiNKhpWcB%cOk^A^fMy}mBPk@inw02S>XDLdgVI{8+(I+9Ws!3so;(0e znyT3Wc_O|<@Mk>;s5by#ZBfD8NsQB5EhJk@pvn=Qf5=0dtgF$2UO+#zlyErllC3|9E*-VvmKZ6!g6x%AnAtB=j^@I zn(d#q*UIQaag-ys_!@~96SDKYMoC3%Un1rPK5T=#${}r za1k2CiDf>`|8g!d>2gVJ$odhRLY1*$5Bq<dSi^rO={jh2G!f9hyEDWt5Fl>USlLg2&MMwZ^0gW{ z4yIM434c7UmN_k!;b-bcK@Y*}D{-!1}@;~M@DV>b@B=lOv@GgDm%3*#mL-HH>26HvL3T-XJ&=q?XY-SML_Ma(R0?gcL zsc| z5GdL)|4YW045e|rD~t`?hs)O_qA7n$FKM(QFId|f58xWkCmd%W27^|PDf8!Z@w94k z0ejW=DQHk2H+aQ{6tCN}Ui{8tA1hEiHPhYc1bG#?0w)>Vg_J}FcGd35GNvL zVIPt3h~;C?ID9ezl<%G4sOx|`p8t;bVGf#Hvg?H zcusGK!e}c}4f|N(AHN3+;1deAG*nl~QgmqVEbhM)?OpU+d+ zgmKAx!~arDBYn4m=#jc|GF@;|bTcHIVP0GMJAnGH56Zz~1;qu)!2kKOd}5*B+OMjU zA4P&m0}B8duOKh-O$?EO=EQ$5dghQUmUesar=@*iw;(E8`WU`TDlL5&`lC+#=a>ur ziA`tEa5XF7Pc7%`jd^<2? z%Q?={;wnF;gMQ30)4Dx?5Rn;j=_-x%S8$YY9Cc7Y++b%@B>47;CP2qgzjknW7AtSy zO!=wjoFAgeS)eRSFH5*bANJ!?QOZ{=u{^<_2tD04EsDB;f`I|!v9=;ktBrI%dKQ1R z`Rv6>-HWq&+pyue5pCQ0iR(M(RIocFUv0d(A;=E0LC&NFHklhap*81xH!-L@w3;L# z56I#(K^=07x(yZSB(0t{EOnIT%k{6;Cf4WW;#)hm!smyN2yw`@^hiNG4IHM9Y{;K! zQUGT-kK(y+N^S9jH*Ut;IHZ-bsv!LHbsHZYf-fN-V1E|FgjlahWmQtTSO*vU!yF&E-~Pn!EAT&y zNEsKvzG17xU?*Tw_;G&f3E#pu(ut;AM!n_yJ)}45WVrdTOZ`*fwvTJYldy#Uw`hw? zm@7&nc6|Az_3Dy#*hkb32JK}OGASF;#R|A9NAc1u<37RN@v|LVXq2Yt1btmtZ!$>5r@*7|x+mr^Yr2v~4>1v~ z?}V1eWI&T5kM0xpfd9~=cE|qaC#B<@rw(jG$4!pT5(L}K+gaUi#RRJ-;uI8wb=Agv`w_5Ucsh?|6T{Gcqm6hY-*{eu>@XUvGRt% zA}2Y9)GC(juyGFj6bk&ObNWQEW3IK#>t?K_G>jo%VRJ!RhOAhV1fJAZR{5ug8LOoK z{4i%)p4?O^|Ldz`X>lX1x({> zYY`fM&qw}OrZ#20EBsU)mRoT)3L76;H0hIGM6$p)4@+L~le3)yBxis1&R6_HyEfji z|9X_-ByZZ73|gm4`DI`t#^BSj*+1t(-&$Bedf5m*4L4K%=6Qo1Fu}x^Dp;Z~gWV*s zurQ-jUy1+Lw#fl3NySTw3ev$)wvM7G##tZl!xGzma{{$y3;v4+$FI`2NxxY~g<0Iz z8m^J!bv&}@K@&|-Fk%(-uTVHSt{pHoZIXcu2}G<%NC zxe9IYGy=AY^a5XIx7#LJNYfD?J6e!>z^4HiV~vNuNhkPF3z-{V$TyfCLwi?G2%yjf zb#?AX7*FB+nTae2C_U1mRi|9q_?F3A+S~0So4mmnikHRaKBIXt7Y4R*2DGWjXS2v~ z+^-ddq9B?1Nrq2Uc;*dQ6aZ6S2_u=uC_H=rS3pye@1kYHpXoMJn-AY1%-FKh4akoL z?s`9R$6MEt!ZqArRhrH3+VJo4X+fC%KGT;8#(&>&vTXuWFDUX*(OKpZSoAnl{t^tu z)Eu6t7YXpa7mgHSK*(GvS9f@muQRz8mFl}m)1A=r+BaLLizU=Z?^N^wa-0x@_yzxn zt8N3IoG{n%?|z63*rwZ2)OTK^V6960NRx*)4f*hY-vCd~nwg~Ah%N^~gjfkP_2<9Rut zC|&armu-XIpPZf(&dsc)cEWbFj?4Hdi=lFgI+WYBJ6gUMySkt(ny)nxzCU$_+rBRl zsBU4P-U=9Jhe1W%*+n7$Dd!H6wyv;P!)k^VUoC1qtxG;_K|_4R;V0*p^zlrg#aG?< zfbKcSd@*rIR3gDA2S5M4*)r&G%!WdWE!c{ulj{k&5ET(y!60}#dKxiW=;{6_)TmVv zBMNhr|18IH5!A2s;;VJHwFz?rvsv+IGJQ+EtvtTRTg{k}+WbLaieFFx|DO=7`I$G^q{+AH%=uNozsm5fnh%x2 zuOJBi@O;FPABv}E=2A+o2i*pvpx5jexEiknpyh}W?`O5wyWSf9IUNL6%Z7FH;ARV!^zb_IZ`n6GMgTMN55&K9zB2@( z@16WgYlaK{js8_q*!Hqfb*had$GsKnGu;W@FtDh;U>B3AEm=5P@VfO;qt7@G9pQRp z&fYvzMK=8BIzyK!I{pQ6lSIBqDI_dWnYjIgOX}vSz+92z|JVQaTO_cM^7*DUV&UJ; zx9bn%a?==_!cP-y5OG6d%ejW0%q!kzF3@-!*{*}79yQsehK-5 zjyK(Sk;`$@che&l3e$E1#Yz~Lo0lx`HF^T-7oqvfXf=Pzn|w7HcfpANw1I*9JdGuP zYSYF^0KY?yWcF>vPD-7^BD`GPfqfdUf4RA=t)V0 z00lD9+|(cNg>pl;!nCk6EZ0~3_d?#^_ZQeEm5DK{{BvRv{rew|7C(|7=S?y8m`q=g zi(bCcf_5{Kq53WH3PT3bY6gOS{OgU34B3_ePNZQYT&IB&awx@Z>GE!Q^8Babzw+)S ze5!VC}{@+EKTHl_Uk>hTik8RJ8GPP^!UY@j?R;a?y$@a%1Fwd7wo)=DuZ|Q^;VOEV?nDPp}XsV3%Yr=8+K= ziF_3X@?2-2bd`8fe0$2V%N(qe(dPdLgIr_}fFzi&aDmAn-+S!Y+du-%$WO{wQ4 z>dHFl{gBsQ==*%p>JxHX&y$d|hd&EsH1ua@QiL-n;J>4H$iEy|6ve)ZTlV&tPRU#R z2+-rW@q=BqV+%!b-sU+xV6B2;VhGy4PkiP1hV%9v$86CCEbQO)Do6Kak%mW+>8o%( z&$lCSb?4TA-juWYm#%@4=#@Tck2(1le^BHJV-LnBT+&0V8E&)jAnW>HNH=Xx5t3HW zp%DLNGf2o?-Zn4uHnH2+I@JG1d=J(|67%u}|NSw&ycvKwM@rw7715HR3!xZH?rj|Z z{Nn5IBlu*EvJU1?&~F=EyA&P%NTXho9i7c=G+7(hif9&+xj!9Njh{i*D{L37_$^e{^PR zn-VMpf&Ex2=>a+QZlWOh0?grGV2jwOSs`Ch$xUc;9T(W9r{Z(;nO&1XT*^^8y8BX-`lxpu?9v2AsWgTl&p z9p|}R@NaV{(qCl_UA%-JIZ@%?*hS}%87EHMF~8@r1Iz=16Q9TOiDt=Iw)F)gD@W#7 z16t2#Xrr|tBzOE{u8RDRa}fT^`3!O*%bA&*=$!v5wCluQ5~N6zaYU&{U=CsgtS<&F zJSUttJ;t1EZ4r4%W!9w|bcY7T&6#gM}R+pMfDfIfMF?|W06$7Qui*5&h>`$Ek zrQu)sv*)SQuels5x6mOymU+y{0m?Sgyq?1=PY7I7am)+JgOY}VQ$OL?nJZ=_206>c zELNq!fca+bD!0M=p>gA+=bgNoa|kQ%UE|V6Jc%AfKv7drxxTcmIU{n7r;adAhVOzZ zw2`L+eLFsbJ9cn8yjVfOwmJHfQcjx^aM3{?EqV0~D!%IEVhs^txBqaW}Wyd6E1jxk=_8zN@})GeAC%iZTc|H{YlGxdtG2ELb$OMr-*^H&%} z{|#_I@v*HR5&s7h!{$^R7s7wz>CpLX&QhNyTqvs|AjO?VuPjnqeL1o zn2+djJT4H$S6l2|ajiy@q#kE{ylgszRrc1?awUwaa1)H>rAGJC?+_Y%>`f4J-dpQsuk6E>n;X%9QD+aZU9? zUqa`(g6rW3*dt9A9Z!0|Jh^l)T9oo+NzyQCCEV(;KgSNi1 z;6Hx;Uz0HFu|7us^gUquK)aUHWN}LY{|#@3o5PS-nU9WgpiyZII&3j5ic~6GghLk# z{@Bd`l#hFiit9=nu9{0^-rzwj6eB)=qj$^yBr@hWVZX?8E1Wes(aSvKLQav= zb;_aLc|aG4jp4nlE93Z@c0;+W)9Fql^M=jeH^0djPjw600Cd%gQ4%>cb6N0#1g)Z8 z$V!L7#0K_HU&fBYex~TV5KE17#axb8pDSk3uiw&kS<}x(l_bcs~@9uxt!3J2rqXMf_g79~`Cl_*BiABa;;9+*a8<`lfJIEj9fPuW8ISZCzKY%0~O z4H^F;BX?sv+^sTtg5>NzGCr6~dwh%vx|q{K?zkojMOuks(n-Adbd(I9LpNA_I5y3= z)b$aYf_OEEW{QiUmi(DNou^T}hWMk}!vWunAN;oO`T7o*H*j?5Sm@pN1}eQ608d^M zFB(6G?gy{NhbptcmIi`|soYhfxONm_=>vr+%>o7%OmYevPw!_Rig}}Or0qPiM$yWG zs1{&?Z38+yEyM#V>S?BkPwWl8p$%C{Tt<;+Q?)Qoqga)4cZGje55-fC2{{yirma}4 zv0~}0bmy$Xvv#{T}0Ge+S=d`2Ti{qW2|-BL0sw_?fSx?hSRpZ>9#SLer7 zGRDKF@FLNHDD|^P0lt+w#nM z)yY`NJ(e_RG$j)?-|*}2%jPM4=`ABZ$U^J$7Zla`GSpF;}lg7lY|B}g{UcKN;R&Bcjn|iRPzR(XKt=|Mjpo5LQ9W8_^=pFSZIo+IoCs z2cHv+Bb%S2|9$Z@#953Xy4!cpC)y&|mRouZ0$-sxBY;O7m*>rA734hQw!qr@3);pD z!As#!tX>iEWG*gTMp3~4?@(A2%FiP%tNeDLEqjQ#90yxbfX#SeI426_p;~l%PxG<= zXBPcNn=V)duxOE{`_Q*|@xt@jS--ps!|`gh9)B=tf)N1!ZL=N=BPfGpwuq{Cf6#GBd2nV8Vy6j z+H>lH2NzG2bpPKRc2NgDxsBgbwyx(j$yr`s*Q0-Yzn7=5@4m!=LS}p?JqqaD=D4{2 zx%^h(nefl_(I=E`QpynGUt6Zhd907ZpkUGqW%zx&)-ia^=|GHX1y>*HaqPr#GB?s} zGRtjlg?UgWk&&|DH7ym||Zf+mX3h=H^PvpPVigl+ac~hD(7Zb%vrfL0fj)8Q(A<>G+>K7k9{M&OpECQnHQ#+Z7TzhB z#oR|f72A-XE(G(5>#mRLFqi4r2rMiD&h?W2vtNt3b1@-nu8-iH_;V+ETmFGtiZe$+ zg70JR_RnCd(w3mSXch9Qg*P~zdH04z%QeaB>VM7J@ZY;EbEgJDW!V?UT5ChwH$J9K z7JGHwUa^2N3iaImbMw>lgR9 zg(ehR?JTU`r{LWeB->_{`PmA^ZPOiCv5Gu?!IvK)MA^c8p5rIF@SPfxW>N_5qYd5K zezAwyy~9?>7V@jW!sJmfxC=GWL}_X)jwO}5&zFJr!Vuv5VXoe*QW)?P}s? zw?^+N9>@ACo`61lu~Bi8HVRv<&rU<;6BZ&%e1*VSYcGTK7^)&73oQ&gv^D5AGv-2B zgbGC3O%C%&+h`72?Yhrt9@no<_@ukw3mIW_eA+Z)bM)_yv`lGV+Hg~gwlM=)`#`2W zeWe@c=~$S=!j4ZvKKNEmjCx4l&+TkBuKz`jyR{Q#y<)XrF1uOd6^gSAK$th(s+!H7$0$M zn*d(oQ0f#pCPCUwlckR?*pim2d3`PPWwnXNp)&0_PSrO>U-{zNSMz(QVeC7B&cH=_uwTaCVe;^x&;GdmHcoT$@#^57;9 z-zX4@N!|v2ahNiAO5PYrAIjioM-0>agOy)4^7c?%7#FgLu@(MADBIP2xhgu^oe#Md zrB`}U7zjG`8MGSbA|pNg!&81c)|Q!Pd`ZmNEr!J`BK(x70Q5|@LSDeN3dbU{6rfSY zpko`EH9j=_!`ECy2o!4iuuUG|#hjn*h|JN)p7D}D+1v-RO}D2yza8t152P_2|1ys- zU3|7nz!q@>XyX4mcN7xm)3qYEn<=AM`NdW>v0Qvnnm+pKOr-y|+63@_)31b`Y84?e z<3@|Ar~i@%zWKxb#@Jjx><7meQl#~LLyr~JhpIQ)=dCz=-MsuK{G)suZz}5(&}R-=3(vO=9FDhTlU~>n zPB2HV{QlQ(-KcAGra}0tlSjYu9k7`$FsFHM8x`KP$O^cNU(n{xd5Eee#F2!%MDD>L&f~9xHv(lRy#HZSW-G`p`KA%G=iD+0{<}k4Z)N>0T_{jlxfn zdU~}06%qn|601T5ThfH`T*Pje$#DwJML^r+;f=?K~-lZ=Jfq!d1}4 zJs@67S%5zUTQqT~XfcW$C~J+WdBb1c4gar(|5(m!g{i-5F9}0_dQbs(i6xtDp78Jb zCYeF!()B(3Q)CA=0DL%|w0_v`a;Z@4NxnWl{bTt{&Sl88-sEz+KK!eM7X^A~*<%>r`xOv57F{au*yM9z++9 zxf#tnp}!LzFwcVg_N32#UgPrUfj5@o>BB0>%&;%2obaUt6HkegbPoUoU?E)Z2V1y? zFF8YSE%d`tLc#amVe?68_=o)8)@Dy}M24J5vyX+-9_Q%B$1?S|xt`m+?FW5RkpA4 z(JLwR8#$zGHU4~Wxv~}Ly$zpAHz@E1Ec3M@+rvAK&JyT;#2U*OYN3|Pl)f$ zKk6E$(r5Xjoz^2@Dx|#~>h4QVHeTpG6(VUq5#jZCE3{wvaeX!n^vz2^bn}^76-@tI zs5Rbya2>!*%G!!`>kT6NPN+w<4$Ym{(%H(>7yA=^X1x~!v~8#6B6A-XtRasj`_jp_f$Oos^|%FW{FQm*xQ4UD z1Rk@2hZ#`&aRJ*}P)S1EPb76Jeok|!?r~|*zH>QMzHD??S-x#V*m}Cj1#``wk#Z1V zl|REwSTnsYE{P224tR)gJztJm=_7D=QeDy<+da?cG9*D?ZE-b~AW(ro(I&tF%RxS?3vZos6Tgs@9& z*=!6pn)t_sg60x)7NtlQ*X4#WxCVj6M&Y&f?Quy;9z~skq9Ak2j7{JN&1P$i(~41~ z-#o|sC(;AR(8sz)>-43`YqaJd9*+)T^Wlwh1;TGfgO=#_v(hh{V^#Tjpnrb8zbc2} z^>(cOs7ref0o067Lt}yXsjv?IaGCqcW4b7>G|NvfBlV^W&O`*{#6-)e~4Mn={z zeOZl+w*pKrJU>u;KE8A+8SB4Q=rnmOJ_1w5!IgG^r_BpbzZSn6q3hG3ptH1{zYE%j z7X2q#T-KQhnAXNi&P~bwp&y*@v6k>JX`6p6#`Sn~8joGq!fw;q#`ierDbE1)UOe3j z=!E~^4;lLV`hM`AZ$A1^;OAP*IaA0Xx4CzHT;kIb18LMX&#t-fpAY*QB*1A8hY~)1 zzd6!-%gmZ>+ME4on0}Ad-(?8~xb^44`w$HIIIGQJ7l<7t`VaNL8~&T$J>CrUF8&IR z(+vtB_}$xnDmHKJ9M5HLsGyi+w}pR9bWdqt4c#_Nuu@o^xp+7|l)gt>|NalhQxPJH zA)o*F(}nURr`CQtxm2M|irn~s^KF%yj=2w+!?eAAM7al~`5Lm@L6(JGnXPRYhmUD} z7nx6*0$o`|UiQdEQ)Yo?kD17Wk2B7gt6fN5)Z_fV>N9y|8TzJjV4y9{cKnB&uQga* z{kj$T>5_mY{7q@9t7aRJ+>_e$|ii{;J?qqTkaLWKg1Q4`&e7%zqL!d zh_M-}WSRf7knc8l3*|EAv+=5(UNgqV@376GKyrVYu)r8c&;QcC30;XXdE9Oks4)It z1#Zs7O|OFwz`sP?vkPn5z6<+v+(_{$w2dEm#>eZ5FO-90P+AQywHOn&qIePgg!`5@ zeps8WIPZP#F^BU%M?=d06u(+7C!BCtNgXv^Ggg~EeU4k4X1RFHe#WBBFoy`pw9F+` z_$$pmzDM{=;qQm>%?O>ZQ{>dGJqnK>)(c}FS@Z$__1_Sb=iXT%dyr9}@chxgbL@-P zNBb2#z+Y~gz^*5)r+;N3f(2K**aVmZ&G2H$2W-XPQ*vP#N~}^k){B*VjfM&q^l*Np zhYPB{+JFVI9!HqE24C$m7|f|tzt06b43JfLbA!Uuj2mCS7eIW~2N9vvY104TnY|Sv zVCns$XC8|<76=-0FL0=Q#lMVD77+T!B4@}EItB0yJqWZ#K}x+X;C4dCx-t z0a)TEee_b?H}7Ao1f_WnA3x~l9y^6^xP0@!B^6V0TC3cdfY6) zvF<*9#rj7a{X!dK9~$j~|Flb86jb_eJUs9t94G6)DK*=^#lT8Jtiz4B;VSY7e~vGh zLuApvE_$TN(l1|UzL-biebBZpxR#lUKaMc!7kwce3uWnxdR)YgO>`8Ml;;l~wKFk~ z7-P#OJ?De=WRrNnahLCH0jQY7!r))i3-F&hTkwy-&h5H!pQJX=k?&#^=idaUDF(x_y-pQ;*kYH6@qbX9LRXuyaH`ut@)wo zFl{hr7#%I*y7$lbfA?%sI*>>KTHy&p1-0QkgP-6*9%Z+lPvrPk^49SWd^2X8!zk+J z&qH$a65~!G&y~xTX+=aFBf5yvGH#6d`^+L_;&2vJKYYY`D@C06m&!XKxsp~SvA{kh zja`|=XFamH{VknNydb?y2l3i?e{~iQfAgpf`X@NYzlxQ_MTK`U;4eRHUwl;Lh;yosVSB{9Z;&TScv(Q#l@V1c;zXI|2P{>Yo zgG7PPI`5hJ*iEwNb~gEpk#EIC8{VfJ{YgTJR3Y`V^K+5)f)o(Q80mB0&IMZ$f%Tiu z;Kd8`c%rO>;p@`J{($YxGO^diAvt^kv3AyrGn|R$EUVcS^VR zeoc~=_4p(eGbbMg{wWWKwf+~r!0!a`Z{B7N|9CUAVuO#5VAk z;^i6t3jZpaEuVk?e>eO?&LF(~B6sogQeIf=w!z)Lt8%c3g&Rdw-}KQqk;kyS?~nx- zIH?+%^fDKO50vYC00u8iePkS)NpyzjxD^=gd=0%SFW@Q9bG~*ezEM`8B?URO*`&)T zMgvNFcNKgxzfp9sv@**$6(}}^e$t(A zPU6Xp@+q$Ka_$svm3axff)1~~jmM&rELH`*-odJ0rg>Ml$}Brvi*YcILGdc%i7xmT z_T${!)fNA4@qd;}W#S))w-}I12%P6#Zs&%rbF~Hkz=&=5HyQZ15{qtrIKAA#G~8R4 z0sMsUp9X`df<+&=Uf2<^73cFmTbBwS_?n)& zDbVmAb2*KWoAEDFxv2ah8Oe5_C$jELF%)LI3hT>5K71WEnt6lqN3H;Q)PN{q5)@*- zcCp)KX&W!ONB!qban)Sv-HKgkOS~^ znyy{>?(g&MHH*wCZF6V^T5C`B(oKQo>1QasqP&Id;xj)nSm~$eeV*?wd#syRusO84 zPlX(3?Vtv>@q%{oX28F5l94geghBy9@zc+ND@_o7?kTCq0L>S2=NJb}u1u08+2p;@ zTKpAlvll+9cm=7UJ{j(kp{yv7IsN7c&;eR#Klse2R(aNW=;gw2A;!PmRY-_!r3pE@ zkx>9JK&WCtp5`@?=93W*-cU5_AtG1KjcI+AE)97R{;YWp{VW85OeBLX;r}{8Aw&VAk9yflVaEILF&y-!>l?Pum zpOu68{1Ot_J9JKp>NeOye|S2tYQ z1l!y~U-PBRP$Kzsdr>l$`_lw^fB)hua`8iGYT_L^+%KZJ$(;NTIw8P|LZ!+w2_21z z=9BT)-KR}u@h6`k{3A5|=luE8cH_REkFG;$`hC|^Ne1n0Cc+rZ&%O^>1X*dPb+hRk z@o#{~@NM?16vqD+=xNvU{T=k}8UF+GU+`~>9RvS8r^pjvVm@iuiT|=sbbTZbt^@i* zdHs*^k$Y;!R9eUMaDZ&zUYpPljQ1|w*Vi>g-?05HSM>S2UHvsTg0#9kFZ8FTBcfF? zvTRbFYo`Hu` zWvd}8;pPB&K!(3dXO(6rj0NI8VIob~;Xh>GifcZlL;)Hxle$1!(&R{gyy$57%>`#b zM4L3rIjQKQf$>!BvH?CivEBbPU!Q?M+KU!W=M-C=rq!z>hM#x*M_%jeG+9On_@vM} z>+=a6cO*3aF@DI1PQ(Q5{@}GE5Wkn~re1_K{v(5-GkMrp18;qD!A)7MfP_97`oTIB zu`>2o1kG2JNCM4ma$Z;>iGO4LP!!GrskDqqj?PA9U36pgxK8mR6)NT%zw=wZ@Nn~!&Vq`K zasB*pf;<;N{AV;Y;(08TXvCDoN*;LDpjqmPf{|Kbe*!OuTJISFi|AK$a51(O;SLEaG z+S^|(^hfiZx|S9HCc^O)?0Ad29sjJqJN_}&8ZHffz`vr-oX_Olnw>Alz`ry zFKH-r%I|J&*K?8AH_H!J(2Kkk7mF8Z=X$|F&MAbKk_qk9bs`UK3&!%?Ddsth>E=Rk zv>1SLd!!@Q#injkq@X)^5XK|qjhtTFlA_D|FGu=ATETh1LJcss;Q|F1SOLs!b9{zq z{x^jKKGs;)@&5+=r+;<)FL5p=C#bfR&_V+U=a(PwUlsQpN2D-j3z)n4(zI*Cf4?S- z1(Nrchu*C)u*E(7(a-uE`XvXt@I_yDzq-XBD(1<8`7h_lN2;pn*Df+rUJ3rr0JY|m z(uz_)#WK{N&)?%W_|*k4LQbyV=*fbAk=5{aY5(Q&YJ22&45(lmmtWg@%5~%4&!ujs z8%*FEq;%YQkrvwJf$xWd zbR)3gbiJfYU8h2f$A2P!i^NMQgutA(GQyhZ@~-CmLK|wjO#I!70yz!;@j>pu1%bFT zAO3{z?!NjD;TPOBaeGTLHJCNkHuSw%E`%3xFPDsbw3#usBNo;+z5Q|?-;wTGfF_~l zw^Ee|s?J)0k36dv)wbez%k}kyG`DSsZ2?svUM~ftEEc`ngGS9BEd5GdN)NZ|BHf-p z9ag+FqH*8{& zU1Y^z_&))T_7MBw>#&lZwX#R=2L9)AXA>hc)=CbQ}G2iy+R8T>C;0< zV7)m7Ya7u?N|ucT5D9*y=887RS=0X-UpP0)ljq2cUUcF-=+f@o7rNlwB`qm%q?u`#YUTG;iaWYh2)(g81mCjKGUZD>gy zbo@WYnZ_^pS<7{hJ2)na^VSnv7Kh$F2grYS-12~4@NZw_jy^9}*cJ@*Qjo+A?gkWH zilH~Yx^C7SFMIy~2)q0t(%YHtYrA_ zqEJgIBuFFf=&3mutQANS5siq|^iRxbJng#{IKxFS2HNwwdWyB(JPCc0d6%B>LTnvnj4CPuq%-jwCZ?y}eb z!u_xf@bybEdXSp1kt_aN`VN2m38Tx6GUgSTIp=@+&8K#otqa$VHREjcD_^%b^N17T z(wMflo$GqV`sTX=-Tq#Q@qX)wosYcAf|WPxZ;NXkGv9B-{MLSb${O`kjncnha;zBM zVl~Q3Q_rBhQ__#~ECsg`TuY68e`jPFo7-;tgCG>SUKIaS-}k@n80v!KcYWQ#-xuD-J?| z<>Q}L`v&?LTQvF~_``m)xE1VsTuNEA^yCb+O|ZaF@_E9FG}(HaG+roWO7RoE_SgIl zvugQ~4pEc$V^5ofbYT)beop*z*lyY?`Nl<0uTrshNtT_Nvfm3Z+-=}YUSa%e?7JP> zaB?f!^=lL(<)W|)Ju1Yuq9D@2`5tAs&{;d1vs?cyzT5^BQy*xeoIXbEvTh(u+HC&i zc+z>yz2V<6bV;H2oZD%}_sqEwi=3CIS3LBhZsOZ@k@!4crk@M+L;1#HQ)cWzSx=C=K43Vlg_fg1Zq1QGo8fJN0!4he%Uh_6xy^Z!>JR)5O>_H6*_$77Wcs)UNyL8JS{ zmhhwsm*-rdQyrJsDE(<-n*Kp|L-q|2kH@5ni#jZpQ%e2fi=BMM1;D-aoDXv97dF2f zROCl~tgTL@Jb`QuDJfSeHU%W#7slCs?D2H(!HsKv1wIgyLkG6sF#L|o2mDK6opcC% z{S*FMpApjsHw*rI;2{El|5kXWn?6`*Z+QW5IttK*8KHv2p(mqAp|H8=a^Ct--!Gg0 zEEtKW0FhDrmU8WNoeSeA=VFJgzwEq7FRb=OD#&)a+a#A}#)1xBY#nv>%U+J95d^Kv zFMWL>wCUW6$JmZKIHE$@xg9!Ahi;oba`HBNEg<9jX&63Ayq3^R6XT&0)M-_*`t{tb zR|06vMvIEfB79duKZ0;PWoU#OX?7=E8q#g5m07?l0Lee#U&&_n1m-(s!psu z#fP@>mhO{14oRCsU-G!NM{JS*qfSmoh3{vol1VAX=%vU|r;LXi{srDWtmoa%f2Z%V z?dLlzNzzWQS`JC)?O*XP9A^~vS*r`v5$Q>mC&v2;CF4u%h3`2(#9Ku~+7Ik~$wjw* zowsjep6FZ}O&*GpH`;#}wu0u(&Pace@l1*R{|x!M#4-T#FZo{=-or=Lmi%uOYNYA~ zR~_AAgJ0(h7kwk$HZSMIoW^l0Q^$nOTmI)UxDHzJKm%_0ZSnwCC@%;gT_b*QzL9TO zsfinB#q*4HFqp8s$6i65OliKF_AVaS4AL|J1AvR(7Vf=A|)H04}l6HfE+hB2SGJu;hjIVo3t(~ZHv{Q97w zy#5nZL=+@3SGq1gT@OYM3&Qx9A9U6_p?qmf>~s8Qybi-$`IYNfFu-p-IW9tl)&7Lz z@i@&YcHssp@i!8;qZG&I(6j)C$&JDE2{`ggJo==85wZCufHF#@IbXX}JKm=b2 zv+))^9fYyU61bEx*T~1uXL}-l^$9|wQ2;0(8O;52@xxif0(R>ex*JawO8JWc{p~4J zPV$#Rn>}0;<{yi*RB+EeBDBsXVDl4`&y+;gC%7A(oL6*sR<~Ui=?fRqi-|>p^@#J} zYd5d}SP>p&(LKgO!bN*xzit!y-ioQy)#aMh)uZPv7vLDoT4DRo5G-W*0N&Kt(nsW% zg1kx~lA=$QJ3LB`2b;km0L`I6m-zCNKVi!Wd7y!GM6ihKWr|5^$h{-5)I^QmY2 z3v<)_r{*B~lfmYvyIwXQM1Gj32c0dt84B=@7$;zzz%v;8`k6!b_H6xxcOJETC?NrUBF)Fw+(Np(kRH0!`BP(Sok=de)9i(z z&*xiWaZ)xG(47=kJMRYbYt1qK8+df~2L3@-iEF_x^#yEV{~sK1-3Z@`ELaRpy>7aV zJ~95qafTQ`nq9}OKx813Ugn@UxZ$a>jQFonWxp_P1Y~6%KF#p%WA=TO=SQ2{vEiTA zcul4a{|$3#-+?7u9EkKAJA_k%_76)v#>#mot+(It|Et_T9K$F7ao(*k{c3UGMyKO1 z{Pc58*nbBWT<=S$EjL!#z2*&bD94H~dZ4wTk6m9^k+JA}`SAH_Za4~oD7akoE54QM z{R1PQmyDVJ>J##P4M9E${+xP5{9kSoKm+BVr=p-=AMuao{z2w7|NDXX&+Aki5MJX& z|7D#JPGLAEc#Qm2F%ZSgxvt=cb_~hC#0u0y$ee8=-4A(6m|S_SHuJyK*2AZaNICPb zK$y2_OImBlzShx7Z~eiF)@`Lf^{^1YfaOYDi_o%c_}s918@J9eHjE%oC^Z}i`WxD0 zoxGcw{Ro;@ml`<|i|Ze5&wthIF@2vnsZz!0R@AaPzZv&9XnrdS%JL*M!P_PJDDcCd z7XbNbg)`4;Pqc{?{vm!qT=ar8zjlM-_%whmy7bVx1DQ#hm8y#Nz^GFCVJe_ixU{jo_QfQ}e-)@wD~vBD@HqxIbd+FZf^JpDQJkCI4SUyZP0> z9bLc&`%A^T(D`YL?8lfmJV}csXa^B_h#BbC!^IH?eJRuR)z(!s&FzMV3_E=a(9$ur)lQzl!vqM5o`U&mm8& z4vGm+_%AVk#J?_Kt@Yb*c6~($@((svZO+dHn$Hu81Lsz+60*f(OxQoY$BuvTr=l+b z3-ozrUGxWCGd9KhN8fG<9oTffjSd;Gz1vxl1t+4hOclyO_or<; z+jf^9X>R#nmg863ZoakQ-zPl<(jMzte#&;?7^qKqQKl`Q{G*34(fLXaTjU{bc zTTmXb<`?pyKY`4FZJSMHF&xlCUgOdzmI9B`=L(shNVoM$XUO%4GJZXDk9j8ruwO+E z(v;;kXZOvi=imp0wx5|ENsSswpp%OdVEC%aS)RzKzDW!|5@b1>y4W&gv>)NLB4JD zp#YY7B8_!Qx;Dd01fSO{iqI~qeSdOyWzvhs!PWFb6KRD%HqN##i`8HH6!5P=S1JLSoPtm^>F1tK!X(_SVmrGpQZhFxwX5mYLw`;Ms(~%Yr z^J5kl%OA9@B+(CkjMG#!mDGy$^zp;dc_sXR@hO^TDVA>bB>pz{7Ll=H>7m8s%GXv1 zuYoFCF_OkhFFNZ=dyW&qO(x}kYX$k1kDuh=#^OEkpLWxQe@PM0&QGq9bQ}I-j+E{P z|GJq_+nn|V|J{yVpHKK7I@|ba>21W~%%epI<8RST28FdHX{)tf)$!kBL_aqC|A5iu zc)9$aQ20W#;wD5XmBs3?9Ib882D`8rSO5O`gn!=8*Ah~TThM_oY||vgl5^qzLA@uh zLM9HrV>6kHx_-oB8b1|275nLDWx*S`XqS!w_^eIua1hdsi)5F%k|MeVUz;-Cicc{U zT+2SGCY}2Q*y4xfy75!jHNvZG)%7wzw9MR9O1vh!q##UN@56U!49; zuQ1o=c)y$dPjSMjuU? ze7d0r6&e0>bn~BU@5^;X42k5@ILwTJ1AXpYX>M!^0_TLw(&_o*P)c(e#5$TrdH_g) z!9Ip8*JxBFxNdc6$<;dk^)ffe^SOAzf8ZkK7r?(rTiREwO&sAL>O%Z$qd#K3*12__ zihdsPs)Hs&;(rQ{jFWtP=^yaF3LB&xlxQx>YL7Vuv587%8$J3j{jv|kJ0I4{;8gizaESIX^oZGfx_0OJ=UI* zc&#-@*MH>#5HWq1QmEq|SugzG^1nBJ788-#a1*CDReUBr_`ektZcp9lND)5cnG5YH zR!`uJV&hN0fA>2qQM4-fC`UfU=QA+cSjT{&HrD8xdFIm$ zuafg-Hg~_vC-0)5G1xSUvgdO7$|$rAx#9`9j2+j$Q4F0=)fN7+7?U)D$3At)uZ@Nu zZ`1U{%`j$d{cqqJ3Q5a#Fm9;$)<25P6iLCxiKd4l4#vMJW1Q|7t`(eANQ$rzA?He8 z%kC1gI@g>mBN`ecCwr6$W8PndlZr^#o@K8RhkW=nQ z-w%aThwmiDrKe=0YfrgSj4|8spKZyA&2z27Wz-Tn4e9ycaaeH*Sagm}rL}g!1#+F&3aZBeZD;#& zzpi2nz+*i^PyT6{O>c6^WwWNBBY}-A>YzJA6V)=GBl>zz_Y%Kd##JJ#^IkVBmk^x&;x}i?J+7AKmt^FZ|Kh zj9r7LeqQ=XS`=~>;)=msfd3d`Q;d91yU_5aGvG(1mh8x1w`W}SEmXx0yS`T9tAAab zik`%}`Cjz>yWakg?3yq3;ll+UdF^o%eJ!7k2in^BF@vR#GQBP<=@Kd!ThTInFyfvx zT-h8q)ZgO{;{QpHU*ZGDA|}phKtJ!Ep83C)Cu__?yIgbXgS^DsChM}cAbm$4f&6bn zZ})XY=QS_|491O)CmD0>p|;{5`)&FEX2j+jnEmR%LC6GkwgxGj6J(4d?fm+Zr#9cv zj)P9SO^^~vlR?;V$)>vcHu}I4)_<0zvqPyYbgSTmIX(-OhOb|!b~Asq9z8K6NCN4* zgFF;T_+BshIov#UTK4gn!P=wC7WVQ%gc9HUFnQ)O^*!(sn@`SN41Yve}p7h{uE=q1`Up;GP9W z%k}8zr;2S?X)e2h9+LO)Gj#~!rm(Z8F&5LI?Y%*c=UrG#eSz1xcn*A*HTsgV-d8QB zI~s?@;ik$VDt+*HNj_mLDqLvgb0TX-^VZ!cC|D`ejGyP9P*_Ds@>Y{6KYqvd?owsokEKYa3r-m(XbR*?wtYp>L~S zL1Yn6eBE093eoUnCOz=Q2mB{Kg)swsDYM4cI{u-*#lJ0n#hfp|Xvo@u-ogRW z7vMSTLg_Od$HvgabA#9=($*w07^r9Nv60`%3ws$H31L^rdYj3-cu{#0U6ptBg|pt>UU~@uVL&-!N(Tw??lsaSH;G*8v=WrQ*{n_QD+6 z=d|)sq+$!-rULlm8Sy66ut&^OM*e6iijk$GH$5@r;xc1#Zrg@1K5=uH*F0JK*bR6& zZ^buB-<8Ud>C>)(#fAx$_SrkFSc?~Dz|+IA(UiU+wo44Lx~6Wpwh62x5wiW=064Nf zCpx`t%8Psml7-juOA8wX8yTNb_hxP1Rn!sFXFg;@Gj@osPy7Lkbp0;z(dD1n_b2wL zEhNyA&YwVl+@`jVC2!hezTi6cW@8e0qAkE{d4Sg%@#B*C4hi#0v?dVUqQvRY4 zQ+-k&%0Xq!C+MOQ&U8XGNcl-w?NtP%~MUfK5Gqdt3KBpBk-BA3N+Y^;E8x(!_ z4&u@AC;WSV{n80|iUMH6Wp(;K4-GxF=(1{ohU>iev~ge(i|x-jaLOof*|M>P;=tIL zQs3G*BC*^EbLZ=s$sX)6NaG41KB7=pJohw-JeM(x1z(Vg!e%^V;ITQhG1wvMx#{S& zFX-EFBdOh~RcO(+soqE)0b5>$^c(; zGuT*2=nOh-!8H8|i#&0eo_G}Zi?Vy^9MFaK2Lai4r1_2E@>Y5^51&LP$*G7W`IAyS zvZ$&L$s~fr=SiE20o0H1zw0vOvf(5$b-Q6I`h4Qc8;X8KP!mf6MQB&1QWz>Szz7xk z2rrVl%U4k3C2PE{!BZ+a_5T9?Y36g9>W`Qc_b?T3sM7F1k z`mTNjjA70TJ78G8eKs2De+H(dF}z48nP6P`yv~>=3m(LV$I`K_ z4Y1fux`yo2Z^B@V5{x)1oc}4w2MZ8i6kSMS{UWIgZFJ%i8XUi4EEYIdYS{b)4@Ls>wQSI|0yzmo-}t9osZA|&g&sG?)>yfxNV}fd0}xM*X?AJj7@>z zd^@#ONaN((X%+sH$>hP+(8hV;yZk=!pgv(M#-V>v5k@@sSrk!JYAPdts@$8SPPe%K zVud?lKapA3<@PE>DSanBJr+l%y>{PP@ec(soI@Xd<6B`GbOeJfvmHkO+s6w&T@Bh5 z)Wb4Xjq-tRh0!7*W^J`*?pslq66AT;-#mxt+X{c1Ug_yfq%nNMst>Bz3urt@gqAT| zw6d|sV}8@`OV{If6x~MJ_(#)8_g40&Ud(#ZRrV1jTJ(MJ)9@dW#Mqxw2imYldan5Z z|1f*-TWzH4j{hDoVH$iQzdk3eeiH`UP7!kPUumx4KGWl9$`BY-lUYE{ULp&nL&pe$ zyCjVN^21{2hW~?I;rLJ4lE=Ka-Abjj#@Uq2mUCTOgJ;c{8&|LR&l!}ijrBiZ2X9DZ zyctH0iND|hl#Kb?E7lr zN$z~X*q~jT*32U^p8jp#cqZ@-_p+HM04T~McfIuu8q$gjcc>@d;Ak(x;7}322dkG*6T?Wld0jBj~9dyv#AO z99uCec=LP}PkmAU57ysVh(jMUR!HGQd%OROLLJ2m_ThM9Ux|mBD?fGjh|(n#)>Fvd z`GS8VIAn799Qh<~@svwkYj`jNS8Vu$f*=vj*ljVz`I>%Qv3*9}$=eY;Qc=zVSdd|T9D3^jPCjW;2l}Vn#TCAfx-~A?s^K_RVW)4|9A|lSvCAS0O2kCTr zWcQ*|H?S*Y&CQX-gJ5Lug_TUiSPpj{n^65Zu7LcvhD92-ar01 zqQKbgd7;sDk$!Bga48W-c}~K=3gsQf?9=hkgNpr2EDU^U(9+8Pdm=skXi1FLG+~}8 zW1oNSP?@Vtpr_&a`5zWMn3#jn73T+Qos#qY@g_n_Y=`8}!KbTc}#F1dAMysV2tMDvYK+vVAlXJry zTm%IFwwhaY(uwiGTVNQAG*}$z^D|Qvli-4sjw+lVzdF6y7foT)(qIOKK$stb1orvp zCF#UUV%i@ppZZb3qPjU>T)dZsi5*b=>GghGUjZ=m=n&!?a+9w&ED_=#p|qbMO&RgI z-(Xnw|6x~bX*6^v>in7OoCC267U_FIS|4s!(07GT+p-{6bnqrn>{hh9srXzt-__0~ z`#<3yk|@UTEFwzzLtWhQiSp%qE_;5OVtmbR9A$fs63|iRv&Wc${F*4b=!x*&{nc)M z?8R8Y9D-}a!U$job+^jnZS*vM@U`GSq+svpJT_m**c+c0{4f3uwV|AM6z1Qp&!F)>Lsd+U_VLNC&e*pRf% zU-=Q}&tE@cHdC!)6eG+*zqdh{aXuB9eF>&jdiBY2m?8-ya^+5MX{CCfyYY4_qABRk zH{4hRM4Dpu#bXsB{VawQ^ICZ372jrRlvXcI9d#RCRy=Mk%~Pp%PBb5 zpWfaa*Jv{oZq*7vbbLuE$-`>93;vh>*U5uI3U`(O z|5ED5qCqE@WJBX_mmB{7u44f^X|%qi*EUBlYRHA3zkgV0#sEb$D^A=@Z|zgS=IS^R zh@bUZ3E@JE$GhHSG-oZ0y6u4FJ?;Ty(ATjrrW@^rr{KM(V|@-hXReqJed@KCIrQ_E zdrFQRuT!Qt4E4MeRl;u{p#8(4z(aY4mVVsTVa<0I+Sbek_NP9t7ONK#LILBK>pi7-cvDD|TDqJ)f zk~q`$xQXZBdnjYsmgma+fB1=K2c$@8GIFgP#A)fWipW_M%_*Z0sWuq#jZ?UKwk=h7#?Y0;U63OC|GXk}T=siieo@fv z7W}u23{lL0zfT9Hn2I)v&v~G22Q^^O+G-p4dnZzxrHs|8J^^1%nx5ax!LI1TutayfAB;cEQg0u|diU3YvX@EQ> z&w&37U9oJ#xu=L%itEj@`i(vPYH82;>yTph#%<(_z(35tQgE;?Yb!0f#-~QLwC9q@ZFckJm+RApxu@yH2k(R+ZzEa^;JjK)XxD!gA-T-NwKh87NFLCm3&|CgL=H3NM zb{*Fe17iM@ba#8bo`eIg6!F;`0F`;`)v{Yv=Y~QeLHssALJTFx7Ax7~!_Zfq0rE*h z8%Pr1;ow{5u2S1lL*dB=0E z4ZvKmU^b~DX(3w>+ z%%PPFlFF%Q`p089vF;06DolN{UHK;Z>pxM>SmggMS-9I$3Pkoxi*Wz0!A z|AS99x}N_xcp5&4!Uq{5)33Y`9r&+b6(kQI%B7NzbIl=e>O8&(O)(T;gOg@gNZA3} z_u`sfcHdc81aF8?VXGI={2ae)!9%a$(Y(P6Zy3TNJ6pKoLH``RhbP~?&>R5S*KRkFq zVolZHRA`GRZYUQ5b;ycwITpj-UW>OsA2HsCLn>~=3^^0JKXQHDR_J5We5M}}2i8Sy zA76z2V4hXsE9Y$j{^PnX4xOLCfBJ)gf40SJ@(FEg6u%YNH1Rdaf`8$MF>w9iEebL5 zzQd=e@54laU;KOfqmTj%-An*O->r}`@ZSRium^=)>j5C;v5K+Dj0vrTQ6V3pVg*h~ z44UUi&3B$_y&+!9_#~hQN@}H-xMwU6zlKA&aGw;7D7E3v@f72nq5dEPdXFP82C*CI z@3ST-PN8g#?l`ak#hax~#vx6Au#9UaxKn<`^>*mA%fP=&67Qie{EI8SNe$M zgHMhhlfSSr#d3%C%>Q5$^kJ1H|L5s2_kf|Xf9H(IcHY7{VnsN7klFj&VKX$4|Nne` zn~oX@!f3-Q;a`d->HjP7JdXMg{9tUm$^-cy7_?1REb=;IhPkXf{2X4Gwv`8~_?3Bu zb4z_e=YV=f@PPb9-*))l2NTBs;&hG2lm>0EH3k36c5!Xk#xaQhHZ~MV`Q7@97RWb>GT@k+H8ZX>z zE3RhY*`O#D`m0@&f5yKwUlW-&vhuRRe*yK}qoRW=_V5$M%Fqo^JIyTS%78|k5AlLS zw0l_#5_6YfE0P%&FuCm^>^5`SuG8G*YRj(mVk1hIX7q3@zA5mX<(!`ZKVE#vIjI%? zg;@-~y}CVpt{*l(74mvGK(ijCn)v>VsXq^7nhszMwfI5l$ym|pBc0p8mWqt1=CXTV zEFhN-EbwFB@5D3|eL{}J)KVO${GahN@PF=7EXMQ^3CZ#OFq3|GBBzB-CHzvV&<<=n z>F~!H@6#9LeMY885DP5c8)pN@o)s?X;f}uhUF1`39BKLbxf8JwNuA|w#TKNRF*4br zeu~An=Y%n08LHVgs3?^LEFs`)b)op0JR|~+T&8l3!x+z^u!Y62RtSUSSgSK=Z&G&Y z(F|>kpIc!z{K@=!@D|_WmjGW;%0CBhokw88KglaA&k5_sN*_6WM1?68qeqb(uH!=z z9>to5;+xyI;(y+$Vs!ES`Rs9pGMq(jES=G(A@4PlYWOdG3HY+|J^4c}a3YK+;n?X- zU}$A0tY)bf?RJ;Y2UJeHpXL}w5u)dL#MI!$`t{rf2nR^iwkIjj~!+6p?*(fY(V`bs}+goXU>CR4oDX+@zCuSWqa;$j31Yhm7y zF1vT|mSYSV`UIuPBybO`DL7W1xf()VW6%%1aLnTH8=ucVEFLurwHR2tm%tIcN}y2? z%(ig;L*}Dd6czL<7#o~a%3n$j1t=Nz!Nn>STeQajY4h;fne|(^+4v1Rf4{}6I_w*{ zf~N?*Y9#z)!$%)mOAi)440JK9J-xqBI5N~JazsIj>_C43{(HfH=h4T?EfTILF&VhV zg*fViiZS^K{t@d@DGV2$K|HXxp)Vl*3CmKkE65ngh4_!S0r4VM8s*<220p=zS%!Zb zel3NUua6qI@iv5ia+L8ku@3H$V{x(g%>$z-m4TfG8}B@JT~Z7d&Ml1j9=nC{Ukho9 zXOsgVE|PB0o+~b|lib$0ray##>-h0F2g1}i%UBPsFJIRM|1nmy&$R>lZ2BY?62n)m z@=mrjYw^o@McY9knjAd(`BxLTZS9)#07Jv>`!eiWjFsje=mQbQ#qk#8;=00h=P9py zY$`lQP5_>J&P4A+tXqvy*Q(!oL>rVb^z#wU^?`r9mYs;D1`y%A1-D@K&c~RSMeJ#W zgKTS`_79&)T$~%E9~au1QBTv&$595A%Afd88aE1jS;eNTk^Lb8^jM8{3A!Tlp(?gB zx!}L?oT@mwoA__>mgW=~m$rFnvz*pCKr@H1)*>5h|E#@?%QLN zD^$p@bt`~jA?*;lFOlJa^2~U1!RDj7oLUvumG?GGJ|o^Ei)#VWFS8Vv`VRo zKS)}L6D^e`ru_479|`{N3JHr*KpknvwdO-6IHF!DJz8vB8qlxRUGX4 z%X7|ahi+cO!m3TekVqkZ)txFl;+PR zk$x86u>c%?ykM+8Rg~CMPddE2R6#x!OgaXIkJ^dLyLgXY$=p!1>lnoNWiUA9ECu|7 z4+L}8asd_Jd-1OyuCL50T5!Ys8M;L4^zq6#nsAoYALFiO%Z2bQ10IVFf%`ss{nl-t8V_Q4{)T_DNp=~7W}b)w zmo06TCoA!wXr-mh6o^N;T~6iJ_65g?*~RXOll4h zIJZlC#D9E`SREB=kt{H$?m*8E{_VmW#hA5;c$e>2DX^HoqS83a6KGe)s_9*~-xZ`5+$3 zZk{cpZ;km}wyp(^5{5p2?K=K_w}R?NQP0m^Yq7M+ciJlN%xbR}2pohkwA-1mgS(`# zfl!#3?6jCDkiXCd<)Y9N{5|!uC|huzA2Gz`GXP;WG1JDnAa{xXQ)=}hb{Ef!k@Nr{ zJncA7Oq|F2p0Vh|1r1WAVc#meC>A9QcZ`{F#kF=bN{$zT&LSo7K{ZkfwN#`sY>JgC zld+RfuebTuk6 zauTslR~Y}{e#wqz$dHO=l|OQKYFt!GBj6n|Js zk*sKn^qi$cON0u|{;4v&Uvw#A_QSx}Cc2^h$3|R>9i~~Bm(}&sW@u4dP2+ChSdCgf zM=JZ$4szf!`>t_y_q*&}dBWT1@By}kMW~S;HvLZg7Mf#Z;rhVsi5^9URxdkTk) zpYsoZ4OOwl;-~g#0rcNP0ktYdUc&7&+MnJ%NqRX&KG>Hi)R<@MR;um{d}DP zeF|zT-A&jP=AwNWgVYrM%i!$h!LeOOEjiUlNZtJz3cO~&rQe@ku+tv%zlI)-)^R?! zla8<|=D6*gu1fCf=5Y%HWRDl#t@YiKI|<^S6k(u`!Z@3T{~BU6eeM)5GUj@bjUI-; z2&H2vs0->a1A5nUkx?yzP#7e6Fu;;<39j;e9Otxy*pM30=7vVN!~)Il2e9g*qm10H z;U9Px(8b%hx%*NgNHhLrbyeUYid9xCHADV^=I|hEB=`97>oJ_wKz6D1|0sTAA1Mc; z0$M+B{Iy>!6i=qI)eng2&df#rt4{3oYbX6XfKR?&qi^=NxBi)xPX7PI1Dc}$+`ZTr zeJ}HgjQJ#?jUM0t2I!vcvWV=#jWHmZSGTzUv#fJ(3BGq5!&H{6Srbu%DMA)JFp<>CjQQ#FnuhpU&i}6|F-s5 zUq@KRJa6-%=pQyWSsxpYF_afRiB0u$p;%fAUo848x{gbqrZfE`{>L9?1R6dyL)G)K z7&v`gSr#me{*e4`wiFq;R&|cOg?_S)luqLY`Y`c(iAy<-5B9SQ^_%WfHX%K?V$M(~ z;0gW^ngZ6O_YEEi)5u@bMfb@jSe;hPd3Xlr9Pz=KJm(vrfsu&GSD#r9eKF}8?^-;( z(ygHNEB;COTYNx9(AKTs6KkMPP300_EB>W)9t--9E_q_Xe+wEoSxy{A|L;QYgZ7on zIG13qvcjM7Z}m`&<^dNU6IYPzL-K*iLI%cU>zZRh2h@`_TOMFY+EaF{TIzCoQr=lhrA!5#PxyX+amY{?Pm>6{ZyZ1;c#lW9MiugSvXG_1jy%D!j;pio?rl_Bi2 z_?!s4Th%Ta78dqJ3d`3vHK(Csc<8$4W@Q5J^YTU4s(Yvuju3?ZzXuh_-0g* zReC2x3z#a%^@S1N*T(R#&VFmN>8n_#JkW9p4;%bhwUde+>|s%Kr*)1uF~Pk{QJ^cz zP5)TvmE^H4GMlA(+k2rF3o;c~RF;T8i_ya@$%-}S%)lwkZ+vw{K@g`62}g(f!-r@u zw<3s52B|3Qo)|4`A0v#HsKWRl!gIb}j!qn$hT3pZ*U{#HF)H|b5oN@g)FE6!-{E4g z*y3kAj^ri_w5#_y6GW6zB@<=N zq86>?x=*o>dgMNwXpE7VYT?ToPW3R6v5)aDZ^gae{GGvJ>9;9DW;&1o=xWQqg8K6I zuZ87qJzcKJy=(2ttj@?sr}?KMx6Ax(yoVl68(p%bh`iY1w4wF?D*y09!S$gC6$e{^ zk@?GZod1g_!;>LXNvxx%nCuSD-fJCM*luVuP9b((~*{8<_Za%K$~z1>v>(7WIekH%d}M&P6KW--|? z!9RdwBi2CM3)ew6DTaa0A_nUg z?z;XL{F^fV#e9>M2rmBed#ByQj0xkqvy?iGBs|~&vMu9vVxg5U7c12+xcBjqY>w}J zY{WgFE0XhTG|0gJjb#xkKBIgS{~VJw7vf!GmTl56(;p0Usl=1DlMPA4w+Qh=ykGc! zJ;)9X|M5pLrE&@Tc-eJ2kY(SXmxsUhN#GBd7A_F~ZjZRGlCRF#c%J$D^e?5hwIIGO z1pjCx9{4~7;=kPdhgDFY7@8CRVDypyt+jX7K42q}tACfS_WWJ>U+VX3D-FqGOLC;{YW$|N9U+`zoVG}4; zS@ChjeF~%gnt?VK&e-1Pb`TelHS~#bv>4!YeT-*USovyPQ~yMwxK4Qrai5?Js1MaZ z!BD_`t=`Y9QT%E#Hb*o=$ulTT_YO7KR|5}BNV_&V;`{%V_PNE|3(SIpk z)O^`U4@d0MNy>OTD8RvG;wRP`Rym?P9VrR)5sV*_E@d=i`0%68dJtf)-^?BPD}g6p z)@xX_^X$cEj@uU4k@zQ0GuXt35aWSFE%Y3=8K1(JYy1dQ4gUrI44<+-{D{8pm-f6H z;J85FSx+{XB@SrC3CDr;`-%AH|7v-K4v%N|TvzQ%4!||wAC{?b4|s}Ytw|MoMv<<@ z=y5j3ej1vvA4{LJ2p69zMPTeDx(1Ol3V6_sd62*`M4#XbQtFT+zQc9)sEX8C6!!>- zJe}AP@%`c`e$(I{#4CyTZ36ZY=J_qg0RC$b{}+5?j;Jsp5pJNUSPvw+&dvjX$%}b= z4*V+k8V248t+ax$X4A^sO7~A(m)HD1`0aW#xNcH<(Aj?Tea@wlHq%94AybXP`Cm*L zHW*9jzbIq)9O}(rK9iri`3;QoW0RKu4aUs^_9~O4kD%RkX`4s*wVw|^ieh)*!F_0f z|IfWoN3=*=keKL(M{A$r6MV(*ha$Z<)>_d;`mwm0U&i9_9mq^aB{q0OWc}Ia?tNA2JAx;kqY4L0GK5;^96D)Ivpz6fg?Tz37ZW*zFt&4H|xe z+BoCTj!FR+OC_NkhpFM~0y|ra{kYo4(cY4^zIJ20`d;h1S#o7T}lStfapQ zFp54Aauu!zC%Q z*F{yxzX`|mmv;I2ZTP1GJj;qQVtf@G(@GpuNJve-iir#UTdX?dT8tTTFVZ&b3CfMR zO2XsCM^gR{^9!1Ys?r1H`a_ojltf^TE=uDFKeUDHV0lqV6QsqMZ{<7yXeS12@dYD@ z{i;(FZjXH$jIteGPal5C%R#gsi2IDiF;{O^kGSA5Ag^uf!o^?G|2*iI%@r2oU#^FB z0@~^0f);jKZ82{!)OKv{i_sW{|0p8*W*bNG)0pLqArF>q#y1yqFH&o4;xwV+26RVX zI<`866z829KU8$tJ?cz2xQ^V5BgVfn#WNCSt>U9%Pdp6I@2R7ve=qu%?%1w+nrMDA zF_>fO(C_&J6~|A~NQ9YY(r6btQ3@xljdsQTML#UU(I(az{0?NI2sjRY zD6$EZEsJ2#g8YwB>{gIh2+y|RNG^wA=9&*WVkUtx_XYp?4(Q^Z#$Fsgzxhvvq$*s} zWWeHROny~%ohnS)G*XHrV{LJ=bw6P-Ph=J-alzAhDtUFGX?7`gN-sFWr&GNB{F4gQ zaV^IuPUiR2t@j#>3~ysB&+iBDibIkP+$Kn0qxqC!b&)RKU?b8z_>AhMuk(zP%`X;m zfIpk^^6|o$-I~V@wsXO0u}$NR=>26}r%VOikQ04+6m2FA8iN3TS@62StryGkCVPMc zhTspXRpYE|@jeSzG=exBzm6DG_ ztUBM>R;fnA@i(5DptpGMK)uGgZtpGDpi4U=X9^%Y-P?iqw}$`a$QT0`LI>2woQrP=t4zTw;M2wPj^DDVL{Y>k_gi_bWcyQ|HVol=eB$q!FogPQjp|6&zeKnWN> zY}#5P4;{O+wC$RYzZK=WzBJlCHx--*czvNqv}K@Hwmdo3Q#R#~aQ3Rh-x#6uKk^@P zE(K5wu#l22!9?E2f&kz-tVp$ZMGppg0r*vz_WhkBsn;3QHH>`(k)b&bFU8t;u)EKrTmHY`zx)1{+j2bg(N}@P z0b%?$)~16k-g5!xV%K)vWWhf~5(Ak8bl9o>kN+Cp@P<(62?BHPmZ)-mq4E8DP5NLfIk9eqtMGR1c#{!_e88y~=sY{LFD`XN6J|JHpve4`#s zP=EsYM&O}{7Q9;XBVk-3{&S>5M2DXLfO*ghU82HrU{_}B`?(gr{u8dF=-m0psawET zb8w|`yWh09AgD9>RVIGe^bhe5^RcWcB!+B`i~8E`S3}n44gU&Z#O|cxr_uy?^OATEw}JmH{5@o{XdCz!nGc5n&?;+8Rm6FI zFFw0|-<=!@PdyG9Zu-(j2QJSzcp2}7uWQ_SZdDv9Us`C`Z}ggDkC=>e5L;+ju1$uhvK05a z(VbqcES%py6Uri^upc*FY%=%zD}QTRWq(2bQf*zoz2GX7=7>WV{#N^>4Fo0!eH@H% zL0^a7m@ioZYkSz!e8ZDtbqAdF@7qH_MDhEv=6~7emu1slbY6?Y0yWj4Pn0h1z1Zsy zN4EvfvD~+p!gFvzK4ViSW4w9qR)GGSFgO{50a_s=6SDl%1O5HjaGm63SRexmEx&zE zyN{8rWRrYc<#|J%%!2&YAz%2gWuS}Znx1pi%E^n<%I~y(X$J#IEku6KKXnZkaw55w z(BEidf7LcKL0J}G6Kts1IJ1k#DxAOwafSZWcssi>e{X|nur#66gy zPlHy*lmsVzAk((MHfcMfTG8#*Eqk#I>;~gZ+czI_US!J&*2Wu!u{Kr@f-!Xv#QzFl zKEQ@qk&7QU;T$goUSvT=*Zx)0cu3#sql_075*8VR84C|EHgJa%*yLU-$gqin_P$t<1C>$HA9?L`vJZTZ)&1sHKTLgQo<&@UEcm~LJ>uR8dG<#8p1EHj2WX!C%M@lS;Yhe)N@|Q18W|ee~d=@{*FDdx1s-@xU&f!bad)k3)1;I; zhDS%3mqq&gLBxL1)hJ-2oYIaFdA$E~k3;YC%b0J;NxaAl{(n819nn{soDl{yY76V` z;?C=s9Rl02*8jqWKK%16SN`TJe>$R=ZkPl9hW|n8;`cqOb$#(1y}YN@|NOs${zn#8 z4nO&hxcv|F#2`i!*crgA-iy}gO1qZlkF5^&7@c`lIMSmjY*T#CP8*9U%HwF(Po={>~anKL8XQ8u!*_oR-y1R#<*?*x+)oylCq9ZK_2}EioPWw<6nX% zU=-)KTKcmFf5CND+y|W!{snYz9setU>sGQFi}7@Jxps)y6uNJPhH4|ETf|jT(+b!f z%ixv`|G_i%_e*O4>AdygYQ$gY?1oOK z96%KEK|f5oGSVNv{x9;RHT|UjsIj7p}u;ZF|j@Xpt3qhxyI{kcatr?8(YVx9#*+^&dtLJookh^1pjw}C%|9FF=heMaW zxyCymkg~btnP-oyK#{T)4533?_ye6R4xaukM^PlcgLeF>&?+1Ae`J?f6cK!i4irO6N05G1Io=!n_l&0*Gcx}O=gGp!c8Ho?UJ0(rt z4dv+ZAg*Iqk;P2iv<`qrcuQ3EBAiud5ZoF1{MyFt(qaqiK1L(VGrb;f!UII5N5#l3YB25(+PQ zA;#ToVZgT+APS=qpyIyEq7BAWB;_Jy%uW~VL0&EyJ&s0YG5SQD)pKUFcl+KZj^z~Ro0`Dg`MjMwt-u0}&MEa+% zUAE#B`B%G-@ucJ5vB`dJlmq939Lv07NR!5daq!>P9`(ECe@G|r-^vAV2j&cn4F&{V zmM<54YLNCN^Q5-?uVCXEU!>z-7yL`Zzx)0n=))Qd>;4ndTLU}hF4geq??ejH@%0ed znq1KRzFWdmR@1Q--w;McNF|Ja2x|j^E(4|)TZ1qyQUPEj-UALFYr%3 zw#1>7rE>d2=L0#6^u_*`Hlh2hYbPtF7|b{>MI`~_uJnB6F`DLJc)!gvtm({~UGNWn zVlrZuL5w^FzVk2R^P$T-BY9|)Wwx`lSLuI;=DM4lIA ze4M{1QhE>y9jNou3&7I+PBB5@qBt*8w;@kpH9LBNu|tt2i{z#~)n z9sa|6(8H?m4s$J&dMI=jU#ZKL7TVVn7PZ5P1p2VV{Oa&{E7iDLmOeB8Yma}xiHY>x zqG3PHf>%jkEllz7aC*Z0Q62LDSgM_rxr-798zWfmULS==D0F`@f*w4$)p?zN8qsb} zz*aa&o;?*L@|zKwN;=funxDRC~kQ@^Q0P4wY+BiDtz_AqM@!uaQdWZx-2-C z?EOJs_rNMt>q@ga$30(97|4qJxa8{mn*ja=Z6c+oR*cNN>}_mkMrsBH8DHY5PVpDC z5EJMVStSzYk@=E^3zeyZ-uBoR3%(|sBqAN}EB=+H%J7EkN0RgR(jIrSluvXtiz=ZBS5r(74_GX(Dl1AZ~K6yx(Phs1psP zkFJyFn#V7aM;4X*W)}cQ+ZIp_vWTUBlriKxJ`%cY`2{$x?~x#{W*t7aG!eI!U2G;< z5@3b(g*_6K@Oi;}D4hXXu04)5pVSJZvSH|F_htM%e#i*pbsR%c ztVT5E&1q0Sq;E_m(uM;S9GOBABY#z^ZI`~#e{-|jNT zcy!^MkKKp;=zbMWOu9lId!Mo~;XnSM=E#XrY~1|$MNpBK*wfnlT#xrl$3wK-0s4j^ zxyZO(3#Z$?X~v0d440?n;z2KfBG_~WBM=<@lBh?l?y`u_2#mAN2E)ZUKjO4UXB64bL&I7(Q2Xr&WW!=F+sik=;E8N8oA+b2vhS6Gy0kL ze)z6zz`y@d!1L*>$(05^tRR}S1Fyxkbaxqj2fyB{`W*owS3Gt}m-y7HXObJSfo;&~K^n0Vx>3bZO zh18lq`Z4291ulH(zy=bUNe-G$=eMy>V;o2Fy!`Afd?3G=!)@qM)37= zn+eS)!Y4kCnaU9yPq^1ATV5|bf;)B!b@lW$xYoM(Is1GGHs&}@=7yETxK!B4xt3LR z8SyXcZf4Uq*=lj8Sa-hmeneLGHRP?1v)ua>KRnFO_xOhk=j0O#TG6iek9Kn9zuLi^ zH1GMu-m>jOaMIiYw6@FHUudU>2o{*QdCn!48=C(vM@%#}-B7!wz!f;N%r(NR3?Esw z?YIMa${CsX#KL9Vq&VVZn2Azi1&Ousu2Q?OHfe(f*e;6YrHlBmVoEEU-$F^!z1=jh z=Ueefs~zdvn)=~75CHilbzoA7Q6Zlw%p#J%%}*54k_q7jt?N-JzSh04hl-5d{b{R= zaHZ%^xL_>Ca2!b)4E@}%Cl7U6{DTgP*HV1jRv`2go~{S2_RnfW+bbuGN9+6neORdX z{HEzkMzJMbH+1@u*zO=B=Z5XQFqJwn%ch4^4A4?xU=Dfz3jO9UrRLn@HYLY```+f~ z;gT7RZGcOPoe-yOj1F`Yr^f9}?)bN4>8NOn_p;bgh2!Wm_VrtT(YE!oSTFybMm1?u$UpPj@IevnFs$OUy@4x1Mw-Jt6P0HRaR^}(jb8rPt zjWsHh(skf2V~GG}4DwfFDD4#a-(&HJ6IGZ~@@E)7{R)`IjkeZnmlO|P35~@G~=Jv8uE+9XXi%xp+;tc+;?R1Tdn3GF_@2EvDBbV_))!0 z1lG5}8tlS{5EyOT-7`1GgvDYwc(|oG(Q(;=z7);WS>iVZ$~blK-HMN(rj$`<{ujkm zsHLa8=bzwxMA&)BtH=3SDdNGex?Aa6=TnCG#N0h|%{%^|7Fu~ORvZG-Q3YU$F$z15 z`#Fx=IoIUN+k*@q4mpgfO(t4gB(ni8bXev8(MK{|OP~j5)5n=BH>1oE5sLOJ{v}t? zlKw8ke2GoFK%A6#Xn~4RnvSr&wsq-tScZ?M-RD*)?vwRxfxb8l+6ULjK zbKG%N(jhQTQ<5y5OVU2=uTBsXgGe$OP;%Zsg(KA(&v0x71uK;TB%gehuL~BkEp;xt z9`eILCU*NM%8YnQ zbo?w>v|xu9cA68Otg+K!jaQU~WWc0d!P&6CmYwu#@bKi~_qVI|hJWzRcI}Z>H`%1{ z{~RA!AOk*qYz1S)edew70^z#(7hG$3Ko{Qf`i6gF`DzMLA88eLf5!hyT-@TaNyEL; zXKlCfam6;LzaGy@x+y4DGkd0*Zglh4#ctab}TZ}*m7{< z{gdp^O{h!MgPxXq6N|`G$Yd?0YR)t(ZwiItY?p*?_-_Ml`9Jj+`Cm?P5pA5kBAziH z`I&PRB@B)(B+|NJtO1xyQg?C0YI-Tpd0oSsg|};42(YA zyu!21U+4c7{^-(q=qNn@cRyDZ9ypmv3Khr;$*`VJ1dEpSk8D5Zq?e9HUPL|%_vrt zjC%Zv3dGX;*xC7Ax{P@pU@&;yco*OgaU-RY4a|K8?8oO7+(B?Lb z0$8g5N373Ka z-moZG1zm;3pV2tEtGRaCrk+q|+W1M16vjciLP+x*({}Ev3|^AQuL|H_F8CLkQz(wk ztwaF-pk~zzUDQcX4cn(p*aHnDu@G4dJt}z?iU54AKXfRa=lUZ}o)nbCh4@-A-6s){ z&(-Hf0!3)|AI3kjD*T|~@G9^i0ThNg9M~)7L;_P0ss{e)8rQ*2X!*-4IFgo%;i9(} zX!-*6?LHQ?&>+CLM9j2}UdoY8qYX`lRb+VSjW3wZn@CfdQHZQ$rb3MNWNS0zU3DR& zAq&|fStbWGaGl3Ts?S80LEd?LZF6{vDex#XbzhNY&cU-l3!vTP$oUE$NF0A^zVMzt zL%srO&!#I%*ByTE=WxNGKiM0{+5CHx?{;jsMAn;(Q<&fGRU4m|rTw`;1B+P1kpYi! zU&?Q;!&>_?^s`_t(tzK#%~!H;;C;XH9=Dv?X}_OqpBfP4%)s_U_vRp|m##Zzv>e24 z_;2n9vJ2=yq~RYK0Gp(Z6Hf*Mv^GG0;@?74z90Og?Po0fxA5N%)2$uG=?~jAY?pBz z<^BL8uRw%xMB>#qg?~#Khfl?I!s^>tI3(geCIW{KZMO2uzbkMZOY2o0YyO{cbL5F` z+i*0*%-i_gSFGVb<#xTuFZuVH|2O=%c;h+{YxrMzVZ{(%ic{QfB=lJ+$IjRw6nAF< z7<0jMA{db$Q^(N3Jl61xxyUdl| z{1fzO4d)n(!re2@^mzA+?l*R_DaV17mk%Gfd89==^6O!@+D`w>o{aZ zoh)Rze6cOwxdXm_L1U*>7Dp8D2d{eYK3G`I@uJ9A97)naTb6znd=`^fRK3B+i@Acu z2#qvt{DU=3P=o6kEd0?+4f%jM3#@f3f20n?6U!YFTl93EAnqR>yRJgtS&&9{r4wiE zY<`F~JjKp?evjO6{ND)gNsEeMOR&SlDjYLP787j+lF}i_j&e}Z9(b(4HgXyIMEdaa z`jnqZ-WPnKk2YTw6mg02#F+mVKa%S4#RbvoF?fIQCQ`2hIll1{W367zQHcbSO4}9h zx(VM1k`fPJ3inWqjoc^F3Y*9f#50WXTd`M~@`9RO z63HvfyR~bWMY4DepHH8<_KN?;*(J_oJXVbPfRk(SaptD+oxN}}_1ylP;&$jqL|_#G z&EY|XEWQ#xZX*`RsQ;laV|<8l(k5Cmue|UaL4*p?^u5ww4(@C-{uN~rjL#%&`N9qK z901r~Heb<(%gq-K-MYT5O=bThgx4b%>+KWIbJC5IVHi-Q0&Y*p$$TWRB<@D?B#SE& zrqvBE0H`$kiJ88S18eJ=X#NHOnK)V!}gc6UBEi8B5FfPL+xPZ3)}_u;7U zN4_ZgfCB6y3O2=i2KRFQDnyd{5B$3WS#JQoU5mShe;BD=^CL~ynluQn!C=~m7;26D zv*SPd_m(zwBdhKGO88RdvAFd;JJz2@ACVSIA>mAV(5_t9|2SsgQZ5G-IYHoCJ3KIE z8zlOq)e9+_m4iRyKgaTz8o$DLY~lLAxEz<@UDJ^hs=0YNsl=EvD$8yszZGVt1V`U- zhWZ3rXhw?n%gEt(0{2^dNZpS7ANmogz%4A3$Ko2*q~^0WVnWf>Fhr>RWLp^uW8n zYWrI&MhWlO-E-n6b~SDq3?BL)Oq+|(;jm`tV{wz@(lHKUJU=221}%ue>p{8V;T9rO z_z*2_V5wWt6XX>oZrcuVU9MaF$HM+z7_%6W+l#k3G}ENMxgf!tkqvX~k@M_mtuRsP zp*YGw_$>OLZ?U7j@(7qRiUJUJtlrs7wsrXpcLNq7-?1zW7{TA6WFzr}Wzr7LL)!r_ z+YxFiy#~)>oEt#jbx{O#9L3=yN7~AqFVI_`ODK8B&Z*@lK2wSZ(sDxNM6>0WzmG*N zXjCjpkFX$ES>o`2it93ecCN)=%6ln3qkNVBP0-+=&(vS_3O$67U-2T=>54YAdnSqE zR|=q$MF%uQP@y;(ysD->6(<0??7X*zX8@6e4?@tepp(2v!@pJB0|vEtG0OjD($O{K zE{2SE@8V~lRdlC)D^kY;hFSRbYbqS|Od`)&;|;(uWA@CJKnI z_xQ{Qco9Q5rZ;Z(8(BGkSR9Pxnz(X87AAY!QGBLIH}#Z0>-oRqKie7Dbmo6+p5hC2 zt@AuI+V@=VyY5mJ%L2HS%*YSqpzcxHr?dv6n~gruA~6|bXqI1)Rx5w%a(xB>j55<# za!hG*V*ri(FCu+Ti}&Q^9ngP0l!BsA@>OIE7rs`LG>26seWNIr#Vo1#*`i#|2Q>d9 z8PYB2;63n(Fa+-7$|6`$npQ(d;cLS7 zx4x27_%zl-oZkvXI^--8+OMsLhu*ZafWNn*0_r!4H#kP;C&yK~)-MHl1XnJK8V`(r z_M)TGVnV^N{mEd&f!c8a4Kye3eEpb#@jpVL{jY{Btj>RJATv2`Eal0S?~JN|9K|B_4I^6*9@4tyO|+8JmX7h~s+n~+<6 zIc%I8bWFPuUY&mAf5ZH*!Q#1avt8iHI6jaLLEhuDn2QWW6_GY?iCCtstp{6;c4RZ> zG|r*eQV$(1`$H9@L@=)`A~tn??~Z?k1xOn(uxjYC; z0G=NBw8%PhCEr%$pNs#1sQ<&oY5tKj_PgK}7W_Ex4|~hY{9kGYy>L?aIYq#{41OY7 zu^A(Vr7m3gY}?=)e~$k=^w6@E>)7WEz@=+QRq&_LQM7x`T?b9DOaAw_R=1tOA-l&| z5V?xB93>#;#9-~Aj?t?hG#HulDu7sNvkX(uqMdt{c%Web@{8S zNCwjq{$$2+k9V#jc-$MKy>Z{)j!`&XWuy3pJhl{hXR1+wV8-mWSsSQ_*{br zJ2n4-`M*HDEl10luNR#2;b#6`DJr(%9GW~r?2=5OIYw#1<4SOERA>(x5LCO(@nNzV zzqx?}0Ok>;&wiZw2-vrMzGD2``xGsR4KE$FnOS%u#{GQ}NZfn-4&P zYbAe@up%2xf`?D=ds#dr?WQ!7VP}kaN?^qEV`!y?H4l|McrifBP%+gIo|LzvziwmG zvp9}p0haOAvS5(yBlKBbXt_`pDWb6BvbsHrf8fjgeE1q(+Z@r_ka@X^(;*iGD-Zv= zi=f)@FU8|F_J(IXw2E2U$#~J?Oy+dKKcM?z`BOMT{J=sX10ckm_yBk$&D@1+Q$Q74 zVOR7j6+V|-j(mWjl2f3Qd4!1REw&mYgMt6c(P9DlTH@bW2dTs0S+dhM3z`G1+_SFZ z8e+1?J|M+;2k>86+DTw)lyPYLG75>n1HX2~?T&;pmfb+OfuZ9ceX`{T7h>X{i)Vj2 zerSG;>`S<$2^8`wE{cwEo7*m9R)c$(>NZ#A#rYM$3lnKY?2dmEj%_~0DlAn=wA(Rv zzqS;2On=e4VLp3^K>inwOM$_vSh+sjFZl_)kisc;w@+EVN3q1Qlb6CDQwNgyA>&pm zWXa8_8`m|DudJJ_8~A;~zhvB@NrP~{3w2=(?h9LKtOOi6o;M$^nub`Pn|a@RF23Qg z>&xj{*jXu3u-{7arwnpwFX;)?E?|UsAD9z}`{{0S$^SHN$&vnvCexxh;y3nx%x2LX zoZNnYpL59@uM>cUQ0*FY9?j?fRbVLoqR{0FL!cW)7}f#*vAA)}IAZM|<{dN6F@*t? z8wk}d6w_P`^rHo=ysZBBTQ!Pu_4gi$meC}$mz~cG8C5$!?>15`bThDwJ}X#G>?8;A>RIS8D-aS}NjB$jG#D7j%#j z(r3nD=bmFHip0@LSZ|S<)6Q;lY?5~BQdHJ7bM_)q8z-TpaV7TzF%<>ig9vL6HG&cg>odG!i3qFuN zeRkR+@)s1eb;f#*xD8I<-T{ph^*(9e+QfGpG!QAVIF~{vB?S={lp0Et72Ka8VGSad zbp6bLXRR^qGP>*>?6Pn7fugQDXrG-f>FT#b>BHBh*S02&_q5Z-Zxqy+s8R6p{-9d} zit$d=lOpD1zU-pIjst*Hm zcR2xTwC>n+mE&Dv!_SR;O-}YGdqi;BI&X1h=t?+1npXcwRbEE8G%Q!lJvJ@!C!J;oiVG<7%ker#zF-^kw?J-aaW;-+%2EA&K9fl& zX-eS(C|!L6`Iho;nv;UDvW>FE9RFwZqnj%Fo;(Z8%9Lsg7VI)gG<(r!?0m$kP#2qheweKmkvHp~Y8fOFTQWT6Xm-SA)YRRpE1 zao~w>|DySAyGw&sxifdJ9jS*81P}01ScChH_nJR^O*vQiUJtjsLN+eF7|3vh?!5Uu z%Lh6O|AKl0{>px0-4+A>fC=k2w1|dwPj@WXU-0h?@m!`JN_G1v?%X__Xa&`VF}x>J zH#vGM2wx8~xwh*8!1=`n=qpVZq|@6N{t%_|zeFmHz(f;t3)v>!&|~?u*6vHk|46zO z9}tt9+(;t=rx_~1{czKFw3pv``DX{he!p%5Krv1!HrmbX&YekD3%?36JNbx^CnM%9 z38r+D=W^q}`UD}%DagJ5ZwDn+=>ensB)<0t8cdAd`wYo3`<;0S+0pYrOeJu*$Wxpp z;5_54)P7rC!$s=;4gVZ4$y`lMDU+5^zvchD9=2=qKbdQn5S;CAT@CFXwE5^dE%x3( z*!IOI@SP8iBUjYpAQ*!dg^^T|-Sc0QRy^wChLdQsfgleF`g6&EH!X$W*ht4W>q%YEe z0Am>NR0g{GAG9}+>rq2Yx{{RDE+1`+rL?tQ2%mEw%w6@Jo_AhTz9Ai#r7!3+L4yt) zC;U@xY%IHtLS`=rYWRqMKk?@S7<3&(8c+p2!Gckx`edv(a-)=u4bQxF|F^OS=@8?D z72ctNW8)<*3CKqiUeKlMQ$-ku@jYZGPy}D6kpIlrr~pF(!g%4Q4S!z~jBe6&U|{E= zyWjAy#EHw&Vj1vk*uA$Cn440}iYQ!hLFB{nHi|gt>l9m1Mr+t(F2)i5(R2%NYO&wa zpDk?<m>)jVQ1w3zVuu0|Fv3>81Rez zto|juO~AL4eAz$+A~zp1YVlo?C*%eFrcbtjU@g!DLRk-5(}HbL-FFl=A3FL7I&DXx zEjtdMldtc1Lf(KE1bWD-4ga#>yTwG_QXM%{?)e`a$wk86vukJI`TqIX(eWu9Wl30$ zE`k2$T{Qjy8tw+>U33SJP2Z9KRSXw2nA{b{!2ViI_A6eDd$>yOomaBGieaIoKVX1< z#KSSR3hn@XK!U%r)Ee6R#=7Nz8@W}k7h5krD^EWT?lu3V4uJ+85x6QoDCBR?|L#hU zs!|S#0;INCsdSrM~HTMwPNbxINRinsX3S`40v<7U(5P259SP_E&59jIRo8(0U-MzQ z=4(uW^~`#dj3n!I2lTc;?u9)ks`#0HY;tkfmAMP}GXLIq@D!J>E^z8>2<;LBMb0t* z&he_B!5~>$ECBH$^Py_E^EhMfp*D6t$KcAoi#pm^;mk6X-g!;A zGZs1-v~i=Iu|D|M=HK0q0aq|y;r|bKvS03ZAEEEyQ>b^>E8+iVq5t!s;p<+q<$DE& zj4tkc1$`2Rb#$&Mo5||VWPoyP$|JJi%sRfM{Aa{ExK>6=Ka8PujbKa!Qi*>tnTvjt+Dig{w&g!m#Ng>A z2ygnydbG(d$JXb@Ep5aVnE4p?b4UE_pm$veS5-~QD zQp-;Ql9osl2|ZNscg@$jXp9NP#NzYx{6{z&fAm=-wuAK?86Od5StBJ|&eaTc)UJ_# za@#!mHEl6iJ5FWsK_T9<3E^KT-cMgta25X=RsCc@Q{jPtcjjVdq%=?7zoagK>IW-od^lL`=%-4%e;Fv5X^BNI+SIt+gEB>tbWK zuktmx7x99O?*r*(pOCNfqZ@D5@>6*v+9Gb0O}tQ_1L!(X7W!e=JLz8~=YJGuoP%x1z--qpV0|M-5$($^+Nzl8YHLG3MKR}a~RZQ60& z^FNOJO8_`+{HC?>v|odJKpc@WWT8HoG^6b+ekQ9aZ)Io9Lw&R@&d@vw;w$F}rt9(0 zS6C{GX?{I^(-VDoxb}y*dAvi?3bu@>YPR8P-YO<&^Z@ugQPs;DuY8vJKwmTt#ZC zf(wr{oQ-jc_BzUa%-6*^e9z9d6j}NLQbdON@Oq=Wj77A51pnwXVdu?SpUvNy&t!uq?CVrN5$JxXn`JLKzZ^QjCyX__bqM0k^$bJpt;Q@gzY69@7OQpemFiUkC0;t*r}qB()DzoI=~*%!ro-3g2!8A zdOf;Xw@$C~kJ+{hNB&`;x`*)v|LO(XufQBh>a`qe-1Sc_y509hw%h{e|1=gr+njG@ zJjUBN+wn_BEw42FWG;?cu_-BYp(QU`FFZgoy0)3e&Z(E;2aP2y$NDWyHQuM^xQlL} zz20pk7p?W3v%ade**&j|SbLZDw&-kp5U`HMMk237-+Vs`&u3Sb7o#qPCSOVmdwEOV zB|8@sy?7SI5FS2R4<3s|{?f91x{ACCuecb6LNLf0$9~57 zTE2eZ=^usTDa?fmQy<7R@IBx&+Ed*8HwtH`B^Srn!Y#_zc(dCBj%35yy@0i(?3>&Y zISL z&7>fIh5yn9^NHg|6`*2E>bniJ9#JIrZ@WFL;*PRRoZniWIMGEoHbmaIsQ`!zKJZ!b zA38UhgXL}8^8XwDZ~5PSCdc0NA*d(unZ`Z;uYU5+4))#a6lxy%M+l$EaKJ*OFWzk| zJ_VA_+oXL-gQ_xrVq3IasduLPLN93fg#Mi8@RG1^<2-JuaV2L8BEOCK6bIU3w96-3 zf$Y*A`s5IORfvn1b)jp=W^On9?Uh#3#(yi4tcSI8gnium#ym7IUcEH2kapp)W;I3t z@@cEiaQw4yi)xqckuA-~&o{pd9xP-S`3ihNy^U7b%_au&*n$DSc7D5|rFWpEDa)9^ zyId0|^{F5yIlL(9HO|mi1hB4J{z>2gy-7s4h6DWMPWfRY1ReV}78ktOzk&a*4=GG6 zJZHQ}AGDS^mQ%D__-f}}j?a@{8jUpj*bDxlpMw9F|G~c=uakoy^gR}^4gVS3;j`cK zaf9C2A*az*^^?A$xr#Z(Pk~b0Vs|OB5@8ESd@Kj0iHc&WJG}?-_y;)?YoA=_-4tAsj1z zK0g@ysV5(pTc|16%KLIT(Hj1B$G^X(Dg3dD&r*3g&O;ZdOu7$jw=W}x0h?l%d#Hnm z59v=Kb9}mjQ`4C!)X-c%LMr`aI~d``pk9iBC+@VxHvZHUiz`K21Q%oGpRGNyGruD* zmH%5)tB*AXlb(Uoqgtckx;_s3Km0>T<;A2xrOoGS@lhe=Iro3hVqJ!;bdIqA1~x_Z zHDg%pymj_`9(QytGVLy;C6~$H9nhMVEchu>d&eclPM?sPAHdI*-Gn*+4-l`hJVwiKCJ7)@6J-ez2}V#&Km~jXd(24qz9Buo6$O8T_I)!3 zg=L`y*HR#pbfvoA=A9b&uh=JRT(6j5`R}oKsc`9J_&Fy_`5Ff@*hAIvk1;s&PRNt@ z3gR|*{K`uNSf22jV$6_oYuibP$m*AVawl4Dq0wsG?;uXO~wB*cd6r}nQ3o*Sdl2PfJ z@5Zb9G2meR7%9i+0HA_Jml{KfujA`g%+=oNe&mE)NckvdMy>1wDa98Ps%=at0z55Z z0iw+>ROSZFaCe?o5P3tp9+sFdY4^LV6a&$&iBX|o8Vg;mX-SvCuphuqwfGYn8~Vo> zU%astML-7T58{hM(b`d#=%&qJa*!eCa=PA5Zk^S8y>+? zP_I|~1K;&96lm#XJd+Vht4LscEolNy3a|p(I2NKY{b>^t+vF6^2f?%44rTlsw^x`u zDCUV6Kdya^ALhOuO*ih-LSsSxPG1b+;2gpWi-j@O^{Z08hPoG?6LoB{{ozB)Zzab9 z3Mqpnog5#-OU7@5WZm*==Kt=;&H>GLz-bNU1DvGjNO<#Q;Gr&<#|ygGW0Hxy=6{%@ za{d=c56ZsQxy}5);on%VB85xLLuNx>+<7y3hiJAb&Bx z)`EnkU}uMtq+{A`XI{BixrDX_B`qxBoC-I^yp6U(`l501y0ugECHJ#)ZQ@e#EHH8c zSc1T5n&bbNR_6vPv-)qvK-uNMf{gYBdY8W!f1*%}G|lz>6pE$c)^h&qI@g?gvjb(Z zpzv-1swmjX?SMFzn@vfLX7#F^A7Am;uROQDP&k34xkAWtuw!2@UTfx+S;YH#F-0l3 zS)Q+jzto}M)5CZAx9rEm%<*HvNTeW1#T!JBkuHy|;F?qczZX41ry)Pf5m^iHpAp{x z|9$=+I@R*8McCr6;SV3QKv540G^ycRF&AVfU}OAEUc3BSV@W;$z-Kg}zk+=TQl~{T zL&Q=ft9V+vl=tb9Xv2Tl7c>(Sw7Xui?WE zaU(boH{J>lz=KcU~VRB7T9tf>i_zm+PvWSoy#=p4oR~$^X{! zKk)bq{?BMy($d(P`!~*bm1ZJkS=>}fcZB#Oi2u9{F|A^z3cN4gaQr$Pi?2t_wZuPD zuV$_OM@#Xt%R(}mr3l7g^3Q13IXv^|cm;>YK{GDg1!2)w;X1x}f}M-^KP>jbe?@Xq zorwlImk#T{1sW^B(U|DX@x6$bm`z>!iwe5@I4&(J@jh?_`cjm=CQ#7EY6n_ZhR3^d zFrNs93@IwwVzUceOW73kWCHJ_ljo1$L5NXpeuR1wfgNT(9!a^d#qi)q8cy?h6K zucm1tcbgipq1(;D^Ku>i78<6ha`gt$&Mx@a^x5^asZ16bRQINa_S9X@e%Qhv`Kl|% z*w4kbaMXD0c)?wv(qc?+>oz|9gyUK2eGCeIF5JctV#>BNOrebjh$}n(-7^!D4ga`? zfS6W=RRJ3m7sZhz#`8+(rrS&K_`&m+F^(Ag3;r>tfVn{m_TMD0P2nu4alS73e|9u} zA&$D^r*27Z}N(EXh2gnwJzXbnHtsB|+s%KvNr2mMH1IHeLP zehdFXjPo49MBaD-fod6nKDNbc7MO4%5VxtlpTn!ZL}baG%!9^%Jm(y|YYg3DwAQtV zrP$KQ^0Em}hTC^Inj6WW z-tck7!0pKS3(Y6Fz*atoyBwD|Qbcp%-4~FG_xrv6lhZig`0gh`bJ0Neg@s`Et79V0 z$BOY+t4-qm;ksNMId~9)1xX&g96(W}eJ7n?3p$}o)a_wL5s_}sOr{14-sD|N5u7_Y zp}0m&Xd(rAjXroS2l5QylO`3Rg~{RBi(RGN_R0>+*L9Q*`WObPXcKh|pdkZP9w=u2 zoPVwDRyQ`0q`n^zjhK15E${mjDIT&+@6r-(eViiU_9_I zy#B|y=J`nbn3^+_=W~HS@>8J~tm=vbeWzw~e0P%5H?jcftR4qZyk2;KE@?dHndWww ze^`&jv-^keB&yCguRF2ytDY1F{w1EvT7nw_tOysNRALTMxhQD_r(h%bQ~s~9_Jd<3 z2Y{NpWcJCsp>nBck^GiFA&)i;UiWi+m^yj` z4H=ELG)%EJ{%ZiGMYUfG`PRjFN+}}Em$V`ap&$K0p?QoM?c<-J-G#=@@j%DdLyHOB zXl#dZ|7`o6c*2Bcs7Fi`9Ur#)@!8d7LNkbu(QSmE}dladgVriW=c;#_VwW z=d}#|)hyoj!$EkAL87{^e%J=uV@$M--QZtyUtwAa!zATPjL<*%lw{D+Ee7_mJaRk;3@vop8o3V@zjvDEADuC&*iwu2LfNIH@npxuE(GAf3XZRP6 zAN@M@)23g@iNI`MvxWrPWd-^E#d9q^P|1qnhenVA8^xjgbqt5F&{vC zC;x{!@aBQ-`2#FjjiA}3rhVnv`8;%rOj*zb{Qs0=KB>PH5G1MZ&TD*o9>lug9jqEs z(k@zf6-V&Q_+R{31%GB;&6fv1)CuRz>CvGJoAJ?{X44z(!ZVI23iv>-mC*04h zFzNVLohA=HwB>(=-OV94#?35(C+>+SjGxaxk0Bv~qSjFtm6t5JsRD5Gk;*XfGY20+ zTR2clpDT~Cx+xH+eX*ggvO`D(=c{MOvU?gAe~B+R0;>-9@{vdc0Dnvxk?WF<7jq*4 z8WyyDH}x~t*K<|)ou)LBznBmh^Jo|BTH^~$Ioet+c*WU;V9(^Y-HQhdCI*P*r)B7` zRm9JDX97w8sKYH1efxv4`cF6xN~t21{}uFYUbr^T|0WRQfxlS4fNcx^EdWH(R-I#M z^cXJjdW+!cOCbg3MUSJK=V`*GrBBPu|Cu*3?I8YhP6Q8_r9X^Ay|m)9pRD!4;9tt+ zR7+ug!3~}+g+AMc`MLhH16tu~oKINJqssNwhd@{h&{)WNK4tQa>7p%}5TXiC!+=2J zVa+y9UXO?b-?e;x6&+=piQU0ojiU&7eL7&ajPVhCVuwSo2Tt~wNlBoK@PZcA8u43T z!8UZZ&?P-q6VDsyozk8hOBI$ZuaaJAIAprU{n^!8A)@I(L8jDqd~ZN`zJF62b#1ZD za5yNmY58Y=N>MQ{^yM<8e0>a{+ixoLB{|&Z5$Ml(_*0_|5)NDc_LRl`aFYs@sJIA! z=o3;td87S9FLqTLe2Neri?${=6kN43Nb#l5Y)}nimaq>C#;_0Y!pTAS*9IzM0zmjj z`Gn$Tp`&io0mdsCZMm;|tX*_RF{+Q60yO-i94r1?jEHN{24h#@Nt$A0_&lkj;~#wl z1Z z22YYPp7MXh>-;aYH<4fST(>Fqjj$Lz8vglu4b&vieOoVb_T%!kPn2-KQyV30( zuCzpc!M`r!8H@+UB|P{Sq!Zu8F8QA=V$FquiF7mEgVdD)a!8Bh(sj6f_I5(*+@UVN z==L^mKpb3cr9-a7>>HzClQmvMJ`|yB*pPkk!vM-JU}(1XPEwliVoEf8)bQw`?YO<{ z426MeSGDhMvbKX4&n0PYg*(2EG+lsy3;)t$O2LA2t1j`+?~1B+`*@7DIYM+w`&NJ) zvJsa`yUVS14TdwRE`m*AY1UM9e;R*HkiLJ3$%TP~ksW;D{Iu#8iGKJpWRWm>W_XIyw*b+bkSZBTg45Rh2M@Zg9T$ zr*Z6MY`}lDPd`p`gYEq?hgy%5YG#*l&JJsJ9csh5x!=W3LApM9w&Y6`8SxZd#bZ=J zJat7LP&ei0;ai6m7Ga}!Yu&Z{ieK0NIe$r=rdEdtn}=1A1zMAhO_#}6;vatu+wosMpvNP>{7V)aIqdmH za{=i)d*OP0-*wV42L&Z7TpP$;x;(Tr@eaC)%%<2e$Jp>6cwCMV-y7GuVTyJ?r+*j_ z7)%fz%NHF#j3*SS&5_F|fyLYbty)@%0r4NIp%Pejs2#;oNU%8}+bT>hOfFQD0Rbz0 zGe}m8UPJ?-#b$6!MohHLC-N@hSK3k91-zZUwF^t(x-gPMAGl~~#*o-C3huzcqw~bH zq$XFAsUJnn$#19Sa^NM!D;4}R8ky8YCVfiA=*z%{HQkdE6`3L*3LDmg1$FsSo77MnSv;}y1s!~t|BZPuK|22B1^=NRm4T&!e`&fWAys7Y4eNSESwMev9kFcn2FS#6`8^V9wa||-fyw4}{vXs4BY$>Ktm_*ae|KI9fJBk8( zOa32Y)Yq5DlbFL|x#!s|g z^2X_V(b@eBAIfG=ieWIGY9oH)N6Hg)Xrbf2A~Aln32uA-uW=OT4r^coSwJZ{u7M7( z_%D(@&!*2TF>4$hr#*qe967em@M46=9dyw-BH_?{%bHw{e^u!f#EKcg^D;kmx)Fn< z^U0?v8_H^F`^Uxvd2|aR;>J^Bm*fKq3O>+TgvLFT!FT-8_)5DqTfQ)?5arGtS&oQ3 zz<>C$l28H&Ptt(@Qics)0AE9fZUHZ-s(kD zStf&BpBlRkVXTKo1G&CY42IoVP`t<&kkcgWY5%YPf2>r%yIgY~Lj^(5E$up%wA}IG z+B~RrO%|v)Jp;B<{P>@|N3je}7!#2rT!$0Z2$)XvCBKS1jn=52R34}oY3QJkndKf1&} z-x;euMk)*DG8v1?w-m==OiJYBuuF`2^1#pkzXH%s{7c}!s1q1#jPTmDOT8q`As-pzv4f4GM8Mb z!o;PC;RO6a6jS!R(Dq3q5IIwxq(rGcE>dm z#flM~L!~VQW5C7}vC#~Uf>{&6gJ$bViRAY&SA;EQ;e1 z5d`UHOpv%cNk5doN4*=4+jJZ&r{auWe3pd7zbk5&*ujVNS(JA{6~L1?dAV5Ql*=3_b~x;2XcEOtBnZnt;yzR z{T^QX__g1hW5WvJ9DM-h)!ruTF=B(g;GfoR98YS6#qId`MJQe7AE3C`kO=cV7|U9S zsJ#zLyKi%stoxDWD>jw^vWRLY;sSMOi||@@LP}r2QrEv79eWLrgnw&Xt)_Tz6$^Kk z%RqODKUa9>PRRnD%hC$(sJpGWg+-z46GNUIe{tXVIY)`}v-|m@I8my+Z~pp@Z|#?P zB#VMq=n1Gl=OVuZ>F#C7P!-*hs>VP^rZ!O|H!ku3t`o>?@tua{V@plD`j`*?qX2|E zQvIC88Ap#T88hscjwH~`LSC56f(*+x<-L+M8ML|455151dt(iXVdl=Axyl*y7;hXm zMCc(v$srX>#Drt2p{$9^sx->Nx*-#M3GHc9R|*e2q?7D?gU`$c3c3@jrQ(ij?tyzO zOeq(#ZY$r5$tdni_qnn2vc^wU{V@3z+|_AI>?zqR=Jeb%HBjGuT)7>9`^0sR)5eP< zV_WV#toX-(=kkii4{H74#)&yF|L^|q_`?Hu@iX?Xc(@^x&%YgzFLM6bV(QIqQqDu) zmqUT>ga4lgOCN<@y5-0CYliZtiGP9oKsmMLzJVsJnFU{wsr*KIi!l#fFFvwD2;sS( zi#+tw7GUW!zZ|#x{pdw-?uO6SajsQ4C-{xHTi+wirTCZ^(a+;Mu4z*|t=0U#_J~(- z$hIhf0@`*@+M)tucLRDzNX|!hKhAZ!n7&g2pF{ zVbLrEr3X$w_dmSIA3KAV0Lnp!$I9E(?^5LWZSj)=_CbFxe^|b)*plZ3Og7S?kHr}8 zDv;C`Tm4orf)4SZl6d(qoER?6pAN7~<2B{Dl1Diu153vcAeB@+*A-e&_e1Da})4GLvJp`QD@&6vq{!Me_1ojOO$e?WX4y86BQZre~Qadpo9XzPm`MeKZ(Fv(HF)^ z1xpmMQf}ADZ@SPo9hDq{!ws5%fA^*=@>5aExlx)Shn_6A{5}2+#T5!1#enO~_>XaCZtKYA#1`}IDT+J zE8V**J*2Y;?JAEWNgw4 z{xidj2M(?}dNszdX_GDEm5Z2-vhPrAbuJwJj(?#C8Sf9zYAA@~0uQ)wwphMoeJ;!V zfZsu;i2H^AJ+6T*!+!w(Rn_it$oBB-4O2KrNj!)^PNwhKhh;VUYyGd!|NrNIVfGYw z0^$UgLN6^6mcwB1=+KIugPIZVJc+s-B;WZ$4`Z15l%eh^KcUdCx0`-8 zS{L|dyEhp@k86Q_b=daZI$wzY7dxWwAdOFp31l}I_=f*XGUhUG_!oFWj$DSYkr1Zv z`7Qbj;M?qOr)!~LvE_dZ|8n;aZ4VH-k5gYwg+*LVf7)Vx=*DScAt;!w@YISd!bKKf zSY#RF`NVgE5BxWI;~ekVZOq>eE19rLk`o`kwiS~q-nlR#OVFnr>Epb~*<}VvukFKs z-e7yff2SkTegPo&*xB2wESQ{_8xuC5)$>jIo`+}s^nAmyR({dJH8!pI$FahYiRlER$8mhTHKX|nj~(<`~NEJ$+m!*48f|E}}x_{$>mxArujRF;3C zN4fmzBb*x16p{bcYVJz8$Qv=Yr2+M&^|@?i2TNTm(n$G!Zhy2Ez%PqYAE_P^6bNev zZwOyFzv_q%Siqk@VrV*d1Wbq4nyDIiCF5Usmo)DP3wfez74fkchXuu}ENErt7mIJ~ zPX#md@!%&#&4Rp4l!{CsSko8q68h=|wc_oEmybm;wD^rc#Kpvg$O-t*g{fbI zLY0}!UEaY?nsbe4-QNRFN}F(wG)gs`JC6S|4<82^^* ze%R%(TNxi9D7Z{3s_n-^9 z0{+M_W9D`-0s=;534~GHDkti3X(O72T6sH^#|nN#E;|G-;RFMhNcxfl2`VT#_k_=l z=Ixe>pzoV-(o!iuY3G-nZAmTdaZ8EoG|P*cxCuemedI@E^0XSH7y} z+AuLL3;r=DF+bYlHV8nzB28|jb6dFJ`F3r)-wJ-m_uaqk>psyG-4%g+eW3r-e3?Mx z_kUgZ`DM=cCI9yrs6GEv$WPzcVrlN)4Z4fpWn1(oz{lfLQSgnvc~3@ad5>i+Cm?Tw zm#|Oqo0!G^e}zBF{`rO1HW4(Gca0lDe@kJF51o&8aTcC6iB0P=&Qm|G5M60{zY&*v z;<))c+=;ozrW@!sY)v#4J#Gj2%8kcr`ztZA);8CR;CFGWF&rHuW<%^#nVQ^&l|>)# zn90R$Zf5m3@4I{tCv(hOF?wIcti{x^6DkgavGIE=z@}mKeLcd!E*Wk2`kyn5vSWi{QeVZkRD?Yyn3y~K!q(415R3x#54zx1n}wu&+E zwcmMdN}kjEO?zXH7Y&xP5$)4hyGUy zeb)HaM);Q^(SBU`cF)eu+ z2L)IVsq~_C72P*KT#K{YgA|%BC;x9dLtn;*ntSK&qTD*T5!A%l{V7IHlwg`U<)awCL1%_l6zmDCm`fyZhi9C2y6_F+G zA$?qE{G5Mj0$xKVKVXA+EmZgiw#Rs-q0x#FG}%MZ`u!NY7oQFOdA#!hk|x{QYCP{B zaYr$H8;`Sw8)q1c#>w+%;oUp2|8@K~msYvwGi~i{x<>T@f7DjKK^_g{{rUVl_L|Gc z0)J`kW&Q; zh(q)_)%WEHIxh@VIq4WR;!2ym7Y`o4F)uXj$remc4zc*nvxZJ%i1;J$@u_|uI1A8+4o|L}=&gLIE&oS9g*m^1 zDt5l7>sMF_dZ-gTX8vylIEjKk%O=2I=nNkaB}n~W&i{q+AN*1-vMP?MGX4b@n$EOE zJGf_mz<>DQ8CyLs+06eqUb>!AyeppV*sQBs%a-X+mx613PmbH?A$a^mS6Un0pYh8^ zeP_9pyb`g^C@a=HVh;7=G~K^?tI*5I{aj5E1Y)M~_Y_aMvnfFh! z#T>6q#z%lE_f0>60uK)87A!^L? zJvV3T_K?Oga0;iR2&y{93Ct+4ld%@C3%VF`;q^1ukLvCnTQB-ayuae#Kqhtk!>@=8 zcGK%nb;1bj;PDx;2Lp9u>@#7CCI~7)5CHQYlnGTp8pGD zO{-2Q`al2ozf!D;?t-Bctps9%Q{QkQi4 z)=v3#8>D|QnC(0&<$fLgviM>lGsu)(T00z{CV$wrc(P{Klq<%d!-{TBl#3=mAc`a- zkZ`orYS4GJKoq02_)k4Z#e`nqN>+hx+C6AqY;N+$qvOBZU2+psU9AKnYhPWMK_Y(M zcRzd6KjXiX4L+WGoE_Juz@7B*kRSO6$2xiW1^>({<#75LQjf36Cr7psun~`xFlF%Z z=%N1svF#XGhT;12z;4fhvrD_qpA*eoNwGqC7iiOAdX4i;bbod+|Fpn&@J39?*n{{7 zVbiXkJMW)dq_UqWBSOG6Kr9U1z_&|Eu~#nsC-C(Uv(z%S&;olpB$u6`Y zhsk9uZLz^Gp1JpZ-Xfh|kIizCr{fv#BP}Y%f-*XORvuy)TkyZc;yz9b9yE^#Wk}Ee z7yV14`FYEG#Y>NIRxFoH4;GsYLl?&WhH>cU{A&X%HN8ORs6h`N?R2bYyDPV!M|b^s zp`moM>+Q@D*0c&)A{|P$MyYZ&K?JSgc zPfFQse>d%o=Xo#kWI1CLi6LfAo#R8B@=UDruz^Hzku z9r{Z_jdrQtCO1S6^bFE{$tZ;C+8v@X$EGlV7{D$J3NHhb{LCACo^Ex)fCcjQXOmtr+Mr9d{9% z8*g>)9Bht}-xQ17!oG$JUV(5h1nK;(ifHuUy4WlxQjzM-UQKsfaVulkZi_?z&7m7@ z2r|JN<7r=%AN;prR-Pc)+C?U9F{1O@@t7@J90~ei1L=AZz(0&+O^_?7Y`N5Z3I#*Sx#x7G!x^ zc|cRVCoeico^S{(rs1p9k#~`IIs5gu_!+Wl#Y2fAmfo;_?jfDTWq)ef4N663V_aA- zq<i&>wEpQxzbpE0ZPO3p8tUs0<3yk5 z`0W)OPrsKuG4Ov0Li$1r#wiDU<3ZEtjQ{>nrqQN2kX@u=D$)R3Q{L_QyYI0ND(ET2Q?qF&QY$bQJuV#q+rm8B{dWUF>gsUI74r+Da~Fg;grxFEiAWEM82!7O}*39?%nK zzj4Ff0|4Vsmuq+Y|90q{+sU-hg8y|cQ|M#ewwTjieFS$d_|N?9G;I#6GNO6mU+zBb zRDB^ZURSbPa`heXdW`Y)YX`h0`Rk>MGjiecp$InWHu-mK|Nk5QH(r`9=>VIyvBk%} z;9o0l=Qv))t?wfrTRY$KT<637QoEEJW}1-8ltcyco+@0chY_9#9$r4JbCSdJnA|)z z3%$hRN?V4t(v7u3=4?EDUgNvR9m%|3N&Fr~t;M-W^9$rw8_g+Y7q zJM|ieU;G@KB)>|T$y^BQyyjKy>{YN9nYu~a3fcUzua93SR%gveYX!0)Ogf|{kC<1b zpR2a}7mJ&vCKxQfcmq8G+b*l{&tc7DK-|mWv2ZHLyokW{_*A$aNl0btT4dlxfdA*8 zSutnP8XdzwJKvzFx`wo2tTm8!A1%8l{!PF?dV%$Ve^t^?MxyONQ57*)d{YR_b|NuN zKSehnXra@h`H1#mJvE|~0j@#>rQ^}MnKs@`*5VVY<`w_Rl#;OH zCuke~mze3UQ;emLBYEvaN|q$zkua8xU&s-yyNd{XD!&fHqPW@ha81JQ+j_Y!6CYvM zxb}hh#m~pOgR){l(0q<>jrI8CkFRUx<&-nu@%(N0m*SC`7ji)5%ccXGU{Akh?84e{ zYLc(P68zWsXe)yHz5d!E`O7g??nu)N@Ab36w|0J>yev(x_P%AOa~>nf?pZ5 z(2RR#yxeN(50Xf~EeHU$yak$Df6t{+h2z5Qtj}{o7B; zF>gU~#DcUr9w$)EVgLCAuSqxufQJZDb4|$8_OCn|kNBgTjv`CEsvy2c;rCoGEoMxO zQqs|es=O!%1^->UJdw9g4*B_W59uoa#GyjJkbbFOViz)u8 z%EiZ9tete`adeQHL7n=86qDbI&$(W%{BZCebpd!KPR0(%xAo6dxA_a?R-#uI_xw-z z*G4n&?~CiwLF&|TQY3_G8QH(avK>zu?13|DaVF&VIF`Bn%U#86ScK{&6bIZJ17*|7*-+j8f}1A6@Y;KI8CM zlyN#71xIz-r>T-prcUFJ5Jv3BS#^-3$<1(3II4K42z)GL*K4y4~8J{$+Qz(uL8r*_fO6Rw?K~kvb^#){3j@xOq)ku@Za$K7GofkU-6&1 z_yhjQTz|noCOkeuM%;5md?hYJ$1ksl@Xq89Z{sV*Ys_iVFf$hO@){G7cG%8ZKZqZx zIlPCj&Okkkyetqj{N#hYZQ0G*SluULoYwU(vXiXB@fFDd-6f4ORzcn^U#yb>pPIz}jiYHfJ6ApLHQu`2j!jhnTm~+G6q&8@7IPEEP^XtiR;B`QH`) zviUpq*E{CgjdBIxNux-mBJsz}!0$ztoy^;HeQP_q(oU#J^W1r|P{(un)1X;W{@i{Z zNVC@SKJ}Adc=cY7y}e+=J_NhtqU>q1CaL70?>u+e`*&G?)(#8aM?*p&&lnwqz!xbl zcG{Ycq>5HushDi=6ZO_-Vb-xz_s>I%M+w^Ha^>jQ*+^JnJp~_jG&mS|CKPM_H|e|g zYPYpI9DZKgtv~OP4|o$_QY1Ab!)7i4~ai$YLbAq^|f7wW0CgoCvHl6K0QdhSc^+G~J}zC<@@XvuEI zKf_LTd12R|EVA!K|0NZK?qeJjAQwTQ6Zb`5kR>rc&j6KVj0>>HzoN`Aj({$qK!m%& zV;qu@0>uk5FaTP~l^4Z0DF8nPStzcHZo`_Nw0flTLV>}5Wb(+3}J{Al}#e)_94YOTl0o9u|fds|_8KeEUt{%1I z9siBCOZrFrmtIl@8G9ophj&==g*?j2iwUaq>Mlks1CJGHv)C`iv*afh!!|ya5_|Jd7>hn(Oq8nQkzzQEFZ#km6M6U=(x*5fgSBV)53n6`22e)%nGzkd7<=)s z)N3?GBXcb1I8Q#h?3?^OPHfJOG9X^EFT|Ccr+1^Q-inR*i*Z(p!A)b3Nn{Fgp+S zvz`xZY4(ho^kOcA!acUF9cF1#qs_DTBa6pv|H-mz4vSwL0KC6Rjtjo5d6J2Pbcok5 z&pp&gFEJA;I;&`iMPfz*3R;UnAF1XTu)z9}>6?zMF`)18a&gZBH+6#YVMo^MK;ZgWw_8+^q+>)8B?B{r>k-RL67N^<0F-^=q6@ z6$_`FB66>))$V@^N2lnVG|vv;=mG^WD_>oUEFJ$D(==j_e>dUcal?P^h_&*q42T*$ z)6mxNnY$hV8;67`j|1V}LKhHCDi3NfJ0}22vM}AazTn^G3ZDfw6!cV(HSl|H6pl`E zBu~eth$)OUlgI9_M%Q6|NQb(gR6?8fiSaUj!OnB!!~6k+dYI032KX>(xvm0$7doYR zc#aVd8Y=%Q@qjUz+}ZGfoAodVw=8v{K9CD9(&(`wSr1`Z+`)@FeIAkm9^JY1nw(TC z|ECXV$(Hd$YCiL$qOZqwmksr3wd>dKZ^QC0TOgMR%KCT^#2@vrg%2P`@ww~MGR|e3 zam|*BBL8n#m-4?Z$6pG{sF(lm@E`PH9+QJY%onf!iDNMR?fCzVN4$R10T!K8Hilo) z3F8~p{}|U<|5LUxWr@@W?e@iiiO`e*-0<37@SZwPDsqiIF}}4$mtV(x znvN>Nm1n?(#9oH*^PyuM^h2PWNFlGtW7v$Hb`ui%7C*VLB-$#1Q7LGqx&NNXSwhB8{kU&iIDVYyI zj-l-n;#JX}a`d@QkWutW<{))D@gMp_T|n`ZY+%Gg%7Q$&k79nJ zi3!sGEB-;p$9D1u{L8fM!bc9~I<_HOw~~@d!v~e!z4T$&4KWA&8WfF1>9@Lsf4NUT zV~jfQm=9aFc%8gL4wW8cG}|yP9otyo%sC`F&R4SF9lAD-c|aibTXvTrpBcMl45_+x z1;4@e+mSZcY}|K+VssN(XewPMzqXu1dkn&V-adQ+3A4|djIW9RMYh1p*JIa5xljfA zJ2BC1IAWnf2X$GLW~Nn8ZL}}fLSLpb@xS3$gdf5NTP73#gAT^h5!D$lZsA150zA}p z6kjoBuuqI4O!=&1sA5m?cKqC!Mpww?@X%BtYl}}XkoIdwFu5kS=tu5YxkG52Lnz~F z$G-?RwbL+0 zGwnJN=09?Sc(}=!^P|(_P=%`~Vs?N;AsSX=nOn|vbIDUSjcm3Qm|za7NT<>s?g$Lq zRuLxYoZ`M^J56?teIW}4>Es{XRaWzvEPNUA5#o6)e+uU2eC-s4u@X}B`G2gKNLL<{ zv$z%b=K@LG7{$$Q#@bz*`O5X;g;T*z(W+lSuZ9$9^`1J zfjeB=fPw)4e5v>lc(`IvP=yc`M2R=4Bk_N}S=eth^@jpaki#*3l{b8@x>@nZap1w6 z7bz3}Dv~;BG*UlOlb*q*IQ~@_|BG#iufBeS!)8P!zt`ABeQA^UmtMrh)O^6f_@tmC zfvH%iR4j%0r-G~|ZLM?1NH5ZkwwE2k{o%lW7XKb68+|;f`d^DzpveB9>Lz2iR}9nf zqNrof!H>*C?X<2ehe?43|#&>685(@c0YjgkWzqa{3vm#J* zP6Ofsy=f?uoPtq-p!&?J1IF22ua&K99;nQN#ee-?G$v7kX7a_?l;Ji_GIRob7|LEe z1>^aE88p_xSl1NfH!i%9zIE5zUyh+iD8gwkN@+O_62P%jX0!q{u2ZLb6(jB*nUCm-GE(Q)VzrY^=Oj~?s%um1n*)i>X9$MdK zFOm1WjIj#)OfiRl>(n!rC5x8Hc#V%$GDROWnbvo9WG>jhiLdt4uOkX>N%np+I2 z@t#3GbG|a?pf`EJ=P-E0c)Bp!;kEiSTvxc4Hmx~BTx30-dx~;NJ zzR+aKesz)O|B`Wa&qvFAG6^2R%@waW@LCAPYkm$BA72c&cGP`&6$kFf^&5R*%Wjz3 zYZ0sYxv`(q{BF*Pv46@VzF_82y-1pi)9{5e;J|9n$j-(BpVZNzox7kEcgG3(P$v+% ztgcY5K-;CQ)&nN5+BEKtA9kONsO!BIWbEh9AaL>7TboI|4&&iC)@~QpAQ;qm$%f{C z7{elkf8+s+K&V#K&$=@Xa~kFlw^9`VH+>;?Pj)@U84fHg_vysD@cQc=U?P)#=Ivpf zf%eMrOKVa##58Dt%d&A5AK*1Ah+mG~W8SH)AXz-+(;Lu1w|&_Mi$(i6*uJm*1n2Cm zHyUT;e-mjdE8TvY|8~ISNI;KaBwGso6mu?mK>6x?vCkh5jB5gmlHs%Jh?17$MKpG8 zTE^ATm%!Sf72nUrd%#?piGWXmbn& zz`V?H_=x+l=vXEXhJ8)mWh1_1POz0cPjG?dD*+7Llp8X9@^Itm9x?2(0ciwC-DS!C zTfto3kJj&q*@~>X6bTh&2p!a-L`486Z;O8%r^$1e+4}+QpmUYk+t$+@xJB1qaFTRY zW>x|@{o1hYlcw4NQo+Az5STw01{)h=L#xk}oi&tv}C>jrw)WS0^RD(Xn6cxdu=mxqChsYna8w=uU2J%SDO)a)Z z;n}av!&q-!KXIM9{DPagXp+6Scla9Eq5R(kcU^$pRF;_C=RyL0{d3&@0BYs}|4(<5 zIRAjYRY&Ya-LcK5youGWKZ@h6pDyz%lJ_t3&n>^e9782z%?NI(;~wC^20y3Y=C9D| zPy!mZ_-H5J?nNFzTL)df-sHUzY~OcMpw4UH5U{A^>>`{Z!fKN1;FCYoZ+n64ujZPmYTTPr@S74&=2?Gz}q#|bF9a8Z@#3Px^C6N!+` z$9&+C`n1M5%Q6RJ^}!t=sbnFO|@t5+NTZM<{b+^`f+dl5eGjrr{oq}y>VYV;q5tTD8jB;N)x zCFew_pWt&A$x;V0In_XYi}BHNKJ39A$?iMA4~(1m-*kdH-sQol1``QzsiFaVycG$b zbAPX~m5Yo*+QKvDZ}zvtr;5-xp>ugVJhHC70%Hw&T7HB+UG{58rwP=KqkW!l@|S|_ zj(}y1869-HR(DMP^l)Iz+-Grp%$c9---?%)2Q}OGzZ|0|E3AVU_rHgK>GS3CYtY|O zQ9T?dK3{e`)A(I3V3T7)Tx+hT$e*n1nzBRJ$r9iNd_HV$GV$B(3i%&%-^BmFzWv|+ zM+liNFXhUpkf3Q{Nc`A2ifcR!ntZt+!TXsTYa0cctQvvb_5b_kp#_9gWP3J zbHRcO+er~tB%C~Kiwted^m}$^P$@{(HE*hs49!G;L;IW*(7iLf)p^RojxRf>+&x77 zDfWFAe+>TVI@^)e)fVxq&E%@$=eD))vK62}W!BFhPru%z@A8722Xk~t z;Ld;sGB?TxCu-S}{j-52)yCf?WT6`D6}I;IU02o#v

1eg_9lp~>?*b(c>cqz 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%0A{G&k)g9kG4R`6== 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 wnzQ`d=j7>ss5dobUZ!T>Eb { return (

-
diff --git a/frontend/src/pages/Main/Main.scss b/frontend/src/pages/Main/Main.scss index bda12516b..1fd77b866 100644 --- a/frontend/src/pages/Main/Main.scss +++ b/frontend/src/pages/Main/Main.scss @@ -5,20 +5,9 @@ flex: 1; flex-direction: column; align-items: center; - background-image: linear-gradient(135deg, #5a9bbe 0%, #1b618c 100%); - min-height: 100vh; -} - -.main-image { - background-image: url(../../../public/navbar_back5edit.jpeg); - background-size: cover; - position: absolute; + position: relative; + z-index: 1; height: auto; - width: 100%; - top: 0; - left: 0; - min-height: 100%; - clip-path: polygon(0 0, 100% 0, 100% 100%, 0 70%); } .main-nav { @@ -27,7 +16,7 @@ .main-container { flex: 1; - width: 74%; + width: 80%; margin-top: 3rem; margin-bottom: 3rem; @include tablet { From a6fe67a66e23f22142096e91b4476449fff8bc01 Mon Sep 17 00:00:00 2001 From: SamuelPull Date: Mon, 18 Nov 2024 16:08:30 +0100 Subject: [PATCH 03/23] ci: Bump audit versions (#2101) --- .github/workflows/daily-security-check.yml | 4 ++-- api/package-lock.json | 6 +++--- api/package.json | 3 ++- migration/package-lock.json | 14 +++++++------- migration/package.json | 3 ++- 5 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.github/workflows/daily-security-check.yml b/.github/workflows/daily-security-check.yml index 80e3a7f50..0f5b8b77b 100644 --- a/.github/workflows/daily-security-check.yml +++ b/.github/workflows/daily-security-check.yml @@ -10,7 +10,7 @@ jobs: if: always() strategy: matrix: - tags: ["main", "v2.16.0"] + tags: ["main", "v2.17.0"] steps: - uses: actions/checkout@v4 - name: Use Node.js 18.x @@ -53,7 +53,7 @@ jobs: audit-libraries: strategy: matrix: - releases: ["main", "v2.15.0", "v2.14.0"] + releases: ["main", "v2.17.0"] runs-on: ubuntu-latest if: always() steps: diff --git a/api/package-lock.json b/api/package-lock.json index b89fb35d1..512e6e43a 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -3473,9 +3473,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", diff --git a/api/package.json b/api/package.json index e437e889a..71607a066 100644 --- a/api/package.json +++ b/api/package.json @@ -154,6 +154,7 @@ "postcss": "^8.4.31", "follow-redirects": "^1.15.6", "find-my-way": "^8.2.2", - "cookie": "^0.7.0" + "cookie": "^0.7.0", + "cross-spawn": "^7.0.5" } } diff --git a/migration/package-lock.json b/migration/package-lock.json index bebfbd7d7..2dd61f3d9 100644 --- a/migration/package-lock.json +++ b/migration/package-lock.json @@ -522,9 +522,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1956,9 +1956,9 @@ "dev": true }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -2039,7 +2039,7 @@ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", "requires": { - "cross-spawn": "^7.0.0", + "cross-spawn": "^7.0.5", "signal-exit": "^4.0.1" } }, diff --git a/migration/package.json b/migration/package.json index fa62929d9..d5f180972 100644 --- a/migration/package.json +++ b/migration/package.json @@ -33,6 +33,7 @@ "overrides": { "follow-redirects": "^1.15.6", "semver": "^7.6.3", - "braces": "^3.0.3" + "braces": "^3.0.3", + "cross-spawn": "^7.0.5" } } From 9a452f4ddea3cd5741ce2b92a7d53eecfbee0134 Mon Sep 17 00:00:00 2001 From: Peter Baus <11943691+galethil@users.noreply.github.com> Date: Tue, 19 Nov 2024 08:34:52 +0100 Subject: [PATCH 04/23] api:upgrade fastify (#2102) --- api/package-lock.json | 8 ++++---- api/package.json | 8 ++------ 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/api/package-lock.json b/api/package-lock.json index 512e6e43a..1c618b4f3 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -29,7 +29,7 @@ "bcryptjs": "^2.4.3", "better-npm-audit": "^3.7.3", "content-disposition": "^0.5.4", - "fastify": "^4.19.1", + "fastify": "^4.28.1", "fastify-metrics": "^10.3.0", "joi": "^17.9.1", "jsonwebtoken": "^9.0.0", @@ -4617,9 +4617,9 @@ } }, "node_modules/fastify": { - "version": "4.27.0", - "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.27.0.tgz", - "integrity": "sha512-ci9IXzbigB8dyi0mSy3faa3Bsj0xWAPb9JeT4KRzubdSb6pNhcADRUaXCBml6V1Ss/a05kbtQls5LBmhHydoTA==", + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.28.1.tgz", + "integrity": "sha512-kFWUtpNr4i7t5vY2EJPCN2KgMVpuqfU4NjnJNCgiNB900oiDeYqaNDRcAfeBbOF5hGixixxcKnOU4KN9z6QncQ==", "funding": [ { "type": "github", diff --git a/api/package.json b/api/package.json index 71607a066..95ea648d0 100644 --- a/api/package.json +++ b/api/package.json @@ -93,7 +93,7 @@ "bcryptjs": "^2.4.3", "better-npm-audit": "^3.7.3", "content-disposition": "^0.5.4", - "fastify": "^4.19.1", + "fastify": "^4.28.1", "fastify-metrics": "^10.3.0", "joi": "^17.9.1", "jsonwebtoken": "^9.0.0", @@ -151,10 +151,6 @@ "lib": "dist/lib" }, "overrides": { - "postcss": "^8.4.31", - "follow-redirects": "^1.15.6", - "find-my-way": "^8.2.2", - "cookie": "^0.7.0", - "cross-spawn": "^7.0.5" + "cookie": "^0.7.0" } } From 3d2697acbb305cb48521c038fc11558ff66a6f96 Mon Sep 17 00:00:00 2001 From: SamuelPull Date: Tue, 19 Nov 2024 08:47:46 +0100 Subject: [PATCH 05/23] 2079 Project Description field (#2085) Co-authored-by: Peter Molnar --- api/src/httpd/index.ts | 17 - api/src/project_list.v2.ts | 7 +- api/src/project_update.ts | 41 +- api/src/service/ProjectEvents.ts | 354 - api/src/service/domain/workflow/project.ts | 2 + .../service/domain/workflow/project_create.ts | 3 + .../domain/workflow/project_created.ts | 3 + .../domain/workflow/project_eventsourcing.ts | 1 + .../domain/workflow/project_updated.ts | 6 +- .../service/domain/workflow/workflowitem.ts | 4 + .../domain/workflow/workflowitem_created.ts | 3 + .../workflow/workflowitem_eventsourcing.ts | 2 + .../workflow/workflowitem_trace_event.ts | 2 + .../domain/workflow/workflowitem_update.ts | 1 + .../domain/workflow/workflowitem_updated.ts | 3 + api/src/service/index.ts | 1 - api/src/subproject_view_details.ts | 3 + api/src/workflowitem_update.ts | 1 + api/src/workflowitem_view_history.ts | 1 + .../cypress/integration/documents_spec.js | 6 +- frontend/package-lock.json | 16826 ++++++++++------ frontend/package.json | 1 + frontend/src/languages/english.js | 6 +- frontend/src/languages/french.js | 6 +- frontend/src/languages/georgian.js | 6 +- frontend/src/languages/german.js | 6 +- frontend/src/languages/portuguese.js | 6 +- frontend/src/pages/Common/Identifier.js | 2 + frontend/src/pages/Common/Markdown.js | 41 + frontend/src/pages/Common/TextInput.js | 2 + frontend/src/pages/Main/Main.scss | 4 + frontend/src/pages/Overview/CardView.js | 4 +- .../src/pages/Overview/OverviewContainer.js | 4 +- frontend/src/pages/Overview/ProjectCard.js | 5 +- frontend/src/pages/Overview/ProjectDialog.js | 3 +- .../pages/Overview/ProjectDialogContainer.js | 2 + .../pages/Overview/ProjectDialogContent.js | 7 + frontend/src/pages/Overview/TableView.js | 3 +- frontend/src/pages/Overview/actions.js | 13 +- frontend/src/pages/Overview/reducer.js | 14 +- .../src/pages/Workflows/WorkflowContainer.js | 6 +- .../Workflows/WorkflowDialogContainer.js | 2 + .../pages/Workflows/WorkflowDialogContent.js | 9 + frontend/src/pages/Workflows/WorkflowItem.js | 6 +- frontend/src/pages/Workflows/actions.js | 15 +- frontend/src/pages/Workflows/reducer.js | 13 +- package-lock.json | 18 +- package.json | 3 +- 48 files changed, 10396 insertions(+), 7098 deletions(-) delete mode 100644 api/src/service/ProjectEvents.ts create mode 100644 frontend/src/pages/Common/Markdown.js diff --git a/api/src/httpd/index.ts b/api/src/httpd/index.ts index fa3b1caf3..4c4d8f74b 100644 --- a/api/src/httpd/index.ts +++ b/api/src/httpd/index.ts @@ -1,7 +1,5 @@ import Intent from "../authz/intents"; import { AuthToken } from "../authz/token"; -import { Ctx } from "../lib/ctx"; -import { ServiceUser } from "../service/domain/organization/service_user"; import Type from "../service/domain/workflowitem_types/types"; export interface Document { @@ -48,21 +46,6 @@ export type GlobalPermissionRevoker = ( intent: Intent, ) => Promise; -export type ProjectCreator = ( - ctx: Ctx, - issuer: ServiceUser, - token: AuthToken, - payload: CreateProjectPayload, -) => Promise; - -export type ProjectAssigner = ( - token: AuthToken, - projectId: string, - assignee: string, -) => Promise; - -export type ProjectUpdater = (token: AuthToken, projectId: string, update: object) => Promise; - type MaybeHistoryEvent = null | { key: string; // the resource ID (same for all events that relate to the same resource) intent: Intent; diff --git a/api/src/project_list.v2.ts b/api/src/project_list.v2.ts index ff80482e4..29371348a 100644 --- a/api/src/project_list.v2.ts +++ b/api/src/project_list.v2.ts @@ -16,7 +16,6 @@ import { ServiceUser } from "./service/domain/organization/service_user"; import * as Project from "./service/domain/workflow/project"; import { AugmentedFastifyInstance } from "./types"; - const API_VERSION = "2.0"; /** @@ -122,6 +121,10 @@ function mkSwaggerSchema(server: AugmentedFastifyInstance): Object { thumbnail: { type: "string", example: "/Thumbnail_0001.jpg" }, additionalData: { type: "object", additionalProperties: true }, tags: { type: "array", items: { type: "string", example: "test" } }, + markdown: { + type: "string", + example: "Long description with rich text features", + }, projectedBudgets: { type: "array", items: { @@ -183,6 +186,7 @@ interface ExposedProject { currencyCode: string; }>; tags: string[]; + markdown?: string; }; } @@ -237,6 +241,7 @@ export function addHttpHandler( projectedBudgets: project.projectedBudgets, additionalData: project.additionalData, tags: project.tags, + markdown: project.markdown, }, }; }; diff --git a/api/src/project_update.ts b/api/src/project_update.ts index 33eefe8d1..ee8cb739a 100644 --- a/api/src/project_update.ts +++ b/api/src/project_update.ts @@ -13,7 +13,6 @@ import * as Project from "./service/domain/workflow/project"; import * as ProjectUpdate from "./service/domain/workflow/project_update"; import { AugmentedFastifyInstance } from "./types"; - /** * Represents the request body of the endpoint */ @@ -26,6 +25,7 @@ interface RequestBodyV1 { thumbnail?: string; additionalData?: object; tags?: string[]; + markdown?: string; }; } @@ -38,6 +38,7 @@ const requestBodyV1Schema = Joi.object({ thumbnail: Joi.string().allow(""), additionalData: AdditionalData.schema, tags: Joi.array().items(Joi.string()), + markdown: Joi.string().allow(""), }).required(), }); @@ -93,6 +94,7 @@ function mkSwaggerSchema(server: AugmentedFastifyInstance): Object { type: "array", items: { type: "string", example: "project1" }, }, + markdown: { type: "string", example: "Rich text with bold letters and italics" }, }, }, }, @@ -139,7 +141,7 @@ export function addHttpHandler( service: Service, ): void { server.register(async function () { - server.post(`${urlPrefix}/project.update`, mkSwaggerSchema(server), (request, reply) => { + server.post(`${urlPrefix}/project.update`, mkSwaggerSchema(server), async (request, reply) => { const ctx: Ctx = { requestId: request.id, source: "http" }; const user = extractUser(request as AuthenticatedRequest); @@ -160,26 +162,25 @@ export function addHttpHandler( thumbnail: bodyResult.data.thumbnail, additionalData: bodyResult.data.additionalData, tags: bodyResult.data.tags, + markdown: bodyResult.data.markdown, }; - service - .updateProject(ctx, user, projectId, reqData) - .then((result) => { - if (Result.isErr(result)) { - throw new VError(result, "project.update failed"); - } - const code = 200; - const body = { - apiVersion: "1.0", - data: {}, - }; - reply.status(code).send(body); - }) - .catch((err) => { - const { code, body } = toHttpError(err); - request.log.error({ err }, "Error while updating Project"); - reply.status(code).send(body); - }); + try { + const result = await service.updateProject(ctx, user, projectId, reqData); + if (Result.isErr(result)) { + throw new VError(result, "project.update failed"); + } + + const response = { + apiVersion: "1.0", + data: {}, + }; + reply.status(200).send(response); + } catch (err) { + const { code, body } = toHttpError(err); + request.log.error({ err }, "Error while updating Project"); + reply.status(code).send(body); + } }); }); } diff --git a/api/src/service/ProjectEvents.ts b/api/src/service/ProjectEvents.ts deleted file mode 100644 index b7601ee50..000000000 --- a/api/src/service/ProjectEvents.ts +++ /dev/null @@ -1,354 +0,0 @@ -import Intent from "../authz/intents"; -import { People, Permissions } from "../authz/types"; -import deepcopy from "../lib/deepcopy"; -import { isNotEmpty } from "../lib/emptyChecks"; -import { inheritDefinedProperties } from "../lib/inheritDefinedProperties"; -import logger from "../lib/logger"; - -import { MultichainClient } from "./Client.h"; -import { ConnToken } from "./conn"; -import { Event, throwUnsupportedEventVersion } from "./event"; -import { Issuer } from "./issuer"; -import * as Liststreamkeyitems from "./liststreamkeyitems"; -import { Item } from "./liststreamkeyitems"; - -const projectSelfKey = "self"; - -interface ProjectedBudget { - organization: string; - value: string; - currencyCode: string; -} - -export interface Project { - id: string; - creationUnixTs: string; - status: "open" | "closed"; - displayName: string; - assignee?: string; - description: string; - projectedBudgets: ProjectedBudget[]; - thumbnail: string; - permissions: Permissions; - log: HistoryEvent[]; -} - -export interface ProjectUpdate { - displayName?: string; - description?: string; - projectedBudget?: ProjectedBudget[]; - thumbnail?: string; -} - -export interface HistoryEvent { - key: string; // the resource ID (same for all events that relate to the same resource) - intent: Intent; - createdBy: string; - createdAt: string; - dataVersion: number; // integer - data: unknown; - snapshot: { - displayName: string; - }; -} - -export async function createProjectOnChain( - conn: ConnToken, - issuer: Issuer, - project: Project, -): Promise { - const intent: Intent = "global.createProject"; - - const { permissions, ...metadata } = project; - - const event: Event = { - key: project.id, - intent, - createdBy: issuer.name, - createdAt: new Date().toISOString(), - dataVersion: 1, - data: { - project: metadata, - permissions, - }, - }; - - const streamName = project.id; - const streamItemKey = projectSelfKey; - const streamItem = { json: event }; - - // eslint-disable-next-line @typescript-eslint/no-explicit-any - const publishEvent = (): any => { - logger.debug(`Publishing ${intent} to ${streamName}/${streamItemKey}`); - return conn.multichainClient - .getRpcClient() - .invokePublish(streamName, streamItemKey, streamItem) - .then(() => event); - }; - - return conn.multichainClient - .getOrCreateStream({ kind: "project", name: streamName }) - .then(() => publishEvent()); -} - -export async function writeProjectAssignedToChain( - conn: ConnToken, - issuer: Issuer, - projectId: string, - assignee: string, -): Promise { - const intent: Intent = "project.assign"; - const event = { - key: projectId, - intent, - createdBy: issuer.name, - createdAt: new Date().toISOString(), - dataVersion: 1, - data: { identity: assignee }, - }; - - const streamName = projectId; - const streamItemKey = "self"; - const streamItem = { json: event }; - - logger.debug(`Publishing ${intent} to ${streamName}/${streamItemKey}`); - return conn.multichainClient - .getRpcClient() - .invokePublish(streamName, streamItemKey, streamItem) - .then(() => event); -} - -export async function updateProject( - conn: ConnToken, - issuer: Issuer, - projectId: string, - update: ProjectUpdate, -): Promise { - const intent: Intent = "project.update"; - - const event = { - key: projectId, - intent, - createdBy: issuer.name, - createdAt: new Date().toISOString(), - dataVersion: 1, - data: update, - }; - - const streamName = projectId; - const streamItemKey = projectSelfKey; - const streamItem = { json: event }; - - logger.debug(`Publishing ${intent} to ${streamName}/${streamItemKey}`); - return conn.multichainClient - .getRpcClient() - .invokePublish(streamName, streamItemKey, streamItem) - .then(() => event); -} - -export async function getProject(conn: ConnToken, id: string): Promise { - const streamItems = await fetchStreamItems(conn.multichainClient, id); - const projectsMap = applyStreamItems(streamItems); - const project = projectsMap.get(id); - - if (project === undefined) { - throw Error(`Failed to source project ${id}`); - } - - return project; -} - -export async function getProjectList(conn: ConnToken): Promise { - const streamItems = await fetchStreamItems(conn.multichainClient); - const projectsMap = applyStreamItems(streamItems); - return [...projectsMap.values()]; -} - -export async function getProjectPermissionList( - conn: ConnToken, - projectId: string, -): Promise { - const project = await getProject(conn, projectId); - return project.permissions; -} - -export async function grantProjectPermission( - conn: ConnToken, - issuer: Issuer, - projectId: string, - grantee: string, - intent: Intent, -): Promise { - const grantIntent: Intent = "project.intent.grantPermission"; - - const event = { - key: projectId, - intent: grantIntent, - createdBy: issuer.name, - createdAt: new Date().toISOString(), - dataVersion: 1, - data: { identity: grantee, intent }, - }; - - const streamName = projectId; - const streamItemKey = projectSelfKey; - const streamItem = { json: event }; - - logger.debug(`Publishing ${grantIntent} to ${streamName}/${streamItemKey}`); - return conn.multichainClient - .getRpcClient() - .invokePublish(streamName, streamItemKey, streamItem) - .then(() => event); -} - -export function applyStreamItems( - streamItems: Item[], - projectsByName: Map = new Map(), -): Map { - for (const item of streamItems) { - const event = item.data.json as Event; - const projectId = event.key; - let project = projectsByName.get(projectId); - if (project === undefined) { - project = handleCreate(event); - } else { - const hasProcessedEvent = - applyUpdate(event, project) || - applyAssign(event, project) || - applyClose(event, project) || - applyGrantPermission(event, project) || - applyRevokePermission(event, project); - if (!hasProcessedEvent) { - throw Error(`Unexpected event: ${JSON.stringify(event)}.`); - } - } - // There may be alien items in the list, so project might still be undefined here: - if (project !== undefined) { - project.log.push({ - ...event, - snapshot: { displayName: deepcopy(project.displayName) }, - }); - projectsByName.set(projectId, project); - } - } - return projectsByName; -} - -async function fetchStreamItems( - multichainClient: MultichainClient, - projectId?: string, -): Promise { - if (projectId !== undefined) { - return multichainClient.v2_readStreamItems(projectId, projectSelfKey); - } else { - // This fetches all the streams, keeping only project streams; then fetches the - // project-stream's self key, which includes the actual project data, as stream - // items. - const streams = await multichainClient.streams(); - const streamItemLists = await Promise.all( - streams - .filter((stream) => stream.details.kind === "project") - .map((stream) => stream.name) - .map((streamName) => - multichainClient - .v2_readStreamItems(streamName, projectSelfKey) - .then((items) => - items.map((item) => { - // Make it possible to associate the "self" key to the actual project later on: - item.keys = [streamName, projectSelfKey]; - return item; - }), - ) - .catch((err) => { - logger.error( - { error: err }, - `Failed to fetch '${projectSelfKey}' stream item from project stream ${streamName}`, - ); - return null; - }), - ), - ).then((lists) => lists.filter(isNotEmpty)); - // Remove failed attempts and flatten into a single list of stream items: - return streamItemLists.reduce((acc, x) => acc.concat(x), []); - } -} - -function handleCreate(event: Event): Project | undefined { - if (event.intent !== "global.createProject") return undefined; - switch (event.dataVersion) { - case 1: { - const { project, permissions } = event.data; - const values = { ...deepcopy(project), permissions: deepcopy(permissions), log: [] }; - return values as Project; - } - } - throwUnsupportedEventVersion(event); -} - -function applyUpdate(event: Event, project: Project): true | undefined { - if (event.intent !== "project.update") return; - switch (event.dataVersion) { - case 1: { - inheritDefinedProperties(project, event.data); - return true; - } - } - throwUnsupportedEventVersion(event); -} - -function applyAssign(event: Event, project: Project): true | undefined { - if (event.intent !== "project.assign") return; - switch (event.dataVersion) { - case 1: { - const { identity } = event.data; - project.assignee = identity; - return true; - } - } - throwUnsupportedEventVersion(event); -} - -function applyClose(event: Event, project: Project): true | undefined { - if (event.intent !== "project.close") return; - switch (event.dataVersion) { - case 1: { - project.status = "closed"; - return true; - } - } - throwUnsupportedEventVersion(event); -} - -function applyGrantPermission(event: Event, project: Project): true | undefined { - if (event.intent !== "project.intent.grantPermission") return; - switch (event.dataVersion) { - case 1: { - const { identity, intent } = event.data; - const permissionsForIntent: People = project.permissions[intent] || []; - if (!permissionsForIntent.includes(identity)) { - permissionsForIntent.push(identity); - } - project.permissions[intent] = permissionsForIntent; - return true; - } - } - throwUnsupportedEventVersion(event); -} - -function applyRevokePermission(event: Event, project: Project): true | undefined { - if (event.intent !== "project.intent.revokePermission") return; - switch (event.dataVersion) { - case 1: { - const { identity, intent } = event.data; - const permissionsForIntent: People = project.permissions[intent] || []; - const userIndex = permissionsForIntent.indexOf(identity); - if (userIndex !== -1) { - // Remove the user from the array: - permissionsForIntent.splice(userIndex, 1); - project.permissions[intent] = permissionsForIntent; - } - return true; - } - } - throwUnsupportedEventVersion(event); -} diff --git a/api/src/service/domain/workflow/project.ts b/api/src/service/domain/workflow/project.ts index 99e516504..00b46171d 100644 --- a/api/src/service/domain/workflow/project.ts +++ b/api/src/service/domain/workflow/project.ts @@ -32,6 +32,7 @@ export interface Project { // Additional information (key-value store), e.g. external IDs: additionalData: object; tags: string[]; + markdown?: string; } export const schema = Joi.object({ @@ -47,6 +48,7 @@ export const schema = Joi.object({ log: Joi.array().required().items(projectTraceEventSchema), additionalData: AdditionalData.schema.required(), tags: Joi.array().items(tagsSchema).required().unique().default([]), + markdown: Joi.string().allow(""), }); export function validate(input): Result.Type { diff --git a/api/src/service/domain/workflow/project_create.ts b/api/src/service/domain/workflow/project_create.ts index b1b8314df..ded93b05d 100644 --- a/api/src/service/domain/workflow/project_create.ts +++ b/api/src/service/domain/workflow/project_create.ts @@ -35,6 +35,7 @@ export interface RequestData { projectedBudgets?: ProjectedBudget[]; additionalData?: AdditionalData.AdditionalData; tags?: string[]; + markdown?: string; } const requestDataSchema = Joi.object({ @@ -47,6 +48,7 @@ const requestDataSchema = Joi.object({ projectedBudgets: projectedBudgetListSchema, additionData: AdditionalData.schema, tags: Joi.array().items(Project.tagsSchema), + markdown: Joi.string().allow(""), }); export function validate(input): Result.Type { @@ -83,6 +85,7 @@ export async function createProject( permissions: newDefaultPermissionsFor(creatingUser), additionalData: data.additionalData || {}, tags: data.tags || [], + markdown: data.markdown, }, new Date().toISOString(), creatingUser.metadata, diff --git a/api/src/service/domain/workflow/project_created.ts b/api/src/service/domain/workflow/project_created.ts index e359e1d5a..22979322b 100644 --- a/api/src/service/domain/workflow/project_created.ts +++ b/api/src/service/domain/workflow/project_created.ts @@ -28,6 +28,7 @@ interface InitialData { // Additional information (key-value store), e.g. external IDs: additionalData: object; tags?: string[]; + markdown?: string; } const initialDataSchema = Joi.object({ @@ -41,6 +42,7 @@ const initialDataSchema = Joi.object({ permissions: permissionsSchema.required(), additionalData: AdditionalData.schema.required(), tags: Joi.array().items(Project.tagsSchema), + markdown: Joi.string().allow(""), }).options({ stripUnknown: true }); export interface Event { @@ -106,6 +108,7 @@ export function createFrom(ctx: Ctx, event: Event): Result.Type log: [], additionalData: initialData.additionalData, tags: initialData.tags || [], + // todo markdown ? }; return Result.mapErr( diff --git a/api/src/service/domain/workflow/project_eventsourcing.ts b/api/src/service/domain/workflow/project_eventsourcing.ts index 8abcf9fae..eb337b376 100644 --- a/api/src/service/domain/workflow/project_eventsourcing.ts +++ b/api/src/service/domain/workflow/project_eventsourcing.ts @@ -279,5 +279,6 @@ export function parseProjectFromSnapshot(projectJson): Project.Project { log: projectJson.log, additionalData: projectJson.additionalData, tags: projectJson.tags, + markdown: projectJson.markdown, }; } diff --git a/api/src/service/domain/workflow/project_updated.ts b/api/src/service/domain/workflow/project_updated.ts index 29c8358bd..16699e956 100644 --- a/api/src/service/domain/workflow/project_updated.ts +++ b/api/src/service/domain/workflow/project_updated.ts @@ -23,6 +23,7 @@ export interface Modification { thumbnail?: string; additionalData?: object; tags?: string[]; + markdown?: string; } export const modificationSchema = Joi.object({ @@ -31,7 +32,8 @@ export const modificationSchema = Joi.object({ thumbnail: Joi.string().allow(""), additionalData: AdditionalData.schema, tags: Joi.array().items(Project.tagsSchema), -}).or("displayName", "description", "thumbnail", "additionalData", "tags"); + markdown: Joi.string().allow(""), +}).or("displayName", "description", "thumbnail", "additionalData", "tags", "markdown"); export interface Event { type: EventTypeType; @@ -105,7 +107,7 @@ export function mutate(project: Project.Project, event: Event): Result.Type { + ["displayName", "description", "thumbnail", "tags", "markdown"].forEach((propname) => { if (update[propname] !== undefined) { project[propname] = update[propname]; } diff --git a/api/src/service/domain/workflow/workflowitem.ts b/api/src/service/domain/workflow/workflowitem.ts index 2b4b85d4c..b578c29b7 100644 --- a/api/src/service/domain/workflow/workflowitem.ts +++ b/api/src/service/domain/workflow/workflowitem.ts @@ -44,6 +44,7 @@ export interface Workflowitem { workflowitemType?: Type; tags?: string[]; // todo not optional? fundingOrganization?: string; + markdown?: string; } export interface RedactedWorkflowitem { @@ -69,6 +70,7 @@ export interface RedactedWorkflowitem { workflowitemType?: Type; tags?: string[]; fundingOrganization?: string; + markdown?: string; } export type ScrubbedWorkflowitem = Workflowitem | RedactedWorkflowitem; @@ -137,6 +139,7 @@ export const schema = Joi.object().keys({ workflowitemType: workflowitemTypeSchema, tags: Joi.array().items(safeStringSchema), fundingOrganization: Joi.string(), + markdown: Joi.string().allow(""), }); export function validate(input): Result.Type { @@ -182,6 +185,7 @@ export function redact(workflowitem: Workflowitem): RedactedWorkflowitem { additionalData: {}, tags: workflowitem.tags || [], fundingOrganization: "", + markdown: "", }; } diff --git a/api/src/service/domain/workflow/workflowitem_created.ts b/api/src/service/domain/workflow/workflowitem_created.ts index 9c096eaae..06ee0b51a 100644 --- a/api/src/service/domain/workflow/workflowitem_created.ts +++ b/api/src/service/domain/workflow/workflowitem_created.ts @@ -38,6 +38,7 @@ interface InitialData { workflowitemType?: Type; tags?: string[]; fundingOrganization?: string; + markdown?: string; } const initialDataSchema = Joi.object({ @@ -58,6 +59,7 @@ const initialDataSchema = Joi.object({ workflowitemType: workflowitemTypeSchema, tags: Joi.array().items(safeStringSchema), fundingOrganization: Joi.string().allow(""), + markdown: Joi.string().allow(""), }).options({ stripUnknown: true }); export interface Event { @@ -140,6 +142,7 @@ export function createFrom(ctx: Ctx, event: Event): Result.Type { if (update[propname] !== undefined) { workflowitem[propname] = update[propname]; diff --git a/api/src/service/index.ts b/api/src/service/index.ts index 941d47e28..cabb0f591 100644 --- a/api/src/service/index.ts +++ b/api/src/service/index.ts @@ -16,7 +16,6 @@ import { ConnectionSettings } from "./RpcClient.h"; export { ConnToken } from "./conn"; export * from "./event"; export * from "./issuer"; -export * from "./ProjectEvents"; const workflowitemsGroupKey = (subprojectId): string => `${subprojectId}_workflows`; const workflowitemOrderingKey = (subprojectId): string => `${subprojectId}_workflowitem_ordering`; diff --git a/api/src/subproject_view_details.ts b/api/src/subproject_view_details.ts index ca8dc151e..ae526694f 100644 --- a/api/src/subproject_view_details.ts +++ b/api/src/subproject_view_details.ts @@ -97,6 +97,7 @@ function mkSwaggerSchema(server: AugmentedFastifyInstance): Object { }, }, additionalData: { type: "object", additionalProperties: true }, + markdown: { type: "string", example: "Bla bla bla" }, }, }, allowedIntents: { type: "array", items: { type: "string" } }, @@ -175,6 +176,7 @@ interface ExposedWorkflowitem { workflowitemType?: WorkflowitemType; tags: string[]; fundingOrganization?: string | null; + markdown?: string; }; allowedIntents: Intent[]; } @@ -338,6 +340,7 @@ export function addHttpHandler( workflowitemType: workflowitem.workflowitemType, tags: workflowitem.tags || [], fundingOrganization: workflowitem.fundingOrganization, + markdown: workflowitem.markdown, }, })); diff --git a/api/src/workflowitem_update.ts b/api/src/workflowitem_update.ts index 3ee0dc02f..c7d3dce0c 100644 --- a/api/src/workflowitem_update.ts +++ b/api/src/workflowitem_update.ts @@ -110,6 +110,7 @@ function mkSwaggerSchema(server: AugmentedFastifyInstance): Object { workflowitemId: { type: "string", example: "4j28c69eg298c87e3899119e025eff1f" }, tags: { type: "array", items: { type: "string", example: "test" } }, fundingOrganization: { type: "string", example: "funding organization" }, + markdown: { type: "string", example: "build a classroom" }, documents: { type: "array", items: { diff --git a/api/src/workflowitem_view_history.ts b/api/src/workflowitem_view_history.ts index cde99a3b0..96ef852fe 100644 --- a/api/src/workflowitem_view_history.ts +++ b/api/src/workflowitem_view_history.ts @@ -27,6 +27,7 @@ const requestBodySchema = Joi.array().items({ amount: Joi.string(), currency: Joi.string(), amountType: Joi.string(), + markdown: Joi.string().allow(""), }).required(), }); diff --git a/e2e-test/cypress/integration/documents_spec.js b/e2e-test/cypress/integration/documents_spec.js index 6e17e7537..4c176d429 100644 --- a/e2e-test/cypress/integration/documents_spec.js +++ b/e2e-test/cypress/integration/documents_spec.js @@ -59,7 +59,7 @@ describe("Attaching a document to a workflowitem.", function () { cy.get("[data-test=edit-workflowitem]").should("be.visible").click(); // click "next" button: - cy.get("[data-test=next]").should("be.visible").click(); + cy.get("[data-test=next]").scrollIntoView().should("be.visible").click(); // "upload" the file: cy.fixture(fileName, { encoding: null }).then((contents) => { @@ -199,7 +199,7 @@ describe("Deleting a document from a workflowitem.", function () { cy.get("[data-test=edit-workflowitem]").should("be.visible").click(); // click "next" button: - cy.get("[data-test=next]").should("be.visible").click(); + cy.get("[data-test=next]").scrollIntoView().should("be.visible").click(); // "upload" the file: cy.fixture(fileName, { encoding: null }).then((contents) => { @@ -273,7 +273,7 @@ describe("Deleting a document from a closed workflowitem.", function () { cy.get("[data-test=edit-workflowitem]").last().should("be.visible").click(); // click "next" button: - cy.get("[data-test=next]").should("be.visible").click(); + cy.get("[data-test=next]").scrollIntoView().should("be.visible").click(); // "upload" the file: cy.fixture(fileName, { encoding: null }).then((contents) => { diff --git a/frontend/package-lock.json b/frontend/package-lock.json index da7a408a1..852b0fe4d 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -14,6 +14,7 @@ "@date-io/dayjs": "^2.16.0", "@emotion/react": "^11.10.8", "@emotion/styled": "^11.10.8", + "@mdxeditor/editor": "^3.14.0", "@microsoft/applicationinsights-clickanalytics-js": "^3.0.5", "@microsoft/applicationinsights-react-js": "^17.0.2", "@microsoft/applicationinsights-web": "^3.0.5", @@ -2083,6 +2084,431 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@codemirror/autocomplete": { + "version": "6.18.1", + "resolved": "https://registry.npmjs.org/@codemirror/autocomplete/-/autocomplete-6.18.1.tgz", + "integrity": "sha512-iWHdj/B1ethnHRTwZj+C1obmmuCzquH29EbcKr0qIjA9NfDeBDJ7vs+WOHsFeLeflE4o+dHfYndJloMKHUkWUA==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0" + }, + "peerDependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@codemirror/commands": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.7.1.tgz", + "integrity": "sha512-llTrboQYw5H4THfhN4U3qCnSZ1SOJ60ohhz+SzU0ADGtwlc533DtklQP0vSFaQuCPDn3BPpOd1GbbnUtwNjsrw==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.4.0", + "@codemirror/view": "^6.27.0", + "@lezer/common": "^1.1.0" + } + }, + "node_modules/@codemirror/lang-angular": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@codemirror/lang-angular/-/lang-angular-0.1.3.tgz", + "integrity": "sha512-xgeWGJQQl1LyStvndWtruUvb4SnBZDAu/gvFH/ZU+c0W25tQR8e5hq7WTwiIY2dNxnf+49mRiGI/9yxIwB6f5w==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-javascript": "^6.1.2", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.3" + } + }, + "node_modules/@codemirror/lang-cpp": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-cpp/-/lang-cpp-6.0.2.tgz", + "integrity": "sha512-6oYEYUKHvrnacXxWxYa6t4puTlbN3dgV662BDfSH8+MfjQjVmP697/KYTDOqpxgerkvoNm7q5wlFMBeX8ZMocg==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/cpp": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-css": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@codemirror/lang-css/-/lang-css-6.3.0.tgz", + "integrity": "sha512-CyR4rUNG9OYcXDZwMPvJdtb6PHbBDKUc/6Na2BIwZ6dKab1JQqKa4di+RNRY9Myn7JB81vayKwJeQ7jEdmNVDA==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.2", + "@lezer/css": "^1.1.7" + } + }, + "node_modules/@codemirror/lang-go": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-go/-/lang-go-6.0.1.tgz", + "integrity": "sha512-7fNvbyNylvqCphW9HD6WFnRpcDjr+KXX/FgqXy5H5ZS0eC5edDljukm/yNgYkwTsgp2busdod50AOTIy6Jikfg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.6.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/go": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-html": { + "version": "6.4.9", + "resolved": "https://registry.npmjs.org/@codemirror/lang-html/-/lang-html-6.4.9.tgz", + "integrity": "sha512-aQv37pIMSlueybId/2PVSP6NPnmurFDVmZwzc7jszd2KAF8qd4VBbvNYPXWQq90WIARjsdVkPbw29pszmHws3Q==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/lang-css": "^6.0.0", + "@codemirror/lang-javascript": "^6.0.0", + "@codemirror/language": "^6.4.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0", + "@lezer/css": "^1.1.0", + "@lezer/html": "^1.3.0" + } + }, + "node_modules/@codemirror/lang-java": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-java/-/lang-java-6.0.1.tgz", + "integrity": "sha512-OOnmhH67h97jHzCuFaIEspbmsT98fNdhVhmA3zCxW0cn7l8rChDhZtwiwJ/JOKXgfm4J+ELxQihxaI7bj7mJRg==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/java": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-javascript": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-6.2.2.tgz", + "integrity": "sha512-VGQfY+FCc285AhWuwjYxQyUQcYurWlxdKYT4bqwr3Twnd5wP5WSeu52t4tvvuWmljT4EmgEgZCqSieokhtY8hg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.6.0", + "@codemirror/lint": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/common": "^1.0.0", + "@lezer/javascript": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-json": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-json/-/lang-json-6.0.1.tgz", + "integrity": "sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/json": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-less": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-less/-/lang-less-6.0.2.tgz", + "integrity": "sha512-EYdQTG22V+KUUk8Qq582g7FMnCZeEHsyuOJisHRft/mQ+ZSZ2w51NupvDUHiqtsOy7It5cHLPGfHQLpMh9bqpQ==", + "dependencies": { + "@codemirror/lang-css": "^6.2.0", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-liquid": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-liquid/-/lang-liquid-6.2.1.tgz", + "integrity": "sha512-J1Mratcm6JLNEiX+U2OlCDTysGuwbHD76XwuL5o5bo9soJtSbz2g6RU3vGHFyS5DC8rgVmFSzi7i6oBftm7tnA==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.1" + } + }, + "node_modules/@codemirror/lang-markdown": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@codemirror/lang-markdown/-/lang-markdown-6.3.0.tgz", + "integrity": "sha512-lYrI8SdL/vhd0w0aHIEvIRLRecLF7MiiRfzXFZY94dFwHqC9HtgxgagJ8fyYNBldijGatf9wkms60d8SrAj6Nw==", + "dependencies": { + "@codemirror/autocomplete": "^6.7.1", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.3.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.2.1", + "@lezer/markdown": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-php": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-php/-/lang-php-6.0.1.tgz", + "integrity": "sha512-ublojMdw/PNWa7qdN5TMsjmqkNuTBD3k6ndZ4Z0S25SBAiweFGyY68AS3xNcIOlb6DDFDvKlinLQ40vSLqf8xA==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/php": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-python": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/@codemirror/lang-python/-/lang-python-6.1.6.tgz", + "integrity": "sha512-ai+01WfZhWqM92UqjnvorkxosZ2aq2u28kHvr+N3gu012XqY2CThD67JPMHnGceRfXPDBmn1HnyqowdpF57bNg==", + "dependencies": { + "@codemirror/autocomplete": "^6.3.2", + "@codemirror/language": "^6.8.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.1", + "@lezer/python": "^1.1.4" + } + }, + "node_modules/@codemirror/lang-rust": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-rust/-/lang-rust-6.0.1.tgz", + "integrity": "sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/rust": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-sass": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-sass/-/lang-sass-6.0.2.tgz", + "integrity": "sha512-l/bdzIABvnTo1nzdY6U+kPAC51czYQcOErfzQ9zSm9D8GmNPD0WTW8st/CJwBTPLO8jlrbyvlSEcN20dc4iL0Q==", + "dependencies": { + "@codemirror/lang-css": "^6.2.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.0.2", + "@lezer/sass": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-sql": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/@codemirror/lang-sql/-/lang-sql-6.8.0.tgz", + "integrity": "sha512-aGLmY4OwGqN3TdSx3h6QeA1NrvaYtF7kkoWR/+W7/JzB0gQtJ+VJxewlnE3+VImhA4WVlhmkJr109PefOOhjLg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-vue": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@codemirror/lang-vue/-/lang-vue-0.1.3.tgz", + "integrity": "sha512-QSKdtYTDRhEHCfo5zOShzxCmqKJvgGrZwDQSdbvCRJ5pRLWBS7pD/8e/tH44aVQT6FKm0t6RVNoSUWHOI5vNug==", + "dependencies": { + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-javascript": "^6.1.2", + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.3.1" + } + }, + "node_modules/@codemirror/lang-wast": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@codemirror/lang-wast/-/lang-wast-6.0.2.tgz", + "integrity": "sha512-Imi2KTpVGm7TKuUkqyJ5NRmeFWF7aMpNiwHnLQe0x9kmrxElndyH0K6H/gXtWwY6UshMRAhpENsgfpSwsgmC6Q==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-xml": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@codemirror/lang-xml/-/lang-xml-6.1.0.tgz", + "integrity": "sha512-3z0blhicHLfwi2UgkZYRPioSgVTo9PV5GP5ducFH6FaHy0IAJRg+ixj5gTR1gnT/glAIC8xv4w2VL1LoZfs+Jg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.4.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/common": "^1.0.0", + "@lezer/xml": "^1.0.0" + } + }, + "node_modules/@codemirror/lang-yaml": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@codemirror/lang-yaml/-/lang-yaml-6.1.1.tgz", + "integrity": "sha512-HV2NzbK9bbVnjWxwObuZh5FuPCowx51mEfoFT9y3y+M37fA3+pbxx4I7uePuygFzDsAmCTwQSc/kXh/flab4uw==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.2.0", + "@lezer/yaml": "^1.0.0" + } + }, + "node_modules/@codemirror/language": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/@codemirror/language/-/language-6.10.3.tgz", + "integrity": "sha512-kDqEU5sCP55Oabl6E7m5N+vZRoc0iWqgDVhEKifcHzPzjqCegcO4amfrYVL9PmPZpl4G0yjkpTpUO/Ui8CzO8A==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.23.0", + "@lezer/common": "^1.1.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0", + "style-mod": "^4.0.0" + } + }, + "node_modules/@codemirror/language-data": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@codemirror/language-data/-/language-data-6.5.1.tgz", + "integrity": "sha512-0sWxeUSNlBr6OmkqybUTImADFUP0M3P0IiSde4nc24bz/6jIYzqYSgkOSLS+CBIoW1vU8Q9KUWXscBXeoMVC9w==", + "dependencies": { + "@codemirror/lang-angular": "^0.1.0", + "@codemirror/lang-cpp": "^6.0.0", + "@codemirror/lang-css": "^6.0.0", + "@codemirror/lang-go": "^6.0.0", + "@codemirror/lang-html": "^6.0.0", + "@codemirror/lang-java": "^6.0.0", + "@codemirror/lang-javascript": "^6.0.0", + "@codemirror/lang-json": "^6.0.0", + "@codemirror/lang-less": "^6.0.0", + "@codemirror/lang-liquid": "^6.0.0", + "@codemirror/lang-markdown": "^6.0.0", + "@codemirror/lang-php": "^6.0.0", + "@codemirror/lang-python": "^6.0.0", + "@codemirror/lang-rust": "^6.0.0", + "@codemirror/lang-sass": "^6.0.0", + "@codemirror/lang-sql": "^6.0.0", + "@codemirror/lang-vue": "^0.1.1", + "@codemirror/lang-wast": "^6.0.0", + "@codemirror/lang-xml": "^6.0.0", + "@codemirror/lang-yaml": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/legacy-modes": "^6.4.0" + } + }, + "node_modules/@codemirror/legacy-modes": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@codemirror/legacy-modes/-/legacy-modes-6.4.1.tgz", + "integrity": "sha512-vdg3XY7OAs5uLDx2Iw+cGfnwtd7kM+Et/eMsqAGTfT/JKiVBQZXosTzjEbWAi/FrY6DcQIz8mQjBozFHZEUWQA==", + "dependencies": { + "@codemirror/language": "^6.0.0" + } + }, + "node_modules/@codemirror/lint": { + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/@codemirror/lint/-/lint-6.8.2.tgz", + "integrity": "sha512-PDFG5DjHxSEjOXk9TQYYVjZDqlZTFaDBfhQixHnQOEVDDNHUbEh/hstAjcQJaA6FQdZTD1hquXTK0rVBLADR1g==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "crelt": "^1.0.5" + } + }, + "node_modules/@codemirror/merge": { + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@codemirror/merge/-/merge-6.7.2.tgz", + "integrity": "sha512-HSzuWoV4E+F0DROOSwGZMYIDXh+y4iA64ffRADXPBbKKSwx9bsYNM4i7qN8t0mc8H0PYNBoehOvsW2Nitmnx9g==", + "dependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.17.0", + "@lezer/highlight": "^1.0.0", + "style-mod": "^4.1.0" + } + }, + "node_modules/@codemirror/search": { + "version": "6.5.6", + "resolved": "https://registry.npmjs.org/@codemirror/search/-/search-6.5.6.tgz", + "integrity": "sha512-rpMgcsh7o0GuCDUXKPvww+muLA1pDJaFrpq/CCHtpQJYz8xopu4D1hPcKRoDD0YlF8gZaqTNIRa4VRBWyhyy7Q==", + "dependencies": { + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "crelt": "^1.0.5" + } + }, + "node_modules/@codemirror/state": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.4.1.tgz", + "integrity": "sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==" + }, + "node_modules/@codemirror/view": { + "version": "6.34.1", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.34.1.tgz", + "integrity": "sha512-t1zK/l9UiRqwUNPm+pdIT0qzJlzuVckbTEMVNFhfWkGiBQClstzg+78vedCvLSX0xJEZ6lwZbPpnljL7L6iwMQ==", + "dependencies": { + "@codemirror/state": "^6.4.0", + "style-mod": "^4.1.0", + "w3c-keyname": "^2.2.4" + } + }, + "node_modules/@codesandbox/nodebox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@codesandbox/nodebox/-/nodebox-0.1.8.tgz", + "integrity": "sha512-2VRS6JDSk+M+pg56GA6CryyUSGPjBEe8Pnae0QL3jJF1mJZJVMDKr93gJRtBbLkfZN6LD/DwMtf+2L0bpWrjqg==", + "dependencies": { + "outvariant": "^1.4.0", + "strict-event-emitter": "^0.4.3" + } + }, + "node_modules/@codesandbox/sandpack-client": { + "version": "2.19.8", + "resolved": "https://registry.npmjs.org/@codesandbox/sandpack-client/-/sandpack-client-2.19.8.tgz", + "integrity": "sha512-CMV4nr1zgKzVpx4I3FYvGRM5YT0VaQhALMW9vy4wZRhEyWAtJITQIqZzrTGWqB1JvV7V72dVEUCUPLfYz5hgJQ==", + "dependencies": { + "@codesandbox/nodebox": "0.1.8", + "buffer": "^6.0.3", + "dequal": "^2.0.2", + "mime-db": "^1.52.0", + "outvariant": "1.4.0", + "static-browser-server": "1.0.3" + } + }, + "node_modules/@codesandbox/sandpack-react": { + "version": "2.19.9", + "resolved": "https://registry.npmjs.org/@codesandbox/sandpack-react/-/sandpack-react-2.19.9.tgz", + "integrity": "sha512-a5uXWYdg5Wtz6VHwXIegdS7C63foCofFa/eHO9crtPp1Yf5/npKimds0S3kKJL7jpOmMAascEvAOqOy5S9e6qQ==", + "dependencies": { + "@codemirror/autocomplete": "^6.4.0", + "@codemirror/commands": "^6.1.3", + "@codemirror/lang-css": "^6.0.1", + "@codemirror/lang-html": "^6.4.0", + "@codemirror/lang-javascript": "^6.1.2", + "@codemirror/language": "^6.3.2", + "@codemirror/state": "^6.2.0", + "@codemirror/view": "^6.7.1", + "@codesandbox/sandpack-client": "^2.19.8", + "@lezer/highlight": "^1.1.3", + "@react-hook/intersection-observer": "^3.1.1", + "@stitches/core": "^1.2.6", + "anser": "^2.1.1", + "clean-set": "^1.1.2", + "dequal": "^2.0.2", + "escape-carriage": "^1.3.1", + "lz-string": "^1.4.4", + "react-devtools-inline": "4.4.0", + "react-is": "^17.0.2" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18", + "react-dom": "^16.8.0 || ^17 || ^18" + } + }, + "node_modules/@codesandbox/sandpack-react/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, "node_modules/@csstools/normalize.css": { "version": "12.1.1", "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-12.1.1.tgz", @@ -2679,6 +3105,40 @@ "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, + "node_modules/@floating-ui/core": { + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.8.tgz", + "integrity": "sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==", + "dependencies": { + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.6.12", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.12.tgz", + "integrity": "sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==", + "dependencies": { + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.8" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.2.tgz", + "integrity": "sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==", + "dependencies": { + "@floating-ui/dom": "^1.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", + "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" + }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -3270,172 +3730,643 @@ "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", "dev": true }, - "node_modules/@microsoft/applicationinsights-analytics-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-3.3.3.tgz", - "integrity": "sha512-Lh6/KRPCyiAyL8SjBB02HMUyL1YUhbBAeehbCqTElkhIwXjzHtKCCuefkbtDQda4V/ikYRNMoRzb/2cgaKQcBg==", + "node_modules/@lexical/clipboard": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/clipboard/-/clipboard-0.17.1.tgz", + "integrity": "sha512-OVqnEfWX8XN5xxuMPo6BfgGKHREbz++D5V5ISOiml0Z8fV/TQkdgwqbBJcUdJHGRHWSUwdK7CWGs/VALvVvZyw==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/html": "0.17.1", + "@lexical/list": "0.17.1", + "@lexical/selection": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-cfgsync-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-cfgsync-js/-/applicationinsights-cfgsync-js-3.3.3.tgz", - "integrity": "sha512-NDSObvyTF+3thARGYcTw2MRiw181aOT8jGimavKEvm4jm6IAVodqkO1Yp482Dy9x/Ug4OMajV82OtGaazy9IIQ==", + "node_modules/@lexical/code": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/code/-/code-0.17.1.tgz", + "integrity": "sha512-ZspfTm6g6dN3nAb4G5bPp3SqxzdkB/bjGfa0uRKMU6/eBKtrMUgZsGxt0a8JRZ1eq2TZrQhx+l1ceRoLXii/bQ==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-async": ">= 0.5.2 < 2.x", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1", + "prismjs": "^1.27.0" } }, - "node_modules/@microsoft/applicationinsights-channel-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-3.3.3.tgz", - "integrity": "sha512-a6a1pig2V6L3cB9R7fAk9IsVB9FDJ89WBUZIUEJIpdTbhJ4AsIYUvhIuHkWYjVIzKhmaeXI1szf54mJWyb5rPQ==", + "node_modules/@lexical/devtools-core": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/devtools-core/-/devtools-core-0.17.1.tgz", + "integrity": "sha512-SzL1EX9Rt5GptIo87t6nDxAc9TtYtl6DyAPNz/sCltspdd69KQgs23sTRa26/tkNFCS1jziRN7vpN3mlnmm5wA==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-async": ">= 0.5.2 < 2.x", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + "@lexical/html": "0.17.1", + "@lexical/link": "0.17.1", + "@lexical/mark": "0.17.1", + "@lexical/table": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" }, "peerDependencies": { - "tslib": ">= 1.0.0" + "react": ">=17.x", + "react-dom": ">=17.x" } }, - "node_modules/@microsoft/applicationinsights-clickanalytics-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-clickanalytics-js/-/applicationinsights-clickanalytics-js-3.3.3.tgz", - "integrity": "sha512-tyaIFlQDGcyAfSfOPuRVWAEZG15pPqJxQdB12fbOb2lAsrutqxu1bJJMIVlFy03Jxx8ZBk83ksg7URWfKgZcng==", + "node_modules/@lexical/dragon": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/dragon/-/dragon-0.17.1.tgz", + "integrity": "sha512-lhBRKP7RlhiVCLtF0qiNqmMhEO6cQB43sMe7d4bvuY1G2++oKY/XAJPg6QJZdXRrCGRQ6vZ26QRNhRPmCxL5Ng==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-properties-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-common": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-3.3.3.tgz", - "integrity": "sha512-WB6iOVjXuBfyNiYL7gyg5S2KveK8zrgPH94llbUCMw+qWX0yENQQf/r3k1PzybxkWwy/8hwAmrV+ACvLcQrdcw==", + "node_modules/@lexical/hashtag": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/hashtag/-/hashtag-0.17.1.tgz", + "integrity": "sha512-XtP0BI8vEewAe7tzq9MC49UPUvuChuNJI/jqFp+ezZlt/RUq0BClQCOPuSlrTJhluvE2rWnUnOnVMk8ILRvggQ==", "dependencies": { - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-core-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.3.3.tgz", - "integrity": "sha512-U+IaAx/RS60jl8TAgtKzAeojbJgI+eCnYQGSvVE7IxdHgsmQ3hV3IYrBEf98q5nZD4U1zGoKtI8VEpkepoaYhQ==", + "node_modules/@lexical/history": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/history/-/history-0.17.1.tgz", + "integrity": "sha512-OU/ohajz4FXchUhghsWC7xeBPypFe50FCm5OePwo767G7P233IztgRKIng2pTT4zhCPW7S6Mfl53JoFHKehpWA==", "dependencies": { - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-async": ">= 0.5.2 < 2.x", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-dependencies-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-3.3.3.tgz", - "integrity": "sha512-zBuDx9+go15R32haBq+m8LWRfUmtJh9SH6MrxDEOy7O+KACGNumqIkOqc7zyX38HqCOzjSD2RKfPP7+6HisRPg==", + "node_modules/@lexical/html": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/html/-/html-0.17.1.tgz", + "integrity": "sha512-yGG+K2DXl7Wn2DpNuZ0Y3uCHJgfHkJN3/MmnFb4jLnH1FoJJiuy7WJb/BRRh9H+6xBJ9v70iv+kttDJ0u1xp5w==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-async": ">= 0.5.2 < 2.x", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/selection": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-properties-js": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-3.3.3.tgz", - "integrity": "sha512-Ir08rSSEG3Z1XXa66Vgkv88LTdJolTbbU7CPHti/6j4avaA3WbfIUAfxlNJZ2v3oIVccIg52Wh5bkDEvX2dT8g==", + "node_modules/@lexical/link": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/link/-/link-0.17.1.tgz", + "integrity": "sha512-qFJEKBesZAtR8kfJfIVXRFXVw6dwcpmGCW7duJbtBRjdLjralOxrlVKyFhW9PEXGhi4Mdq2Ux16YnnDncpORdQ==", "dependencies": { - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-react-js": { - "version": "17.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-react-js/-/applicationinsights-react-js-17.3.3.tgz", - "integrity": "sha512-DbnoNJTMcX7sPuwj2oczrhwmUrnqNEcknFohfB/aSHO45vQjOvAAcNLIsPlXaj7wRZc/PGeUPR92AyC7lNU9zA==", + "node_modules/@lexical/list": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/list/-/list-0.17.1.tgz", + "integrity": "sha512-k9ZnmQuBvW+xVUtWJZwoGtiVG2cy+hxzkLGU4jTq1sqxRIoSeGcjvhFAK8JSEj4i21SgkB1FmkWXoYK5kbwtRA==", "dependencies": { - "@microsoft/applicationinsights-common": "^3.3.3", - "@microsoft/applicationinsights-core-js": "^3.3.3", - "@microsoft/applicationinsights-shims": "^3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "history": ">= 4.10.1", - "react": ">= 17.0.1", - "tslib": "*" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-shims": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", - "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "node_modules/@lexical/mark": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/mark/-/mark-0.17.1.tgz", + "integrity": "sha512-V82SSRjvygmV+ZMwVpy5gwgr2ZDrJpl3TvEDO+G5I4SDSjbgvua8hO4dKryqiDVlooxQq9dsou0GrZ9Qtm6rYg==", "dependencies": { - "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" } }, - "node_modules/@microsoft/applicationinsights-web": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web/-/applicationinsights-web-3.3.3.tgz", - "integrity": "sha512-EQUGGYTMEQRLWIBXXuYfv6WYcm7O9wFHq0EIJ5qN+Fh3SyGOL34RzU+3TQ9eCrz6GCtRZwlbcwWPi83l4q952w==", + "node_modules/@lexical/markdown": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/markdown/-/markdown-0.17.1.tgz", + "integrity": "sha512-uexR9snyT54jfQTrbr/GZAtzX+8Oyykr4p1HS0vCVL1KU5MDuP2PoyFfOv3rcfB2TASc+aYiINhU2gSXzwCHNg==", "dependencies": { - "@microsoft/applicationinsights-analytics-js": "3.3.3", - "@microsoft/applicationinsights-cfgsync-js": "3.3.3", - "@microsoft/applicationinsights-channel-js": "3.3.3", - "@microsoft/applicationinsights-common": "3.3.3", - "@microsoft/applicationinsights-core-js": "3.3.3", - "@microsoft/applicationinsights-dependencies-js": "3.3.3", - "@microsoft/applicationinsights-properties-js": "3.3.3", - "@microsoft/applicationinsights-shims": "3.0.1", - "@microsoft/dynamicproto-js": "^2.0.3", - "@nevware21/ts-async": ">= 0.5.2 < 2.x", - "@nevware21/ts-utils": ">= 0.11.3 < 2.x" - }, - "peerDependencies": { - "tslib": ">= 1.0.0" + "@lexical/code": "0.17.1", + "@lexical/link": "0.17.1", + "@lexical/list": "0.17.1", + "@lexical/rich-text": "0.17.1", + "@lexical/text": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/offset": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/offset/-/offset-0.17.1.tgz", + "integrity": "sha512-fX0ZSIFWwUKAjxf6l21vyXFozJGExKWyWxA+EMuOloNAGotHnAInxep0Mt8t/xcvHs7luuyQUxEPw7YrTJP7aw==", + "dependencies": { + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/overflow": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/overflow/-/overflow-0.17.1.tgz", + "integrity": "sha512-oElVDq486R3rO2+Zz0EllXJGpW3tN0tfcH+joZ5h36+URKuNeKddqkJuDRvgSLOr9l8Jhtv3+/YKduPJVKMz6w==", + "dependencies": { + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/plain-text": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/plain-text/-/plain-text-0.17.1.tgz", + "integrity": "sha512-CSvi4j1a4ame0OAvOKUCCmn2XrNsWcST4lExGTa9Ei/VIh8IZ+a97h4Uby8T3lqOp10x+oiizYWzY30pb9QaBg==", + "dependencies": { + "@lexical/clipboard": "0.17.1", + "@lexical/selection": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/react": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/react/-/react-0.17.1.tgz", + "integrity": "sha512-DI4k25tO0E1WyozrjaLgKMOmLjOB7+39MT4eZN9brPlU7g+w0wzdGbTZUPgPmFGIKPK+MSLybCwAJCK97j8HzQ==", + "dependencies": { + "@lexical/clipboard": "0.17.1", + "@lexical/code": "0.17.1", + "@lexical/devtools-core": "0.17.1", + "@lexical/dragon": "0.17.1", + "@lexical/hashtag": "0.17.1", + "@lexical/history": "0.17.1", + "@lexical/link": "0.17.1", + "@lexical/list": "0.17.1", + "@lexical/mark": "0.17.1", + "@lexical/markdown": "0.17.1", + "@lexical/overflow": "0.17.1", + "@lexical/plain-text": "0.17.1", + "@lexical/rich-text": "0.17.1", + "@lexical/selection": "0.17.1", + "@lexical/table": "0.17.1", + "@lexical/text": "0.17.1", + "@lexical/utils": "0.17.1", + "@lexical/yjs": "0.17.1", + "lexical": "0.17.1", + "react-error-boundary": "^3.1.4" + }, + "peerDependencies": { + "react": ">=17.x", + "react-dom": ">=17.x" + } + }, + "node_modules/@lexical/rich-text": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/rich-text/-/rich-text-0.17.1.tgz", + "integrity": "sha512-T3kvj4P1OpedX9jvxN3WN8NP1Khol6mCW2ScFIRNRz2dsXgyN00thH1Q1J/uyu7aKyGS7rzcY0rb1Pz1qFufqQ==", + "dependencies": { + "@lexical/clipboard": "0.17.1", + "@lexical/selection": "0.17.1", + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/selection": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/selection/-/selection-0.17.1.tgz", + "integrity": "sha512-qBKVn+lMV2YIoyRELNr1/QssXx/4c0id9NCB/BOuYlG8du5IjviVJquEF56NEv2t0GedDv4BpUwkhXT2QbNAxA==", + "dependencies": { + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/table": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/table/-/table-0.17.1.tgz", + "integrity": "sha512-2fUYPmxhyuMQX3MRvSsNaxbgvwGNJpHaKx1Ldc+PT2MvDZ6ALZkfsxbi0do54Q3i7dOon8/avRp4TuVaCnqvoA==", + "dependencies": { + "@lexical/utils": "0.17.1", + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/text": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/text/-/text-0.17.1.tgz", + "integrity": "sha512-zD2pAGXaMfPpT8PeNrx3+n0+jGnQORHyn0NEBO+hnyacKfUq5z5sI6Gebsq5NwH789bRadmJM5LvX5w8fsuv6w==", + "dependencies": { + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/utils": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/utils/-/utils-0.17.1.tgz", + "integrity": "sha512-jCQER5EsvhLNxKH3qgcpdWj/necUb82Xjp8qWQ3c0tyL07hIRm2tDRA/s9mQmvcP855HEZSmGVmR5SKtkcEAVg==", + "dependencies": { + "@lexical/list": "0.17.1", + "@lexical/selection": "0.17.1", + "@lexical/table": "0.17.1", + "lexical": "0.17.1" + } + }, + "node_modules/@lexical/yjs": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@lexical/yjs/-/yjs-0.17.1.tgz", + "integrity": "sha512-9mn5PDtaH5uLMH6hQ59EAx5FkRzmJJFcVs3E6zSIbtgkG3UASR3CFEfgsLKTjl/GC5NnTGuMck+jXaupDVBhOg==", + "dependencies": { + "@lexical/offset": "0.17.1", + "lexical": "0.17.1" + }, + "peerDependencies": { + "yjs": ">=13.5.22" + } + }, + "node_modules/@lezer/common": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", + "integrity": "sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==" + }, + "node_modules/@lezer/cpp": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@lezer/cpp/-/cpp-1.1.2.tgz", + "integrity": "sha512-macwKtyeUO0EW86r3xWQCzOV9/CF8imJLpJlPv3sDY57cPGeUZ8gXWOWNlJr52TVByMV3PayFQCA5SHEERDmVQ==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/css": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@lezer/css/-/css-1.1.9.tgz", + "integrity": "sha512-TYwgljcDv+YrV0MZFFvYFQHCfGgbPMR6nuqLabBdmZoFH3EP1gvw8t0vae326Ne3PszQkbXfVBjCnf3ZVCr0bA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/go": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@lezer/go/-/go-1.0.0.tgz", + "integrity": "sha512-co9JfT3QqX1YkrMmourYw2Z8meGC50Ko4d54QEcQbEYpvdUvN4yb0NBZdn/9ertgvjsySxHsKzH3lbm3vqJ4Jw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/highlight": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@lezer/highlight/-/highlight-1.2.1.tgz", + "integrity": "sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==", + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@lezer/html": { + "version": "1.3.10", + "resolved": "https://registry.npmjs.org/@lezer/html/-/html-1.3.10.tgz", + "integrity": "sha512-dqpT8nISx/p9Do3AchvYGV3qYc4/rKr3IBZxlHmpIKam56P47RSHkSF5f13Vu9hebS1jM0HmtJIwLbWz1VIY6w==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/java": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@lezer/java/-/java-1.1.3.tgz", + "integrity": "sha512-yHquUfujwg6Yu4Fd1GNHCvidIvJwi/1Xu2DaKl/pfWIA2c1oXkVvawH3NyXhCaFx4OdlYBVX5wvz2f7Aoa/4Xw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/javascript": { + "version": "1.4.19", + "resolved": "https://registry.npmjs.org/@lezer/javascript/-/javascript-1.4.19.tgz", + "integrity": "sha512-j44kbR1QL26l6dMunZ1uhKBFteVGLVCBGNUD2sUaMnic+rbTviVuoK0CD1l9FTW31EueWvFFswCKMH7Z+M3JRA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.1.3", + "@lezer/lr": "^1.3.0" + } + }, + "node_modules/@lezer/json": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/json/-/json-1.0.2.tgz", + "integrity": "sha512-xHT2P4S5eeCYECyKNPhr4cbEL9tc8w83SPwRC373o9uEdrvGKTZoJVAGxpOsZckMlEh9W23Pc72ew918RWQOBQ==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/lr": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@lezer/lr/-/lr-1.4.2.tgz", + "integrity": "sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==", + "dependencies": { + "@lezer/common": "^1.0.0" + } + }, + "node_modules/@lezer/markdown": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@lezer/markdown/-/markdown-1.3.2.tgz", + "integrity": "sha512-Wu7B6VnrKTbBEohqa63h5vxXjiC4pO5ZQJ/TDbhJxPQaaIoRD/6UVDhSDtVsCwVZV12vvN9KxuLL3ATMnlG0oQ==", + "dependencies": { + "@lezer/common": "^1.0.0", + "@lezer/highlight": "^1.0.0" + } + }, + "node_modules/@lezer/php": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/php/-/php-1.0.2.tgz", + "integrity": "sha512-GN7BnqtGRpFyeoKSEqxvGvhJQiI4zkgmYnDk/JIyc7H7Ifc1tkPnUn/R2R8meH3h/aBf5rzjvU8ZQoyiNDtDrA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.1.0" + } + }, + "node_modules/@lezer/python": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/@lezer/python/-/python-1.1.14.tgz", + "integrity": "sha512-ykDOb2Ti24n76PJsSa4ZoDF0zH12BSw1LGfQXCYJhJyOGiFTfGaX0Du66Ze72R+u/P35U+O6I9m8TFXov1JzsA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/rust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@lezer/rust/-/rust-1.0.2.tgz", + "integrity": "sha512-Lz5sIPBdF2FUXcWeCu1//ojFAZqzTQNRga0aYv6dYXqJqPfMdCAI0NzajWUd4Xijj1IKJLtjoXRPMvTKWBcqKg==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/sass": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@lezer/sass/-/sass-1.0.7.tgz", + "integrity": "sha512-8HLlOkuX/SMHOggI2DAsXUw38TuURe+3eQ5hiuk9QmYOUyC55B1dYEIMkav5A4IELVaW4e1T4P9WRiI5ka4mdw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/xml": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@lezer/xml/-/xml-1.0.5.tgz", + "integrity": "sha512-VFouqOzmUWfIg+tfmpcdV33ewtK+NSwd4ngSe1aG7HFb4BN0ExyY1b8msp+ndFrnlG4V4iC8yXacjFtrwERnaw==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.0.0" + } + }, + "node_modules/@lezer/yaml": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@lezer/yaml/-/yaml-1.0.3.tgz", + "integrity": "sha512-GuBLekbw9jDBDhGur82nuwkxKQ+a3W5H0GfaAthDXcAu+XdpS43VlnxA9E9hllkpSP5ellRDKjLLj7Lu9Wr6xA==", + "dependencies": { + "@lezer/common": "^1.2.0", + "@lezer/highlight": "^1.0.0", + "@lezer/lr": "^1.4.0" + } + }, + "node_modules/@mdxeditor/editor": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/@mdxeditor/editor/-/editor-3.14.0.tgz", + "integrity": "sha512-5upWjI89i+UWhIMf6zu4jiiw1KvjAINVsXQcE4RbJ/zYDj/F2bamAAt35wW5Xrd9nMM8ogrwUS9OKnpFR2AeOA==", + "dependencies": { + "@codemirror/lang-markdown": "^6.2.3", + "@codemirror/language-data": "^6.5.1", + "@codemirror/merge": "^6.4.0", + "@codemirror/state": "^6.4.0", + "@codemirror/view": "^6.23.0", + "@codesandbox/sandpack-react": "^2.10.0", + "@lexical/clipboard": "^0.17.1", + "@lexical/link": "^0.17.1", + "@lexical/list": "^0.17.1", + "@lexical/markdown": "^0.17.1", + "@lexical/plain-text": "^0.17.1", + "@lexical/react": "^0.17.1", + "@lexical/rich-text": "^0.17.1", + "@lexical/selection": "^0.17.1", + "@lexical/utils": "^0.17.1", + "@mdxeditor/gurx": "^1.1.4", + "@radix-ui/colors": "^3.0.0", + "@radix-ui/react-dialog": "^1.0.5", + "@radix-ui/react-icons": "^1.3.0", + "@radix-ui/react-popover": "^1.0.7", + "@radix-ui/react-select": "^2.0.0", + "@radix-ui/react-toggle-group": "^1.0.4", + "@radix-ui/react-toolbar": "^1.0.4", + "@radix-ui/react-tooltip": "^1.0.7", + "classnames": "^2.3.2", + "cm6-theme-basic-light": "^0.2.0", + "codemirror": "^6.0.1", + "downshift": "^7.6.0", + "js-yaml": "4.1.0", + "lexical": "^0.17.1", + "mdast-util-directive": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-frontmatter": "^2.0.1", + "mdast-util-gfm-strikethrough": "^2.0.0", + "mdast-util-gfm-table": "^2.0.0", + "mdast-util-gfm-task-list-item": "^2.0.0", + "mdast-util-mdx": "^3.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-to-markdown": "^2.1.0", + "micromark-extension-directive": "^3.0.0", + "micromark-extension-frontmatter": "^2.0.0", + "micromark-extension-gfm-strikethrough": "^2.0.0", + "micromark-extension-gfm-table": "^2.0.0", + "micromark-extension-gfm-task-list-item": "^2.0.1", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs": "^3.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.1", + "micromark-util-symbol": "^2.0.0", + "react-hook-form": "^7.44.2", + "unidiff": "^1.0.2" + }, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": ">= 18 || >= 19", + "react-dom": ">= 18 || >= 19" + } + }, + "node_modules/@mdxeditor/gurx": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@mdxeditor/gurx/-/gurx-1.1.6.tgz", + "integrity": "sha512-6Rroyj477hInSG5iFe5ko7XBWTvmSUWq/N38Z+19njVsAjtUqqsFRblpuOJG0ELSZHhDjOfIfOQxbeOLrQxi0g==", + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "react": ">= 18 || >= 19", + "react-dom": ">= 18 || >= 19" + } + }, + "node_modules/@microsoft/applicationinsights-analytics-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-3.3.3.tgz", + "integrity": "sha512-Lh6/KRPCyiAyL8SjBB02HMUyL1YUhbBAeehbCqTElkhIwXjzHtKCCuefkbtDQda4V/ikYRNMoRzb/2cgaKQcBg==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-cfgsync-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-cfgsync-js/-/applicationinsights-cfgsync-js-3.3.3.tgz", + "integrity": "sha512-NDSObvyTF+3thARGYcTw2MRiw181aOT8jGimavKEvm4jm6IAVodqkO1Yp482Dy9x/Ug4OMajV82OtGaazy9IIQ==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-async": ">= 0.5.2 < 2.x", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-channel-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-3.3.3.tgz", + "integrity": "sha512-a6a1pig2V6L3cB9R7fAk9IsVB9FDJ89WBUZIUEJIpdTbhJ4AsIYUvhIuHkWYjVIzKhmaeXI1szf54mJWyb5rPQ==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-async": ">= 0.5.2 < 2.x", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-clickanalytics-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-clickanalytics-js/-/applicationinsights-clickanalytics-js-3.3.3.tgz", + "integrity": "sha512-tyaIFlQDGcyAfSfOPuRVWAEZG15pPqJxQdB12fbOb2lAsrutqxu1bJJMIVlFy03Jxx8ZBk83ksg7URWfKgZcng==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-properties-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-common": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-common/-/applicationinsights-common-3.3.3.tgz", + "integrity": "sha512-WB6iOVjXuBfyNiYL7gyg5S2KveK8zrgPH94llbUCMw+qWX0yENQQf/r3k1PzybxkWwy/8hwAmrV+ACvLcQrdcw==", + "dependencies": { + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-core-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-3.3.3.tgz", + "integrity": "sha512-U+IaAx/RS60jl8TAgtKzAeojbJgI+eCnYQGSvVE7IxdHgsmQ3hV3IYrBEf98q5nZD4U1zGoKtI8VEpkepoaYhQ==", + "dependencies": { + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-async": ">= 0.5.2 < 2.x", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-dependencies-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-3.3.3.tgz", + "integrity": "sha512-zBuDx9+go15R32haBq+m8LWRfUmtJh9SH6MrxDEOy7O+KACGNumqIkOqc7zyX38HqCOzjSD2RKfPP7+6HisRPg==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-async": ">= 0.5.2 < 2.x", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-properties-js": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-3.3.3.tgz", + "integrity": "sha512-Ir08rSSEG3Z1XXa66Vgkv88LTdJolTbbU7CPHti/6j4avaA3WbfIUAfxlNJZ2v3oIVccIg52Wh5bkDEvX2dT8g==", + "dependencies": { + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" + } + }, + "node_modules/@microsoft/applicationinsights-react-js": { + "version": "17.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-react-js/-/applicationinsights-react-js-17.3.3.tgz", + "integrity": "sha512-DbnoNJTMcX7sPuwj2oczrhwmUrnqNEcknFohfB/aSHO45vQjOvAAcNLIsPlXaj7wRZc/PGeUPR92AyC7lNU9zA==", + "dependencies": { + "@microsoft/applicationinsights-common": "^3.3.3", + "@microsoft/applicationinsights-core-js": "^3.3.3", + "@microsoft/applicationinsights-shims": "^3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "history": ">= 4.10.1", + "react": ">= 17.0.1", + "tslib": "*" + } + }, + "node_modules/@microsoft/applicationinsights-shims": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-shims/-/applicationinsights-shims-3.0.1.tgz", + "integrity": "sha512-DKwboF47H1nb33rSUfjqI6ryX29v+2QWcTrRvcQDA32AZr5Ilkr7whOOSsD1aBzwqX0RJEIP1Z81jfE3NBm/Lg==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.9.4 < 2.x" + } + }, + "node_modules/@microsoft/applicationinsights-web": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@microsoft/applicationinsights-web/-/applicationinsights-web-3.3.3.tgz", + "integrity": "sha512-EQUGGYTMEQRLWIBXXuYfv6WYcm7O9wFHq0EIJ5qN+Fh3SyGOL34RzU+3TQ9eCrz6GCtRZwlbcwWPi83l4q952w==", + "dependencies": { + "@microsoft/applicationinsights-analytics-js": "3.3.3", + "@microsoft/applicationinsights-cfgsync-js": "3.3.3", + "@microsoft/applicationinsights-channel-js": "3.3.3", + "@microsoft/applicationinsights-common": "3.3.3", + "@microsoft/applicationinsights-core-js": "3.3.3", + "@microsoft/applicationinsights-dependencies-js": "3.3.3", + "@microsoft/applicationinsights-properties-js": "3.3.3", + "@microsoft/applicationinsights-shims": "3.0.1", + "@microsoft/dynamicproto-js": "^2.0.3", + "@nevware21/ts-async": ">= 0.5.2 < 2.x", + "@nevware21/ts-utils": ">= 0.11.3 < 2.x" + }, + "peerDependencies": { + "tslib": ">= 1.0.0" } }, "node_modules/@microsoft/dynamicproto-js": { @@ -3443,106 +4374,1370 @@ "resolved": "https://registry.npmjs.org/@microsoft/dynamicproto-js/-/dynamicproto-js-2.0.3.tgz", "integrity": "sha512-JTWTU80rMy3mdxOjjpaiDQsTLZ6YSGGqsjURsY6AUQtIj0udlF/jYmhdLZu8693ZIC0T1IwYnFa0+QeiMnziBA==", "dependencies": { - "@nevware21/ts-utils": ">= 0.10.4 < 2.x" + "@nevware21/ts-utils": ">= 0.10.4 < 2.x" + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "5.16.7", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.7.tgz", + "integrity": "sha512-RtsCt4Geed2/v74sbihWzzRs+HsIQCfclHeORh5Ynu2fS4icIKozcSubwuG7vtzq2uW3fOR1zITSP84TNt2GoQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + } + }, + "node_modules/@mui/icons-material": { + "version": "5.16.7", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.7.tgz", + "integrity": "sha512-UrGwDJCXEszbDI7yV047BYU5A28eGJ79keTCP4cc74WyncuVrnurlmIRxaHL8YK+LI1Kzq+/JM52IAkNnv4u+Q==", + "dependencies": { + "@babel/runtime": "^7.23.9" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@mui/material": "^5.0.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material": { + "version": "5.16.7", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.7.tgz", + "integrity": "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/core-downloads-tracker": "^5.16.7", + "@mui/system": "^5.16.7", + "@mui/types": "^7.2.15", + "@mui/utils": "^5.16.6", + "@popperjs/core": "^2.11.8", + "@types/react-transition-group": "^4.4.10", + "clsx": "^2.1.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1", + "react-is": "^18.3.1", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0", + "react-dom": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/private-theming": { + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz", + "integrity": "sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/utils": "^5.16.6", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.6.tgz", + "integrity": "sha512-zaThmS67ZmtHSWToTiHslbI8jwrmITcN93LQaR2lKArbvS7Z3iLkwRoiikNWutx9MBs8Q6okKvbZq1RQYB3v7g==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@emotion/cache": "^11.11.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "5.16.7", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.7.tgz", + "integrity": "sha512-Jncvs/r/d/itkxh7O7opOunTqbbSSzMTHzZkNLM+FjAOg+cYAZHrPDlYe1ZGKUYORwwb2XexlWnpZp0kZ4AHuA==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/private-theming": "^5.16.6", + "@mui/styled-engine": "^5.16.6", + "@mui/types": "^7.2.15", + "@mui/utils": "^5.16.6", + "clsx": "^2.1.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.18", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.18.tgz", + "integrity": "sha512-uvK9dWeyCJl/3ocVnTOS6nlji/Knj8/tVqVX03UVTpdmTJYu/s4jtDd9Kvv0nRGE0CUSNW1UYAci7PYypjealg==", + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "5.16.6", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz", + "integrity": "sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA==", + "dependencies": { + "@babel/runtime": "^7.23.9", + "@mui/types": "^7.2.15", + "@types/prop-types": "^15.7.12", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.3.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0", + "react": "^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/x-date-pickers": { + "version": "5.0.20", + "resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-5.0.20.tgz", + "integrity": "sha512-ERukSeHIoNLbI1C2XRhF9wRhqfsr+Q4B1SAw2ZlU7CWgcG8UBOxgqRKDEOVAIoSWL+DWT6GRuQjOKvj6UXZceA==", + "dependencies": { + "@babel/runtime": "^7.18.9", + "@date-io/core": "^2.15.0", + "@date-io/date-fns": "^2.15.0", + "@date-io/dayjs": "^2.15.0", + "@date-io/luxon": "^2.15.0", + "@date-io/moment": "^2.15.0", + "@mui/utils": "^5.10.3", + "@types/react-transition-group": "^4.4.5", + "clsx": "^1.2.1", + "prop-types": "^15.7.2", + "react-transition-group": "^4.4.5", + "rifm": "^0.12.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui" + }, + "peerDependencies": { + "@emotion/react": "^11.9.0", + "@emotion/styled": "^11.8.1", + "@mui/material": "^5.4.1", + "@mui/system": "^5.4.1", + "date-fns": "^2.25.0", + "dayjs": "^1.10.7", + "luxon": "^1.28.0 || ^2.0.0 || ^3.0.0", + "moment": "^2.29.1", + "react": "^17.0.2 || ^18.0.0", + "react-dom": "^17.0.2 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "date-fns": { + "optional": true + }, + "dayjs": { + "optional": true + }, + "luxon": { + "optional": true + }, + "moment": { + "optional": true + } + } + }, + "node_modules/@mui/x-date-pickers/node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@nevware21/ts-async": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@nevware21/ts-async/-/ts-async-0.5.3.tgz", + "integrity": "sha512-UsF7eerLsVfid7iV1oXF80qXBwHNBeqSqfh/nPZgirRU1MACmSsj83EZKS2ViFHVfSGG6WIuXMGBP6KciXfYhA==", + "dependencies": { + "@nevware21/ts-utils": ">= 0.11.5 < 2.x" + } + }, + "node_modules/@nevware21/ts-utils": { + "version": "0.11.5", + "resolved": "https://registry.npmjs.org/@nevware21/ts-utils/-/ts-utils-0.11.5.tgz", + "integrity": "sha512-7nIzWKR50mf3htOg53kwPLqD5iJaRfVyBvb1NJhlIncyP1WzK8vAQbU9rqIsRtv7td1CnqspdP6IWNEjOjaeug==" + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "dependencies": { + "eslint-scope": "5.1.1" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@open-draft/deferred-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@open-draft/deferred-promise/-/deferred-promise-2.2.0.tgz", + "integrity": "sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==" + }, + "node_modules/@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@pmmmwh/react-refresh-webpack-plugin": { + "version": "0.5.15", + "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.15.tgz", + "integrity": "sha512-LFWllMA55pzB9D34w/wXUCf8+c+IYKuJDgxiZ3qMhl64KRMBHYM1I3VdGaD2BV5FNPV2/S2596bppxHbv2ZydQ==", + "dev": true, + "dependencies": { + "ansi-html": "^0.0.9", + "core-js-pure": "^3.23.3", + "error-stack-parser": "^2.0.6", + "html-entities": "^2.1.0", + "loader-utils": "^2.0.4", + "schema-utils": "^4.2.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">= 10.13" + }, + "peerDependencies": { + "@types/webpack": "4.x || 5.x", + "react-refresh": ">=0.10.0 <1.0.0", + "sockjs-client": "^1.4.0", + "type-fest": ">=0.17.0 <5.0.0", + "webpack": ">=4.43.0 <6.0.0", + "webpack-dev-server": "3.x || 4.x || 5.x", + "webpack-hot-middleware": "2.x", + "webpack-plugin-serve": "0.x || 1.x" + }, + "peerDependenciesMeta": { + "@types/webpack": { + "optional": true + }, + "sockjs-client": { + "optional": true + }, + "type-fest": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + }, + "webpack-hot-middleware": { + "optional": true + }, + "webpack-plugin-serve": { + "optional": true + } + } + }, + "node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@radix-ui/colors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/colors/-/colors-3.0.0.tgz", + "integrity": "sha512-FUOsGBkHrYJwCSEtWRCIfQbZG7q1e6DgxCIOe1SUQzDe/7rXXeA47s8yCn6fuTNQAj1Zq4oTFi9Yjp3wzElcxg==" + }, + "node_modules/@radix-ui/number": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.0.tgz", + "integrity": "sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.0.tgz", + "integrity": "sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==" + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.0.tgz", + "integrity": "sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.0.tgz", + "integrity": "sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw==", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.0.tgz", + "integrity": "sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.1.tgz", + "integrity": "sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.2.tgz", + "integrity": "sha512-Yj4dZtqa2o+kG61fzB0H2qUvmwBA2oyQroGLyNtBj1beo1khoQ3q1a2AO8rrQYjd8256CO9+N8L9tvsS+bnIyA==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.1", + "@radix-ui/react-focus-guards": "1.1.1", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-portal": "1.1.2", + "@radix-ui/react-presence": "1.1.1", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.6.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.0.tgz", + "integrity": "sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.1.tgz", + "integrity": "sha512-QSxg29lfr/xcev6kSz7MAlmDnzbP1eI/Dwn3Tp1ip0KT5CUELsxkekFEMVBEoykI3oV39hKT4TKZzBNMbcTZYQ==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-escape-keydown": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.1.tgz", + "integrity": "sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.0.tgz", + "integrity": "sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-icons": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-icons/-/react-icons-1.3.0.tgz", + "integrity": "sha512-jQxj/0LKgp+j9BiTXz3O3sgs26RNet2iLWmsPyRz2SIcR4q/4SbazXfnYwbAr+vLYKSfc7qxzyGQA1HLlYiuNw==", + "peerDependencies": { + "react": "^16.x || ^17.x || ^18.x" + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", + "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.2.tgz", + "integrity": "sha512-u2HRUyWW+lOiA2g0Le0tMmT55FGOEWHwPFt1EPfbLly7uXQExFo5duNKqG2DzmFXIdqOeNd+TpE8baHWJCyP9w==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.1", + "@radix-ui/react-focus-guards": "1.1.1", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.2", + "@radix-ui/react-presence": "1.1.1", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.6.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.0.tgz", + "integrity": "sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-rect": "1.1.0", + "@radix-ui/react-use-size": "1.1.0", + "@radix-ui/rect": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } } }, - "node_modules/@mui/core-downloads-tracker": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.7.tgz", - "integrity": "sha512-RtsCt4Geed2/v74sbihWzzRs+HsIQCfclHeORh5Ynu2fS4icIKozcSubwuG7vtzq2uW3fOR1zITSP84TNt2GoQ==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } } }, - "node_modules/@mui/icons-material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.7.tgz", - "integrity": "sha512-UrGwDJCXEszbDI7yV047BYU5A28eGJ79keTCP4cc74WyncuVrnurlmIRxaHL8YK+LI1Kzq+/JM52IAkNnv4u+Q==", + "node_modules/@radix-ui/react-portal": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.2.tgz", + "integrity": "sha512-WeDYLGPxJb/5EGBoedyJbT0MpoULmwnIPMJMSldkuiMsBAv7N1cRdsTWZWht9vpPOiN3qyiGAtbK2is47/uMFg==", "dependencies": { - "@babel/runtime": "^7.23.9" + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-layout-effect": "1.1.0" }, - "engines": { - "node": ">=12.0.0" + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.1.tgz", + "integrity": "sha512-IeFXVi4YS1K0wVZzXNrbaaUvIJ3qdY+/Ih4eHFhWA9SwGR9UDX7Ck8abvL57C4cv3wwMvUE0OG69Qc3NCcTe/A==", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0" }, "peerDependencies": { - "@mui/material": "^5.0.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { "optional": true + }, + "@types/react-dom": { + "optional": true } } }, - "node_modules/@mui/material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.7.tgz", - "integrity": "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg==", + "node_modules/@radix-ui/react-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.0.tgz", + "integrity": "sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==", "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/core-downloads-tracker": "^5.16.7", - "@mui/system": "^5.16.7", - "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", - "@popperjs/core": "^2.11.8", - "@types/react-transition-group": "^4.4.10", - "clsx": "^2.1.0", - "csstype": "^3.1.3", - "prop-types": "^15.8.1", - "react-is": "^18.3.1", - "react-transition-group": "^4.4.5" + "@radix-ui/react-slot": "1.1.0" }, - "engines": { - "node": ">=12.0.0" + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.0.tgz", + "integrity": "sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0" }, "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { - "@emotion/react": { + "@types/react": { "optional": true }, - "@emotion/styled": { + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.1.2.tgz", + "integrity": "sha512-rZJtWmorC7dFRi0owDmoijm6nSJH1tVw64QGiNIZ9PNLyBDtG+iAq+XGsya052At4BfarzY/Dhv9wrrUr6IMZA==", + "dependencies": { + "@radix-ui/number": "1.1.0", + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-collection": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.1", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-dismissable-layer": "1.1.1", + "@radix-ui/react-focus-guards": "1.1.1", + "@radix-ui/react-focus-scope": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.2", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-callback-ref": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-use-layout-effect": "1.1.0", + "@radix-ui/react-use-previous": "1.1.0", + "@radix-ui/react-visually-hidden": "1.1.0", + "aria-hidden": "^1.1.1", + "react-remove-scroll": "2.6.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.0.tgz", + "integrity": "sha512-3uBAs+egzvJBDZAzvb/n4NxxOYpnspmWxO2u5NbZ8Y6FM/NdrGSF9bop3Cf6F6C71z1rTSn8KV0Fo2ZVd79lGA==", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.0.tgz", + "integrity": "sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.0.tgz", + "integrity": "sha512-gwoxaKZ0oJ4vIgzsfESBuSgJNdc0rv12VhHgcqN0TEJmmZixXG/2XpsLK8kzNWYcnaoRIEEQc0bEi3dIvdUpjw==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.0.tgz", + "integrity": "sha512-PpTJV68dZU2oqqgq75Uzto5o/XfOVgkrJ9rulVmfTKxWp3HfUjHE6CP/WLRR4AzPX9HWxw7vFow2me85Yu+Naw==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-roving-focus": "1.1.0", + "@radix-ui/react-toggle": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toolbar/-/react-toolbar-1.1.0.tgz", + "integrity": "sha512-ZUKknxhMTL/4hPh+4DuaTot9aO7UD6Kupj4gqXCsBTayX1pD1L+0C2/2VZKXb4tIifQklZ3pf2hG9T+ns+FclQ==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-context": "1.1.0", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-roving-focus": "1.1.0", + "@radix-ui/react-separator": "1.1.0", + "@radix-ui/react-toggle-group": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { "optional": true }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toolbar/node_modules/@radix-ui/react-context": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.0.tgz", + "integrity": "sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.1.3.tgz", + "integrity": "sha512-Z4w1FIS0BqVFI2c1jZvb/uDVJijJjJ2ZMuPV81oVgTZ7g3BZxobplnMVvXtFWgtozdvYJ+MFWtwkM5S2HnAong==", + "dependencies": { + "@radix-ui/primitive": "1.1.0", + "@radix-ui/react-compose-refs": "1.1.0", + "@radix-ui/react-context": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.1", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-popper": "1.2.0", + "@radix-ui/react-portal": "1.1.2", + "@radix-ui/react-presence": "1.1.1", + "@radix-ui/react-primitive": "2.0.0", + "@radix-ui/react-slot": "1.1.0", + "@radix-ui/react-use-controllable-state": "1.1.0", + "@radix-ui/react-visually-hidden": "1.1.0" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", + "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { "@types/react": { "optional": true } } }, - "node_modules/@mui/private-theming": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz", - "integrity": "sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw==", + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", + "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/utils": "^5.16.6", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "@radix-ui/react-use-callback-ref": "1.1.0" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3550,82 +5745,44 @@ } } }, - "node_modules/@mui/styled-engine": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.6.tgz", - "integrity": "sha512-zaThmS67ZmtHSWToTiHslbI8jwrmITcN93LQaR2lKArbvS7Z3iLkwRoiikNWutx9MBs8Q6okKvbZq1RQYB3v7g==", + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", + "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", "dependencies": { - "@babel/runtime": "^7.23.9", - "@emotion/cache": "^11.11.0", - "csstype": "^3.1.3", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "@radix-ui/react-use-callback-ref": "1.1.0" }, "peerDependencies": { - "@emotion/react": "^11.4.1", - "@emotion/styled": "^11.3.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { + "@types/react": { "optional": true } } }, - "node_modules/@mui/system": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.7.tgz", - "integrity": "sha512-Jncvs/r/d/itkxh7O7opOunTqbbSSzMTHzZkNLM+FjAOg+cYAZHrPDlYe1ZGKUYORwwb2XexlWnpZp0kZ4AHuA==", - "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/private-theming": "^5.16.6", - "@mui/styled-engine": "^5.16.6", - "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", - "clsx": "^2.1.0", - "csstype": "^3.1.3", - "prop-types": "^15.8.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" - }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", + "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", "peerDependencies": { - "@emotion/react": "^11.5.0", - "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, "@types/react": { "optional": true } } }, - "node_modules/@mui/types": { - "version": "7.2.18", - "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.18.tgz", - "integrity": "sha512-uvK9dWeyCJl/3ocVnTOS6nlji/Knj8/tVqVX03UVTpdmTJYu/s4jtDd9Kvv0nRGE0CUSNW1UYAci7PYypjealg==", + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.0.tgz", + "integrity": "sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==", "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3633,28 +5790,16 @@ } } }, - "node_modules/@mui/utils": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz", - "integrity": "sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA==", + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.0.tgz", + "integrity": "sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==", "dependencies": { - "@babel/runtime": "^7.23.9", - "@mui/types": "^7.2.15", - "@types/prop-types": "^15.7.12", - "clsx": "^2.1.1", - "prop-types": "^15.8.1", - "react-is": "^18.3.1" - }, - "engines": { - "node": ">=12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui-org" + "@radix-ui/rect": "1.1.0" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { "@types/react": { @@ -3662,590 +5807,491 @@ } } }, - "node_modules/@mui/x-date-pickers": { - "version": "5.0.20", - "resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-5.0.20.tgz", - "integrity": "sha512-ERukSeHIoNLbI1C2XRhF9wRhqfsr+Q4B1SAw2ZlU7CWgcG8UBOxgqRKDEOVAIoSWL+DWT6GRuQjOKvj6UXZceA==", + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.0.tgz", + "integrity": "sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==", "dependencies": { - "@babel/runtime": "^7.18.9", - "@date-io/core": "^2.15.0", - "@date-io/date-fns": "^2.15.0", - "@date-io/dayjs": "^2.15.0", - "@date-io/luxon": "^2.15.0", - "@date-io/moment": "^2.15.0", - "@mui/utils": "^5.10.3", - "@types/react-transition-group": "^4.4.5", - "clsx": "^1.2.1", - "prop-types": "^15.7.2", - "react-transition-group": "^4.4.5", - "rifm": "^0.12.1" + "@radix-ui/react-use-layout-effect": "1.1.0" }, - "engines": { - "node": ">=12.0.0" + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mui" + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.0.tgz", + "integrity": "sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ==", + "dependencies": { + "@radix-ui/react-primitive": "2.0.0" }, "peerDependencies": { - "@emotion/react": "^11.9.0", - "@emotion/styled": "^11.8.1", - "@mui/material": "^5.4.1", - "@mui/system": "^5.4.1", - "date-fns": "^2.25.0", - "dayjs": "^1.10.7", - "luxon": "^1.28.0 || ^2.0.0 || ^3.0.0", - "moment": "^2.29.1", - "react": "^17.0.2 || ^18.0.0", - "react-dom": "^17.0.2 || ^18.0.0" + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "peerDependenciesMeta": { - "@emotion/react": { - "optional": true - }, - "@emotion/styled": { - "optional": true - }, - "date-fns": { - "optional": true - }, - "dayjs": { - "optional": true - }, - "luxon": { + "@types/react": { "optional": true }, - "moment": { + "@types/react-dom": { "optional": true } } }, - "node_modules/@mui/x-date-pickers/node_modules/clsx": { + "node_modules/@radix-ui/rect": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.0.tgz", + "integrity": "sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==" + }, + "node_modules/@react-hook/intersection-observer": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@react-hook/intersection-observer/-/intersection-observer-3.1.2.tgz", + "integrity": "sha512-mWU3BMkmmzyYMSuhO9wu3eJVP21N8TcgYm9bZnTrMwuM818bEk+0NRM3hP+c/TqA9Ln5C7qE53p1H0QMtzYdvQ==", + "dependencies": { + "@react-hook/passive-layout-effect": "^1.2.0", + "intersection-observer": "^0.10.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/@react-hook/passive-layout-effect": { "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" + "resolved": "https://registry.npmjs.org/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz", + "integrity": "sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==", + "peerDependencies": { + "react": ">=16.8" } }, - "node_modules/@nevware21/ts-async": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/@nevware21/ts-async/-/ts-async-0.5.3.tgz", - "integrity": "sha512-UsF7eerLsVfid7iV1oXF80qXBwHNBeqSqfh/nPZgirRU1MACmSsj83EZKS2ViFHVfSGG6WIuXMGBP6KciXfYhA==", + "node_modules/@redux-saga/core": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.3.0.tgz", + "integrity": "sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA==", "dependencies": { - "@nevware21/ts-utils": ">= 0.11.5 < 2.x" + "@babel/runtime": "^7.6.3", + "@redux-saga/deferred": "^1.2.1", + "@redux-saga/delay-p": "^1.2.1", + "@redux-saga/is": "^1.1.3", + "@redux-saga/symbols": "^1.1.3", + "@redux-saga/types": "^1.2.1", + "typescript-tuple": "^2.2.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/redux-saga" + } + }, + "node_modules/@redux-saga/deferred": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", + "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==" + }, + "node_modules/@redux-saga/delay-p": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", + "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", + "dependencies": { + "@redux-saga/symbols": "^1.1.3" + } + }, + "node_modules/@redux-saga/is": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", + "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", + "dependencies": { + "@redux-saga/symbols": "^1.1.3", + "@redux-saga/types": "^1.2.1" + } + }, + "node_modules/@redux-saga/symbols": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", + "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==" + }, + "node_modules/@redux-saga/types": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", + "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==" + }, + "node_modules/@reduxjs/toolkit": { + "version": "1.9.7", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz", + "integrity": "sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==", + "dependencies": { + "immer": "^9.0.21", + "redux": "^4.2.1", + "redux-thunk": "^2.4.2", + "reselect": "^4.1.8" + }, + "peerDependencies": { + "react": "^16.9.0 || ^17.0.0 || ^18", + "react-redux": "^7.2.1 || ^8.0.2" + }, + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-redux": { + "optional": true + } } }, - "node_modules/@nevware21/ts-utils": { - "version": "0.11.5", - "resolved": "https://registry.npmjs.org/@nevware21/ts-utils/-/ts-utils-0.11.5.tgz", - "integrity": "sha512-7nIzWKR50mf3htOg53kwPLqD5iJaRfVyBvb1NJhlIncyP1WzK8vAQbU9rqIsRtv7td1CnqspdP6IWNEjOjaeug==" + "node_modules/@remix-run/router": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.20.0.tgz", + "integrity": "sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==", + "engines": { + "node": ">=14.0.0" + } }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "node_modules/@rollup/plugin-babel": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", + "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", "dev": true, "dependencies": { - "eslint-scope": "5.1.1" + "@babel/helper-module-imports": "^7.10.4", + "@rollup/pluginutils": "^3.1.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@types/babel__core": "^7.1.9", + "rollup": "^1.20.0||^2.0.0" + }, + "peerDependenciesMeta": { + "@types/babel__core": { + "optional": true + } } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@rollup/plugin-node-resolve": { + "version": "11.2.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", + "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" }, "engines": { - "node": ">= 8" + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@rollup/plugin-node-resolve/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/@rollup/plugin-replace": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", + "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", "dev": true, "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "@rollup/pluginutils": "^3.1.0", + "magic-string": "^0.25.7" }, - "engines": { - "node": ">= 8" + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" } }, - "node_modules/@parcel/watcher": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", - "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", + "node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dev": true, "dependencies": { - "detect-libc": "^1.0.3", - "is-glob": "^4.0.3", - "micromatch": "^4.0.5", - "node-addon-api": "^7.0.0" + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" }, "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node": ">= 8.0.0" }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.4.1", - "@parcel/watcher-darwin-arm64": "2.4.1", - "@parcel/watcher-darwin-x64": "2.4.1", - "@parcel/watcher-freebsd-x64": "2.4.1", - "@parcel/watcher-linux-arm-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-glibc": "2.4.1", - "@parcel/watcher-linux-arm64-musl": "2.4.1", - "@parcel/watcher-linux-x64-glibc": "2.4.1", - "@parcel/watcher-linux-x64-musl": "2.4.1", - "@parcel/watcher-win32-arm64": "2.4.1", - "@parcel/watcher-win32-ia32": "2.4.1", - "@parcel/watcher-win32-x64": "2.4.1" + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" } }, - "node_modules/@parcel/watcher-android-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", - "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "node_modules/@rollup/pluginutils/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "dev": true }, - "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", - "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true }, - "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", - "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "node_modules/@rushstack/eslint-patch": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", + "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", + "dev": true }, - "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", - "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "node_modules/@sinclair/typebox": { + "version": "0.24.51", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", + "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==", + "dev": true }, - "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", - "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", - "cpu": [ - "arm" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" } }, - "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", - "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node_modules/@sinonjs/fake-timers": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", + "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" } }, - "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", - "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } + "node_modules/@stitches/core": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@stitches/core/-/core-1.2.8.tgz", + "integrity": "sha512-Gfkvwk9o9kE9r9XNBmJRfV8zONvXThnm1tcuojL04Uy5uRyqg93DC83lDebl0rocZCfKSjUv+fWYtMQmEDJldg==" }, - "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", - "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "node_modules/@surma/rollup-plugin-off-main-thread": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz", + "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==", + "dev": true, + "dependencies": { + "ejs": "^3.1.6", + "json5": "^2.2.0", + "magic-string": "^0.25.0", + "string.prototype.matchall": "^4.0.6" } }, - "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", - "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "linux" - ], + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", - "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", - "cpu": [ - "arm64" - ], - "optional": true, - "os": [ - "win32" - ], + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz", + "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", - "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", - "cpu": [ - "ia32" - ], - "optional": true, - "os": [ - "win32" - ], + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz", + "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@parcel/watcher-win32-x64": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", - "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz", + "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz", + "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==", "dev": true, - "optional": true, "engines": { - "node": ">=14" + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@pmmmwh/react-refresh-webpack-plugin": { - "version": "0.5.15", - "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.15.tgz", - "integrity": "sha512-LFWllMA55pzB9D34w/wXUCf8+c+IYKuJDgxiZ3qMhl64KRMBHYM1I3VdGaD2BV5FNPV2/S2596bppxHbv2ZydQ==", + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz", + "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==", "dev": true, - "dependencies": { - "ansi-html": "^0.0.9", - "core-js-pure": "^3.23.3", - "error-stack-parser": "^2.0.6", - "html-entities": "^2.1.0", - "loader-utils": "^2.0.4", - "schema-utils": "^4.2.0", - "source-map": "^0.7.3" - }, "engines": { - "node": ">= 10.13" - }, - "peerDependencies": { - "@types/webpack": "4.x || 5.x", - "react-refresh": ">=0.10.0 <1.0.0", - "sockjs-client": "^1.4.0", - "type-fest": ">=0.17.0 <5.0.0", - "webpack": ">=4.43.0 <6.0.0", - "webpack-dev-server": "3.x || 4.x || 5.x", - "webpack-hot-middleware": "2.x", - "webpack-plugin-serve": "0.x || 1.x" + "node": ">=10" }, - "peerDependenciesMeta": { - "@types/webpack": { - "optional": true - }, - "sockjs-client": { - "optional": true - }, - "type-fest": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - }, - "webpack-hot-middleware": { - "optional": true - }, - "webpack-plugin-serve": { - "optional": true - } + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@pmmmwh/react-refresh-webpack-plugin/node_modules/source-map": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", - "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz", + "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==", "dev": true, "engines": { - "node": ">= 8" - } - }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, - "node_modules/@redux-saga/core": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.3.0.tgz", - "integrity": "sha512-L+i+qIGuyWn7CIg7k1MteHGfttKPmxwZR5E7OsGikCL2LzYA0RERlaUY00Y3P3ZV2EYgrsYlBrGs6cJP5OKKqA==", - "dependencies": { - "@babel/runtime": "^7.6.3", - "@redux-saga/deferred": "^1.2.1", - "@redux-saga/delay-p": "^1.2.1", - "@redux-saga/is": "^1.1.3", - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1", - "typescript-tuple": "^2.2.1" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/redux-saga" + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@redux-saga/deferred": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.2.1.tgz", - "integrity": "sha512-cmin3IuuzMdfQjA0lG4B+jX+9HdTgHZZ+6u3jRAOwGUxy77GSlTi4Qp2d6PM1PUoTmQUR5aijlA39scWWPF31g==" - }, - "node_modules/@redux-saga/delay-p": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.2.1.tgz", - "integrity": "sha512-MdiDxZdvb1m+Y0s4/hgdcAXntpUytr9g0hpcOO1XFVyyzkrDu3SKPgBFOtHn7lhu7n24ZKIAT1qtKyQjHqRd+w==", - "dependencies": { - "@redux-saga/symbols": "^1.1.3" + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz", + "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@redux-saga/is": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.1.3.tgz", - "integrity": "sha512-naXrkETG1jLRfVfhOx/ZdLj0EyAzHYbgJWkXbB3qFliPcHKiWbv/ULQryOAEKyjrhiclmr6AMdgsXFyx7/yE6Q==", + "node_modules/@svgr/babel-preset": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz", + "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==", + "dev": true, "dependencies": { - "@redux-saga/symbols": "^1.1.3", - "@redux-saga/types": "^1.2.1" + "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1", + "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0", + "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0", + "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0", + "@svgr/babel-plugin-transform-svg-component": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@redux-saga/symbols": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.1.3.tgz", - "integrity": "sha512-hCx6ZvU4QAEUojETnX8EVg4ubNLBFl1Lps4j2tX7o45x/2qg37m3c6v+kSp8xjDJY+2tJw4QB3j8o8dsl1FDXg==" - }, - "node_modules/@redux-saga/types": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.2.1.tgz", - "integrity": "sha512-1dgmkh+3so0+LlBWRhGA33ua4MYr7tUOj+a9Si28vUi0IUFNbff1T3sgpeDJI/LaC75bBYnQ0A3wXjn0OrRNBA==" - }, - "node_modules/@reduxjs/toolkit": { - "version": "1.9.7", - "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz", - "integrity": "sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==", + "node_modules/@svgr/core": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz", + "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==", + "dev": true, "dependencies": { - "immer": "^9.0.21", - "redux": "^4.2.1", - "redux-thunk": "^2.4.2", - "reselect": "^4.1.8" + "@svgr/plugin-jsx": "^5.5.0", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.0" }, - "peerDependencies": { - "react": "^16.9.0 || ^17.0.0 || ^18", - "react-redux": "^7.2.1 || ^8.0.2" + "engines": { + "node": ">=10" }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-redux": { - "optional": true - } + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@remix-run/router": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.20.0.tgz", - "integrity": "sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==", + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz", + "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.6" + }, "engines": { - "node": ">=14.0.0" + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@rollup/plugin-babel": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", - "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", + "node_modules/@svgr/plugin-jsx": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz", + "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@rollup/pluginutils": "^3.1.0" + "@babel/core": "^7.12.3", + "@svgr/babel-preset": "^5.5.0", + "@svgr/hast-util-to-babel-ast": "^5.5.0", + "svg-parser": "^2.0.2" }, "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "@types/babel__core": "^7.1.9", - "rollup": "^1.20.0||^2.0.0" + "node": ">=10" }, - "peerDependenciesMeta": { - "@types/babel__core": { - "optional": true - } + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@rollup/plugin-node-resolve": { - "version": "11.2.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz", - "integrity": "sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==", + "node_modules/@svgr/plugin-svgo": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz", + "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "@types/resolve": "1.17.1", - "builtin-modules": "^3.1.0", + "cosmiconfig": "^7.0.0", "deepmerge": "^4.2.2", - "is-module": "^1.0.0", - "resolve": "^1.19.0" + "svgo": "^1.2.2" }, "engines": { - "node": ">= 10.0.0" + "node": ">=10" }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@rollup/plugin-node-resolve/node_modules/deepmerge": { + "node_modules/@svgr/plugin-svgo/node_modules/deepmerge": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", @@ -4254,3549 +6300,3985 @@ "node": ">=0.10.0" } }, - "node_modules/@rollup/plugin-replace": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", - "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", + "node_modules/@svgr/webpack": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz", + "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "magic-string": "^0.25.7" + "@babel/core": "^7.12.3", + "@babel/plugin-transform-react-constant-elements": "^7.12.1", + "@babel/preset-env": "^7.12.1", + "@babel/preset-react": "^7.12.5", + "@svgr/core": "^5.5.0", + "@svgr/plugin-jsx": "^5.5.0", + "@svgr/plugin-svgo": "^5.5.0", + "loader-utils": "^2.0.0" }, - "peerDependencies": { - "rollup": "^1.20.0 || ^2.0.0" + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" } }, - "node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true, - "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" + "node": ">= 6" } }, - "node_modules/@rollup/pluginutils/node_modules/@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } }, - "node_modules/@rtsao/scc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", - "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", - "dev": true + "node_modules/@types/acorn": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/acorn/-/acorn-4.0.6.tgz", + "integrity": "sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==", + "dependencies": { + "@types/estree": "*" + } }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.10.4.tgz", - "integrity": "sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==", - "dev": true + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } }, - "node_modules/@sinclair/typebox": { - "version": "0.24.51", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", - "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==", - "dev": true + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", - "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "@types/connect": "*", + "@types/node": "*" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" + "@types/node": "*" } }, - "node_modules/@surma/rollup-plugin-off-main-thread": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz", - "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==", + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "dependencies": { - "ejs": "^3.1.6", - "json5": "^2.2.0", - "magic-string": "^0.25.0", - "string.prototype.matchall": "^4.0.6" + "@types/node": "*" } }, - "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-5.4.0.tgz", - "integrity": "sha512-ZFf2gs/8/6B8PnSofI0inYXr2SDNTDScPXhN7k5EqD4aZ3gi6u+rbmZHVB8IM3wDyx8ntKACZbtXSm7oZGRqVg==", + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" } }, - "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-5.4.0.tgz", - "integrity": "sha512-yaS4o2PgUtwLFGTKbsiAy6D0o3ugcUhWK0Z45umJ66EPWunAz9fuFw2gJuje6wqQvQWOTJvIahUwndOXb7QCPg==", + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.56.12", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.12.tgz", + "integrity": "sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" } }, - "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-5.0.1.tgz", - "integrity": "sha512-LA72+88A11ND/yFIMzyuLRSMJ+tRKeYKeQ+mR3DcAZ5I4h5CPWN9AHyUzJbWSYp/u2u0xhmgOe0+E41+GjEueA==", + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "node_modules/@types/estree-jsx": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree-jsx/-/estree-jsx-1.0.5.tgz", + "integrity": "sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "node_modules/@types/express-serve-static-core": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-5.0.1.tgz", - "integrity": "sha512-PoiE6ZD2Eiy5mK+fjHqwGOS+IXX0wq/YDtNyIgOrc6ejFnxN4b13pRpiIPbtPwHEc+NT2KCjteAcq33/F1Y9KQ==", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz", + "integrity": "sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-5.4.0.tgz", - "integrity": "sha512-zSOZH8PdZOpuG1ZVx/cLVePB2ibo3WPpqo7gFIjLV9a0QsuQAzJiwwqmuEdTaW2pegyBE17Uu15mOgOcgabQZg==", + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-5.4.0.tgz", - "integrity": "sha512-cPzDbDA5oT/sPXDCUYoVXEmm3VIoAWAPT6mSPTJNbQaBNUuEKVKyGH93oDY4e42PYHRW67N5alJx/eEol20abw==", + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/node": "*" } }, - "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-5.4.0.tgz", - "integrity": "sha512-3eYP/SaopZ41GHwXma7Rmxcv9uRslRDTY1estspeB1w1ueZWd/tPlMfEOoccYpEMZU3jD4OU7YitnXcF5hLW2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dependencies": { + "@types/unist": "*" } }, - "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-5.5.0.tgz", - "integrity": "sha512-q4jSH1UUvbrsOtlo/tKcgSeiCHRSBdXoIoqX1pgcKK/aU3JD27wmMKwGtpB8qRYUYoyXvfGxUVKchLuR5pB3rQ==", + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", + "integrity": "sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==", + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==", + "dev": true + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.15", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.15.tgz", + "integrity": "sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==", "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "dependencies": { + "@types/node": "*" } }, - "node_modules/@svgr/babel-preset": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-5.5.0.tgz", - "integrity": "sha512-4FiXBjvQ+z2j7yASeGPEi8VD/5rrGQk4Xrq3EdJmoZgz/tpqChpo5hgXDvmEauwtvOc52q8ghhZK4Oy7qph4ig==", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^5.4.0", - "@svgr/babel-plugin-remove-jsx-attribute": "^5.4.0", - "@svgr/babel-plugin-remove-jsx-empty-expression": "^5.0.1", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^5.0.1", - "@svgr/babel-plugin-svg-dynamic-title": "^5.4.0", - "@svgr/babel-plugin-svg-em-dimensions": "^5.4.0", - "@svgr/babel-plugin-transform-react-native-svg": "^5.4.0", - "@svgr/babel-plugin-transform-svg-component": "^5.5.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/@svgr/core": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-5.5.0.tgz", - "integrity": "sha512-q52VOcsJPvV3jO1wkPtzTuKlvX7Y3xIcWRpCMtBF3MrteZJtBfQw/+u0B1BHy5ColpQc1/YVTrPEtSYIMNZlrQ==", + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, "dependencies": { - "@svgr/plugin-jsx": "^5.5.0", - "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "@types/istanbul-lib-report": "*" } }, - "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-5.5.0.tgz", - "integrity": "sha512-cAaR/CAiZRB8GP32N+1jocovUtvlj0+e65TB50/6Lcime+EA49m/8l+P2ko+XPJ4dw3xaPS3jOL4F2X4KWxoeQ==", - "dev": true, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true + }, + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dependencies": { - "@babel/types": "^7.12.6" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "@types/unist": "*" } }, - "node_modules/@svgr/plugin-jsx": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-5.5.0.tgz", - "integrity": "sha512-V/wVh33j12hGh05IDg8GpIUXbjAPnTdPTKuP4VNLggnwaHMPNQNae2pRnyTAILWCQdz5GyMqtO488g7CKM8CBA==", + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/node": { + "version": "22.8.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", + "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@svgr/babel-preset": "^5.5.0", - "@svgr/hast-util-to-babel-ast": "^5.5.0", - "svg-parser": "^2.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "undici-types": "~6.19.8" } }, - "node_modules/@svgr/plugin-svgo": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-5.5.0.tgz", - "integrity": "sha512-r5swKk46GuQl4RrVejVwpeeJaydoxkdwkM1mBKOgJLBUJPGaLci6ylg/IjhrRsREKDkr4kbMWdgOtbXEh0fyLQ==", + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, "dependencies": { - "cosmiconfig": "^7.0.0", - "deepmerge": "^4.2.2", - "svgo": "^1.2.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "@types/node": "*" } }, - "node_modules/@svgr/plugin-svgo/node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" }, - "node_modules/@svgr/webpack": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-5.5.0.tgz", - "integrity": "sha512-DOBOK255wfQxguUta2INKkzPj6AIS6iafZYiYmHn6W3pHlycSRRlvWKCfLDG10fXfLWqE3DJHgRUOyJYmARa7g==", - "dev": true, + "node_modules/@types/prettier": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "dev": true + }, + "node_modules/@types/prop-types": { + "version": "15.7.13", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", + "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==" + }, + "node_modules/@types/q": { + "version": "1.5.8", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.8.tgz", + "integrity": "sha512-hroOstUScF6zhIi+5+x0dzqrHA1EJi+Irri6b1fxolMTqqHIV/Cg77EtnQcZqZCu8hR3mX2BzIxN4/GzI68Kfw==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.16", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", + "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true + }, + "node_modules/@types/react": { + "version": "18.3.12", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", + "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", "dependencies": { - "@babel/core": "^7.12.3", - "@babel/plugin-transform-react-constant-elements": "^7.12.1", - "@babel/preset-env": "^7.12.1", - "@babel/preset-react": "^7.12.5", - "@svgr/core": "^5.5.0", - "@svgr/plugin-jsx": "^5.5.0", - "@svgr/plugin-svgo": "^5.5.0", - "loader-utils": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/gregberge" + "@types/prop-types": "*", + "csstype": "^3.0.2" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true, - "engines": { - "node": ">= 6" + "node_modules/@types/react-redux": { + "version": "7.1.34", + "resolved": "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.34.tgz", + "integrity": "sha512-GdFaVjEbYv4Fthm2ZLvj1VSCedV7TqE5y1kNwnjSdBOTXuRSgowux6J8TAct15T3CKBr63UMk+2CO7ilRhyrAQ==", + "dependencies": { + "@types/hoist-non-react-statics": "^3.3.0", + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0", + "redux": "^4.0.0" } }, - "node_modules/@trysound/sax": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", - "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", - "dev": true, - "engines": { - "node": ">=10.13.0" + "node_modules/@types/react-transition-group": { + "version": "4.4.11", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz", + "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==", + "dependencies": { + "@types/react": "*" } }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", "dev": true, "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "@types/node": "*" } }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "dependencies": { - "@babel/types": "^7.0.0" + "@types/mime": "^1", + "@types/node": "*" } }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "@types/express": "*" } }, - "node_modules/@types/babel__traverse": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", - "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, "dependencies": { - "@babel/types": "^7.20.7" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "node_modules/@types/body-parser": { - "version": "1.19.5", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", - "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "dependencies": { - "@types/connect": "*", "@types/node": "*" } }, - "node_modules/@types/bonjour": { - "version": "3.5.13", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", - "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "dev": true + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" + }, + "node_modules/@types/use-sync-external-store": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", + "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" + }, + "node_modules/@types/ws": { + "version": "8.5.12", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", + "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", "dev": true, "dependencies": { "@types/node": "*" } }, - "node_modules/@types/connect": { - "version": "3.4.38", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", - "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "node_modules/@types/yargs": { + "version": "16.0.9", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz", + "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==", "dev": true, "dependencies": { - "@types/node": "*" + "@types/yargs-parser": "*" } }, - "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", - "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", + "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", "dev": true, "dependencies": { - "@types/express-serve-static-core": "*", - "@types/node": "*" + "@eslint-community/regexpp": "^4.4.0", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/type-utils": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/eslint": { - "version": "8.56.12", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.12.tgz", - "integrity": "sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true - }, - "node_modules/@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "node_modules/@typescript-eslint/experimental-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.62.0.tgz", + "integrity": "sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==", "dev": true, "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" + "@typescript-eslint/utils": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@types/express-serve-static-core": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.1.tgz", - "integrity": "sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA==", + "node_modules/@typescript-eslint/parser": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", + "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", "dev": true, "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/express/node_modules/@types/express-serve-static-core": { - "version": "4.19.6", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", - "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dev": true, "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "node_modules/@typescript-eslint/type-utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", + "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", "dev": true, "dependencies": { - "@types/node": "*" + "@typescript-eslint/typescript-estree": "5.62.0", + "@typescript-eslint/utils": "5.62.0", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/hoist-non-react-statics": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", - "integrity": "sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==", - "dependencies": { - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0" + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==", - "dev": true - }, - "node_modules/@types/http-errors": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", - "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", - "dev": true - }, - "node_modules/@types/http-proxy": { - "version": "1.17.15", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.15.tgz", - "integrity": "sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dev": true, "dependencies": { - "@types/node": "*" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", "dev": true, "dependencies": { - "@types/istanbul-lib-report": "*" + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "node_modules/@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", - "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", - "dev": true - }, - "node_modules/@types/node": { - "version": "22.8.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.8.4.tgz", - "integrity": "sha512-SpNNxkftTJOPk0oN+y2bIqurEXHTA2AOZ3EJDDKeJ5VzkvvORSvmQXGQarcOzWV1ac7DCaPBEdMDxBsM+d8jWw==", + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "undici-types": "~6.19.8" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@types/node-forge": { - "version": "1.3.11", - "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", - "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dev": true, "dependencies": { - "@types/node": "*" + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@types/parse-json": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", - "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", - "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", "dev": true }, - "node_modules/@types/prop-types": { - "version": "15.7.13", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", - "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==" + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } }, - "node_modules/@types/q": { - "version": "1.5.8", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.8.tgz", - "integrity": "sha512-hroOstUScF6zhIi+5+x0dzqrHA1EJi+Irri6b1fxolMTqqHIV/Cg77EtnQcZqZCu8hR3mX2BzIxN4/GzI68Kfw==", + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", "dev": true }, - "node_modules/@types/qs": { - "version": "6.9.16", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", - "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", "dev": true }, - "node_modules/@types/range-parser": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", - "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true }, - "node_modules/@types/react": { - "version": "18.3.12", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz", - "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==", + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, "dependencies": { - "@types/prop-types": "*", - "csstype": "^3.0.2" + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/@types/react-redux": { - "version": "7.1.34", - "resolved": "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.34.tgz", - "integrity": "sha512-GdFaVjEbYv4Fthm2ZLvj1VSCedV7TqE5y1kNwnjSdBOTXuRSgowux6J8TAct15T3CKBr63UMk+2CO7ilRhyrAQ==", + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, "dependencies": { - "@types/hoist-non-react-statics": "^3.3.0", - "@types/react": "*", - "hoist-non-react-statics": "^3.3.0", - "redux": "^4.0.0" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" } }, - "node_modules/@types/react-transition-group": { - "version": "4.4.11", - "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz", - "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==", + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, "dependencies": { - "@types/react": "*" + "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/@types/resolve": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", - "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, "dependencies": { - "@types/node": "*" + "@xtuc/long": "4.2.2" } }, - "node_modules/@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", - "dev": true - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", "dev": true }, - "node_modules/@types/send": { - "version": "0.17.4", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", - "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, - "node_modules/@types/serve-index": { - "version": "1.9.4", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", - "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, "dependencies": { - "@types/express": "*" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@types/serve-static": { - "version": "1.15.7", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", - "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, "dependencies": { - "@types/http-errors": "*", - "@types/node": "*", - "@types/send": "*" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/@types/sockjs": { - "version": "0.3.36", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", - "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, "dependencies": { - "@types/node": "*" + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" } }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", "dev": true }, - "node_modules/@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, - "node_modules/@types/use-sync-external-store": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/@types/use-sync-external-store/-/use-sync-external-store-0.0.3.tgz", - "integrity": "sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==" + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true }, - "node_modules/@types/ws": { - "version": "8.5.12", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", - "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dev": true, "dependencies": { - "@types/node": "*" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/@types/yargs": { - "version": "16.0.9", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz", - "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } + "node_modules/accounting": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/accounting/-/accounting-0.4.1.tgz", + "integrity": "sha512-RU6KY9Y5wllyaCNBo1W11ZOTnTHMMgOZkIwdOOs6W5ibMTp72i4xIbEA48djxVGqMNTUNbvrP/1nWg5Af5m2gQ==" }, - "node_modules/@types/yargs-parser": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "dev": true + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz", - "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==", + "node_modules/acorn-globals": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", + "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", "dev": true, "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/type-utils": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, "bin": { - "semver": "bin/semver.js" + "acorn": "bin/acorn" }, "engines": { - "node": ">=10" + "node": ">=0.4.0" } }, - "node_modules/@typescript-eslint/experimental-utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.62.0.tgz", - "integrity": "sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==", + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, - "dependencies": { - "@typescript-eslint/utils": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "acorn": "^8" } }, - "node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", + "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "debug": "^4.3.4" - }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=0.4.0" } }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "node_modules/address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=8.9" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz", - "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "5.62.0", - "@typescript-eslint/utils": "5.62.0", - "debug": "^4.3.4", - "tsutils": "^3.21.0" + "debug": "4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">= 6.0.0" } }, - "node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "ajv": "^8.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "ajv": "^8.0.0" }, "peerDependenciesMeta": { - "typescript": { + "ajv": { "optional": true } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" }, - "engines": { - "node": ">=10" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/anser": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/anser/-/anser-2.3.0.tgz", + "integrity": "sha512-pGGR7Nq1K/i9KGs29PvHDXA8AsfZ3OiYRMDClT3FIC085Kbns9CJ7ogq9MEiGnrjd9THOGoh7B+kWzePHzZyJQ==" + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "type-fest": "^0.21.3" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "node_modules/ansi-html": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.9.tgz", + "integrity": "sha512-ozbS3LuenHVxNRh/wdnN16QapUHzauqSomAl1jwwJRRsGwFwtj644lIhxfWu0Fy0acCij2+AEgHvjscq3dlVXg==", "dev": true, + "engines": [ + "node >= 0.8.0" + ], "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "ansi-html": "bin/ansi-html" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", "dev": true, - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=8" } }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, - "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", "dev": true }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", - "@xtuc/long": "4.2.2" - } - }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", - "dev": true, + "node_modules/aria-hidden": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", + "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dev": true, "dependencies": { - "@xtuc/long": "4.2.2" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "node_modules/array-move": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/array-move/-/array-move-4.0.0.tgz", + "integrity": "sha512-+RY54S8OuVvg94THpneQvFRmqWdAHeqtMzgMW6JNurHxe8rsS07cHQdfGkXnTUXiBcyZ0j3SiDIxxj0RPiqCkQ==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "engines": { + "node": ">=8" } }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "node_modules/array.prototype.findlastindex": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@xtuc/long": "4.2.2" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "deprecated": "Use your platform's native atob() and btoa() methods instead", - "dev": true - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/accounting": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/accounting/-/accounting-0.4.1.tgz", - "integrity": "sha512-RU6KY9Y5wllyaCNBo1W11ZOTnTHMMgOZkIwdOOs6W5ibMTp72i4xIbEA48djxVGqMNTUNbvrP/1nWg5Af5m2gQ==" - }, - "node_modules/acorn": { - "version": "8.14.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", - "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "node_modules/array.prototype.reduce": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz", + "integrity": "sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-array-method-boxes-properly": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "is-string": "^1.0.7" }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "dev": true, - "peerDependencies": { - "acorn": "^8" - } + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "dev": true }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/ast-types-flow": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", + "dev": true }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "engines": { - "node": ">=0.4.0" + "node": ">=8" } }, - "node_modules/address": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", - "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">= 4.0.0" } }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" }, "engines": { - "node": ">=8.9" + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, "dependencies": { - "debug": "4" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "node": ">= 0.4" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "node_modules/axe-core": { + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.2.tgz", + "integrity": "sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==", "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } + "engines": { + "node": ">=4" } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "dev": true, + "node_modules/axios": { + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" + "engines": { + "node": ">= 0.4" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/babel-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", + "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", "dev": true, "dependencies": { - "type-fest": "^0.21.3" + "@jest/transform": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-html": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.9.tgz", - "integrity": "sha512-ozbS3LuenHVxNRh/wdnN16QapUHzauqSomAl1jwwJRRsGwFwtj644lIhxfWu0Fy0acCij2+AEgHvjscq3dlVXg==", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "node_modules/babel-loader": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.4.1.tgz", + "integrity": "sha512-nXzRChX+Z1GoE6yWavBQg6jDslyFF3SDjl2paADuoQtQW10JqShJt62R6eJQ5m/pjJFDT8xgKIWSP85OY8eXeA==", "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.4", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, "engines": { - "node": ">=8" + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/babel-loader/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", - "dev": true - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/babel-loader/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", - "dev": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/aria-query": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", - "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "node_modules/babel-loader/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", - "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "node_modules/babel-loader/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", - "is-array-buffer": "^3.0.4" + "semver": "^6.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "node_modules/array-includes": { - "version": "3.1.8", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", - "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "node_modules/babel-loader/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-object-atoms": "^1.0.0", - "get-intrinsic": "^1.2.4", - "is-string": "^1.0.7" + "p-try": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/array-move": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/array-move/-/array-move-4.0.0.tgz", - "integrity": "sha512-+RY54S8OuVvg94THpneQvFRmqWdAHeqtMzgMW6JNurHxe8rsS07cHQdfGkXnTUXiBcyZ0j3SiDIxxj0RPiqCkQ==", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node_modules/babel-loader/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/babel-loader/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/array.prototype.findlast": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", - "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "node_modules/babel-loader/node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" }, "engines": { - "node": ">= 0.4" + "node": ">= 8.9.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/array.prototype.findlastindex": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", - "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-shim-unscopables": "^1.0.2" + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/array.prototype.flat": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", - "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "node_modules/babel-plugin-jest-hoist": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", + "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10", + "npm": ">=6" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", - "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "node_modules/babel-plugin-named-asset-import": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz", + "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==", + "dev": true, + "peerDependencies": { + "@babel/core": "^7.1.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0" + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" }, - "engines": { - "node": ">= 0.4" + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", + "dev": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/array.prototype.reduce": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz", - "integrity": "sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q==", + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", + "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.2", - "es-array-method-boxes-properly": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "is-string": "^1.0.7" + "@babel/helper-define-polyfill-provider": "^0.6.2" }, - "engines": { - "node": ">= 0.4" + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-styled-components": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.4.tgz", + "integrity": "sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "lodash": "^4.17.21", + "picomatch": "^2.3.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "styled-components": ">= 2" } }, - "node_modules/array.prototype.tosorted": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", - "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "node_modules/babel-plugin-transform-react-remove-prop-types": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", + "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==", + "dev": true + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-shim-unscopables": "^1.0.2" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" }, - "engines": { - "node": ">= 0.4" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", - "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "node_modules/babel-preset-jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", + "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "call-bind": "^1.0.5", - "define-properties": "^1.2.1", - "es-abstract": "^1.22.3", - "es-errors": "^1.2.1", - "get-intrinsic": "^1.2.3", - "is-array-buffer": "^3.0.4", - "is-shared-array-buffer": "^1.0.2" + "babel-plugin-jest-hoist": "^27.5.1", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true - }, - "node_modules/ast-types-flow": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", - "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==", - "dev": true - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "engines": { - "node": ">=8" + "node_modules/babel-preset-react-app": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz", + "integrity": "sha512-b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.16.0", + "@babel/plugin-proposal-class-properties": "^7.16.0", + "@babel/plugin-proposal-decorators": "^7.16.4", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", + "@babel/plugin-proposal-numeric-separator": "^7.16.0", + "@babel/plugin-proposal-optional-chaining": "^7.16.0", + "@babel/plugin-proposal-private-methods": "^7.16.0", + "@babel/plugin-transform-flow-strip-types": "^7.16.0", + "@babel/plugin-transform-react-display-name": "^7.16.0", + "@babel/plugin-transform-runtime": "^7.16.4", + "@babel/preset-env": "^7.16.4", + "@babel/preset-react": "^7.16.0", + "@babel/preset-typescript": "^7.16.0", + "@babel/runtime": "^7.16.3", + "babel-plugin-macros": "^3.1.0", + "babel-plugin-transform-react-remove-prop-types": "^0.4.24" } }, - "node_modules/async": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", - "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" - }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/autoprefixer": { - "version": "10.4.20", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", - "dev": true, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" + "type": "patreon", + "url": "https://www.patreon.com/feross" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "consulting", + "url": "https://feross.org/support" } - ], + ] + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "node_modules/better-npm-audit": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/better-npm-audit/-/better-npm-audit-3.11.0.tgz", + "integrity": "sha512-/Pt05DK6HQaRjWDc5McsCkJBZYfhgQGneKnxzPJExtRq38NttO1Hm30m0GVQeZogE94LVNBVrhWwVsoCo+at3g==", "dependencies": { - "browserslist": "^4.23.3", - "caniuse-lite": "^1.0.30001646", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.1", - "postcss-value-parser": "^4.2.0" + "commander": "^8.0.0", + "dayjs": "^1.10.6", + "lodash.get": "^4.4.2", + "semver": "^7.6.3", + "table": "^6.7.1" }, "bin": { - "autoprefixer": "bin/autoprefixer" + "better-npm-audit": "index.js" }, "engines": { - "node": "^10 || ^12 || >=14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">= 8.12" } }, - "node_modules/available-typed-arrays": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", - "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", - "dev": true, - "dependencies": { - "possible-typed-array-names": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "node_modules/better-npm-audit/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.2.tgz", - "integrity": "sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/axios": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", - "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", - "dependencies": { - "follow-redirects": "^1.15.6", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - } - }, - "node_modules/axobject-query": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", - "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", - "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=10" } }, - "node_modules/babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "node_modules/bfj": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.1.0.tgz", + "integrity": "sha512-I6MMLkn+anzNdCUp9hMRyui1HaNEUCco50lxbvNS4+EyXg8lN3nJ48PjPWtbH8UVS9CuMoaKE9U2V3l29DaRQw==", "dev": true, "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "bluebird": "^3.7.2", + "check-types": "^11.2.3", + "hoopy": "^0.1.4", + "jsonpath": "^1.1.1", + "tryer": "^1.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "node": ">= 8.0.0" } }, - "node_modules/babel-loader": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.4.1.tgz", - "integrity": "sha512-nXzRChX+Z1GoE6yWavBQg6jDslyFF3SDjl2paADuoQtQW10JqShJt62R6eJQ5m/pjJFDT8xgKIWSP85OY8eXeA==", + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true, - "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^2.0.4", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" + "node": "*" } }, - "node_modules/babel-loader/node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-loader/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/babel-loader/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/babel-loader/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "ms": "2.0.0" } }, - "node_modules/babel-loader/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, - "node_modules/babel-loader/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" } }, - "node_modules/babel-loader/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, + "node_modules/browser-image-compression": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/browser-image-compression/-/browser-image-compression-2.0.2.tgz", + "integrity": "sha512-pBLlQyUf6yB8SmmngrcOw3EoS4RpQ1BcylI3T9Yqn7+4nrQTXJD4sJDe5ODnJdrvNMaio5OicFo75rDyJD2Ucw==", "dependencies": { - "find-up": "^4.0.0" + "uzip": "0.20201231.0" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "dev": true + }, + "node_modules/browserslist": { + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" }, "engines": { - "node": ">=8" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/babel-loader/node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - }, + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, "engines": { - "node": ">= 8.9.0" + "node": ">=6" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-plugin-macros": { + "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", - "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", - "dependencies": { - "@babel/runtime": "^7.12.5", - "cosmiconfig": "^7.0.0", - "resolve": "^1.19.0" - }, + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "engines": { - "node": ">=10", - "npm": ">=6" + "node": ">=6" } }, - "node_modules/babel-plugin-named-asset-import": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.8.tgz", - "integrity": "sha512-WXiAc++qo7XcJ1ZnTYGtLxmBCVbddAml3CEXgWaBzNzLNoxtQ8AiGEFDMOhot9XjTCQbvP5E77Fj9Gk924f00Q==", + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", "dev": true, - "peerDependencies": { - "@babel/core": "^7.1.0" + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" } }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", - "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, - "dependencies": { - "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.6.2", - "semver": "^6.3.1" + "engines": { + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.10.6", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", - "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.2", - "core-js-compat": "^3.38.0" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "engines": { + "node": ">= 6" } }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", - "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", - "dev": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.6.2" - }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-plugin-styled-components": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.4.tgz", - "integrity": "sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g==", + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dev": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/plugin-syntax-jsx": "^7.22.5", - "lodash": "^4.17.21", - "picomatch": "^2.3.1" - }, - "peerDependencies": { - "styled-components": ">= 2" + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" } }, - "node_modules/babel-plugin-transform-react-remove-prop-types": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", - "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==", - "dev": true + "node_modules/caniuse-lite": { + "version": "1.0.30001675", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001675.tgz", + "integrity": "sha512-/wV1bQwPrkLiQMjaJF5yUMVM/VdRPOCU8QZ+PmG6uW6DvYSrNY1bpwHI/3mOcUosLaJCzYDi5o91IQB51ft6cg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", - "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "node_modules/case-sensitive-paths-webpack-plugin": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", + "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-import-attributes": "^7.24.7", - "@babel/plugin-syntax-import-meta": "^7.10.4", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/babel-preset-react-app": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-10.0.1.tgz", - "integrity": "sha512-b0D9IZ1WhhCWkrTXyFuIIgqGzSkRIH5D5AmB0bXbzYAB1OBAwHcUeyWW2LorutLWF5btNo/N7r/cIdmvvKJlYg==", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, - "dependencies": { - "@babel/core": "^7.16.0", - "@babel/plugin-proposal-class-properties": "^7.16.0", - "@babel/plugin-proposal-decorators": "^7.16.4", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.0", - "@babel/plugin-proposal-numeric-separator": "^7.16.0", - "@babel/plugin-proposal-optional-chaining": "^7.16.0", - "@babel/plugin-proposal-private-methods": "^7.16.0", - "@babel/plugin-transform-flow-strip-types": "^7.16.0", - "@babel/plugin-transform-react-display-name": "^7.16.0", - "@babel/plugin-transform-runtime": "^7.16.4", - "@babel/preset-env": "^7.16.4", - "@babel/preset-react": "^7.16.0", - "@babel/preset-typescript": "^7.16.0", - "@babel/runtime": "^7.16.3", - "babel-plugin-macros": "^3.1.0", - "babel-plugin-transform-react-remove-prop-types": "^0.4.24" + "engines": { + "node": ">=10" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "node_modules/batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true + "node_modules/character-reference-invalid": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz", + "integrity": "sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "node_modules/better-npm-audit": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/better-npm-audit/-/better-npm-audit-3.11.0.tgz", - "integrity": "sha512-/Pt05DK6HQaRjWDc5McsCkJBZYfhgQGneKnxzPJExtRq38NttO1Hm30m0GVQeZogE94LVNBVrhWwVsoCo+at3g==", + "node_modules/chart.js": { + "version": "4.4.6", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.6.tgz", + "integrity": "sha512-8Y406zevUPbbIBA/HRk33khEmQPk5+cxeflWE/2rx1NJsjVWMPw/9mSP9rxHP5eqi6LNoPBVMfZHxbwLSgldYA==", "dependencies": { - "commander": "^8.0.0", - "dayjs": "^1.10.6", - "lodash.get": "^4.4.2", - "semver": "^7.6.3", - "table": "^6.7.1" - }, - "bin": { - "better-npm-audit": "index.js" + "@kurkle/color": "^0.3.0" }, "engines": { - "node": ">= 8.12" + "pnpm": ">=8" } }, - "node_modules/better-npm-audit/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } + "node_modules/check-types": { + "version": "11.2.3", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-11.2.3.tgz", + "integrity": "sha512-+67P1GkJRaxQD6PKK0Et9DhwQB+vGg3PM5+aavopCpZT1lj9jeqfvpgTLAWErNj8qApkkmXlu/Ug74kmhagkXg==", + "dev": true }, - "node_modules/bfj": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.1.0.tgz", - "integrity": "sha512-I6MMLkn+anzNdCUp9hMRyui1HaNEUCco50lxbvNS4+EyXg8lN3nJ48PjPWtbH8UVS9CuMoaKE9U2V3l29DaRQw==", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, "dependencies": { - "bluebird": "^3.7.2", - "check-types": "^11.2.3", - "hoopy": "^0.1.4", - "jsonpath": "^1.1.1", - "tryer": "^1.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">= 8.0.0" + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", "dev": true, "engines": { - "node": "*" + "node": ">=6.0" } }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "node_modules/cjs-module-lexer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz", + "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==", "dev": true }, - "node_modules/body-parser": { - "version": "1.20.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", - "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "node_modules/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" + }, + "node_modules/clean-css": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", + "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", "dev": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.5", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.13.0", - "raw-body": "2.5.2", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "source-map": "~0.6.0" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">= 10.0" } }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/clean-set": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/clean-set/-/clean-set-1.1.2.tgz", + "integrity": "sha512-cA8uCj0qSoG9e0kevyOWXwPaELRPVg5Pxp6WskLMwerx257Zfnh8Nl0JBH59d7wQzij2CK7qEfJQK3RjuKKIug==" + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dev": true, "dependencies": { - "ms": "2.0.0" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "node_modules/body-parser/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/bonjour-service": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", - "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "engines": { + "node": ">=6" } }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "node_modules/cm6-theme-basic-light": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/cm6-theme-basic-light/-/cm6-theme-basic-light-0.2.0.tgz", + "integrity": "sha512-1prg2gv44sYfpHscP26uLT/ePrh0mlmVwMSoSd3zYKQ92Ab3jPRLzyCnpyOCQLJbK+YdNs4HvMRqMNYdy4pMhA==", + "peerDependencies": { + "@codemirror/language": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0", + "@lezer/highlight": "^1.0.0" } }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dependencies": { - "fill-range": "^7.1.1" - }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, "engines": { - "node": ">=8" + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/browser-image-compression": { + "node_modules/coa": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/browser-image-compression/-/browser-image-compression-2.0.2.tgz", - "integrity": "sha512-pBLlQyUf6yB8SmmngrcOw3EoS4RpQ1BcylI3T9Yqn7+4nrQTXJD4sJDe5ODnJdrvNMaio5OicFo75rDyJD2Ucw==", - "dependencies": { - "uzip": "0.20201231.0" - } - }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "node_modules/browserslist": { - "version": "4.24.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", - "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, "dependencies": { - "caniuse-lite": "^1.0.30001669", - "electron-to-chromium": "^1.5.41", - "node-releases": "^2.0.18", - "update-browserslist-db": "^1.1.1" + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" }, - "bin": { - "browserslist": "cli.js" + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/coa/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": ">=4" } }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "node_modules/coa/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { - "node-int64": "^0.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "node_modules/coa/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/coa/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/builtin-modules": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", - "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "node_modules/coa/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, - "node_modules/bytes": { + "node_modules/coa/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=4" } }, - "node_modules/call-bind": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", - "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "node_modules/coa/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "set-function-length": "^1.2.1" + "has-flag": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/codemirror": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-6.0.1.tgz", + "integrity": "sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==", + "dependencies": { + "@codemirror/autocomplete": "^6.0.0", + "@codemirror/commands": "^6.0.0", + "@codemirror/language": "^6.0.0", + "@codemirror/lint": "^6.0.0", + "@codemirror/search": "^6.0.0", + "@codemirror/state": "^6.0.0", + "@codemirror/view": "^6.0.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=6" + "node": ">=7.0.0" } }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", + "dev": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "dev": true + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 12" } }, - "node_modules/camelcase-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", "dev": true, "engines": { - "node": ">= 6" + "node": ">=4.0.0" } }, - "node_modules/camelize": { + "node_modules/commondir": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dev": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "dev": true, "dependencies": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001675", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001675.tgz", - "integrity": "sha512-/wV1bQwPrkLiQMjaJF5yUMVM/VdRPOCU8QZ+PmG6uW6DvYSrNY1bpwHI/3mOcUosLaJCzYDi5o91IQB51ft6cg==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, - "node_modules/case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", + "node_modules/compute-scroll-into-view": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-2.0.4.tgz", + "integrity": "sha512-y/ZA3BGnxoM/QHHQ2Uy49CLtnWPbt4tTPpEEZiEmmiWBFKjej7nEyH8Ryz54jH0MLXflUYA3Er2zUxPSJu5R+g==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/confusing-browser-globals": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", + "dev": true + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=0.8" } }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "safe-buffer": "5.2.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">= 0.6" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "node_modules/content-disposition-attachment": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/content-disposition-attachment/-/content-disposition-attachment-0.3.1.tgz", + "integrity": "sha512-8KLbgtOCiGGbEk0X7gUOk5lSCRW2FZZwLg0PMHsOR2/0HAYg68dZpPOenzEdsmcMIw/H7PZv+HD11uy4blcwww==" + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, "engines": { - "node": ">=10" + "node": ">= 0.6" } }, - "node_modules/chart.js": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.6.tgz", - "integrity": "sha512-8Y406zevUPbbIBA/HRk33khEmQPk5+cxeflWE/2rx1NJsjVWMPw/9mSP9rxHP5eqi6LNoPBVMfZHxbwLSgldYA==", - "dependencies": { - "@kurkle/color": "^0.3.0" - }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "dev": true, "engines": { - "pnpm": ">=8" + "node": ">= 0.6" } }, - "node_modules/check-types": { - "version": "11.2.3", - "resolved": "https://registry.npmjs.org/check-types/-/check-types-11.2.3.tgz", - "integrity": "sha512-+67P1GkJRaxQD6PKK0Et9DhwQB+vGg3PM5+aavopCpZT1lj9jeqfvpgTLAWErNj8qApkkmXlu/Ug74kmhagkXg==", + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "node_modules/core-js": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz", + "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==", "dev": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, + "hasInstallScript": true, "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/chrome-trace-event": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", - "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "node_modules/core-js-compat": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, - "engines": { - "node": ">=6.0" + "dependencies": { + "browserslist": "^4.23.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "node_modules/core-js-pure": { + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.38.1.tgz", + "integrity": "sha512-BY8Etc1FZqdw1glX0XNOq2FDwfrg/VGqoZOZCdaL+UmdaqDwQwYXkMJT4t6In+zfEfOJDcM9T0KdbBeJg8KKCQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "node_modules/cjs-module-lexer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz", - "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==", + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, - "node_modules/clean-css": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz", - "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==", - "dev": true, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dependencies": { - "source-map": "~0.6.0" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, "engines": { - "node": ">= 10.0" + "node": ">=10" } }, - "node_modules/clean-css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/crelt": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz", + "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" + "engines": { + "node": ">=8" } }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "node_modules/css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", "dev": true, "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" }, "engines": { - "node": ">=6" + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/clsx": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "node_modules/css-box-model": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/css-box-model/-/css-box-model-1.2.1.tgz", + "integrity": "sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==", + "dependencies": { + "tiny-invariant": "^1.0.6" + } + }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "node_modules/css-declaration-sorter": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", + "integrity": "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==", "dev": true, "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" } }, - "node_modules/coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "node_modules/css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", "dev": true, "dependencies": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" }, "engines": { - "node": ">= 4.0" + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/coa/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/css-loader": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", + "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "icss-utils": "^5.1.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" }, "engines": { - "node": ">=4" + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "node_modules/coa/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/css-loader/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/coa/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/css-minimizer-webpack-plugin": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz", + "integrity": "sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "cssnano": "^5.0.6", + "jest-worker": "^27.0.2", + "postcss": "^8.3.5", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + } } }, - "node_modules/coa/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/coa/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/css-minimizer-webpack-plugin/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=0.10.0" } }, - "node_modules/coa/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", "dev": true, + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" + }, "engines": { - "node": ">=4" + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "node_modules/coa/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "node_modules/css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", "dev": true }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/css-to-react-native": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", + "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/colord": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", - "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", - "dev": true - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "dev": true, "dependencies": { - "delayed-stream": "~1.0.0" + "mdn-data": "2.0.4", + "source-map": "^0.6.1" }, "engines": { - "node": ">= 0.8" + "node": ">=8.0.0" } }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "node_modules/css-tree/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, "engines": { - "node": ">= 12" + "node": ">=0.10.0" } }, - "node_modules/common-tags": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", - "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", "dev": true, "engines": { - "node": ">=4.0.0" + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true + "node_modules/cssdb": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.11.2.tgz", + "integrity": "sha512-lhQ32TFkc1X4eTefGfYPvgovRSzIMofHkigfH8nWtyRL4XJLsRhJFreRvEgKzept7x1rjBuy3J/MurXLaFxW/A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ] }, - "node_modules/compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, - "dependencies": { - "mime-db": ">= 1.43.0 < 2" + "bin": { + "cssesc": "bin/cssesc" }, "engines": { - "node": ">= 0.6" + "node": ">=4" } }, - "node_modules/compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "node_modules/cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", "dev": true, "dependencies": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" }, "engines": { - "node": ">= 0.8.0" + "node": "^10 || ^12 || >=14.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/compression/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", "dev": true, "dependencies": { - "ms": "2.0.0" + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/compression/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/compression/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/compute-scroll-into-view": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/compute-scroll-into-view/-/compute-scroll-into-view-2.0.4.tgz", - "integrity": "sha512-y/ZA3BGnxoM/QHHQ2Uy49CLtnWPbt4tTPpEEZiEmmiWBFKjej7nEyH8Ryz54jH0MLXflUYA3Er2zUxPSJu5R+g==" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/confusing-browser-globals": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", - "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==", - "dev": true - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "node_modules/cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", "dev": true, "engines": { - "node": ">=0.8" + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" } }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", "dev": true, "dependencies": { - "safe-buffer": "5.2.1" + "css-tree": "^1.1.2" }, "engines": { - "node": ">= 0.6" + "node": ">=8.0.0" } }, - "node_modules/content-disposition-attachment": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/content-disposition-attachment/-/content-disposition-attachment-0.3.1.tgz", - "integrity": "sha512-8KLbgtOCiGGbEk0X7gUOk5lSCRW2FZZwLg0PMHsOR2/0HAYg68dZpPOenzEdsmcMIw/H7PZv+HD11uy4blcwww==" - }, - "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "node_modules/csso/node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", "dev": true, + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, "engines": { - "node": ">= 0.6" + "node": ">=8.0.0" } }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true }, - "node_modules/cookie": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", - "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "node_modules/csso/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=0.10.0" } }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "node_modules/cssom": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", + "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", "dev": true }, - "node_modules/core-js": { - "version": "3.38.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz", - "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-compat": { - "version": "3.38.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", - "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", "dev": true, "dependencies": { - "browserslist": "^4.23.3" + "cssom": "~0.3.6" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, - "node_modules/core-js-pure": { - "version": "3.38.1", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.38.1.tgz", - "integrity": "sha512-BY8Etc1FZqdw1glX0XNOq2FDwfrg/VGqoZOZCdaL+UmdaqDwQwYXkMJT4t6In+zfEfOJDcM9T0KdbBeJg8KKCQ==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" + "engines": { + "node": ">=8" } }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", "dev": true }, - "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, + "node_modules/d": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", + "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "es5-ext": "^0.10.64", + "type": "^2.7.2" }, "engines": { - "node": ">= 8" + "node": ">=0.12" } }, - "node_modules/crypto-random-string": { + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true + }, + "node_modules/data-urls": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", + "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", "dev": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/css-blank-pseudo": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", - "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-blank-pseudo": "dist/cli.cjs" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.4" - } - }, - "node_modules/css-box-model": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/css-box-model/-/css-box-model-1.2.1.tgz", - "integrity": "sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==", - "dependencies": { - "tiny-invariant": "^1.0.6" - } - }, - "node_modules/css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/css-declaration-sorter": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", - "integrity": "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==", + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.0.9" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/css-has-pseudo": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", - "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.9" - }, - "bin": { - "css-has-pseudo": "dist/cli.cjs" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "^12 || ^14 || >=16" + "node": ">= 0.4" }, - "peerDependencies": { - "postcss": "^8.4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/css-loader": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.11.0.tgz", - "integrity": "sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==", - "dev": true, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.33", - "postcss-modules-extract-imports": "^3.1.0", - "postcss-modules-local-by-default": "^4.0.5", - "postcss-modules-scope": "^3.2.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.5.4" + "@babel/runtime": "^7.21.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">=0.11" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "dependencies": { + "ms": "^2.1.3" }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.0.0" + "engines": { + "node": ">=6.0" }, "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { + "supports-color": { "optional": true } } }, - "node_modules/css-loader/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "dev": true + }, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/decode-uri-component": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", + "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", "engines": { - "node": ">=10" + "node": ">=14.16" } }, - "node_modules/css-minimizer-webpack-plugin": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-3.4.1.tgz", - "integrity": "sha512-1u6D71zeIfgngN2XNRJefc/hY7Ybsxd74Jm4qngIXyUEk7fss3VUzuHxLAq/R8NAba4QU9OUSaMZlbpRc7bM4Q==", + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-diff": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz", + "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==" + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", + "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", "dev": true, "dependencies": { - "cssnano": "^5.0.6", - "jest-worker": "^27.0.2", - "postcss": "^8.3.5", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" + "execa": "^5.0.0" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "@parcel/css": { - "optional": true - }, - "clean-css": { - "optional": true - }, - "csso": { - "optional": true - }, - "esbuild": { - "optional": true - } + "node": ">= 10" } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/css-prefers-color-scheme": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", - "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, - "bin": { - "css-prefers-color-scheme": "dist/cli.cjs" - }, "engines": { - "node": "^12 || ^14 || >=16" - }, - "peerDependencies": { - "postcss": "^8.4" + "node": ">=8" } }, - "node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/fb55" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/css-select-base-adapter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", - "dev": true - }, - "node_modules/css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "dependencies": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" } }, - "node_modules/css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, - "dependencies": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" - }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.8" } }, - "node_modules/css-tree/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, "engines": { - "node": ">= 6" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "bin": { + "detect-libc": "bin/detect-libc.js" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "engines": { + "node": ">=0.10" } }, - "node_modules/cssdb": { - "version": "7.11.2", - "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.11.2.tgz", - "integrity": "sha512-lhQ32TFkc1X4eTefGfYPvgovRSzIMofHkigfH8nWtyRL4XJLsRhJFreRvEgKzept7x1rjBuy3J/MurXLaFxW/A==", + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/csstools" - }, - { - "type": "github", - "url": "https://github.com/sponsors/csstools" - } - ] + "engines": { + "node": ">=8" + } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "dev": true + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", "dev": true, + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, "bin": { - "cssesc": "bin/cssesc" + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" }, "engines": { - "node": ">=4" + "node": ">= 4.2.1" } }, - "node_modules/cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" - }, - "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/cssnano" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "ms": "2.0.0" } }, - "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", - "dev": true, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" + "dequal": "^2.0.0" }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", "engines": { - "node": "^10 || ^12 || >=14.0" - }, - "peerDependencies": { - "postcss": "^8.2.15" + "node": ">=0.3.1" } }, - "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "node_modules/diff-sequences": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", + "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", "dev": true, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" }, - "peerDependencies": { - "postcss": "^8.2.15" + "engines": { + "node": ">=8" } }, - "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dev": true, "dependencies": { - "css-tree": "^1.1.2" + "@leichtgewicht/ip-codec": "^2.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=6" } }, - "node_modules/csso/node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" + "esutils": "^2.0.2" }, "engines": { - "node": ">=8.0.0" + "node": ">=6.0.0" } }, - "node_modules/csso/node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - }, - "node_modules/csso/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", "dev": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "utila": "~0.4" } }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", "dev": true, "dependencies": { - "cssom": "~0.3.6" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" - }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] }, - "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "node_modules/domexception": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", + "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "deprecated": "Use your platform's native DOMException instead", "dev": true, "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "webidl-conversions": "^5.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/data-view-buffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", - "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", + "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", "dev": true, - "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/data-view-byte-length": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", - "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "domelementtype": "^2.2.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 4" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "node_modules/data-view-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", - "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", "dev": true, "dependencies": { - "call-bind": "^1.0.6", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" - }, - "engines": { - "node": ">= 0.4" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/date-fns": { - "version": "2.30.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", - "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.21.0" - }, + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dotenv": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "dev": true, "engines": { - "node": ">=0.11" + "node": ">=10" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", + "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", + "dev": true + }, + "node_modules/downshift": { + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/downshift/-/downshift-7.6.2.tgz", + "integrity": "sha512-iOv+E1Hyt3JDdL9yYcOgW7nZ7GQ2Uz6YbggwXvKUSleetYhU2nXD482Rz6CzvM4lvI1At34BYruKAL4swRGxaA==", + "dependencies": { + "@babel/runtime": "^7.14.8", + "compute-scroll-into-view": "^2.0.4", + "prop-types": "^15.7.2", + "react-is": "^17.0.2", + "tslib": "^2.3.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/date-fns" + "peerDependencies": { + "react": ">=16.12.0" } }, - "node_modules/dayjs": { - "version": "1.11.13", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", - "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==" + "node_modules/downshift/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, - "node_modules/debug": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", - "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, "dependencies": { - "ms": "^2.1.3" + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" }, "engines": { - "node": ">=6.0" + "node": ">=0.10.0" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.49", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.49.tgz", + "integrity": "sha512-ZXfs1Of8fDb6z7WEYZjXpgIRF6MEu8JdeGA0A40aZq6OQbS+eJpnnV49epZRna2DU/YsEjSQuGtQPPtvt6J65A==" + }, + "node_modules/emittery": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", + "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "dev": true, + "engines": { + "node": ">=10" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "dev": true }, - "node_modules/decode-uri-component": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.4.1.tgz", - "integrity": "sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==", + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, "engines": { - "node": ">=14.16" + "node": ">= 4" } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-diff": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz", - "integrity": "sha512-yVn6RZmHiGnxRKR9sJb3iVV2XTF1Ghh2DiWRZ3dMnGc43yUdWWF/kX6lQyk3+P84iprfWKU/8zFTrlkvtFm1ug==" - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz", - "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==", + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dev": true, "dependencies": { - "execa": "^5.0.0" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" }, "engines": { - "node": ">= 10" + "node": ">=10.13.0" } }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/error-stack-parser": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", + "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "dev": true, + "dependencies": { + "stackframe": "^1.3.4" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", "dev": true, "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", "es-define-property": "^1.0.0", "es-errors": "^1.3.0", - "gopd": "^1.0.1" + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -7805,615 +10287,753 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "dev": true + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz", + "integrity": "sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==", "dev": true, "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.4", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.3", + "safe-array-concat": "^1.1.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/delayed-stream": { + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true + }, + "node_modules/es-object-atoms": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" } }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" } }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "bin": { - "detect-libc": "bin/detect-libc.js" + "node_modules/es5-ext": { + "version": "0.10.64", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", + "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", + "hasInstallScript": true, + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", + "next-tick": "^1.1.0" }, "engines": { "node": ">=0.10" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" } }, - "node_modules/detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "node_modules/detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "dev": true, + "node_modules/es6-symbol": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", + "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" + "d": "^1.0.2", + "ext": "^1.7.0" }, "engines": { - "node": ">= 4.2.1" + "node": ">=0.12" } }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" } }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "node_modules/escape-carriage": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/escape-carriage/-/escape-carriage-1.3.1.tgz", + "integrity": "sha512-GwBr6yViW3ttx1kb7/Oh+gKQ1/TrhYwxKqVmg5gS+BK+Qe2KrOa/Vh7w3HPBvgGf0LfcDGoY9I6NHKoA5Hozhw==" }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "dev": true }, - "node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", "dev": true, "dependencies": { - "path-type": "^4.0.0" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" }, "engines": { - "node": ">=8" + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" } }, - "node_modules/dlv": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", - "dev": true - }, - "node_modules/dns-packet": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", - "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "node_modules/escodegen/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "dependencies": { - "@leichtgewicht/ip-codec": "^2.0.1" - }, + "optional": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "node_modules/eslint-config-prettier": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", + "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", "dev": true, - "dependencies": { - "utila": "~0.4" + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "node_modules/eslint-config-react-app": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-7.0.1.tgz", + "integrity": "sha512-K6rNzvkIeHaTd8m/QEh1Zko0KI7BACWkkneSs6s9cKZC/J27X3eZR6Upt1jkmZ/4FK+XUOPPxMEN7+lbUXfSlA==", + "dev": true, "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" + "@babel/core": "^7.16.0", + "@babel/eslint-parser": "^7.16.3", + "@rushstack/eslint-patch": "^1.1.0", + "@typescript-eslint/eslint-plugin": "^5.5.0", + "@typescript-eslint/parser": "^5.5.0", + "babel-preset-react-app": "^10.0.1", + "confusing-browser-globals": "^1.0.11", + "eslint-plugin-flowtype": "^8.0.3", + "eslint-plugin-import": "^2.25.3", + "eslint-plugin-jest": "^25.3.0", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.27.1", + "eslint-plugin-react-hooks": "^4.3.0", + "eslint-plugin-testing-library": "^5.0.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "eslint": "^8.0.0" } }, - "node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dev": true, "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] + "dependencies": { + "ms": "^2.1.1" + } }, - "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "deprecated": "Use your platform's native DOMException instead", + "node_modules/eslint-module-utils": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" + "debug": "^3.2.7" }, "engines": { - "node": ">=8" + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "node_modules/eslint-plugin-flowtype": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-8.0.3.tgz", + "integrity": "sha512-dX8l6qUL6O+fYPtpNRideCFSpmWOUVx5QcaGLVqe/vlDiBSe4vYljDWDETwnyFzpl7By/WVIu6rcrniCgH9BqQ==", "dev": true, "dependencies": { - "domelementtype": "^2.2.0" + "lodash": "^4.17.21", + "string-natural-compare": "^3.0.1" }, "engines": { - "node": ">= 4" + "node": ">=12.0.0" }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" + "peerDependencies": { + "@babel/plugin-syntax-flow": "^7.14.5", + "@babel/plugin-transform-react-jsx": "^7.14.9", + "eslint": "^8.1.0" } }, - "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "node_modules/eslint-plugin-import": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", + "tsconfig-paths": "^3.15.0" }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" + "ms": "^2.1.1" } }, - "node_modules/dotenv": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", - "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "node_modules/downshift": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/downshift/-/downshift-7.6.2.tgz", - "integrity": "sha512-iOv+E1Hyt3JDdL9yYcOgW7nZ7GQ2Uz6YbggwXvKUSleetYhU2nXD482Rz6CzvM4lvI1At34BYruKAL4swRGxaA==", "dependencies": { - "@babel/runtime": "^7.14.8", - "compute-scroll-into-view": "^2.0.4", - "prop-types": "^15.7.2", - "react-is": "^17.0.2", - "tslib": "^2.3.0" + "esutils": "^2.0.2" }, - "peerDependencies": { - "react": ">=16.12.0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/downshift/node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" - }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "node_modules/ejs": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", - "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "node_modules/eslint-plugin-jest": { + "version": "25.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz", + "integrity": "sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==", "dev": true, "dependencies": { - "jake": "^10.8.5" - }, - "bin": { - "ejs": "bin/cli.js" + "@typescript-eslint/experimental-utils": "^5.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + }, + "jest": { + "optional": true + } } }, - "node_modules/electron-to-chromium": { - "version": "1.5.49", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.49.tgz", - "integrity": "sha512-ZXfs1Of8fDb6z7WEYZjXpgIRF6MEu8JdeGA0A40aZq6OQbS+eJpnnV49epZRna2DU/YsEjSQuGtQPPtvt6J65A==" - }, - "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", "dev": true, + "dependencies": { + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" + }, "engines": { - "node": ">=10" + "node": ">=4.0" }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, - "node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "node_modules/eslint-plugin-react": { + "version": "7.37.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz", + "integrity": "sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==", "dev": true, + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.1.0", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.0", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" + }, "engines": { - "node": ">= 4" + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", + "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "node_modules/enhanced-resolve": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", - "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "esutils": "^2.0.2" }, "engines": { - "node": ">=10.13.0" + "node": ">=0.10.0" } }, - "node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dependencies": { - "is-arrayish": "^0.2.1" + "node_modules/eslint-plugin-simple-import-sort": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-10.0.0.tgz", + "integrity": "sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==", + "dev": true, + "peerDependencies": { + "eslint": ">=5.0.0" } }, - "node_modules/error-stack-parser": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.1.4.tgz", - "integrity": "sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==", + "node_modules/eslint-plugin-testing-library": { + "version": "5.11.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.11.1.tgz", + "integrity": "sha512-5eX9e1Kc2PqVRed3taaLnAAqPZGEX75C+M/rXzUAI3wIg/ZxzUm1OVAwfe/O+vE+6YXOLetSe9g5GKD2ecXipw==", "dev": true, "dependencies": { - "stackframe": "^1.3.4" + "@typescript-eslint/utils": "^5.58.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0", + "npm": ">=6" + }, + "peerDependencies": { + "eslint": "^7.5.0 || ^8.0.0" } }, - "node_modules/es-abstract": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", - "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "node_modules/eslint-plugin-unused-imports": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-2.0.0.tgz", + "integrity": "sha512-3APeS/tQlTrFa167ThtP0Zm0vctjr4M44HMpeg1P4bK6wItarumq0Ma82xorMKdFsWpphQBlRPzw/pxiVELX1A==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.1", - "arraybuffer.prototype.slice": "^1.0.3", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.7", - "data-view-buffer": "^1.0.1", - "data-view-byte-length": "^1.0.1", - "data-view-byte-offset": "^1.0.0", - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.0.3", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.4", - "get-symbol-description": "^1.0.2", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "hasown": "^2.0.2", - "internal-slot": "^1.0.7", - "is-array-buffer": "^3.0.4", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.1", - "is-negative-zero": "^2.0.3", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.3", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.13", - "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", - "object-keys": "^1.1.1", - "object.assign": "^4.1.5", - "regexp.prototype.flags": "^1.5.2", - "safe-array-concat": "^1.1.2", - "safe-regex-test": "^1.0.3", - "string.prototype.trim": "^1.2.9", - "string.prototype.trimend": "^1.0.8", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.2", - "typed-array-byte-length": "^1.0.1", - "typed-array-byte-offset": "^1.0.2", - "typed-array-length": "^1.0.6", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.15" + "eslint-rule-composer": "^0.3.0" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "@typescript-eslint/eslint-plugin": "^5.0.0", + "eslint": "^8.0.0" + }, + "peerDependenciesMeta": { + "@typescript-eslint/eslint-plugin": { + "optional": true + } } }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true + "node_modules/eslint-rule-composer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", + "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } }, - "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": ">= 0.4" + "node": ">=8.0.0" } }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=4.0" } }, - "node_modules/es-iterator-helpers": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz", - "integrity": "sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==", + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-webpack-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.2.0.tgz", + "integrity": "sha512-avrKcGncpPbPSUHX6B3stNGzkKFto3eL+DKM4+VyMrVnhPc3vRczVlCq3uhuFOdRvDHTVXuzwk1ZKUrqDQHQ9w==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.3", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.4", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.7", - "iterator.prototype": "^1.1.3", - "safe-array-concat": "^1.1.2" + "@types/eslint": "^7.29.0 || ^8.4.1", + "jest-worker": "^28.0.2", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0", + "webpack": "^5.0.0" } }, - "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", - "dev": true + "node_modules/eslint-webpack-plugin/node_modules/jest-worker": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", + "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } }, - "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "node_modules/eslint-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "es-errors": "^1.3.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/es-set-tostringtag": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", - "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.4", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.1" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/es-shim-unscopables": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", - "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "dependencies": { - "hasown": "^2.0.0" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-glob": "^4.0.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10.13.0" } }, - "node_modules/escalade": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, "engines": { "node": ">=10" }, @@ -8421,86 +11041,42 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, + "node_modules/esniff": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", + "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" }, "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" + "node": ">=0.10" } }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, - "optional": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -8508,958 +11084,1044 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint-config-prettier": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz", - "integrity": "sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, "bin": { - "eslint-config-prettier": "bin/cli.js" + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, - "peerDependencies": { - "eslint": ">=7.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/eslint-config-react-app": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-7.0.1.tgz", - "integrity": "sha512-K6rNzvkIeHaTd8m/QEh1Zko0KI7BACWkkneSs6s9cKZC/J27X3eZR6Upt1jkmZ/4FK+XUOPPxMEN7+lbUXfSlA==", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, "dependencies": { - "@babel/core": "^7.16.0", - "@babel/eslint-parser": "^7.16.3", - "@rushstack/eslint-patch": "^1.1.0", - "@typescript-eslint/eslint-plugin": "^5.5.0", - "@typescript-eslint/parser": "^5.5.0", - "babel-preset-react-app": "^10.0.1", - "confusing-browser-globals": "^1.0.11", - "eslint-plugin-flowtype": "^8.0.3", - "eslint-plugin-import": "^2.25.3", - "eslint-plugin-jest": "^25.3.0", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-react": "^7.27.1", - "eslint-plugin-react-hooks": "^4.3.0", - "eslint-plugin-testing-library": "^5.0.1" + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-util-visit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", + "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "dev": true + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "eslint": "^8.0.0" + "node": ">=0.10.0" } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" + "d": "1", + "es5-ext": "~0.10.14" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, - "dependencies": { - "ms": "^2.1.1" + "engines": { + "node": ">=0.8.x" } }, - "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "debug": "^3.2.7" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, - "dependencies": { - "ms": "^2.1.1" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/eslint-plugin-flowtype": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-8.0.3.tgz", - "integrity": "sha512-dX8l6qUL6O+fYPtpNRideCFSpmWOUVx5QcaGLVqe/vlDiBSe4vYljDWDETwnyFzpl7By/WVIu6rcrniCgH9BqQ==", + "node_modules/expect": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", + "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", "dev": true, "dependencies": { - "lodash": "^4.17.21", - "string-natural-compare": "^3.0.1" + "@jest/types": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1" }, "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@babel/plugin-syntax-flow": "^7.14.5", - "@babel/plugin-transform-react-jsx": "^7.14.9", - "eslint": "^8.1.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", + "node_modules/express": { + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dev": true, "dependencies": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", - "hasown": "^2.0.2", - "is-core-module": "^2.15.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.0", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", - "tsconfig-paths": "^3.15.0" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.10", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + "node": ">= 0.10.0" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "ms": "^2.1.1" + "ms": "2.0.0" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/ext": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", + "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", + "dependencies": { + "type": "^2.7.2" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.6.0" } }, - "node_modules/eslint-plugin-jest": { - "version": "25.7.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-25.7.0.tgz", - "integrity": "sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-uri": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", + "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "^5.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^4.0.0 || ^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "reusify": "^1.0.4" + } + }, + "node_modules/fault": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fault/-/fault-2.0.1.tgz", + "integrity": "sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==", + "dependencies": { + "format": "^0.2.0" }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", - "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", "dev": true, "dependencies": { - "aria-query": "^5.3.2", - "array-includes": "^3.1.8", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "^4.10.0", - "axobject-query": "^4.1.0", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "hasown": "^2.0.2", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.1" + "websocket-driver": ">=0.5.1" }, "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + "node": ">=0.8.0" } }, - "node_modules/eslint-plugin-react": { - "version": "7.37.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz", - "integrity": "sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.2", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.1.0", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.0", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.11", - "string.prototype.repeat": "^1.0.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + "bser": "2.1.1" } }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", - "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, - "engines": { - "node": ">=10" + "dependencies": { + "flat-cache": "^3.0.4" }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">= 10.13.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/eslint-plugin-simple-import-sort": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-10.0.0.tgz", - "integrity": "sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==", + "node_modules/file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, - "peerDependencies": { - "eslint": ">=5.0.0" + "dependencies": { + "minimatch": "^5.0.1" } }, - "node_modules/eslint-plugin-testing-library": { - "version": "5.11.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.11.1.tgz", - "integrity": "sha512-5eX9e1Kc2PqVRed3taaLnAAqPZGEX75C+M/rXzUAI3wIg/ZxzUm1OVAwfe/O+vE+6YXOLetSe9g5GKD2ecXipw==", + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "^5.58.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0", - "npm": ">=6" - }, - "peerDependencies": { - "eslint": "^7.5.0 || ^8.0.0" + "balanced-match": "^1.0.0" } }, - "node_modules/eslint-plugin-unused-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unused-imports/-/eslint-plugin-unused-imports-2.0.0.tgz", - "integrity": "sha512-3APeS/tQlTrFa167ThtP0Zm0vctjr4M44HMpeg1P4bK6wItarumq0Ma82xorMKdFsWpphQBlRPzw/pxiVELX1A==", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, "dependencies": { - "eslint-rule-composer": "^0.3.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0", - "eslint": "^8.0.0" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - } + "node": ">=10" } }, - "node_modules/eslint-rule-composer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/eslint-rule-composer/-/eslint-rule-composer-0.3.0.tgz", - "integrity": "sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==", + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", "dev": true, "engines": { - "node": ">=4.0.0" + "node": ">= 0.4.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, + "node_modules/filter-obj": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", "engines": { - "node": ">=4.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "node_modules/eslint-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/eslint-webpack-plugin/-/eslint-webpack-plugin-3.2.0.tgz", - "integrity": "sha512-avrKcGncpPbPSUHX6B3stNGzkKFto3eL+DKM4+VyMrVnhPc3vRczVlCq3uhuFOdRvDHTVXuzwk1ZKUrqDQHQ9w==", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "@types/eslint": "^7.29.0 || ^8.4.1", - "jest-worker": "^28.0.2", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0", - "webpack": "^5.0.0" + "ms": "2.0.0" } }, - "node_modules/eslint-webpack-plugin/node_modules/jest-worker": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-28.1.3.tgz", - "integrity": "sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==", + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=6" } }, - "node_modules/eslint-webpack-plugin/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=4.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" + "is-callable": "^1.1.3" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", + "integrity": "sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==", "dev": true, "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10", + "yarn": ">=1.0.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "eslint": ">= 6", + "typescript": ">= 2.7", + "vue-template-compiler": "*", + "webpack": ">= 4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } } }, - "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" }, - "funding": { - "url": "https://opencollective.com/eslint" + "engines": { + "node": ">=8" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/fork-ts-checker-webpack-plugin/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": ">=0.10" + "node": ">=10" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" }, "engines": { - "node": ">=4.0" + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=6" } }, - "node_modules/estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, + "node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true, + "node_modules/format": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", + "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==", "engines": { - "node": ">= 0.6" + "node": ">=0.4.x" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "node_modules/formik": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/formik/-/formik-2.4.6.tgz", + "integrity": "sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g==", + "funding": [ + { + "type": "individual", + "url": "https://opencollective.com/formik" + } + ], + "dependencies": { + "@types/hoist-non-react-statics": "^3.3.1", + "deepmerge": "^2.1.1", + "hoist-non-react-statics": "^3.3.0", + "lodash": "^4.17.21", + "lodash-es": "^4.17.21", + "react-fast-compare": "^2.0.1", + "tiny-warning": "^1.0.2", + "tslib": "^2.0.0" + }, + "peerDependencies": { + "react": ">=16.8.0" + } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true, "engines": { - "node": ">=0.8.x" + "node": ">= 0.6" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, "engines": { - "node": ">=10" + "node": "*" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "type": "patreon", + "url": "https://github.com/sponsors/rawify" } }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.6" } }, - "node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" } }, - "node_modules/express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", + "node_modules/fs-monkey": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.3", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.3.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.3", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.19.0", - "serve-static": "1.16.2", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.10.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { - "node": ">=8.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/fast-uri": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.3.tgz", - "integrity": "sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==" + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "dependencies": { - "reusify": "^1.0.4" + "engines": { + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { - "websocket-driver": ">=0.5.1" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "engines": { - "node": ">=0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "dev": true + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, - "dependencies": { - "bser": "2.1.1" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/file-entry-cache": { + "node_modules/get-stream": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/file-loader": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", - "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">= 10.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/file-loader/node_modules/schema-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", - "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": "*" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/file-saver": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", - "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" - }, - "node_modules/filelist": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", - "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "dependencies": { - "minimatch": "^5.0.1" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true }, - "node_modules/filelist/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "dev": true, "dependencies": { - "brace-expansion": "^2.0.1" + "global-prefix": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/filesize": { - "version": "8.0.7", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", - "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { - "to-regex-range": "^5.0.1" + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" }, "engines": { - "node": ">=8" - } - }, - "node_modules/filter-obj": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", - "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "node_modules/finalhandler": { + "node_modules/global-prefix/node_modules/which": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", - "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "dependencies": { - "debug": "2.6.9", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "isexe": "^2.0.0" }, - "engines": { - "node": ">= 0.8" + "bin": { + "which": "bin/which" } }, - "node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" } }, - "node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "node_modules/find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" - }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { "node": ">=10" @@ -9468,1201 +12130,1046 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "get-intrinsic": "^1.1.3" }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, - "node_modules/follow-redirects": { - "version": "1.15.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", - "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "dependencies": { - "is-callable": "^1.1.3" - } + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true }, - "node_modules/foreground-child": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" + "duplexer": "^0.1.2" }, "engines": { - "node": ">=14" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "dev": true + }, + "node_modules/harmony-reflect": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz", + "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==", + "dev": true + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, - "engines": { - "node": ">=14" - }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", - "integrity": "sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "@babel/code-frame": "^7.8.3", - "@types/json-schema": "^7.0.5", - "chalk": "^4.1.0", - "chokidar": "^3.4.2", - "cosmiconfig": "^6.0.0", - "deepmerge": "^4.2.2", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "memfs": "^3.1.2", - "minimatch": "^3.0.4", - "schema-utils": "2.7.0", - "semver": "^7.3.2", - "tapable": "^1.0.0" - }, "engines": { - "node": ">=10", - "yarn": ">=1.0.0" - }, - "peerDependencies": { - "eslint": ">= 6", - "typescript": ">= 2.7", - "vue-template-compiler": "*", - "webpack": ">= 4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } + "node": ">=8" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" + "es-define-property": "^1.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", - "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.4", - "ajv": "^6.12.2", - "ajv-keywords": "^3.4.1" + "has-symbols": "^1.0.3" }, "engines": { - "node": ">= 8.9.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/highlight-words-core": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.3.tgz", + "integrity": "sha512-m1O9HW3/GNHxzSIXWw1wCNXXsgLlxrP0OI6+ycGUhiUHkikqW3OrwVHz+lxeNBe5yqLESdIcj8PowHQ2zLvUvQ==" + }, + "node_modules/history": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/history/-/history-5.3.0.tgz", + "integrity": "sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==", + "dependencies": { + "@babel/runtime": "^7.7.6" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "node_modules/hoist-non-react-statics/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/hoopy": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", + "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 6.0.0" } }, - "node_modules/form-data": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", - "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" } }, - "node_modules/formik": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/formik/-/formik-2.4.6.tgz", - "integrity": "sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g==", - "funding": [ - { - "type": "individual", - "url": "https://opencollective.com/formik" - } - ], - "dependencies": { - "@types/hoist-non-react-statics": "^3.3.1", - "deepmerge": "^2.1.1", - "hoist-non-react-statics": "^3.3.0", - "lodash": "^4.17.21", - "lodash-es": "^4.17.21", - "react-fast-compare": "^2.0.1", - "tiny-warning": "^1.0.2", - "tslib": "^2.0.0" - }, - "peerDependencies": { - "react": ">=16.8.0" - } + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "dev": true }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, - "node_modules/fraction.js": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "dev": true, - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" - } + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "node_modules/fs-extra": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", - "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", + "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "whatwg-encoding": "^1.0.5" }, "engines": { - "node": ">=12" + "node": ">=10" } }, - "node_modules/fs-monkey": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", - "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==", - "dev": true + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=12" } }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "node_modules/html-webpack-plugin": { + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz", + "integrity": "sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10.13.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "engines": { - "node": ">=6.9.0" + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "@rspack/core": "0.x || 1.x", + "webpack": "^5.20.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" } }, - "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "dependencies": { - "es-errors": "^1.3.0", - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8" } }, - "node_modules/get-own-enumerable-property-symbols": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", - "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==", + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, "engines": { "node": ">=8.0.0" } }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", - "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "dependencies": { - "call-bind": "^1.0.5", - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.4" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6" } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", + "node_modules/http-proxy-middleware": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz", + "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" }, "engines": { - "node": "*" + "node": ">=12.0.0" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "agent-base": "6", + "debug": "4" }, "engines": { "node": ">= 6" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, - "dependencies": { - "global-prefix": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=10.17.0" } }, - "node_modules/global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "dependencies": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", "dev": true, - "dependencies": { - "isexe": "^2.0.0" + "engines": { + "node": "^10 || ^12 || >= 14" }, - "bin": { - "which": "bin/which" + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "node_modules/idb": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/idb/-/idb-7.1.1.tgz", + "integrity": "sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==", + "dev": true + }, + "node_modules/identity-obj-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", + "integrity": "sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==", + "dev": true, + "dependencies": { + "harmony-reflect": "^1.4.6" + }, "engines": { "node": ">=4" } }, - "node_modules/globalthis": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", - "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "dependencies": { - "define-properties": "^1.2.1", - "gopd": "^1.0.1" - }, "engines": { - "node": ">= 0.4" - }, + "node": ">= 4" + } + }, + "node_modules/immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/immer" } }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.3" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/gzip-size": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", - "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", - "dev": true, - "dependencies": { - "duplexer": "^0.1.2" + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": ">=10" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "node_modules/harmony-reflect": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.2.tgz", - "integrity": "sha512-HIp/n38R9kQjDEziXyDTuW3vvoxxyxjxFzXLrBr18uB47GnSt+G9D29fqrpM5ZkspMcPICud3XsBJQ4Y2URg8g==", - "dev": true - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/import-local/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, "engines": { "node": ">=8" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", - "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "node_modules/import-local/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { - "es-define-property": "^1.0.0" + "p-locate": "^4.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", - "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", - "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/import-local/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/has-tostringtag": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", - "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "node_modules/import-local/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "dependencies": { - "has-symbols": "^1.0.3" + "p-limit": "^2.2.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, "dependencies": { - "function-bind": "^1.1.2" + "find-up": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "bin": { - "he": "bin/he" + "engines": { + "node": ">=0.8.19" } }, - "node_modules/highlight-words-core": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/highlight-words-core/-/highlight-words-core-1.2.3.tgz", - "integrity": "sha512-m1O9HW3/GNHxzSIXWw1wCNXXsgLlxrP0OI6+ycGUhiUHkikqW3OrwVHz+lxeNBe5yqLESdIcj8PowHQ2zLvUvQ==" - }, - "node_modules/history": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/history/-/history-5.3.0.tgz", - "integrity": "sha512-ZqaKwjjrAYUYfLG+htGaIIZ4nioX2L70ZUMIFysS3xvBsSG4x/n1V6TXV3N8ZYNuFGlDirFg32T7B6WOUPDYcQ==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, "dependencies": { - "@babel/runtime": "^7.7.6" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dependencies": { - "react-is": "^16.7.0" - } + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true }, - "node_modules/hoist-non-react-statics/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true }, - "node_modules/hoopy": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", - "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, "engines": { - "node": ">= 6.0.0" + "node": ">= 0.4" } }, - "node_modules/hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, + "node_modules/intersection-observer": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/intersection-observer/-/intersection-observer-0.10.0.tgz", + "integrity": "sha512-fn4bQ0Xq8FTej09YC/jqKZwtijpvARlRp6wxL5WTA6yPe2YWSJ5RJh7Nm79rK2qB0wr6iDQzH60XGq5V/7u8YQ==" + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dependencies": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" + "loose-envify": "^1.0.0" } }, - "node_modules/hpack.js/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true - }, - "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "engines": { + "node": ">= 10" } }, - "node_modules/hpack.js/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/hpack.js/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.0" + "node_modules/is-alphabetical": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-2.0.1.tgz", + "integrity": "sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/html-encoding-sniffer": { + "node_modules/is-alphanumerical": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz", + "integrity": "sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==", "dependencies": { - "whatwg-encoding": "^1.0.5" + "is-alphabetical": "^2.0.0", + "is-decimal": "^2.0.0" }, - "engines": { - "node": ">=10" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/html-entities": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", - "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/mdevils" - }, - { - "type": "patreon", - "url": "https://patreon.com/mdevils" - } - ] - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/html-minifier-terser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", - "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, "dependencies": { - "camel-case": "^4.1.2", - "clean-css": "^5.2.2", - "commander": "^8.3.0", - "he": "^1.2.0", - "param-case": "^3.0.4", - "relateurl": "^0.2.7", - "terser": "^5.10.0" - }, - "bin": { - "html-minifier-terser": "cli.js" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" }, "engines": { - "node": ">=12" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/html-webpack-plugin": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz", - "integrity": "sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", "dev": true, "dependencies": { - "@types/html-minifier-terser": "^6.0.0", - "html-minifier-terser": "^6.0.2", - "lodash": "^4.17.21", - "pretty-error": "^4.0.0", - "tapable": "^2.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/html-webpack-plugin" - }, - "peerDependencies": { - "@rspack/core": "0.x || 1.x", - "webpack": "^5.20.0" - }, - "peerDependenciesMeta": { - "@rspack/core": { - "optional": true - }, - "webpack": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true - }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "node_modules/http-parser-js": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", - "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", - "dev": true - }, - "node_modules/http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dev": true, "dependencies": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "hasown": "^2.0.2" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/http-proxy-middleware": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz", - "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==", + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", "dev": true, "dependencies": { - "@types/http-proxy": "^1.17.8", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=12.0.0" - }, - "peerDependencies": { - "@types/express": "^4.17.13" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "@types/express": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, "dependencies": { - "agent-base": "6", - "debug": "4" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" + "node_modules/is-decimal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", + "integrity": "sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { "node": ">=0.10.0" } }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" + "dependencies": { + "call-bind": "^1.0.2" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/idb": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/idb/-/idb-7.1.1.tgz", - "integrity": "sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==", - "dev": true - }, - "node_modules/identity-obj-proxy": { + "node_modules/is-fullwidth-code-point": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", - "integrity": "sha512-00n6YnVHKrinT9t0d9+5yZC6UBNJANpYEQvL2LlX6Ab9lnmxzIRcEmTPuyGScvl1+jKuCICX1Z0Ab1pPKKdikA==", - "dev": true, - "dependencies": { - "harmony-reflect": "^1.4.6" - }, + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/ignore": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", - "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, "engines": { - "node": ">= 4" - } - }, - "node_modules/immer": { - "version": "9.0.21", - "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", - "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/immer" + "node": ">=6" } }, - "node_modules/immutable": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", - "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/import-local": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", - "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", - "dev": true, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=8" - }, + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz", + "integrity": "sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==", "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/import-local/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/import-local/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, - "dependencies": { - "p-locate": "^4.1.0" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { - "node": ">=8" + "node": ">=0.12.0" } }, - "node_modules/import-local/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/import-local/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/import-local/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, "engines": { "node": ">=8" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true, "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/inherits": { + "node_modules/is-plain-object": { "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "node_modules/internal-slot": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", - "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "dev": true, "dependencies": { - "es-errors": "^1.3.0", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "isobject": "^3.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "node_modules/ipaddr.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", - "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", - "dev": true, - "engines": { - "node": ">= 10" - } + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true }, - "node_modules/is-array-buffer": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", - "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10671,58 +13178,43 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", "dev": true, - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.7" }, "engines": { "node": ">= 0.4" @@ -10731,24 +13223,25 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-core-module": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", - "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, "dependencies": { - "hasown": "^2.0.2" + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10757,13 +13250,13 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-data-view": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", - "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { - "is-typed-array": "^1.1.13" + "has-symbols": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -10772,13 +13265,13 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -10787,33 +13280,28 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "dev": true + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, - "bin": { - "is-docker": "cli.js" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "engines": { - "node": ">=0.10.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-finalizationregistry": { + "node_modules/is-weakref": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, "dependencies": { "call-bind": "^1.0.2" @@ -10822,30 +13310,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -10854,93 +13326,96 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "is-docker": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/is-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", - "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true }, - "node_modules/is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/is-negative-zero": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", - "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "engines": { - "node": ">=0.12.0" + "node_modules/isomorphic.js": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/isomorphic.js/-/isomorphic.js-0.2.5.tgz", + "integrity": "sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==", + "peer": true, + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, "engines": { "node": ">=10" }, @@ -10948,1806 +13423,2472 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, - "dependencies": { - "isobject": "^3.0.1" + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "node_modules/is-regexp": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/is-set": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", - "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "node_modules/iterator.prototype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + }, "engines": { "node": ">= 0.4" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", - "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, "dependencies": { - "call-bind": "^1.0.7" + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" }, - "engines": { - "node": ">= 0.4" + "bin": { + "jake": "bin/cli.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/jest": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", + "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "import-local": "^3.0.2", + "jest-cli": "^27.5.1" + }, + "bin": { + "jest": "bin/jest.js" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "node_modules/jest-changed-files": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", + "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "@jest/types": "^27.5.1", + "execa": "^5.0.0", + "throat": "^6.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/jest-circus": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", + "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "@jest/environment": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3", + "throat": "^6.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", - "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "node_modules/jest-cli": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", + "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "dev": true, + "dependencies": { + "@jest/core": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "prompts": "^2.0.1", + "yargs": "^16.2.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", + "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", "dev": true, "dependencies": { - "which-typed-array": "^1.1.14" + "@babel/core": "^7.8.0", + "@jest/test-sequencer": "^27.5.1", + "@jest/types": "^27.5.1", + "babel-jest": "^27.5.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.9", + "jest-circus": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-get-type": "^27.5.1", + "jest-jasmine2": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-runner": "^27.5.1", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "node_modules/is-weakmap": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", - "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "node_modules/jest-config/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/jest-diff": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", + "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "chalk": "^4.0.0", + "diff-sequences": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-weakset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", - "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "node_modules/jest-docblock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", + "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.7", - "get-intrinsic": "^1.2.4" + "detect-newline": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "node_modules/jest-each": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", + "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", "dev": true, "dependencies": { - "is-docker": "^2.0.0" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "node_modules/jest-environment-jsdom": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", + "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", "dev": true, + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1", + "jsdom": "^16.6.0" + }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "node_modules/jest-environment-node": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", + "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", "dev": true, "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "jest-mock": "^27.5.1", + "jest-util": "^27.5.1" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "node_modules/jest-get-type": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", + "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "node_modules/jest-haste-map": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", + "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", "dev": true, "dependencies": { - "semver": "^7.5.3" + "@jest/types": "^27.5.1", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^27.5.1", + "jest-serializer": "^27.5.1", + "jest-util": "^27.5.1", + "jest-worker": "^27.5.1", + "micromatch": "^4.0.4", + "walker": "^1.0.7" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "node_modules/jest-jasmine2": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", + "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "@jest/environment": "^27.5.1", + "@jest/source-map": "^27.5.1", + "@jest/test-result": "^27.5.1", + "@jest/types": "^27.5.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^27.5.1", + "is-generator-fn": "^2.0.0", + "jest-each": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-runtime": "^27.5.1", + "jest-snapshot": "^27.5.1", + "jest-util": "^27.5.1", + "pretty-format": "^27.5.1", + "throat": "^6.0.1" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "node_modules/jest-leak-detector": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", + "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", "dev": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/jest-matcher-utils": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", + "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^27.5.1", + "jest-get-type": "^27.5.1", + "pretty-format": "^27.5.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/istanbul-reports": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", - "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "node_modules/jest-message-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", + "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", "dev": true, "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^27.5.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^27.5.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=8" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/iterator.prototype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", - "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", + "node_modules/jest-mock": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", + "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", "dev": true, "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" + "@jest/types": "^27.5.1", + "@types/node": "*" }, "engines": { - "node": ">= 0.4" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jackspeak": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" + "engines": { + "node": ">=6" }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "peerDependencies": { + "jest-resolve": "*" }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } } }, - "node_modules/jake": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", - "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "node_modules/jest-regex-util": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", + "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", "dev": true, - "dependencies": { - "async": "^3.2.3", - "chalk": "^4.0.2", - "filelist": "^1.0.4", - "minimatch": "^3.1.2" - }, - "bin": { - "jake": "bin/cli.js" - }, "engines": { - "node": ">=10" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest": { + "node_modules/jest-resolve": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", + "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", "dev": true, "dependencies": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - }, - "bin": { - "jest": "bin/jest.js" + "@jest/types": "^27.5.1", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^27.5.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^27.5.1", + "jest-validate": "^27.5.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } } }, - "node_modules/jest-changed-files": { + "node_modules/jest-resolve-dependencies": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", + "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", "dev": true, "dependencies": { "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" + "jest-regex-util": "^27.5.1", + "jest-snapshot": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-circus": { + "node_modules/jest-runner": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", + "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", "dev": true, "dependencies": { + "@jest/console": "^27.5.1", "@jest/environment": "^27.5.1", "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", "@jest/types": "^27.5.1", "@types/node": "*", "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", + "emittery": "^0.8.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^27.5.1", + "jest-environment-jsdom": "^27.5.1", + "jest-environment-node": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-leak-detector": "^27.5.1", "jest-message-util": "^27.5.1", + "jest-resolve": "^27.5.1", "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", + "jest-worker": "^27.5.1", + "source-map-support": "^0.5.6", "throat": "^6.0.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-cli": { + "node_modules/jest-runtime": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", + "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", "dev": true, "dependencies": { - "@jest/core": "^27.5.1", + "@jest/environment": "^27.5.1", + "@jest/fake-timers": "^27.5.1", + "@jest/globals": "^27.5.1", + "@jest/source-map": "^27.5.1", "@jest/test-result": "^27.5.1", + "@jest/transform": "^27.5.1", "@jest/types": "^27.5.1", "chalk": "^4.0.0", - "exit": "^0.1.2", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "execa": "^5.0.0", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-message-util": "^27.5.1", + "jest-mock": "^27.5.1", + "jest-regex-util": "^27.5.1", + "jest-resolve": "^27.5.1", + "jest-snapshot": "^27.5.1", "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "bin": { - "jest": "bin/jest.js" + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/jest-serializer": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", + "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.9" }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-config": { + "node_modules/jest-snapshot": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", + "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", "dev": true, "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", + "@babel/core": "^7.7.2", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.0.0", + "@jest/transform": "^27.5.1", "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", + "expect": "^27.5.1", "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", + "jest-diff": "^27.5.1", "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", + "jest-haste-map": "^27.5.1", + "jest-matcher-utils": "^27.5.1", + "jest-message-util": "^27.5.1", "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", + "natural-compare": "^1.4.0", "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" + "semver": "^7.3.2" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } } }, - "node_modules/jest-config/node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/jest-diff": { + "node_modules/jest-util": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", + "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", "dev": true, "dependencies": { + "@jest/types": "^27.5.1", + "@types/node": "*", "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-docblock": { + "node_modules/jest-validate": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", + "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", "dev": true, "dependencies": { - "detect-newline": "^3.0.0" + "@jest/types": "^27.5.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^27.5.1", + "leven": "^3.1.0", + "pretty-format": "^27.5.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "node_modules/jest-watch-typeahead": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-1.1.0.tgz", + "integrity": "sha512-Va5nLSJTN7YFtC2jd+7wsoe1pNe5K4ShLux/E5iHEwlB9AxaxmggY7to9KUqKojhaJw3aXqt5WAb4jGPOolpEw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "ansi-escapes": "^4.3.1", "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-regex-util": "^28.0.0", + "jest-watcher": "^28.0.0", + "slash": "^4.0.0", + "string-length": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "jest": "^27.0.0 || ^28.0.0" } }, - "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "node_modules/jest-watch-typeahead/node_modules/@jest/console": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz", + "integrity": "sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/types": "^28.1.3", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "chalk": "^4.0.0", + "jest-message-util": "^28.1.3", + "jest-util": "^28.1.3", + "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "node_modules/jest-watch-typeahead/node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watch-typeahead/node_modules/@jest/test-result": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz", + "integrity": "sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-watch-typeahead/node_modules/@jest/types": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", + "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^28.1.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "node_modules/jest-watch-typeahead/node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/jest-watch-typeahead/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "node_modules/jest-watch-typeahead/node_modules/emittery": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.2.tgz", + "integrity": "sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/jest-watch-typeahead/node_modules/jest-message-util": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", + "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", + "@babel/code-frame": "^7.12.13", + "@jest/types": "^28.1.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", "micromatch": "^4.0.4", - "walker": "^1.0.7" + "pretty-format": "^28.1.3", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "node_modules/jest-watch-typeahead/node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-watch-typeahead/node_modules/jest-regex-util": { + "version": "28.0.2", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz", + "integrity": "sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-watch-typeahead/node_modules/jest-util": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", + "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/types": "^28.1.3", "@types/node": "*", "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + } + }, + "node_modules/jest-watch-typeahead/node_modules/jest-watcher": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz", + "integrity": "sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==", + "dev": true, + "dependencies": { + "@jest/test-result": "^28.1.3", + "@jest/types": "^28.1.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.10.2", + "jest-util": "^28.1.3", + "string-length": "^4.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", + "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" } }, - "node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "ansi-regex": "^5.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", + "node_modules/jest-watch-typeahead/node_modules/pretty-format": { + "version": "28.1.3", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", + "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "@jest/schemas": "^28.1.3", + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" } }, - "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "node_modules/jest-watch-typeahead/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watch-typeahead/node_modules/string-length": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", + "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" + "char-regex": "^2.0.0", + "strip-ansi": "^7.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "node_modules/jest-watch-typeahead/node_modules/string-length/node_modules/char-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", + "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==", "dev": true, "engines": { - "node": ">=6" + "node": ">=12.20" + } + }, + "node_modules/jest-watch-typeahead/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" }, - "peerDependencies": { - "jest-resolve": "*" + "engines": { + "node": ">=12" }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "node_modules/jest-watch-typeahead/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/jest-resolve": { + "node_modules/jest-watcher": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", + "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", "dev": true, "dependencies": { + "@jest/test-result": "^27.5.1", "@jest/types": "^27.5.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" + "string-length": "^4.0.1" }, "engines": { "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, - "node_modules/jest-resolve-dependencies": { + "node_modules/jest-worker": { "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 10.13.0" } }, - "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "has-flag": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" + "argparse": "^2.0.1" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", + "node_modules/jsdom": { + "version": "16.7.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", + "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", "dev": true, "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, - "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "node_modules/jsdom/node_modules/form-data": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.2.tgz", + "integrity": "sha512-sJe+TQb2vIaIyO783qN6BlMYWMw3WBOHA1Ay2qxsnjuafEOQFJ2JakedOQirT6D5XPRxDvS7AHYyem9fTpb4LQ==", "dev": true, "dependencies": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">= 6" } }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.6.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", - "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", - "dev": true, + "node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "bin": { - "semver": "bin/semver.js" + "jsesc": "bin/jsesc" }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=6" } }, - "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" + "universalify": "^2.0.0" }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/jest-watch-typeahead": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-1.1.0.tgz", - "integrity": "sha512-Va5nLSJTN7YFtC2jd+7wsoe1pNe5K4ShLux/E5iHEwlB9AxaxmggY7to9KUqKojhaJw3aXqt5WAb4jGPOolpEw==", + "node_modules/jsonpath": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz", + "integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==", "dev": true, "dependencies": { - "ansi-escapes": "^4.3.1", - "chalk": "^4.0.0", - "jest-regex-util": "^28.0.0", - "jest-watcher": "^28.0.0", - "slash": "^4.0.0", - "string-length": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "jest": "^27.0.0 || ^28.0.0" + "esprima": "1.2.2", + "static-eval": "2.0.2", + "underscore": "1.12.1" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/console": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-28.1.3.tgz", - "integrity": "sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==", + "node_modules/jsonpath/node_modules/esprima": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", + "integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==", "dev": true, - "dependencies": { - "@jest/types": "^28.1.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^28.1.3", - "jest-util": "^28.1.3", - "slash": "^3.0.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=0.4.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/console/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/jsonpointer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", + "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/test-result": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-28.1.3.tgz", - "integrity": "sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==", + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dev": true, "dependencies": { - "@jest/console": "^28.1.3", - "@jest/types": "^28.1.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=4.0" } }, - "node_modules/jest-watch-typeahead/node_modules/@jest/types": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-28.1.3.tgz", - "integrity": "sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "json-buffer": "3.0.1" } }, - "node_modules/jest-watch-typeahead/node_modules/@types/yargs": { - "version": "17.0.33", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", - "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, - "dependencies": { - "@types/yargs-parser": "*" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jest-watch-typeahead/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=6" } }, - "node_modules/jest-watch-typeahead/node_modules/emittery": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.10.2.tgz", - "integrity": "sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==", + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" + "node": ">= 8" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-message-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-28.1.3.tgz", - "integrity": "sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==", + "node_modules/language-subtag-registry": { + "version": "0.3.23", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", + "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", + "dev": true + }, + "node_modules/language-tags": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^28.1.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^28.1.3", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "language-subtag-registry": "^0.3.20" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=0.10" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-message-util/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/launch-editor": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.9.1.tgz", + "integrity": "sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-regex-util": { - "version": "28.0.2", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-28.0.2.tgz", - "integrity": "sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==", + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", "dev": true, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=6" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-util": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-28.1.3.tgz", - "integrity": "sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "@jest/types": "^28.1.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">= 0.8.0" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-28.1.3.tgz", - "integrity": "sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==", - "dev": true, + "node_modules/lexical": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/lexical/-/lexical-0.17.1.tgz", + "integrity": "sha512-72/MhR7jqmyqD10bmJw8gztlCm4KDDT+TPtU4elqXrEvHoO5XENi34YAEUD9gIkPfqSwyLa9mwAX1nKzIr5xEA==" + }, + "node_modules/lib0": { + "version": "0.2.98", + "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.98.tgz", + "integrity": "sha512-XteTiNO0qEXqqweWx+b21p/fBnNHUA1NwAtJNJek1oPrewEZs2uiT4gWivHKr9GqCjDPAhchz0UQO8NwU3bBNA==", + "peer": true, "dependencies": { - "@jest/test-result": "^28.1.3", - "@jest/types": "^28.1.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.10.2", - "jest-util": "^28.1.3", - "string-length": "^4.0.1" + "isomorphic.js": "^0.2.4" + }, + "bin": { + "0ecdsa-generate-keypair": "bin/0ecdsa-generate-keypair.js", + "0gentesthtml": "bin/gentesthtml.js", + "0serve": "bin/0serve.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=16" + }, + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, "engines": { "node": ">=10" } }, - "node_modules/jest-watch-typeahead/node_modules/jest-watcher/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, "engines": { - "node": ">=8" + "node": ">=6.11.5" } }, - "node_modules/jest-watch-typeahead/node_modules/pretty-format": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-28.1.3.tgz", - "integrity": "sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==", + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, "dependencies": { - "@jest/schemas": "^28.1.3", - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" + "node": ">=8.9.0" } }, - "node_modules/jest-watch-typeahead/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/localized-strings": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/localized-strings/-/localized-strings-0.2.4.tgz", + "integrity": "sha512-TKDhqFPkIIN/if2FSvVVZTaM/GP9TzfgdQ2uY65mr32xgFu5nqkKXprXbzy5rfx32DF5LDvS/y1UqYF/mAscYA==" }, - "node_modules/jest-watch-typeahead/node_modules/string-length": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", - "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "char-regex": "^2.0.0", - "strip-ansi": "^7.0.1" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=12.20" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watch-typeahead/node_modules/string-length/node_modules/char-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", - "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==", - "dev": true, - "engines": { - "node": ">=12.20" + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/jest-watch-typeahead/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, + "node_modules/loose-envify": { + "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": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" + "js-tokens": "^3.0.0 || ^4.0.0" }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "bin": { + "loose-envify": "cli.js" } }, - "node_modules/jest-watch-typeahead/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "dependencies": { + "tslib": "^2.0.3" } }, - "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "yallist": "^3.0.2" } }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/lz-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", + "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/magic-string": { + "version": "0.25.9", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", + "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": ">= 10.13.0" + "sourcemap-codec": "^1.4.8" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "pify": "^4.0.1", + "semver": "^5.6.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=6" } }, - "node_modules/jiti": { - "version": "1.21.6", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", - "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "node_modules/make-dir/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, "bin": { - "jiti": "bin/jiti.js" + "semver": "bin/semver" } }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "tmpl": "1.0.5" } }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } + "node_modules/markdown-table": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/jsdom/node_modules/form-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.2.tgz", - "integrity": "sha512-sJe+TQb2vIaIyO783qN6BlMYWMw3WBOHA1Ay2qxsnjuafEOQFJ2JakedOQirT6D5XPRxDvS7AHYyem9fTpb4LQ==", - "dev": true, + "node_modules/mdast-util-directive": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-directive/-/mdast-util-directive-3.0.0.tgz", + "integrity": "sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-visit-parents": "^6.0.0" }, - "engines": { - "node": ">= 6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsesc": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", - "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", - "bin": { - "jsesc": "bin/jsesc" + "node_modules/mdast-util-from-markdown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz", + "integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" - }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "bin": { - "json5": "lib/cli.js" + "node_modules/mdast-util-frontmatter": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz", + "integrity": "sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "escape-string-regexp": "^5.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "micromark-extension-frontmatter": "^2.0.0" }, - "engines": { - "node": ">=6" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" + "node_modules/mdast-util-frontmatter/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "engines": { + "node": ">=12" }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jsonpath": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jsonpath/-/jsonpath-1.1.1.tgz", - "integrity": "sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w==", - "dev": true, + "node_modules/mdast-util-gfm-strikethrough": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz", + "integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==", "dependencies": { - "esprima": "1.2.2", - "static-eval": "2.0.2", - "underscore": "1.12.1" + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsonpath/node_modules/esprima": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.2.tgz", - "integrity": "sha512-+JpPZam9w5DuJ3Q67SqsMGtiHKENSMRVoxvArfJZK01/BfLEObtZ6orJa/MtoGNR/rfMgp5837T41PAmTwAv/A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/mdast-util-gfm-table": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz", + "integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "markdown-table": "^3.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, - "engines": { - "node": ">=0.4.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsonpointer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", - "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/mdast-util-gfm-task-list-item": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz", + "integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/jsx-ast-utils": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", - "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", - "dev": true, + "node_modules/mdast-util-mdx": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz", + "integrity": "sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==", "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flat": "^1.3.1", - "object.assign": "^4.1.4", - "object.values": "^1.1.6" + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-mdx-expression": "^2.0.0", + "mdast-util-mdx-jsx": "^3.0.0", + "mdast-util-mdxjs-esm": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" }, - "engines": { - "node": ">=4.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, + "node_modules/mdast-util-mdx-expression": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", + "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", "dependencies": { - "json-buffer": "3.0.1" + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/mdast-util-mdx-jsx": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", + "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "devlop": "^1.1.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0", + "parse-entities": "^4.0.0", + "stringify-entities": "^4.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "engines": { - "node": ">=6" + "node_modules/mdast-util-mdxjs-esm": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz", + "integrity": "sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "devlop": "^1.0.0", + "mdast-util-from-markdown": "^2.0.0", + "mdast-util-to-markdown": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true, - "engines": { - "node": ">= 8" + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/language-subtag-registry": { - "version": "0.3.23", - "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", - "integrity": "sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==", - "dev": true - }, - "node_modules/language-tags": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", - "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", - "dev": true, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", "dependencies": { - "language-subtag-registry": "^0.3.20" + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" }, - "engines": { - "node": ">=0.10" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/launch-editor": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.9.1.tgz", - "integrity": "sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w==", - "dev": true, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dependencies": { - "picocolors": "^1.0.0", - "shell-quote": "^1.8.1" + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "node_modules/mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", "dev": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "fs-monkey": "^1.0.4" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 4.0.0" } }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "node_modules/memoize-one": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", + "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, "engines": { - "node": ">=6.11.5" + "node": ">= 8" } }, - "node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, "engines": { - "node": ">=8.9.0" + "node": ">= 0.6" } }, - "node_modules/localized-strings": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/localized-strings/-/localized-strings-0.2.4.tgz", - "integrity": "sha512-TKDhqFPkIIN/if2FSvVVZTaM/GP9TzfgdQ2uY65mr32xgFu5nqkKXprXbzy5rfx32DF5LDvS/y1UqYF/mAscYA==" - }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.1.tgz", + "integrity": "sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-extension-directive": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-3.0.2.tgz", + "integrity": "sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "parse-entities": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash-es": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "node_modules/micromark-extension-frontmatter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz", + "integrity": "sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==", + "dependencies": { + "fault": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + "node_modules/micromark-extension-gfm-strikethrough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + "node_modules/micromark-extension-gfm-table": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", + "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true + "node_modules/micromark-extension-gfm-task-list-item": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", + "dependencies": { + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "node_modules/micromark-extension-mdx-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.0.tgz", + "integrity": "sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } }, - "node_modules/lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", - "dev": true + "node_modules/micromark-extension-mdx-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", + "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", + "dependencies": { + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "micromark-factory-mdx-expression": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==" + "node_modules/micromark-extension-mdx-md": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz", + "integrity": "sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==", + "dependencies": { + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", - "dev": true + "node_modules/micromark-extension-mdxjs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz", + "integrity": "sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==", + "dependencies": { + "acorn": "^8.0.0", + "acorn-jsx": "^5.0.0", + "micromark-extension-mdx-expression": "^3.0.0", + "micromark-extension-mdx-jsx": "^3.0.0", + "micromark-extension-mdx-md": "^2.0.0", + "micromark-extension-mdxjs-esm": "^3.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-types": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "node_modules/micromark-extension-mdxjs-esm": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz", + "integrity": "sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==", "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" }, - "bin": { - "loose-envify": "cli.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/lower-case": { + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-mdx-expression": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.2.tgz", + "integrity": "sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "tslib": "^2.0.3" + "@types/estree": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" } }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "yallist": "^3.0.2" + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, + "node_modules/micromark-factory-title": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "sourcemap-codec": "^1.4.8" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/make-dir": { + "node_modules/micromark-factory-whitespace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/make-dir/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, + "node_modules/micromark-util-classify-character": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "tmpl": "1.0.5" + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "dev": true + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true, - "engines": { - "node": ">= 0.6" + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/memfs": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", - "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", - "dev": true, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "fs-monkey": "^1.0.4" - }, - "engines": { - "node": ">= 4.0.0" + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/memoize-one": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", - "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] }, - "node_modules/merge-descriptors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", - "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/micromark-util-events-to-acorn": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.2.tgz", + "integrity": "sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/acorn": "^4.0.0", + "@types/estree": "^1.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "vfile-message": "^4.0.0" + } + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/merge-stream": { + "node_modules/micromark-util-resolve-all": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true, - "engines": { - "node": ">= 0.6" + "node_modules/micromark-util-subtokenize": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.1.tgz", + "integrity": "sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, "node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", @@ -12942,6 +16083,11 @@ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, "node_modules/no-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", @@ -13262,6 +16408,11 @@ "node": ">= 0.8.0" } }, + "node_modules/outvariant": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.0.tgz", + "integrity": "sha512-AlWY719RF02ujitly7Kk/0QlV+pXGFDHrHf9O2OKqyqgBieaPOIeuSkL8sRK6j2WK+/ZAURq2kZsY0d8JapUiw==" + }, "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -13341,6 +16492,30 @@ "node": ">=6" } }, + "node_modules/parse-entities": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", + "integrity": "sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==", + "dependencies": { + "@types/unist": "^2.0.0", + "character-entities": "^2.0.0", + "character-entities-legacy": "^3.0.0", + "character-reference-invalid": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "is-alphanumerical": "^2.0.0", + "is-decimal": "^2.0.0", + "is-hexadecimal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-entities/node_modules/@types/unist": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==" + }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -15018,6 +18193,14 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "dev": true }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -15440,6 +18623,14 @@ "node": ">= 12.13.0" } }, + "node_modules/react-devtools-inline": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/react-devtools-inline/-/react-devtools-inline-4.4.0.tgz", + "integrity": "sha512-ES0GolSrKO8wsKbsEkVeiR/ZAaHQTY4zDh1UW8DImVmm8oaGLl3ijJDvSGe+qDRKPZdPRnDtWWnSvvrgxXdThQ==", + "dependencies": { + "es6-symbol": "^3" + } + }, "node_modules/react-dom": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", @@ -15452,6 +18643,21 @@ "react": "^18.3.1" } }, + "node_modules/react-error-boundary": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-3.1.4.tgz", + "integrity": "sha512-uM9uPzZJTF6wRQORmSrvOIgt4lJ9MC1sNgEOj2XGsDTRE4kmpWxg7ENK9EWNKJRMAOY9z0MuF4yIfl6gp4sotA==", + "dependencies": { + "@babel/runtime": "^7.12.5" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + }, + "peerDependencies": { + "react": ">=16.13.1" + } + }, "node_modules/react-error-overlay": { "version": "6.0.11", "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", @@ -15481,6 +18687,21 @@ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-4.0.3.tgz", "integrity": "sha512-QmpUu4KqDmX0plH4u+tf0riMc1KHE1+lw95cMrLlXQAFOx/xnBtwhZ52XJxd9X2O6kwKBqX32kmhbhlobD0cuw==" }, + "node_modules/react-hook-form": { + "version": "7.53.1", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.53.1.tgz", + "integrity": "sha512-6aiQeBda4zjcuaugWvim9WsGqisoUk+etmFEsSUMm451/Ic8L/UAb7sRtMj3V+Hdzm6mMjU1VhiSzYUZeBm0Vg==", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, "node_modules/react-infinite-scroller": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/react-infinite-scroller/-/react-infinite-scroller-1.2.6.tgz", @@ -15555,6 +18776,51 @@ "node": ">=0.10.0" } }, + "node_modules/react-remove-scroll": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.6.0.tgz", + "integrity": "sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ==", + "dependencies": { + "react-remove-scroll-bar": "^2.3.6", + "react-style-singleton": "^2.2.1", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.0", + "use-sidecar": "^1.1.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz", + "integrity": "sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==", + "dependencies": { + "react-style-singleton": "^2.2.1", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/react-router": { "version": "6.27.0", "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.27.0.tgz", @@ -15670,6 +18936,28 @@ "node": ">=10" } }, + "node_modules/react-style-singleton": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.1.tgz", + "integrity": "sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==", + "dependencies": { + "get-nonce": "^1.0.0", + "invariant": "^2.2.4", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/react-transition-group": { "version": "4.4.5", "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", @@ -16879,6 +20167,28 @@ "integrity": "sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==", "dev": true }, + "node_modules/static-browser-server": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/static-browser-server/-/static-browser-server-1.0.3.tgz", + "integrity": "sha512-ZUyfgGDdFRbZGGJQ1YhiM930Yczz5VlbJObrQLlk24+qNHVQx4OlLcYswEUo3bIyNAbQUIUR9Yr5/Hqjzqb4zA==", + "dependencies": { + "@open-draft/deferred-promise": "^2.1.0", + "dotenv": "^16.0.3", + "mime-db": "^1.52.0", + "outvariant": "^1.3.0" + } + }, + "node_modules/static-browser-server/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/static-eval": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/static-eval/-/static-eval-2.0.2.tgz", @@ -16989,6 +20299,11 @@ "node": ">= 0.8" } }, + "node_modules/strict-event-emitter": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/strict-event-emitter/-/strict-event-emitter-0.4.6.tgz", + "integrity": "sha512-12KWeb+wixJohmnwNFerbyiBrAlq5qJLwIt38etRtKtmmHyDSoGlIqFE9wx+4IwG0aDjI7GV8tc8ZccjWZZtTg==" + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -17155,6 +20470,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/stringify-object": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", @@ -17248,6 +20576,11 @@ "webpack": "^5.0.0" } }, + "node_modules/style-mod": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/style-mod/-/style-mod-4.1.2.tgz", + "integrity": "sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==" + }, "node_modules/styled-components": { "version": "5.3.11", "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.11.tgz", @@ -18046,6 +21379,11 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, + "node_modules/type": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", + "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==" + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -18276,6 +21614,14 @@ "node": ">=4" } }, + "node_modules/unidiff": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unidiff/-/unidiff-1.0.4.tgz", + "integrity": "sha512-ynU0vsAXw0ir8roa+xPCUHmnJ5goc5BTM2Kuc3IJd8UwgaeRs7VSD5+eeaQL+xp1JtB92hu/Zy/Lgy7RZcr1pQ==", + "dependencies": { + "diff": "^5.1.0" + } + }, "node_modules/unique-string": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", @@ -18288,6 +21634,69 @@ "node": ">=8" } }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz", + "integrity": "sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", @@ -18370,6 +21779,26 @@ "requires-port": "^1.0.0" } }, + "node_modules/use-callback-ref": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.2.tgz", + "integrity": "sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/use-memo-one": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/use-memo-one/-/use-memo-one-1.1.3.tgz", @@ -18378,6 +21807,27 @@ "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/use-sidecar": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.2.tgz", + "integrity": "sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "^16.9.0 || ^17.0.0 || ^18.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, "node_modules/use-sync-external-store": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", @@ -18479,6 +21929,19 @@ "node": ">= 0.8" } }, + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/w3c-hr-time": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", @@ -18489,6 +21952,11 @@ "browser-process-hrtime": "^1.0.0" } }, + "node_modules/w3c-keyname": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==" + }, "node_modules/w3c-xmlserializer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", @@ -19386,6 +22854,23 @@ "node": ">=10" } }, + "node_modules/yjs": { + "version": "13.6.20", + "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.20.tgz", + "integrity": "sha512-Z2YZI+SYqK7XdWlloI3lhMiKnCdFCVC4PchpdO+mCYwtiTwncjUbnRK9R1JmkNfdmHyDXuWN3ibJAt0wsqTbLQ==", + "peer": true, + "dependencies": { + "lib0": "^0.2.98" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=8.0.0" + }, + "funding": { + "type": "GitHub Sponsors ❤", + "url": "https://github.com/sponsors/dmonad" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -19419,6 +22904,15 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } } } } diff --git a/frontend/package.json b/frontend/package.json index 4d7117af3..044511a04 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -26,6 +26,7 @@ "@date-io/dayjs": "^2.16.0", "@emotion/react": "^11.10.8", "@emotion/styled": "^11.10.8", + "@mdxeditor/editor": "^3.14.0", "@microsoft/applicationinsights-clickanalytics-js": "^3.0.5", "@microsoft/applicationinsights-react-js": "^17.0.2", "@microsoft/applicationinsights-web": "^3.0.5", diff --git a/frontend/src/languages/english.js b/frontend/src/languages/english.js index 6b312d503..927455c17 100644 --- a/frontend/src/languages/english.js +++ b/frontend/src/languages/english.js @@ -280,7 +280,8 @@ const en = { project_thumbnail: "Thumbnail", project_title_description: "Name of the project", project_title: "Project title", - project_searchtext: "Search projects" + project_searchtext: "Search projects", + markdown: "Project description" }, subproject: { @@ -383,7 +384,8 @@ const en = { workflowitem_type_general: "Create a workflow action of type general.", workflowitem_type_restricted: "When assigning a restricted workflow action permissions are automatically granted and revoked. The assigner will only keep the view permissions.", - workflowitem_type: "Workflow action type" + workflowitem_type: "Workflow action type", + markdown: "Workflow action description" }, workflowTemplate: { diff --git a/frontend/src/languages/french.js b/frontend/src/languages/french.js index e10405c41..a5d255b32 100644 --- a/frontend/src/languages/french.js +++ b/frontend/src/languages/french.js @@ -198,7 +198,8 @@ const fr = { project_thumbnail: "Vignette", project_title_description: "Description du titre du projet", project_title: "Titre de projet", - project_searchtext: "Recherche de projets" + project_searchtext: "Recherche de projets", + markdown: "Commentaire sur le projet" }, subproject: { @@ -304,7 +305,8 @@ const fr = { workflowitem_type_general: "Créer une étape de workflow action de type général.", workflowitem_type_restricted: "Lors de l'attribution d'un workflow action restreint, les autorisations sont automatiquement accordées et révoquées. Le cédant ne conservera que les autorisations de visualisation", - workflowitem_type: "Type de l’étape de workflow action" + workflowitem_type: "Type de l’étape de workflow action", + markdown: "Description de l'action du workflow" }, workflowTemplate: { diff --git a/frontend/src/languages/georgian.js b/frontend/src/languages/georgian.js index e00e419c5..79cac3fd8 100644 --- a/frontend/src/languages/georgian.js +++ b/frontend/src/languages/georgian.js @@ -281,7 +281,8 @@ const ka = { project_thumbnail: "Thumbnail", project_title_description: "პროექტის სახელწოდება", project_title: "პროექტის სათაური", - project_searchtext: "პროექტების ძებნა" + project_searchtext: "პროექტების ძებნა", + markdown: "პროექტის აღწერა" }, subproject: { @@ -386,7 +387,8 @@ const ka = { workflowitem_type_general: "ზოგადი ტიპის სამუშაო ნაწილის შექმნა.", workflowitem_type_restricted: "შეზღუდული სამუშაო ნაკადის გადაცემისას ნებართვები ავტომატურად გაიცემა და გაუქმებულია. დავალება მხოლოდ შეინარჩუნებს ხედის ნებართვას.", - workflowitem_type: "Workflow action ტიპი" + workflowitem_type: "Workflow action ტიპი", + markdown: "აღწერა" }, workflowTemplate: { diff --git a/frontend/src/languages/german.js b/frontend/src/languages/german.js index d6f9dfa0f..2dcf71d14 100644 --- a/frontend/src/languages/german.js +++ b/frontend/src/languages/german.js @@ -196,7 +196,8 @@ const de = { project_thumbnail: "Thumbnail", project_title: "Projekt Titel", project_title_description: "Name des Projekts", - project_searchtext: "Projekte durchsuchen" + project_searchtext: "Projekte durchsuchen", + markdown: "Projektbeschreibung" }, subproject: { @@ -299,7 +300,8 @@ const de = { workflowitem_type_general: "Legen Sie ein Workflow-Item vom Typ 'general' an.", workflowitem_type_restricted: "Bei Zuweisung eines eingeschränkten Workflow-Items an einen anderen User werden Berechtigungen automatisch erteilt und entzogen. Der Zuweisende behält nur die Anzeigerechte.", - workflowitem_type: "Workflow action Typ" + workflowitem_type: "Workflow action Typ", + markdown: "Beschreibung der Workflow-Aktion" }, workflowTemplate: { diff --git a/frontend/src/languages/portuguese.js b/frontend/src/languages/portuguese.js index 54c2b5c91..cf6d94891 100644 --- a/frontend/src/languages/portuguese.js +++ b/frontend/src/languages/portuguese.js @@ -281,7 +281,8 @@ const pt = { project_thumbnail: "Miniatura", project_title_description: "Descrição do projeto", project_title: "Nome do projeto", - project_searchtext: "Pesquisar projectos" + project_searchtext: "Pesquisar projectos", + markdown: "Descrição do projeto" }, subproject: { @@ -386,7 +387,8 @@ const pt = { workflowitem_type_general: "Criar un item de workflow action do tipo general.", workflowitem_type_restricted: "Ao atribuir um fluxo de trabalho restrito, as permissões são automaticamente concedidas e revogadas. O cedente manterá apenas as permissões de visualização.", - workflowitem_type: "Categoria do item de workflow action" + workflowitem_type: "Categoria do item de workflow action", + markdown: "Descrição" }, workflowTemplate: { diff --git a/frontend/src/pages/Common/Identifier.js b/frontend/src/pages/Common/Identifier.js index ea4913a20..fb09cee6d 100644 --- a/frontend/src/pages/Common/Identifier.js +++ b/frontend/src/pages/Common/Identifier.js @@ -14,6 +14,7 @@ class Identifier extends Component { onChange={this.props.nameOnChange} data-test={this.props.commentId || "nameinput"} disabled={this.props.disabled} + maxLengthValue={90} />
); diff --git a/frontend/src/pages/Common/Markdown.js b/frontend/src/pages/Common/Markdown.js new file mode 100644 index 000000000..7d984aa82 --- /dev/null +++ b/frontend/src/pages/Common/Markdown.js @@ -0,0 +1,41 @@ +import React from "react"; +import { + BoldItalicUnderlineToggles, + CreateLink, + linkDialogPlugin, + linkPlugin, + listsPlugin, + ListsToggle, + MDXEditor, + toolbarPlugin, + UndoRedo +} from "@mdxeditor/editor"; + +import "@mdxeditor/editor/style.css"; + +const Markdown = ({ text, onChangeFunc }) => { + return ( + ( + <> + {" "} + + + + + + ) + }), + linkDialogPlugin(), + listsPlugin(), + linkPlugin() + ]} + /> + ); +}; + +export default Markdown; diff --git a/frontend/src/pages/Common/TextInput.js b/frontend/src/pages/Common/TextInput.js index 9feef7033..adc462f00 100644 --- a/frontend/src/pages/Common/TextInput.js +++ b/frontend/src/pages/Common/TextInput.js @@ -13,6 +13,7 @@ const TextInput = ({ multiline = false, disabled = false, id, + maxLengthValue, // eslint-disable-next-line no-useless-computed-key ["data-test"]: dataTest }) => ( @@ -30,6 +31,7 @@ const TextInput = ({ onBlur={onBlur} pattern={pattern} data-test={dataTest} + inputProps={{ maxLength: maxLengthValue }} /> ); diff --git a/frontend/src/pages/Main/Main.scss b/frontend/src/pages/Main/Main.scss index 1fd77b866..d953cb83d 100644 --- a/frontend/src/pages/Main/Main.scss +++ b/frontend/src/pages/Main/Main.scss @@ -23,3 +23,7 @@ width: 90%; } } + +.mdxeditor-popup-container { + z-index: 9000; +} diff --git a/frontend/src/pages/Overview/CardView.js b/frontend/src/pages/Overview/CardView.js index e00c30cae..acdc6399b 100644 --- a/frontend/src/pages/Overview/CardView.js +++ b/frontend/src/pages/Overview/CardView.js @@ -67,7 +67,8 @@ const getTableEntries = ({ creationUnixTs, projectedBudgets, additionalData, - tags + tags, + markdown = "" } = data; const budgets = ; const mappedStatus = strings.common.status + ": " + statusMapping(status); @@ -110,6 +111,7 @@ const getTableEntries = ({ tags={tags} imagePath={imagePath} searchTermArray={searchTermArray} + markdown={markdown} /> ); } else return null; diff --git a/frontend/src/pages/Overview/OverviewContainer.js b/frontend/src/pages/Overview/OverviewContainer.js index b3044167d..15939b4d7 100644 --- a/frontend/src/pages/Overview/OverviewContainer.js +++ b/frontend/src/pages/Overview/OverviewContainer.js @@ -94,8 +94,8 @@ const mapDispatchToProps = (dispatch) => { disableLiveUpdates: () => dispatch(disableAllProjectsLiveUpdates()), enableLiveUpdates: () => dispatch(enableAllProjectsLiveUpdates()), showCreationDialog: () => dispatch(showCreationDialog()), - showEditDialog: (id, displayName, description, thumbnail, projectedBudgets, tags) => - dispatch(showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags)), + showEditDialog: (id, displayName, description, thumbnail, projectedBudgets, tags, markdown) => + dispatch(showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags, markdown)), fetchAllProjects: (showLoading) => dispatch(fetchAllProjects(showLoading)), showProjectPermissions: (id, displayName) => dispatch(showProjectPermissions(id, displayName)), showProjectAdditionalData: (id) => dispatch(showProjectAdditionalData(id)), diff --git a/frontend/src/pages/Overview/ProjectCard.js b/frontend/src/pages/Overview/ProjectCard.js index e6f89a20e..e3f0f1aeb 100644 --- a/frontend/src/pages/Overview/ProjectCard.js +++ b/frontend/src/pages/Overview/ProjectCard.js @@ -50,7 +50,8 @@ const ProjectCard = ({ thumbnail, tags, imagePath, - searchTermArray + searchTermArray, + markdown }) => { const theme = useTheme(); const navigate = useNavigate(); @@ -150,7 +151,7 @@ const ProjectCard = ({ ariaLabel="show edit dialog" notVisible={!isOpen || editDisabled} onClick={() => { - showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags); + showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags, markdown); }} title={strings.common.edit} icon={} diff --git a/frontend/src/pages/Overview/ProjectDialog.js b/frontend/src/pages/Overview/ProjectDialog.js index 372b7c4c7..82626116b 100644 --- a/frontend/src/pages/Overview/ProjectDialog.js +++ b/frontend/src/pages/Overview/ProjectDialog.js @@ -38,7 +38,8 @@ const handleEdit = (props) => { thumbnail: changes.thumbnail, projectedBudgets: changes.projectedBudgets, additionalData: changes.additionalData, - tags: changes.tags + tags: changes.tags, + markdown: changes.markdown || "" }, changes.deletedProjectedBudgets ); diff --git a/frontend/src/pages/Overview/ProjectDialogContainer.js b/frontend/src/pages/Overview/ProjectDialogContainer.js index 508775d61..69894d342 100644 --- a/frontend/src/pages/Overview/ProjectDialogContainer.js +++ b/frontend/src/pages/Overview/ProjectDialogContainer.js @@ -18,6 +18,7 @@ import { setCurrentStep, storeDeletedProjectedBudget, storeProjectComment, + storeProjectMarkdown, storeProjectName, storeProjectThumbnail } from "./actions"; @@ -49,6 +50,7 @@ const mapDispatchToProps = (dispatch) => { hideProjectDialog: () => dispatch(hideProjectDialog()), storeProjectName: (name) => dispatch(storeProjectName(name)), storeProjectComment: (comment) => dispatch(storeProjectComment(comment)), + storeProjectMarkdown: (markdown) => dispatch(storeProjectMarkdown(markdown)), setCurrentStep: (step) => dispatch(setCurrentStep(step)), storeProjectThumbnail: (thumbnail) => dispatch(storeProjectThumbnail(thumbnail)), addProjectProjectedBudget: (projectedBudget) => dispatch(addProjectProjectedBudget(projectedBudget)), diff --git a/frontend/src/pages/Overview/ProjectDialogContent.js b/frontend/src/pages/Overview/ProjectDialogContent.js index 1aa753185..2064868cf 100644 --- a/frontend/src/pages/Overview/ProjectDialogContent.js +++ b/frontend/src/pages/Overview/ProjectDialogContent.js @@ -1,5 +1,6 @@ import React from "react"; +import { Typography } from "@mui/material"; import Divider from "@mui/material/Divider"; import { trimSpecialChars } from "../../helper"; @@ -7,6 +8,7 @@ import strings from "../../localizeStrings"; import Budget from "../Common/Budget"; import Identifier from "../Common/Identifier"; import ImageSelector from "../Common/ImageSelector"; +import Markdown from "../Common/Markdown"; import TagEditor from "../Common/TagEditor"; const ProjectDialogContent = (props) => { @@ -50,6 +52,11 @@ const ProjectDialogContent = (props) => { tagText={strings.common.add_tag_text} />
+ +
+ {strings.project.markdown} + +
); }; diff --git a/frontend/src/pages/Overview/TableView.js b/frontend/src/pages/Overview/TableView.js index 04ea57e19..cd8935682 100644 --- a/frontend/src/pages/Overview/TableView.js +++ b/frontend/src/pages/Overview/TableView.js @@ -92,7 +92,8 @@ const ProjectButtons = ({ project.description, project.thumbnail, project.projectedBudgets, - project.tags + project.tags, + project.markdown ); }} title={strings.common.edit} diff --git a/frontend/src/pages/Overview/actions.js b/frontend/src/pages/Overview/actions.js index 4eb1c361b..d735d26c2 100644 --- a/frontend/src/pages/Overview/actions.js +++ b/frontend/src/pages/Overview/actions.js @@ -25,6 +25,7 @@ export const ADD_PROJECT_PROJECTED_BUDGET = "ADD_PROJECT_PROJECTED_BUDGET"; export const EDIT_PROJECT_PROJECTED_BUDGET_AMOUNT = "EDIT_PROJECT_PROJECTED_BUDGET_AMOUNT"; export const PROJECT_DELETED_PROJECTED_BUDGET = "PROJECT_DELETED_PROJECTED_BUDGET"; export const PROJECT_COMMENT = "PROJECT_COMMENT"; +export const PROJECT_MARKDOWN = "PROJECT_MARKDOWN"; export const PROJECT_THUMBNAIL = "PROJECT_THUMBNAIL"; export const PROJECT_CREATION_STEP = "PROJECT_CREATION_STEP"; @@ -168,7 +169,7 @@ export function hideProjectDialog() { }; } -export function showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags) { +export function showEditDialog(id, displayName, description, thumbnail, projectedBudgets, tags, markdown) { return { type: SHOW_EDIT_DIALOG, id, @@ -176,7 +177,8 @@ export function showEditDialog(id, displayName, description, thumbnail, projecte description, thumbnail, projectedBudgets, - tags + tags, + markdown }; } @@ -216,6 +218,13 @@ export function storeProjectComment(comment) { }; } +export function storeProjectMarkdown(markdown) { + return { + type: PROJECT_MARKDOWN, + markdown + }; +} + export function storeProjectThumbnail(thumbnail) { return { type: PROJECT_THUMBNAIL, diff --git a/frontend/src/pages/Overview/reducer.js b/frontend/src/pages/Overview/reducer.js index 8d3d40981..51eae7d0c 100644 --- a/frontend/src/pages/Overview/reducer.js +++ b/frontend/src/pages/Overview/reducer.js @@ -29,6 +29,7 @@ import { PROJECT_COMMENT, PROJECT_CREATION_STEP, PROJECT_DELETED_PROJECTED_BUDGET, + PROJECT_MARKDOWN, PROJECT_NAME, PROJECT_THUMBNAIL, REMOVE_PROJECT_CUSTOM_IMAGE, @@ -67,7 +68,8 @@ export const defaultState = fromJS({ projectedBudgets: [], deletedProjectedBudgets: [], additionalData: {}, - tags: [] + tags: [], + markdown: "" }, idForPermissions: "", displayNameForPermissions: "", @@ -105,7 +107,8 @@ export default function overviewReducer(state = defaultState, action) { .set("description", action.description) .set("thumbnail", action.thumbnail) .set("projectedBudgets", fromJS(action.projectedBudgets)) - .set("tags", fromJS(action.tags)), + .set("tags", fromJS(action.tags)) + .set("markdown", action.markdown), currentStep: action.currentStep, editDialogShown: true }); @@ -198,6 +201,9 @@ export default function overviewReducer(state = defaultState, action) { } case PROJECT_COMMENT: return state.setIn(["projectToAdd", "description"], action.comment); + case PROJECT_MARKDOWN: { + return state.setIn(["projectToAdd", "markdown"], action.markdown); + } case ADD_PROJECT_TAG: { const tags = state.getIn(["projectToAdd", "tags"]) || []; if (!tags.some((tag) => tag === action.tag)) { @@ -241,8 +247,8 @@ export default function overviewReducer(state = defaultState, action) { } return state; case FETCH_COMPLETE_LIST_OF_PROJECTS_SUCCESS: - state = state.set("projectsAll", fromJS(action.projects)); - return state; + state = state.set("projectsAll", fromJS(action.projects)); + return state; case ADD_TEMPORARY_PROJECT_PERMISSION: return state.updateIn(["temporaryPermissions", action.permission], (users) => users.push(action.userId)); case REMOVE_TEMPORARY_PROJECT_PERMISSION: diff --git a/frontend/src/pages/Workflows/WorkflowContainer.js b/frontend/src/pages/Workflows/WorkflowContainer.js index 4b72e39de..38f65933e 100644 --- a/frontend/src/pages/Workflows/WorkflowContainer.js +++ b/frontend/src/pages/Workflows/WorkflowContainer.js @@ -239,7 +239,8 @@ const mapDispatchToProps = (dispatch, _ownProps) => { dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown ) => dispatch( showEditDialog( @@ -254,7 +255,8 @@ const mapDispatchToProps = (dispatch, _ownProps) => { dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown ) ), saveWorkflowItemsBeforeSort: (workflowItems) => dispatch(saveWorkflowItemsBeforeSort(workflowItems)), diff --git a/frontend/src/pages/Workflows/WorkflowDialogContainer.js b/frontend/src/pages/Workflows/WorkflowDialogContainer.js index eeba0f40e..11155e34c 100644 --- a/frontend/src/pages/Workflows/WorkflowDialogContainer.js +++ b/frontend/src/pages/Workflows/WorkflowDialogContainer.js @@ -31,6 +31,7 @@ import { storeWorkflowExchangeRate, storeWorkflowFundingOrga, storeWorkflowitemType, + storeWorkflowMarkdown, storeWorkflowName, storeWorkflowStatus, storeWorkflowTemplate @@ -183,6 +184,7 @@ const mapDispatchToProps = (dispatch) => { storeWorkflowitemType: (workflowitemType) => dispatch(storeWorkflowitemType(workflowitemType)), storeWorkflowTemplate: (workflowTemplate) => dispatch(storeWorkflowTemplate(workflowTemplate)), storeWorkflowFundingOrga: (fundingOrganization) => dispatch(storeWorkflowFundingOrga(fundingOrganization)), + storeWorkflowMarkdown: (markdown) => dispatch(storeWorkflowMarkdown(markdown)), hideWorkflowDialog: () => dispatch(hideWorkflowDialog()), setCurrentStep: (step) => dispatch(setCurrentStep(step)), storeSnackbarMessage: (message) => dispatch(storeSnackbarMessage(message)), diff --git a/frontend/src/pages/Workflows/WorkflowDialogContent.js b/frontend/src/pages/Workflows/WorkflowDialogContent.js index 37661feee..07e1e5a53 100644 --- a/frontend/src/pages/Workflows/WorkflowDialogContent.js +++ b/frontend/src/pages/Workflows/WorkflowDialogContent.js @@ -2,6 +2,7 @@ import React from "react"; import CancelIcon from "@mui/icons-material/Cancel"; import InfoOutlinedIcon from "@mui/icons-material/InfoOutlined"; +import { Typography } from "@mui/material"; import Divider from "@mui/material/Divider"; import IconButton from "@mui/material/IconButton"; import MenuItem from "@mui/material/MenuItem"; @@ -10,6 +11,7 @@ import Tooltip from "@mui/material/Tooltip"; import strings from "../../localizeStrings"; import DatePicker from "../Common/DatePicker"; import Identifier from "../Common/Identifier"; +import Markdown from "../Common/Markdown"; import Dropdown from "../Common/NewDropdown"; import SingleSelection from "../Common/SingleSelection"; import TagEditor from "../Common/TagEditor"; @@ -65,9 +67,11 @@ const WorkflowDialogContent = (props) => { storeWorkflowExchangeRate, storeWorkflowFundingOrga, defaultWorkflowExchangeRate, + storeWorkflowMarkdown, tags, projectedBudgets } = props; + console.log(workflowToAdd.markdown); const { workflowitemType } = workflowToAdd; const isWorkflowFromTemplate = !!workflowTemplate; @@ -197,6 +201,11 @@ const WorkflowDialogContent = (props) => { tagText={strings.workflow.add_tag_wfi_text} /> + +
+ {strings.workflow.markdown} + +
); }; diff --git a/frontend/src/pages/Workflows/WorkflowItem.js b/frontend/src/pages/Workflows/WorkflowItem.js index fb3848b33..aa0232685 100644 --- a/frontend/src/pages/Workflows/WorkflowItem.js +++ b/frontend/src/pages/Workflows/WorkflowItem.js @@ -125,7 +125,8 @@ const editWorkflow = ( dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown }, props ) => { @@ -145,7 +146,8 @@ const editWorkflow = ( dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown ); }; diff --git a/frontend/src/pages/Workflows/actions.js b/frontend/src/pages/Workflows/actions.js index 6db8c6791..d4dad0c0f 100644 --- a/frontend/src/pages/Workflows/actions.js +++ b/frontend/src/pages/Workflows/actions.js @@ -156,6 +156,8 @@ export const SEARCH_TAGS_WORKFLOWITEM = "SEARCH_TAGS_WORKFLOWITEM"; export const WORKFLOW_SEARCH_BAR_DISPLAYED = "WORKFLOW_SEARCH_BAR_DISPLAYED"; export const WORKFLOW_STORE_SEARCH_TERMS_AS_ARRAY = "WORKFLOW_STORE_SEARCH_TERMS_AS_ARRAY"; +export const WORKFLOW_MARKDOWN = "WORKFLOW_MARKDOWN"; + export function fetchAllSubprojectDetails(projectId, subprojectId, showLoading = false) { return { type: FETCH_ALL_SUBPROJECT_DETAILS, @@ -499,7 +501,8 @@ export function showEditDialog( dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown ) { return { type: SHOW_WORKFLOW_EDIT, @@ -514,7 +517,8 @@ export function showEditDialog( dueDate, workflowitemType, tags, - fundingOrganization + fundingOrganization, + markdown }; } @@ -950,3 +954,10 @@ export function storeWorkflowSearchTermArray(searchTerms) { searchTerms }; } + +export function storeWorkflowMarkdown(markdown) { + return { + type: WORKFLOW_MARKDOWN, + markdown + }; +} diff --git a/frontend/src/pages/Workflows/reducer.js b/frontend/src/pages/Workflows/reducer.js index 89b76203b..90958fc7c 100644 --- a/frontend/src/pages/Workflows/reducer.js +++ b/frontend/src/pages/Workflows/reducer.js @@ -82,6 +82,7 @@ import { WORKFLOW_DUEDATE, WORKFLOW_EXCHANGERATE, WORKFLOW_FUNDING_ORGANIZATION, + WORKFLOW_MARKDOWN, WORKFLOW_NAME, WORKFLOW_PURPOSE, WORKFLOW_SEARCH_BAR_DISPLAYED, @@ -123,7 +124,8 @@ const defaultState = fromJS({ workflowitemType: "general", assignee: "", tags: [], - fundingOrganization: "" + fundingOrganization: "", + markdown: "" }, showWorkflowPermissions: false, idsPermissionsUnassigned: [], @@ -233,7 +235,7 @@ export default function detailviewReducer(state = defaultState, action) { showDetails: false, showDetailsItem: defaultState.get("showDetailsItem") }); - case SHOW_WORKFLOW_EDIT: + case SHOW_WORKFLOW_EDIT: { return state.merge({ workflowToAdd: state .getIn(["workflowToAdd"]) @@ -248,10 +250,12 @@ export default function detailviewReducer(state = defaultState, action) { .set("dueDate", action.dueDate) .set("workflowitemType", action.workflowitemType) .set("tags", action.tags) - .set("fundingOrganization", action.fundingOrganization), + .set("fundingOrganization", action.fundingOrganization) + .set("markdown", action.markdown), editDialogShown: true, dialogTitle: strings.workflow.edit_item }); + } case ASSIGN_WORKFLOWITEM_SUCCESS: return state.updateIn(["submittedWorkflowItems"], (workflowitems) => [ ...workflowitems, @@ -356,6 +360,9 @@ export default function detailviewReducer(state = defaultState, action) { }); case WORKFLOW_STATUS: return state.setIn(["workflowToAdd", "status"], action.status); + case WORKFLOW_MARKDOWN: { + return state.setIn(["workflowToAdd", "markdown"], action.markdown); + } case WORKFLOW_DOCUMENT: return state.updateIn(["workflowToAdd", "documents"], (documents) => Immutable.List([ diff --git a/package-lock.json b/package-lock.json index f50cb9412..f47c3b843 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,8 @@ "@octokit/core": "^6.0.1", "danger": "^11.2.6", "dotenv": "^16.4.5", - "lodash": "^4.17.19" + "lodash": "^4.17.19", + "prettier": "^3.3.3" } }, "node_modules/@gitbeaker/core": { @@ -1679,6 +1680,21 @@ "integrity": "sha512-+04FTD9x7Cls2rihLlo57QDCcHoLBGn5Dk51SwtFBWkUWLxZaBXyNVpCw1S+atvE7GmnFjeaRZ0WLq3UYuqAdg==", "dev": true }, + "node_modules/prettier": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", + "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "dev": true, + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/prettyjson": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/prettyjson/-/prettyjson-1.2.5.tgz", diff --git a/package.json b/package.json index 9c0bacdf4..abbe62505 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@octokit/core": "^6.0.1", "danger": "^11.2.6", "dotenv": "^16.4.5", - "lodash": "^4.17.19" + "lodash": "^4.17.19", + "prettier": "^3.3.3" } } From ea216212b683032ddc3a928ff6f68458ddefa559 Mon Sep 17 00:00:00 2001 From: Peter Baus <11943691+galethil@users.noreply.github.com> Date: Tue, 19 Nov 2024 10:43:35 +0100 Subject: [PATCH 06/23] 2083 env vars generator (#2100) --- .gitignore | 1 + scripts/operation/.env.example | 63 ++-- scripts/operation/.test.env.bak | 0 scripts/operation/.test.env.example | 12 + scripts/operation/README.md | 2 +- scripts/operation/env-vars-generator.sh | 377 ++++++++++++++++++++++++ 6 files changed, 422 insertions(+), 33 deletions(-) create mode 100644 scripts/operation/.test.env.bak create mode 100644 scripts/operation/.test.env.example create mode 100644 scripts/operation/env-vars-generator.sh diff --git a/.gitignore b/.gitignore index 5051bec86..f0b0213cc 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ scripts/operation/.env docs/developer/api-docs scripts/development/.env.bak scripts/operation/.env.bak +scripts/operation/.env.file.bak scripts/operation/cronjob.err scripts/operation/cronjob.output api/src/trubudget-config/upgrade_version.txt diff --git a/scripts/operation/.env.example b/scripts/operation/.env.example index 4063135c3..3d970a2f3 100644 --- a/scripts/operation/.env.example +++ b/scripts/operation/.env.example @@ -1,25 +1,34 @@ # This file contains the environmental vars for the operational setup -### TODO remove duplicates! redefinitions are mistakes # Service enabling variables - DO NOT CHANGE (handled by start-trubudget.sh) -MULTICHAIN_FEED_ENABLED=true -EMAIL_SERVICE_ENABLED=true -REACT_APP_EMAIL_SERVICE_ENABLED=true -DOCUMENT_FEATURE_ENABLED=true -REACT_APP_EXPORT_SERVICE_ENABLED=true -REACT_APP_LOGGING=false +REACT_APP_LOGGING=false # DO NOT CHANGE +MULTICHAIN_FEED_ENABLED=true # DO NOT CHANGE +EMAIL_SERVICE_ENABLED=true # DO NOT CHANGE +REACT_APP_EMAIL_SERVICE_ENABLED=true # DO NOT CHANGE +DOCUMENT_FEATURE_ENABLED=true # DO NOT CHANGE +REACT_APP_EXPORT_SERVICE_ENABLED=true # DO NOT CHANGE # Settings variables - Change as you want to -## Beta organization variables +BETA_ENABLED=false # Do you want to enable the beta organization? +EMAIL_ENABLED=true # Do you want to enable the email service? +EXCEL_ENABLED=true # Do you want to enable the excel export service? +STORAGE_ENABLED=true # Do you want to enable the storage service? + +# MODULE: Beta organization variables, REQUIRES: BETA_ENABLED=true BETA_API_PORT=8081 -BETA_ORGANIZATION=MyBetaOrganization +BETA_ORGANIZATION=MyBetaOrganization # This is a comment BETA_ORGANIZATION_VAULT_SECRET=newSecret BETA_MULTICHAIN_RPC_PORT=8001 EXTERNAL_IP="" +# END MODULE -## Email relevant variables -EMAIL_PORT=8890 +# Shared variables +ACCESS_CONTROL_ALLOW_ORIGIN="*" +NODE_ENV=production +ORGANIZATION=KfW + +# MODULE: Use of database for email service or storing refresh token DB_TYPE=pg DB_NAME=trubudget_email_service DB_USER=postgres @@ -34,6 +43,9 @@ POSTGRES_PASSWORD=test POSTGRES_PORT=5432 POSTGRES_DB=trubudget_email_service SQL_DEBUG=false +# END MODULE + +# MODULE: Email servise variables, REQUIRES: EMAIL_ENABLED=true USER_TABLE=users SMTP_HOST=host.docker.internal SMTP_PORT=2500 @@ -43,14 +55,13 @@ EMAIL_FROM='"Trubudget Notification Service" ' EMAIL_SUBJECT="Trubudget Notificaiton" EMAIL_TEXT="You have received a notification." AUTHENTICATION=none -ACCESS_CONTROL_ALLOW_ORIGIN=* EMAIL_LOG_LEVEL=info #AUTHENTICATION=JWT +# END MODULE -## storage +# MODULE: Storage service variables, REQUIRES: STORAGE_ENABLED=true STORAGE_SERVICE_HOST=localhost STORAGE_SERVICE_PORT=8090 -ACCESS_CONTROL_ALLOW_ORIGIN="*" STORAGE_SERVICE_EXTERNAL_URL=localhost STORAGE_LOG_LEVEL=info @@ -60,25 +71,22 @@ MINIO_SECRET_KEY=minio123 MINIO_PORT=9000 MINIO_HOST=localhost MINIO_BUCKET_NAME=trubudget +# END MODULE -## provisioning -ORGANIZATION=KfW -API_PORT=8080 -API_HOST=localhost +# MODULE: provisioning PROVISIONING_LOG_LEVEL=info PROVISIONING_TYPE=TEST #other provisioning data #PROVISIONING_TYPE=PROD +# END MODULE ## blockchain -ORGANIZATION=KfW MULTICHAIN_RPC_PORT=8000 BLOCKCHAIN_PORT=8085 MULTICHAIN_RPC_PASSWORD=s750SiJnj50yIrmwxPnEdSzpfGlTAHzhaUwgqKeb0G1j API_PORT=8080 API_HOST=localhost BLOCKCHAIN_LOG_LEVEL=info -NODE_ENV=production # Needs to be enabled when mutual authentication is required between beta and alpha nodes AUTOSTART=true # Needs to be enabled when mutual authentication is required between slave and master nodes @@ -87,16 +95,10 @@ AUTOSTART=true #CERT_KEY_PATH="" ## API -ORGANIZATION=KfW ORGANIZATION_VAULT_SECRET= MULTICHAIN_RPC_HOST=127.0.0.1 -MULTICHAIN_RPC_PORT=8000 -BLOCKCHAIN_PORT=8085 -MULTICHAIN_RPC_PASSWORD=s750SiJnj50yIrmwxPnEdSzpfGlTAHzhaUwgqKeb0G1j MULTICHAIN_DIR="/root" ROOT_SECRET=root-secret -NODE_ENV=development -ACCESS_CONTROL_ALLOW_ORIGIN=* #ENCRYPTION_PASSWORD=MyPassword SIGNING_METHOD=node API_LOG_LEVEL=info @@ -114,7 +116,6 @@ API_DB_SCHEMA=public API_REFRESH_TOKENS_TABLE=refresh_token ## frontend -NODE_ENV=development REACT_APP_VERSION=$npm_package_version EXPORT_HOST=excel-export-service EXPORT_PORT=8888 @@ -133,14 +134,12 @@ REACT_APP_EXPORT_SERVICE_ADDITIONAL_NGINX_CONF="" REACT_APP_STORAGE_SERVICE_ADDITIONAL_NGINX_CONF="" AUTHPROXY_ENABLED=false -## excel-export -ACCESS_CONTROL_ALLOW_ORIGIN=* +# MODULE: Module excel-export, REQUIRES: EXCEL_ENABLED=true EXCEL_LOG_LEVEL=info +# END MODULE ##logging LOGGER_PORT=3001 -API_HOST=localhost -API_PORT=8080 LOG_LEVEL=trace LOGGING_SERVICE_CACHE_DURATION=20 LOGGING_SERVICE_NODE_ENV=development @@ -152,4 +151,4 @@ PRETTY_PRINT=true ## TAG=latest: Only releases ## TAG=main: Current main (may have unfixed bugs) ## TAG=v1.0.0: Specific release version -TAG=latest +TAG=latest # Choose between latest, main, or a specific version, e.g., v2.10.0 diff --git a/scripts/operation/.test.env.bak b/scripts/operation/.test.env.bak new file mode 100644 index 000000000..e69de29bb diff --git a/scripts/operation/.test.env.example b/scripts/operation/.test.env.example new file mode 100644 index 000000000..95f7f34ee --- /dev/null +++ b/scripts/operation/.test.env.example @@ -0,0 +1,12 @@ +# MODULE: DATABASE +DB_HOST=127 +DB_USER= +DB_PASSWORD= + +# MODULE: REDIS +REDIS_HOST= +REDIS_PORT= + +# MODULE: FEATURE_X +FEATURE_X_ENABLED= +FEATURE_X_SECRET_KEY= diff --git a/scripts/operation/README.md b/scripts/operation/README.md index 6860533f1..a041f0774 100644 --- a/scripts/operation/README.md +++ b/scripts/operation/README.md @@ -6,7 +6,7 @@ This setup helps operation teams to setup TruBudget in an easy way with a pre-co To setup TruBudget, you need to install [Docker](https://www.docker.com/community-edition#/download) (version 20.10.7 or higher) and [Docker Compose](https://docs.docker.com/compose/install/) (version 1.29.2 or higher). If you use Docker Desktop, you need to expose a shared folder for `/alphaNode` in `Preferences/Resources/File Sharing` in order to store the local blockchain. -First, to make sure the `.env` file is set, run `cp env.example .env` +First, to make sure the `.env` file is set, run `bash env-vars-generator.sh` that will guid you through variables creation. Alternatively you can run `cp env.example .env` and copy example file and then manually update `.env` file. To start the slim setup (only blockchain, api, frontend), run `bash start-trubudget.sh` or `bash start-trubudget.sh --slim`. diff --git a/scripts/operation/env-vars-generator.sh b/scripts/operation/env-vars-generator.sh new file mode 100644 index 000000000..1bb8385c0 --- /dev/null +++ b/scripts/operation/env-vars-generator.sh @@ -0,0 +1,377 @@ +#!/bin/bash + +# Input paths for the .env files +ENV_FILE=".env" +ENV_EXAMPLE_FILE=".env.example" + +escape_char=$(printf "\x1b") + +# Check if this is the git main branch +if [[ $(git rev-parse --abbrev-ref HEAD) != "main" ]]; then + echo "Error: Please run this script on the main branch." + echo "Run 'git checkout main' to switch to the main branch." + exit 1 +fi +# Check if script is on latest commit +git fetch +if [[ $(git rev-parse HEAD) != $(git rev-parse @{u}) ]]; then + echo "Error: Please run this script on the latest commit." + echo "Run 'git pull' to update your local repository." + exit 1 +fi + +# Check if .env.example exists +if [[ ! -f "$ENV_EXAMPLE_FILE" ]]; then + echo "Error: $ENV_EXAMPLE_FILE not found!" + exit 1 +fi + +# Backup the existing .env file if it exists +if [[ -f "$ENV_FILE" ]]; then + cp "$ENV_FILE" "$ENV_FILE.file.bak" + echo "Existing $ENV_FILE backed up as $ENV_FILE.file.bak" +fi + +# RUN VALIDATIONS + +# Find broken lines in .env file +if grep -q $'\r' "$ENV_FILE"; then + echo "Error: $ENV_FILE contains Windows-style line endings. Please convert to Unix-style line endings." + exit 1 +fi +# Find lines that doen't match the pattern in .env file +if grep -q -v -E '^[A-Za-z_][A-Za-z0-9_]*=|^#|^$' "$ENV_FILE"; then + # Print the error message and include also the broken line(s) and exit + echo "Error: $ENV_FILE contains lines that do not match the pattern 'KEY=value', comments, or blank lines. + Please fix or remove the following line(s):" + grep -v -E '^[A-Za-z_][A-Za-z0-9_]*=|^#|^$' "$ENV_FILE" + exit 1 +fi +# Find the duplicates variables in .env file +duplicate_present=false +while read -r var; do + if [[ -z "$var" ]]; then + continue + fi + duplicate_present=true + echo "Error: $ENV_FILE contains duplicate variable(s) '$var'. Please remove the duplicate(s)." +done <<< $(awk -F '=' '{if ($1 != "" && $1 !~ /^#/) print $1}' "$ENV_FILE" | sort | uniq -d) + +if [[ $duplicate_present == true ]]; then + exit 1 +fi + +read_value_from_env_example_file() { + # Read the value of the variable from the .env file + var_name=$1 + # extract everything after variable name plus equal sign + var_value=$(grep "^${var_name}=" "$ENV_EXAMPLE_FILE" | sed -E 's/^[^=]+=(.*)/\1/') + + # If the value is wrapped in double quotes + if [[ $var_value =~ ^\".*$ ]]; then + everything_after_first_character=$(echo "$var_value" | sed 's/^.\(.*\)$/\1/') + # extract everything before first quote using negative lookahead + everything_before_first_quote=$(echo "$everything_after_first_character" | perl -pe 's/(.*?[^\\])".*/\1/') + var_value=$(echo "$everything_before_first_quote") + else + everything_before_first_whitespace_character=$(echo "$var_value" | sed 's/^\([^ ]*\).*/\1/') + var_value=$(echo "$everything_before_first_whitespace_character") + fi + + # In case of empty value there is one quote in var_value, return empty string + if [[ $var_value == "\"" ]]; then + var_value="" + fi + echo "$var_value" +} + +read_comment_from_env_example_file() { + # Read the value of the variable from the .env file + var_name=$1 + # extract everything after variable name plus equal sign + var_with_comment_value=$(grep "^${var_name}=" "$ENV_EXAMPLE_FILE" | sed -E 's/^[^=]+=(.*)/\1/') + var_value=$(read_value_from_env_example_file $var_name) + var_value_length=${#var_value} + + # If the value is wrapped in double quotes + if [[ $var_with_comment_value =~ ^\".*$ ]]; then + var_value_length=$(($var_value_length + 2)) + # cut the comment based on var_value length + comment="${var_with_comment_value:$var_value_length}" + else + comment="${var_with_comment_value:$var_value_length}" + fi + comment="${comment#"${comment%%[![:space:]]*}"}" # Remove leading whitespace + comment="${comment%"${comment##*[![:space:]]}"}" # Remove trailing whitespace + + echo "$comment" +} + +read_value_from_env_file() { + # Read the value of the variable from the .env file + var_name=$1 + is_silent=$2 + var_value=$(grep "^${var_name}=" "$ENV_FILE" | sed -E 's/^[^=]+=(.*)/\1/') + + # if value is not found in the .env file, return 0 + if [[ -z "$var_value" ]]; then + return 0 + fi + + # In case of empty value there is one quote in var_value, return empty string + if [[ $var_value == "\"\"" || $var_value == "" ]]; then + var_value="" + + # If the value is wrapped in double quotes + elif [[ $var_value =~ ^\".*$ ]]; then + everything_after_first_character=$(echo "$var_value" | sed 's/^.\(.*\)$/\1/') + # extract everything before first quote using negative lookahead + everything_before_first_quote=$(echo "$everything_after_first_character" | perl -pe 's/(.*?[^\\])".*/\1/') + var_value=$(echo "$everything_before_first_quote") + else + everything_before_first_whitespace_character=$(echo "$var_value" | sed 's/^\([^ ]*\).*/\1/') + var_value=$(echo "$everything_before_first_whitespace_character") + fi + + if [[ $is_silent != "silent" ]]; then + echo "$var_value" + fi + + return 1 +} + +read_commented_value_from_env_file() { + # Read the value of the variable from the .env file + var_name=$1 + + var_value=$(grep "^#\s*${var_name}=" "$ENV_FILE" | perl -pe 's/^#\s*[^=]+=(.*)/\1/') + + if [[ $var_value == "\"\"" || $var_value == "" ]]; then + var_value="" + # If the value is wrapped in double quotes + elif [[ $var_value =~ ^\".*$ ]]; then + everything_after_first_character=$(echo "$var_value" | sed 's/^.\(.*\)$/\1/') + # extract everything before first quote using negative lookahead + everything_before_first_quote=$(echo "$everything_after_first_character" | perl -pe 's/(.*?[^\\])".*/\1/') + var_value=$(echo "$everything_before_first_quote") + else + everything_before_first_whitespace_character=$(echo "$var_value" | sed 's/^\([^ ]*\).*/\1/') + var_value=$(echo "$everything_before_first_whitespace_character") + fi + + echo "$var_value" +} + +handle_input() { + read -rsn1 char # get 1 character + if [[ $char == $escape_char ]]; then + read -rsn2 char # read 2 more chars + fi +} + +# Helper function to prompt for a yes/no response +ask_yes_no() { + + echo "$1 (Y/n): " + read -rsn1 response + case "$response" in + 'y') + return 0 ;; + 'n') + return 1 ;; + * ) echo "Please answer Y or n." ;; + esac + +} + +# if .env file doesn't exists, create it +if [[ ! -f "$ENV_FILE" ]]; then + touch "$ENV_FILE" +fi + +# Process each module in .env.example +current_module="-" + +declare -a arr +# read the file line by line and fill the array +while IFS= read -r line; do + arr=("${arr[@]}" "$line") +done < "$ENV_EXAMPLE_FILE" + +declare -a delta_arr +ALL_VARIABLES_SET_IN_ENV_FILE=true +echo "" +echo "Wait a moment while we valiate the .env file..." +# check if every variable from .env.example is set in .env file +for i in "${arr[@]}"; do + # Trim leading and trailing whitespace + line=$(echo "$i") + line="${line#"${line%%[![:space:]]*}"}" # Remove leading whitespace + line="${line%"${line##*[![:space:]]}"}" # Remove trailing whitespace + + if [[ $line =~ ^[A-Za-z_][A-Za-z0-9_]*= ]]; then + var_name=$(echo "$line" | cut -d '=' -f 1) + + if read_value_from_env_file $var_name "silent"; then + ALL_VARIABLES_SET_IN_ENV_FILE=false + echo "Variable $var_name is not set in $ENV_FILE." + delta_arr=("${delta_arr[@]}" "$line") + fi + fi +done + +# if not all variables are set, ask if the user wants to configure only the delta variables +if [[ $ALL_VARIABLES_SET_IN_ENV_FILE == false ]]; then + echo "" + if ask_yes_no "Not all variables are set in $ENV_FILE. Would you like to configure only the missing variables?"; then + echo "Configuring only the missing variables..." + echo "" + arr=("${delta_arr[@]}") + else + echo "Configuring all variables..." + echo "" + fi +fi + + +previous_variable="" +previous_adding_new_line=false +# loop the array of variables from .env.example +for i in "${arr[@]}"; do + # Trim leading and trailing whitespace + line=$(echo "$i") + line="${line#"${line%%[![:space:]]*}"}" # Remove leading whitespace + line="${line%"${line##*[![:space:]]}"}" # Remove trailing whitespace + + # Detect module sections with "# MODULE: " + if [[ $line =~ ^#\ MODULE:\ (.*) ]]; then + current_module="${BASH_REMATCH[1]}" + + # Check if module line includes a REQUIRES condition + if [[ $line =~ REQUIRES:\ (.*) ]]; then + requires="${BASH_REMATCH[1]}" + # Check if all required variables are set to match the condition + all_set=true + for var in $(echo $requires | tr "," "\n"); do + # Extract the variable name and value and trim leading/trailing whitespace + required_var_name=$(echo "$var" | cut -d '=' -f 1) + required_var_value=$(echo "$var" | cut -d '=' -f 2) + + if [[ $(read_value_from_env_file $required_var_name) != "$required_var_value" ]]; then + all_set=false + break + fi + done + if [[ $all_set == false ]]; then + echo "Skipping $current_module because not all required variables are set: $requires" + current_module="" + fi + + # Ask if the user wants to configure this module + elif ask_yes_no "Would you like to configure $current_module?"; then + echo "Configuring $current_module..." + else + current_module="" + fi + + # Add the module line to the .env file + if [[ $previous_adding_new_line == true ]]; then + echo "$line" >> "$ENV_FILE" + previous_adding_new_line=true + fi + + + elif [[ $line =~ ^#\ END\ MODULE(.*) ]]; then + current_module="-" + + if [[ $previous_adding_new_line == true ]]; then + echo "$line" >> "$ENV_FILE" + previous_adding_new_line=true + fi + + # Process variable lines if in an active module + elif [[ -n "$current_module" && $line =~ ^[A-Za-z_][A-Za-z0-9_]*= ]]; then + # Extract the variable name + var_name=$(echo "$line" | cut -d '=' -f 1) + default_var_value=$(read_value_from_env_example_file $var_name) + comment=$(read_comment_from_env_example_file $var_name) + + # find if there is a variable defined in the current .env file + if ! read_value_from_env_file $var_name "silent"; then + # get the value of the variable + + default_var_value=$(read_value_from_env_file $var_name) + + # find if there is a variable defined in the current .env file in commented line + elif [[ -n $(read_commented_value_from_env_file $var_name) ]]; then + # get the value of the variable + default_var_value=$(read_commented_value_from_env_file $var_name) + fi + + # If comment includes the "DO NOT CHANGE" string, skip the variable + if [[ $comment =~ DO\ NOT\ CHANGE ]]; then + echo "Skipping $var_name because it should not be changed." + var_value="$default_var_value" + else + + # Prompt for the value of the variable + echo "" + echo $comment + read -r -p "Enter value for $var_name [$default_var_value]: " var_value + var_value=${var_value:-$default_var_value} + fi + + # Determine of variable is number or boolean + if [[ $var_value =~ ^[0-9]+$ ]]; then + var_value="$var_value" + elif [[ $var_value =~ ^true$|^false$ ]]; then + var_value="$var_value" + else + var_value="\"$var_value\"" + fi + + # escape backslashes + var_value=$(echo "$var_value" | sed 's/\\/\\\\/g') + + # check if the line exists in the .env file + if grep -q "^${var_name}=.*" "$ENV_FILE"; then + # replace the line + sed -i '' "s/^${var_name}=.*/${var_name}=${var_value}/" "$ENV_FILE" + previous_adding_new_line=false + else + # append the line + if [[ -n "$previous_variable" ]]; then + # insert the line after the previous variable + sed -i.temp "/^${previous_variable}=.*/a\\ +${var_name}=${var_value} +" "$ENV_FILE" && rm "${ENV_FILE}.temp" + previous_adding_new_line=true + else + echo "${var_name}=${var_value}" >> "$ENV_FILE" + previous_adding_new_line=true + fi + fi + + previous_variable=$var_name + + # Output non-module lines directly (e.g., comments) + elif [[ $line =~ ^#[^=]*$ ]]; then + echo "$line" + + # Blank lines + elif [[ $line =~ ^$ ]]; then + echo "" + else + var_name=$(echo "$line" | cut -d '=' -f 1) + # Comment out variable in the skipped module + if grep -q "^${var_name}=.*" "$ENV_FILE"; then + # replace the line + echo "Commenting line: $line" + sed -i '' "s/^${var_name}=/#${var_name}=/" "$ENV_FILE" + previous_adding_new_line=false + fi + fi +done + + +echo ".env file created/updated based on $ENV_EXAMPLE_FILE." From 2a5fef43bad81d005d4ea56dced45508b3eba3a3 Mon Sep 17 00:00:00 2001 From: Peter Molnar Date: Thu, 21 Nov 2024 13:06:10 +0100 Subject: [PATCH 07/23] refactor workflow action styles --- frontend/src/languages/georgian.js | 4 +- frontend/src/pages/Workflows/WorkflowItem.js | 56 +++++++++---------- .../src/pages/Workflows/WorkflowItem.scss | 46 ++------------- .../src/pages/Workflows/WorkflowList.scss | 2 +- 4 files changed, 32 insertions(+), 76 deletions(-) diff --git a/frontend/src/languages/georgian.js b/frontend/src/languages/georgian.js index 79cac3fd8..bf5a7d098 100644 --- a/frontend/src/languages/georgian.js +++ b/frontend/src/languages/georgian.js @@ -23,7 +23,7 @@ const ka = { approver: "Approver", assign: "assign", assigned_budget: "გამოყოფილი ბიუჯეტი", - assigned: "Assigned", + assigned: "მინიჭებული", assignees: "Assignee(s)", back: "უკან დაბრუნება", backToLogin: "უკან შესვლა", @@ -332,7 +332,7 @@ const ka = { workflow_budget_allocated: "გამოყოფილი", workflow_budget_disbursed: "გადახდილი", workflow_budget_na: "არ მიესადაგება", - workflow_budget_status_allocated: "Assigned", + workflow_budget_status_allocated: "მინიჭებული", workflow_budget_status_disbursed: "გადახდილი", workflow_budget_status_na: "N/A", workflow_budget: "ბიუჯეტის თანხა", diff --git a/frontend/src/pages/Workflows/WorkflowItem.js b/frontend/src/pages/Workflows/WorkflowItem.js index aa0232685..ff4519227 100644 --- a/frontend/src/pages/Workflows/WorkflowItem.js +++ b/frontend/src/pages/Workflows/WorkflowItem.js @@ -35,16 +35,6 @@ import WorkflowAssigneeContainer from "./WorkflowAssigneeContainer.js"; import "./WorkflowItem.scss"; -const createLine = (isFirst, selectable) => { - let className = ""; - if (isFirst && selectable) { - className = "first-line"; - } else { - className = selectable ? "line" : "line not-selectable"; - } - return
; -}; - const StepDot = (props) => { const { sortEnabled, @@ -83,13 +73,11 @@ const StepDot = (props) => { } }; return isWorkflowItemSelectable(redacted, sortEnabled, allowedIntents) ? ( -
- item.data.id === currentWorkflowItem.data.id)} - data-test="check-workflowitem" - /> -
+ item.data.id === currentWorkflowItem.data.id)} + data-test="check-workflowitem" + /> ) : ( @@ -236,7 +224,13 @@ const getAmountField = (amount, type, exchangeRate, sourceCurrency, targetCurren
) : null}
- +
); @@ -444,17 +438,6 @@ export const WorkflowItem = ({ }} className="container-item" > - {createLine(mapIndex === 0, workflowSelectable)} -
+
+ +
{infoButton}
{attachmentButton}
@@ -588,8 +583,6 @@ export const RedactedWorkflowItem = ({ }} className="container-item" > - {createLine(mapIndex === 0, workflowSelectable)} -
+
diff --git a/frontend/src/pages/Workflows/WorkflowItem.scss b/frontend/src/pages/Workflows/WorkflowItem.scss index ad6dd85db..b9a08753b 100644 --- a/frontend/src/pages/Workflows/WorkflowItem.scss +++ b/frontend/src/pages/Workflows/WorkflowItem.scss @@ -14,23 +14,8 @@ height: 1.25rem; width: 1.25rem; text-align: center; - display: inline-block; - position: absolute; - z-index: 20; - top: 21px; - left: 16px; - border-radius: 10px; -} - -.workflow-checkbox { - height: 1.25rem; - width: 1.25rem; - text-align: center; - display: inline-block; - position: absolute; - top: 8px; - left: 5px; border-radius: 10px; + margin-left: 0.7rem; } .workflow-item-actions { @@ -43,34 +28,10 @@ width: 25%; } -.line { - position: absolute; - border-left: 2px solid black; - height: 100%; - left: 25px; - bottom: 35px; - &.not-selectable { - opacity: 0.2; - } -} - -.first-line { - position: absolute; - border-left: 2px solid black; - height: 2.3rem; - left: 25px; - bottom: 35px; -} - .button-style { min-width: 1.875rem; margin-left: 0.3rem; } - -.amount-chip { - margin-left: 1rem; -} - .tag-chip { color: var(--mui-palette-tag-main); } @@ -100,7 +61,7 @@ display: flex; justify-content: space-between; overflow: hidden; - padding: 0.25rem 0.5rem 0.25rem 0.25rem; + padding: 0.3rem; } .info-cell { @@ -177,7 +138,7 @@ } .workflow-item-card { - margin-left: 3rem; + margin-left: 0.625rem; margin-right: 0.625rem; &.green { background-color: #f1f8e9; @@ -209,6 +170,7 @@ .amount-field-container { display: flex; + flex-direction: column; } .amount-field { diff --git a/frontend/src/pages/Workflows/WorkflowList.scss b/frontend/src/pages/Workflows/WorkflowList.scss index 6dc093113..27d0e112d 100644 --- a/frontend/src/pages/Workflows/WorkflowList.scss +++ b/frontend/src/pages/Workflows/WorkflowList.scss @@ -1,7 +1,7 @@ .edit-button-container { position: absolute; top: 160px; - left: 7px; + left: 17px; @media screen and (min-width: 768px) and (max-width: 900px) { top: 210px; } From 8897fd5a7a6011b31a3fd53464facd4600f6f512 Mon Sep 17 00:00:00 2001 From: Samuel Pull Date: Mon, 25 Nov 2024 10:06:46 +0100 Subject: [PATCH 08/23] api: refresh and access token configuration --- api/environment-variables.md | 6 +- api/package-lock.json | 47 ++++++++- api/package.json | 2 +- api/src/authenticationUtils.ts | 8 +- api/src/config.ts | 6 ++ api/src/envVarsSchema.ts | 12 +++ api/src/lib/keyValueStore.ts | 128 ++++++++++++++++++++----- api/src/service/user_refresh_token.ts | 4 +- api/src/user_authenticate.ts | 15 +-- api/src/user_authenticateAd.ts | 15 +-- api/src/user_logout.ts | 4 +- api/src/user_refreshToken.ts | 8 +- scripts/development/docker-compose.yml | 2 + scripts/operation/docker-compose.yml | 2 + 14 files changed, 205 insertions(+), 54 deletions(-) diff --git a/api/environment-variables.md b/api/environment-variables.md index 5083d3d91..f1c560588 100644 --- a/api/environment-variables.md +++ b/api/environment-variables.md @@ -8,7 +8,7 @@ | **ORGANIZATION** | no | MyOrga | In the blockchain network, each node is represented by its organization name. This environment variable sets this organization name. It is used to create the organization stream on the blockchain and is also displayed in the frontend's top right corner. Minimal value: 1. Maximal value: 100. | | **PORT** | no | 8091 | The port used to expose the API for your installation. Example: If you run TruBudget locally and set API_PORT to `8080`, you can reach the API via `localhost:8080/api`. Value is a port with minimal value 0 and maximal value 65535 | | **ORGANIZATION_VAULT_SECRET** | yes | - | This is the key to en-/decrypt user data of an organization. If you want to add a new node for your organization, you want users to be able to log in on either node. **Caution:** If you want to run TruBudget in production, make sure NOT to use the default value from the `.env.example` file! Minimal value: 5. | -| **ROOT_SECRET** | no | 8d0ab15d21b6d2c48d834bad4785a52126573906c84e6120506fce35f5ce4708 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | +| **ROOT_SECRET** | no | 053dd957aaf03669c9c4e04abba7672326f53c18a2186404cf35bee647b5a350 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | | **MULTICHAIN_RPC_HOST** | no | localhost | The IP address of the blockchain (not multichain daemon,but they are usally the same) you want to connect to. | | **MULTICHAIN_RPC_PORT** | no | 8000 | The Port of the blockchain where the server is available for incoming http connections (e.g. readiness, versions, backup and restore) | | **MULTICHAIN_PROTOCOL** | no | http | The protocol used to expose the multichain daemon of your Trubudget blockchain installation(bc). The protocol used to connect to the multichain daemon(api). This will be used internally for the communication between the API and the multichain daemon. | @@ -18,7 +18,7 @@ | **BLOCKCHAIN_PROTOCOL** | no | http | The Protocol of the blockchain where the server is available for incoming http connections. | | **SWAGGER_BASEPATH** `deprecated` | no | - | deprecated This variable was used to choose which environment (prod or test) is used for testing the requests. The variable is deprecated now, as the Swagger documentation can be used for the prod and test environment separately. Example values: "/". | | **JWT_ALGORITHM** | no | HS256 | Algorithm used for signing and verifying JWTs. | -| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 9640f5d6c8af1bc72275 | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | +| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 7dbc33dda75136597081 | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | | **JWT_PUBLIC_KEY** | yes (if JWT_ALGORITHM=RS256) | - | If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded public key for RSA. | | **DOCUMENT_FEATURE_ENABLED** | no | - | If true, all uploaded documents are stored using trubudget's storage-service. If false, the document feature of TruBudget is disabled, and trying to upload a document will result in an error. | | **DOCUMENT_EXTERNAL_LINKS_ENABLED** | no | - | If true, it is possible to use external documents links also without TruBudget's storage-service. If false, the external documents links feature of TruBudget is still possible to use in case DOCUMENT_FEATURE_ENABLED equals "true". | @@ -38,6 +38,8 @@ | **AUTHPROXY_JWS_SIGNATURE** | yes (if AUTHPROXY_ENABLED=true) | - | secret/public key/certificate for verifying auth proxy token signature | | **DB_TYPE** | no | pg | - | | **SQL_DEBUG** | no | - | - | +| **REFRESH_TOKEN_EXPIRATION** | no | 8 | Refresh token expiration in hours. After a defined time, login session will be invalid. | +| **ACCESS_TOKEN_EXPIRATION** | no | 0.25 | Access token expiration in hours | | **REFRESH_TOKEN_STORAGE** | no | - | Determining the type of storage for refresh tokens. Allowed values are "db" or "memory" or blank to disable refresh token functionality. | | **API_DB_USER** | yes (if REFRESH_TOKEN_STORAGE=db) | postgres | Database user for database connection, e.g. postgres | | **API_DB_PASSWORD** | yes (if REFRESH_TOKEN_STORAGE=db) | test | Database password for database connection | diff --git a/api/package-lock.json b/api/package-lock.json index 1c618b4f3..4dde96c9a 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -880,6 +880,11 @@ "fastify-plugin": "^4.0.0" } }, + "node_modules/@fastify/cookie/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/cors": { "version": "8.5.0", "resolved": "https://registry.npmjs.org/@fastify/cors/-/cors-8.5.0.tgz", @@ -889,6 +894,11 @@ "mnemonist": "0.39.6" } }, + "node_modules/@fastify/cors/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/deepmerge": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz", @@ -916,6 +926,11 @@ "helmet": "^6.0.0" } }, + "node_modules/@fastify/helmet/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/jwt": { "version": "7.2.4", "resolved": "https://registry.npmjs.org/@fastify/jwt/-/jwt-7.2.4.tgz", @@ -928,6 +943,11 @@ "steed": "^1.1.3" } }, + "node_modules/@fastify/jwt/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/merge-json-schemas": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz", @@ -949,6 +969,11 @@ "stream-wormhole": "^1.1.0" } }, + "node_modules/@fastify/multipart/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/rate-limit": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/@fastify/rate-limit/-/rate-limit-8.1.1.tgz", @@ -959,6 +984,11 @@ "tiny-lru": "^11.0.0" } }, + "node_modules/@fastify/rate-limit/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/send": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@fastify/send/-/send-2.1.0.tgz", @@ -984,6 +1014,11 @@ "p-limit": "^3.1.0" } }, + "node_modules/@fastify/static/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/swagger": { "version": "8.14.0", "resolved": "https://registry.npmjs.org/@fastify/swagger/-/swagger-8.14.0.tgz", @@ -1029,6 +1064,11 @@ "balanced-match": "^1.0.0" } }, + "node_modules/@fastify/swagger-ui/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@fastify/swagger-ui/node_modules/foreground-child": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", @@ -1090,6 +1130,11 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/@fastify/swagger/node_modules/fastify-plugin": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", + "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" + }, "node_modules/@grpc/grpc-js": { "version": "1.10.10", "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.10.10.tgz", @@ -4661,7 +4706,7 @@ "fastify": ">=4" } }, - "node_modules/fastify-plugin": { + "node_modules/fastify-metrics/node_modules/fastify-plugin": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.5.1.tgz", "integrity": "sha512-stRHYGeuqpEZTL1Ef0Ovr2ltazUT9g844X5z/zEBFLG8RYlpDiOCIG+ATvYEp+/zmc7sN29mcIMp8gvYplYPIQ==" diff --git a/api/package.json b/api/package.json index 95ea648d0..4c21e6754 100644 --- a/api/package.json +++ b/api/package.json @@ -153,4 +153,4 @@ "overrides": { "cookie": "^0.7.0" } -} +} \ No newline at end of file diff --git a/api/src/authenticationUtils.ts b/api/src/authenticationUtils.ts index cf8bb731e..f216ab9d6 100644 --- a/api/src/authenticationUtils.ts +++ b/api/src/authenticationUtils.ts @@ -1,9 +1,9 @@ import * as jsonwebtoken from "jsonwebtoken"; -import { JwtConfig } from "./config"; +import { config, JwtConfig } from "./config"; -export const refreshTokenExpirationInDays = 8; -export const accessTokenExpirationInMinutesWithrefreshToken = 10; +export const refreshTokenExpirationInHours = config.refreshTokenExpiration; +export const accessTokenExpirationInHoursWithrefreshToken = config.accessTokenExpiration; /** * Creates a refresh JWT Token @@ -18,7 +18,7 @@ export function createRefreshJWTToken( ): string { const secretOrPrivateKey = algorithm === "RS256" ? Buffer.from(key, "base64") : key; return jsonwebtoken.sign(payload, secretOrPrivateKey, { - expiresIn: `${refreshTokenExpirationInDays}d`, + expiresIn: `${refreshTokenExpirationInHours}h`, algorithm, }); } diff --git a/api/src/config.ts b/api/src/config.ts index 5ac96d6dd..9148eb470 100644 --- a/api/src/config.ts +++ b/api/src/config.ts @@ -53,6 +53,8 @@ interface ProcessEnvVars { API_DB_PORT: string; API_DB_SSL: string; API_DB_SCHEMA: string; + REFRESH_TOKEN_EXPIRATION: string; + ACCESS_TOKEN_EXPIRATION: string; API_REFRESH_TOKENS_TABLE: string; REFRESH_TOKEN_STORAGE?: string; // "db" || "memory" || undefined } @@ -122,6 +124,8 @@ interface Config { db: DatabaseConfig; dbType: string; sqlDebug: boolean | undefined; + accessTokenExpiration: number; + refreshTokenExpiration: number; refreshTokensTable: string | undefined; refreshTokenStorage: string | undefined; snapshotEventInterval: number; @@ -198,6 +202,8 @@ export const config: Config = { }, dbType: envVars.DB_TYPE, sqlDebug: envVars.SQL_DEBUG, + accessTokenExpiration: envVars.ACCESS_TOKEN_EXPIRATION, + refreshTokenExpiration: envVars.REFRESH_TOKEN_EXPIRATION, refreshTokensTable: envVars.API_REFRESH_TOKENS_TABLE, refreshTokenStorage: envVars.REFRESH_TOKEN_STORAGE, snapshotEventInterval: envVars.SNAPSHOT_EVENT_INTERVAL, diff --git a/api/src/envVarsSchema.ts b/api/src/envVarsSchema.ts index 733bfb358..d64115168 100644 --- a/api/src/envVarsSchema.ts +++ b/api/src/envVarsSchema.ts @@ -258,6 +258,18 @@ export const envVarsSchema = Joi.object({ .empty(["", null]) .default("public") .note('Database schema, e.g. "public".'), + REFRESH_TOKEN_EXPIRATION: Joi.number() + .default(8) + .allow("") + .empty(["", null]) + .note( + "Refresh token expiration in hours. After a defined time, login session will be invalid.", + ), + ACCESS_TOKEN_EXPIRATION: Joi.number() + .default(0.25) + .allow("") + .empty(["", null]) + .note("Access token expiration in hours"), API_REFRESH_TOKENS_TABLE: Joi.string() .empty(["", null]) .default("refresh_token") diff --git a/api/src/lib/keyValueStore.ts b/api/src/lib/keyValueStore.ts index 3a4bc4671..d69d33fc9 100644 --- a/api/src/lib/keyValueStore.ts +++ b/api/src/lib/keyValueStore.ts @@ -1,36 +1,116 @@ /** - * @description Simple data key/value store + * @description Typed key-value store with expiration support using Map */ -const store = {}; -export const saveValue = (key: string, value: {}, exp: Date | number): void => { - if (!key || !value) { - throw Error("key and value are required"); +interface StoreEntry { + value: T; + exp: number; +} + +class KeyValueStore { + private store: Map>; + private cleanupInterval: ReturnType; + + constructor(cleanupIntervalMs: number = 60 * 1000) { + this.store = new Map(); + this.cleanupInterval = setInterval(() => this.clearExpiredKeys(), cleanupIntervalMs); } - const expMs = exp instanceof Date ? exp.getTime() : exp; - store[key] = { ...value, exp: expMs }; -}; + /** + * Saves a value in the store with expiration + * @throws {ValidationError} If key or value is invalid + */ + public save(key: string, value: T, exp: Date | number): void { + if (!key?.trim()) { + throw new Error("Key must be a non-empty string"); + } -export const getValue = (key: string): unknown => store[key]; + if (value === undefined || value === null) { + throw new Error("Value cannot be null or undefined"); + } + + const expMs = exp instanceof Date ? exp.getTime() : exp; + + if (typeof expMs !== "number" || expMs <= Date.now()) { + throw new Error("Expiration must be a future timestamp or Date"); + } -export const clearValue = (key: string): void => { - if (store[key]) { - delete store[key]; + this.store.set(key, { value, exp: expMs }); } -}; -export const clearExpiredKeys = (): void => { - const now = new Date(); - const nowMs = now.getTime(); - Object.keys(store).forEach((key) => { - // key is expired - if (store?.[key]?.exp && nowMs > store?.[key]?.exp) { - clearValue(key); + /** + * Retrieves a value from the store + * @returns The value if found and not expired, undefined otherwise + */ + public get(key: string): T | undefined { + const entry = this.store.get(key); + if (!entry) return undefined; + + if (Date.now() > entry.exp) { + this.clear(key); + return undefined; } - }); -}; -setInterval(clearExpiredKeys, 1000 * 60); + return entry.value as T; + } + + /** + * Removes a value from the store + * @returns boolean indicating if the value was cleared + */ + public clear(key: string): boolean { + return this.store.delete(key); + } + + /** + * Clears all expired keys from the store + * @returns number of cleared keys + */ + public clearExpiredKeys(): number { + const now = Date.now(); + let cleared = 0; + + for (const [key, entry] of this.store) { + if (entry.exp <= now) { + this.store.delete(key); + cleared++; + } + } + + return cleared; + } + + /** + * Returns all non-expired values in the store + */ + public getAll(): Map { + const now = Date.now(); + const result = new Map(); + + for (const [key, entry] of this.store) { + if (entry.exp > now) { + result.set(key, entry.value); + } + } + + return result; + } + + /** + * Returns the number of entries in the store + */ + public size(): number { + return this.store.size; + } + + /** + * Stops the cleanup interval and clears all entries + */ + public dispose(): void { + clearInterval(this.cleanupInterval); + this.store.clear(); + } +} -export const getAllValues = (): any => store; +// Export a singleton instance +export const kvStore = new KeyValueStore(); diff --git a/api/src/service/user_refresh_token.ts b/api/src/service/user_refresh_token.ts index 5202c939e..06a3a4709 100644 --- a/api/src/service/user_refresh_token.ts +++ b/api/src/service/user_refresh_token.ts @@ -4,7 +4,7 @@ import { globalIntents } from "../authz/intents"; import { config } from "../config"; import { Ctx } from "../lib/ctx"; import DbConnector from "../lib/db"; -import { getValue } from "../lib/keyValueStore"; +import { kvStore } from "../lib/keyValueStore"; import logger from "../lib/logger"; import * as SymmetricCrypto from "../lib/symmetricCrypto"; import { verifyToken } from "../lib/token"; @@ -48,7 +48,7 @@ export async function validateRefreshToken( let storedRefreshToken: { userId: string; validUntil: number } | undefined; if (config.refreshTokenStorage === "memory") { - storedRefreshToken = getValue(`refreshToken.${refreshToken}`) as + storedRefreshToken = kvStore.get(`refreshToken.${refreshToken}`) as | { userId: string; validUntil: number } | undefined; } else if (config.refreshTokenStorage === "db") { diff --git a/api/src/user_authenticate.ts b/api/src/user_authenticate.ts index fb58d195c..bdc22e05c 100644 --- a/api/src/user_authenticate.ts +++ b/api/src/user_authenticate.ts @@ -4,16 +4,16 @@ import * as jsonwebtoken from "jsonwebtoken"; import { VError } from "verror"; import { - accessTokenExpirationInMinutesWithrefreshToken, + accessTokenExpirationInHoursWithrefreshToken, createRefreshJWTToken, - refreshTokenExpirationInDays, + refreshTokenExpirationInHours, } from "./authenticationUtils"; import { JwtConfig, config } from "./config"; import { toHttpError } from "./http_errors"; import { assertUnreachable } from "./lib/assertUnreachable"; import { Ctx } from "./lib/ctx"; import { safeIdSchema, safeStringSchema } from "./lib/joiValidation"; -import { saveValue } from "./lib/keyValueStore"; +import { kvStore } from "./lib/keyValueStore"; import * as Result from "./result"; import { AuthToken } from "./service/domain/organization/auth_token"; import { Group } from "./service/domain/organization/group"; @@ -252,7 +252,7 @@ export function addHttpHandler( const now = new Date(); // time in miliseconds of refresh token expiration const refreshTokenExpiration = new Date( - now.getTime() + 1000 * 60 * 60 * 24 * refreshTokenExpirationInDays, + now.getTime() + 1000 * 60 * 60 * refreshTokenExpirationInHours, ); const refreshToken = createRefreshJWTToken( { userId: token.userId, expirationAt: refreshTokenExpiration }, @@ -261,10 +261,11 @@ export function addHttpHandler( ); if (config.refreshTokenStorage === "memory") { - saveValue( + kvStore.save( `refreshToken.${refreshToken}`, { userId: token.userId, + token: refreshToken, }, refreshTokenExpiration, ); @@ -302,7 +303,7 @@ export function addHttpHandler( }; // conditionally add token expiration to payload if (config.refreshTokenStorage && ["db", "memory"].includes(config.refreshTokenStorage)) { - body.data.accessTokenExp = 1000 * 60 * accessTokenExpirationInMinutesWithrefreshToken; + body.data.accessTokenExp = 1000 * 60 * 60 * accessTokenExpirationInHoursWithrefreshToken; } reply @@ -353,7 +354,7 @@ function createJWT( const secretOrPrivateKey = algorithm === "RS256" ? Buffer.from(key, "base64") : key; const expiresIn = config.refreshTokenStorage && ["db", "memory"].includes(config.refreshTokenStorage) - ? `${accessTokenExpirationInMinutesWithrefreshToken}m` + ? `${accessTokenExpirationInHoursWithrefreshToken}h` : "8h"; return jsonwebtoken.sign( { diff --git a/api/src/user_authenticateAd.ts b/api/src/user_authenticateAd.ts index 517515bc4..d9e9a87bd 100644 --- a/api/src/user_authenticateAd.ts +++ b/api/src/user_authenticateAd.ts @@ -4,15 +4,15 @@ import * as jsonwebtoken from "jsonwebtoken"; import { VError } from "verror"; import { - accessTokenExpirationInMinutesWithrefreshToken, + accessTokenExpirationInHoursWithrefreshToken, createRefreshJWTToken, - refreshTokenExpirationInDays, + refreshTokenExpirationInHours, } from "./authenticationUtils"; import { JwtConfig, config } from "./config"; import { toHttpError } from "./http_errors"; import { assertUnreachable } from "./lib/assertUnreachable"; import { Ctx } from "./lib/ctx"; -import { saveValue } from "./lib/keyValueStore"; +import { kvStore } from "./lib/keyValueStore"; import * as Result from "./result"; import { AuthToken } from "./service/domain/organization/auth_token"; import { Group } from "./service/domain/organization/group"; @@ -247,7 +247,7 @@ export function addHttpHandler( const now = new Date(); // time in miliseconds of refresh token expiration const refreshTokenExpiration = new Date( - now.getTime() + 1000 * 60 * 60 * 24 * refreshTokenExpirationInDays, + now.getTime() + 1000 * 60 * 60 * refreshTokenExpirationInHours, ); const refreshToken = createRefreshJWTToken( { userId: token.userId, expirationAt: refreshTokenExpiration }, @@ -256,10 +256,11 @@ export function addHttpHandler( ); if (config.refreshTokenStorage === "memory") { - saveValue( - `refreshToken.${refreshToken}`, + kvStore.save( + `refreshToken.${token.userId}`, { userId: token.userId, + token: refreshToken, }, refreshTokenExpiration, ); @@ -299,7 +300,7 @@ export function addHttpHandler( // conditionally add token expiration to payload if (config.refreshTokenStorage && ["db", "memory"].includes(config.refreshTokenStorage)) { - body.data.accessTokenExp = 1000 * 60 * accessTokenExpirationInMinutesWithrefreshToken; + body.data.accessTokenExp = 1000 * 60 * 60 * accessTokenExpirationInHoursWithrefreshToken; } reply diff --git a/api/src/user_logout.ts b/api/src/user_logout.ts index bbb8f4b55..e7588c1f7 100644 --- a/api/src/user_logout.ts +++ b/api/src/user_logout.ts @@ -6,7 +6,7 @@ import { VError } from "verror"; import { config } from "./config"; import { toHttpError } from "./http_errors"; import { Ctx } from "./lib/ctx"; -import { clearValue } from "./lib/keyValueStore"; +import { kvStore } from "./lib/keyValueStore"; import * as Result from "./result"; import { UserLogoutAPIService } from "./index"; @@ -132,7 +132,7 @@ export function addHttpHandler( // delete refresh token from storage if (currentRefreshToken && config.refreshTokenStorage === "memory") { - clearValue(`refreshToken.${currentRefreshToken}`); + kvStore.clear(`refreshToken.${currentRefreshToken}`); } else if (currentRefreshToken && config.refreshTokenStorage === "db") { await service.clearRefreshToken(currentRefreshToken); } diff --git a/api/src/user_refreshToken.ts b/api/src/user_refreshToken.ts index 37253b00f..7349d5694 100644 --- a/api/src/user_refreshToken.ts +++ b/api/src/user_refreshToken.ts @@ -2,7 +2,7 @@ import Joi = require("joi"); import * as jsonwebtoken from "jsonwebtoken"; import { VError } from "verror"; -import { accessTokenExpirationInMinutesWithrefreshToken } from "./authenticationUtils"; +import { accessTokenExpirationInHoursWithrefreshToken } from "./authenticationUtils"; import { JwtConfig, config } from "./config"; import { toHttpError } from "./http_errors"; import { AuthenticatedRequest } from "./httpd/lib"; @@ -220,10 +220,10 @@ export function addHttpHandler( data: {}, }; // conditionally add token expiration to payload - request.log.warn(`checking accessTokenExp ${config.refreshTokenStorage}`); + request.log.debug(`checking accessTokenExp ${config.refreshTokenStorage}`); if (config.refreshTokenStorage && ["db", "memory"].includes(config.refreshTokenStorage)) { - request.log.warn("adding accessTokenExp"); - body.data.accessTokenExp = 1000 * 60 * accessTokenExpirationInMinutesWithrefreshToken; + request.log.debug("adding accessTokenExp"); + body.data.accessTokenExp = 1000 * 60 * 60 * accessTokenExpirationInHoursWithrefreshToken; } reply diff --git a/scripts/development/docker-compose.yml b/scripts/development/docker-compose.yml index d00c37254..67653b359 100644 --- a/scripts/development/docker-compose.yml +++ b/scripts/development/docker-compose.yml @@ -103,6 +103,8 @@ services: API_DB_SCHEMA: ${API_DB_SCHEMA} API_DB_NAME: ${API_DB_NAME} API_REFRESH_TOKENS_TABLE: ${API_REFRESH_TOKENS_TABLE} + REFRESH_TOKEN_EXPIRATION: ${REFRESH_TOKEN_EXPIRATION} + ACCESS_TOKEN_EXPIRATION: ${ACCESS_TOKEN_EXPIRATION} command: ["npm", "run", "watch"] # npm run watch: hot reloading # volume to track code changes volumes: diff --git a/scripts/operation/docker-compose.yml b/scripts/operation/docker-compose.yml index f83d75c11..7aed3387f 100644 --- a/scripts/operation/docker-compose.yml +++ b/scripts/operation/docker-compose.yml @@ -115,6 +115,8 @@ services: API_DB_SCHEMA: ${API_DB_SCHEMA} API_DB_NAME: ${API_DB_NAME} API_REFRESH_TOKENS_TABLE: ${API_REFRESH_TOKENS_TABLE} + REFRESH_TOKEN_EXPIRATION: ${REFRESH_TOKEN_EXPIRATION} + ACCESS_TOKEN_EXPIRATION: ${ACCESS_TOKEN_EXPIRATION} depends_on: - alpha-node volumes: From 348efd857eecdcb6d20b8ee0fab75da2b99aaf34 Mon Sep 17 00:00:00 2001 From: Samuel Pull Date: Mon, 25 Nov 2024 10:14:14 +0100 Subject: [PATCH 09/23] reverted some changes --- api/src/user_authenticate.ts | 1 - api/src/user_authenticateAd.ts | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/api/src/user_authenticate.ts b/api/src/user_authenticate.ts index bdc22e05c..f7f7c350c 100644 --- a/api/src/user_authenticate.ts +++ b/api/src/user_authenticate.ts @@ -265,7 +265,6 @@ export function addHttpHandler( `refreshToken.${refreshToken}`, { userId: token.userId, - token: refreshToken, }, refreshTokenExpiration, ); diff --git a/api/src/user_authenticateAd.ts b/api/src/user_authenticateAd.ts index d9e9a87bd..2c01ebd08 100644 --- a/api/src/user_authenticateAd.ts +++ b/api/src/user_authenticateAd.ts @@ -257,10 +257,9 @@ export function addHttpHandler( if (config.refreshTokenStorage === "memory") { kvStore.save( - `refreshToken.${token.userId}`, + `refreshToken.${refreshToken}`, { userId: token.userId, - token: refreshToken, }, refreshTokenExpiration, ); From ab887e91c5433a1e1a928ce58a62b0637733b6c0 Mon Sep 17 00:00:00 2001 From: Samuel Pull Date: Mon, 25 Nov 2024 16:28:08 +0100 Subject: [PATCH 10/23] mr comment --- scripts/development/.env.example | 2 ++ scripts/operation/.env.example | 2 ++ 2 files changed, 4 insertions(+) diff --git a/scripts/development/.env.example b/scripts/development/.env.example index b7bb88d84..786bb4475 100644 --- a/scripts/development/.env.example +++ b/scripts/development/.env.example @@ -130,6 +130,8 @@ API_DB_SSL=false API_DB_SCHEMA=public API_REFRESH_TOKENS_TABLE=refresh_token API_DB_NAME=trubudget_email_service +REFRESH_TOKEN_EXPIRATION= +ACCESS_TOKEN_EXPIRATION= ## frontend diff --git a/scripts/operation/.env.example b/scripts/operation/.env.example index 3d970a2f3..86e083ef4 100644 --- a/scripts/operation/.env.example +++ b/scripts/operation/.env.example @@ -114,6 +114,8 @@ API_DB_PORT=5432 API_DB_SSL= API_DB_SCHEMA=public API_REFRESH_TOKENS_TABLE=refresh_token +REFRESH_TOKEN_EXPIRATION= +ACCESS_TOKEN_EXPIRATION= ## frontend REACT_APP_VERSION=$npm_package_version From 9d3d8376cce2b21cbd101d414657155a16d149dc Mon Sep 17 00:00:00 2001 From: pmolnar-dev <55734106+pmolnar-dev@users.noreply.github.com> Date: Wed, 27 Nov 2024 15:39:37 +0100 Subject: [PATCH 11/23] 2107: More descriptive Add buttons (#2108) * more descriptive buttons --- frontend/src/languages/english.js | 6 ++- frontend/src/languages/french.js | 6 ++- frontend/src/languages/georgian.js | 6 ++- frontend/src/languages/german.js | 6 ++- frontend/src/languages/portuguese.js | 6 ++- frontend/src/pages/Common/CreateButton.js | 12 ++--- frontend/src/pages/Common/CreateButton.scss | 28 ++++++----- frontend/src/pages/Main/Main.scss | 2 +- frontend/src/pages/Overview/CardView.js | 47 +++++++++---------- frontend/src/pages/Overview/CardView.scss | 4 +- frontend/src/pages/Overview/TableView.js | 27 +++++------ frontend/src/pages/Overview/TableView.scss | 24 ++++++++-- .../pages/SubProjects/SubProjectContainer.js | 20 +++++++- .../SubProjects/SubProjectContainer.scss | 20 ++++++++ frontend/src/pages/SubProjects/SubProjects.js | 23 --------- .../src/pages/SubProjects/SubProjects.scss | 4 +- frontend/src/pages/Users/Users.js | 8 +++- frontend/src/pages/Workflows/Workflow.js | 41 ---------------- frontend/src/pages/Workflows/Workflow.scss | 6 +-- .../src/pages/Workflows/WorkflowContainer.js | 18 ++++++- .../pages/Workflows/WorkflowContainer.scss | 21 +++++++++ 21 files changed, 191 insertions(+), 144 deletions(-) create mode 100644 frontend/src/pages/SubProjects/SubProjectContainer.scss diff --git a/frontend/src/languages/english.js b/frontend/src/languages/english.js index 927455c17..58abee414 100644 --- a/frontend/src/languages/english.js +++ b/frontend/src/languages/english.js @@ -152,6 +152,8 @@ const en = { account_name: "Account Name", add_group: "Add Group", add_user: "Add User", + add_new_user: "Add new user", + add_new_group: "Add new group", change_password_for: "Change password for {0}", current_user_password: "Your password", edit_group: "Edit Group", @@ -290,6 +292,7 @@ const en = { workflow_mode: "Workflow Mode", workflow_mode_ordered: "Workflow (Ordered)", workflow_mode_unordered: "Action List (Unordered)", + add_new_subproject: "Add new subproject", subproject_add_title: "Add new subproject", subproject_assigned_organization: "Assigned organization", subproject_budget_amount: "Subproject budget amount", @@ -385,7 +388,8 @@ const en = { workflowitem_type_restricted: "When assigning a restricted workflow action permissions are automatically granted and revoked. The assigner will only keep the view permissions.", workflowitem_type: "Workflow action type", - markdown: "Workflow action description" + markdown: "Workflow action description", + add_new_workflow: "Add new workflow" }, workflowTemplate: { diff --git a/frontend/src/languages/french.js b/frontend/src/languages/french.js index a5d255b32..b881b97e2 100644 --- a/frontend/src/languages/french.js +++ b/frontend/src/languages/french.js @@ -208,6 +208,7 @@ const fr = { workflow_mode: "Mode de workflow action", workflow_mode_ordered: "Workflow action (ordonnée)", workflow_mode_unordered: "Liste d'actions (non ordonnée)", + add_new_subproject: "Ajouter une nouvelle composante", subproject_add_title: "Ajouter une nouvelle composante", subproject_assigned_organization: "Organisation assignée", @@ -306,7 +307,8 @@ const fr = { workflowitem_type_restricted: "Lors de l'attribution d'un workflow action restreint, les autorisations sont automatiquement accordées et révoquées. Le cédant ne conservera que les autorisations de visualisation", workflowitem_type: "Type de l’étape de workflow action", - markdown: "Description de l'action du workflow" + markdown: "Description de l'action du workflow", + add_new_workflow: "Ajouter un nouveau flux de travail" }, workflowTemplate: { @@ -329,6 +331,8 @@ const fr = { account_name: "Compte utilisateur", add_group: "Ajouter un groupe", add_user: "Ajouter un nouveau compte utilisateur", + add_new_user: "Ajouter un nouvel utilisateur", + add_new_group: "Ajouter un nouveau groupe", change_password_for: "Changer le mot de passe pour {0}", current_user_password: "Votre mot de passe", edit_group: "Éditer un groupe", diff --git a/frontend/src/languages/georgian.js b/frontend/src/languages/georgian.js index bf5a7d098..3f0fbe9ae 100644 --- a/frontend/src/languages/georgian.js +++ b/frontend/src/languages/georgian.js @@ -152,6 +152,8 @@ const ka = { account_name: "ანგარიშის სახელი", add_group: "ჯგუფის დამატება", add_user: "მომხმარებლის დამატება", + add_new_user: "ახალი მომხმარებლის დამატება", + add_new_group: "ახალი ჯგუფის დამატება", change_password_for: "პაროლის შეცვლა {0}", current_user_password: "შენი პაროლი", edit_group: "ჯგუფის რედაქტირება", @@ -291,6 +293,7 @@ const ka = { workflow_mode: "სამუშაო რეჟიმი", workflow_mode_ordered: "სამუშაო სია (დალაგებული)", workflow_mode_unordered: "სამუშაო სია (არ დალაგებული)", + add_new_subproject: "ახალი ქვეპროექტის დამატება", subproject_add_title: "ახალი ქვეპროექტის დამატება", subproject_assigned_organization: "Assigned organization", @@ -388,7 +391,8 @@ const ka = { workflowitem_type_restricted: "შეზღუდული სამუშაო ნაკადის გადაცემისას ნებართვები ავტომატურად გაიცემა და გაუქმებულია. დავალება მხოლოდ შეინარჩუნებს ხედის ნებართვას.", workflowitem_type: "Workflow action ტიპი", - markdown: "აღწერა" + markdown: "აღწერა", + add_new_workflow: "დაამატეთ ახალი სამუშაო პროცესი" }, workflowTemplate: { diff --git a/frontend/src/languages/german.js b/frontend/src/languages/german.js index 2dcf71d14..49312740a 100644 --- a/frontend/src/languages/german.js +++ b/frontend/src/languages/german.js @@ -206,6 +206,7 @@ const de = { workflow_mode: "Workflow Modus", workflow_mode_ordered: "Workflow / Prozess", workflow_mode_unordered: "Liste", + add_new_subproject: "Neues Subprojekt", subproject_add_title: "Neues Subprojekt", subproject_assigned_organization: "Verantwortliche Organisation", subproject_budget_amount: "Subprojekt Budget", @@ -301,7 +302,8 @@ const de = { workflowitem_type_restricted: "Bei Zuweisung eines eingeschränkten Workflow-Items an einen anderen User werden Berechtigungen automatisch erteilt und entzogen. Der Zuweisende behält nur die Anzeigerechte.", workflowitem_type: "Workflow action Typ", - markdown: "Beschreibung der Workflow-Aktion" + markdown: "Beschreibung der Workflow-Aktion", + add_new_workflow: "Neuen Workflow hinzufügen" }, workflowTemplate: { @@ -328,6 +330,8 @@ const de = { new_group: "Neue Benutzergruppe", groups: "Benutzergruppe", add_user: "Benutzer hinzufügen", + add_new_user: "Neuen Benutzer hinzufügen", + add_new_group: "Neue Gruppe hinzufügen", group_created: "Benutzergruppe wurde erstellt", add_group: "Benutzergruppe", edit_group: "Benutzergruppe ändern", diff --git a/frontend/src/languages/portuguese.js b/frontend/src/languages/portuguese.js index cf6d94891..b6c18d963 100644 --- a/frontend/src/languages/portuguese.js +++ b/frontend/src/languages/portuguese.js @@ -153,6 +153,8 @@ const pt = { account_name: "Nome ou descrição do usuário", add_group: "Criar novo grupo", add_user: "Criar novo usuário", + add_new_user: "Adicionar novo usuário", + add_new_group: "Adicionar novo grupo", change_password_for: "Mudar senha para {0}", current_user_password: "Sua Senha", edit_group: "Editar grupo", @@ -291,6 +293,7 @@ const pt = { workflow_mode: "Modo de fluxo de trabalho", workflow_mode_ordered: "Seleção ordenada", workflow_mode_unordered: "Seleção não ordenada", + add_new_subproject: "Criar novo subprojeto", subproject_add_title: "Criar novo subprojeto", subproject_assigned_organization: "Organização responsável", @@ -388,7 +391,8 @@ const pt = { workflowitem_type_restricted: "Ao atribuir um fluxo de trabalho restrito, as permissões são automaticamente concedidas e revogadas. O cedente manterá apenas as permissões de visualização.", workflowitem_type: "Categoria do item de workflow action", - markdown: "Descrição" + markdown: "Descrição", + add_new_workflow: "Adicionar novo fluxo de trabalho" }, workflowTemplate: { diff --git a/frontend/src/pages/Common/CreateButton.js b/frontend/src/pages/Common/CreateButton.js index 706dcacdb..d93ab5e51 100644 --- a/frontend/src/pages/Common/CreateButton.js +++ b/frontend/src/pages/Common/CreateButton.js @@ -1,17 +1,17 @@ import React from "react"; import Add from "@mui/icons-material/Add"; +import { Typography } from "@mui/material"; import Fab from "@mui/material/Fab"; import "./CreateButton.scss"; -const CreateButton = ({ dataTest = "create", color = "primary", onClick }) => { +const CreateButton = ({ dataTest = "create", color = "primary", onClick, buttonText }) => { return ( -
- - - -
+ + {buttonText} + + ); }; diff --git a/frontend/src/pages/Common/CreateButton.scss b/frontend/src/pages/Common/CreateButton.scss index a1bef9e74..25a31f339 100644 --- a/frontend/src/pages/Common/CreateButton.scss +++ b/frontend/src/pages/Common/CreateButton.scss @@ -1,15 +1,21 @@ -.create-button-container { - display: flex; - flex-direction: column; - position: absolute; - align-items: flex-end; - top: 5rem; - right: -1.25rem; - width: 30%; - height: 1.25rem; -} - .create-button { position: absolute; + top: 0; + right: 0; margin-top: -1.25rem; + height: 2.5rem; + width: auto; + border-radius: 2.5rem; + padding: 1rem 1.25rem; + box-shadow: none; + color: white; + text-transform: none; + font-size: 1rem; + font-weight: 500; + line-height: 24; +} + +.create-button-text { + margin-right: 0.375rem; + margin-left: 0.375rem; } diff --git a/frontend/src/pages/Main/Main.scss b/frontend/src/pages/Main/Main.scss index d953cb83d..a529ef138 100644 --- a/frontend/src/pages/Main/Main.scss +++ b/frontend/src/pages/Main/Main.scss @@ -17,7 +17,7 @@ .main-container { flex: 1; width: 80%; - margin-top: 3rem; + margin-top: 3.5rem; margin-bottom: 3rem; @include tablet { width: 90%; diff --git a/frontend/src/pages/Overview/CardView.js b/frontend/src/pages/Overview/CardView.js index acdc6399b..b6c4d35a9 100644 --- a/frontend/src/pages/Overview/CardView.js +++ b/frontend/src/pages/Overview/CardView.js @@ -2,12 +2,11 @@ import React from "react"; import _isEmpty from "lodash/isEmpty"; import ContentAdd from "@mui/icons-material/Add"; -import { Box } from "@mui/material"; +import { Box, Typography } from "@mui/material"; import Card from "@mui/material/Card"; import CardActions from "@mui/material/CardActions"; import Fab from "@mui/material/Fab"; import TablePagination from "@mui/material/TablePagination"; -import Tooltip from "@mui/material/Tooltip"; import { statusMapping, unixTsToString } from "../../helper"; import strings from "../../localizeStrings"; @@ -146,38 +145,34 @@ const CardView = (props) => { labelRowsPerPage={strings.project.cards_per_page} /> - -
+ showCreationDialog()} + color="primary" + className="project-add-button card-view" + data-test="add-project-button" + > + {strings.project.add_new_project} + + + +
+
+ {tableEntries} + +
+ showCreationDialog()} color="primary" - data-test="add-project-button" + data-test="create-project-button" > -
- - -
-
- {tableEntries} - -
- - - showCreationDialog()} - color="primary" - data-test="create-project-button" - > - - -
diff --git a/frontend/src/pages/Overview/CardView.scss b/frontend/src/pages/Overview/CardView.scss index de8c152a4..c76975431 100644 --- a/frontend/src/pages/Overview/CardView.scss +++ b/frontend/src/pages/Overview/CardView.scss @@ -54,10 +54,12 @@ .card-view-actions { display: flex; flex-direction: row; - justify-content: space-evenly; + justify-content: center; width: 100%; } .add-project { display: flex; + justify-content: flex-end; + align-items: center; } diff --git a/frontend/src/pages/Overview/TableView.js b/frontend/src/pages/Overview/TableView.js index cd8935682..2120066d0 100644 --- a/frontend/src/pages/Overview/TableView.js +++ b/frontend/src/pages/Overview/TableView.js @@ -8,7 +8,6 @@ import FilterAltIcon from "@mui/icons-material/FilterAlt"; import PermissionIcon from "@mui/icons-material/LockOpen"; import MoreIcon from "@mui/icons-material/MoreHoriz"; import LaunchIcon from "@mui/icons-material/ZoomIn"; -import { Tooltip } from "@mui/material"; import Box from "@mui/material/Box"; import Checkbox from "@mui/material/Checkbox"; import Fab from "@mui/material/Fab"; @@ -292,7 +291,8 @@ const TableView = (props) => { storeSearchTerm, setPage, setRowsPerPage, - setSort + setSort, + isRoot } = props; const hasSearchTerm = searchTerm !== ""; @@ -536,18 +536,17 @@ const TableView = (props) => { return ( <> - - showCreationDialog()} - color="primary" - data-test="create-project-button" - > - - - + showCreationDialog()} + color="primary" + data-test="create-project-button" + > + {strings.project.add_new_project} + + {this.props.isLiveUpdatesProjectEnabled ? : null} + + {strings.subproject.add_new_subproject} + +
{!this.state.isDataFetched ? (
@@ -121,7 +138,6 @@ class SubProjectContainer extends Component { {
{props.isDataLoading ? null : }
- - - - - - - { const isAllowedToCreateUser = allowedIntents.includes("global.createUser"); return ( <> - {isAllowedToCreateUser ? showDashboardDialog("addUser")} /> : null} + {isAllowedToCreateUser ? ( + showDashboardDialog("addUser")} buttonText={strings.users.add_new_user} /> + ) : null} ); @@ -36,7 +38,9 @@ const renderTab = (props) => { const isAllowedToCreateGroup = allowedIntents.includes("global.createGroup"); return ( <> - {isAllowedToCreateGroup ? showDashboardDialog("addGroup")} /> : null} + {isAllowedToCreateGroup ? ( + showDashboardDialog("addGroup")} buttonText={strings.users.add_new_group} /> + ) : null} {groups.length > 0 ? : } ); diff --git a/frontend/src/pages/Workflows/Workflow.js b/frontend/src/pages/Workflows/Workflow.js index 57b3ab784..da04b80f4 100644 --- a/frontend/src/pages/Workflows/Workflow.js +++ b/frontend/src/pages/Workflows/Workflow.js @@ -1,60 +1,19 @@ import React from "react"; -import ContentAdd from "@mui/icons-material/Add"; import HistoryIcon from "@mui/icons-material/History"; -import { Tooltip } from "@mui/material"; import Card from "@mui/material/Card"; import Fab from "@mui/material/Fab"; -import strings from "../../localizeStrings"; -import { canCreateWorkflowItems } from "../../permissions"; - import WorkflowTable from "./WorkflowTable"; import "./Workflow.scss"; const Workflow = (props) => { - const subprojectStatus = props.status; - const allowedToCreateWorkflows = canCreateWorkflowItems(props.allowedIntents) && !props.isRoot; - const createDisabled = props.workflowSortEnabled - ? props.workflowSortEnabled - : !allowedToCreateWorkflows || subprojectStatus === "closed"; - - let createWorkflowButtonTitle; - // user is allowed to create workflow - if (allowedToCreateWorkflows) { - if (props.projectStatus === "closed") { - createWorkflowButtonTitle = strings.eventTypes.subproject_closed; - } else if (props.workflowSortEnabled) { - createWorkflowButtonTitle = strings.workflow.exit_sort_mode; - } else { - // default value when adding is allowed - createWorkflowButtonTitle = strings.workflow.add_item; - } - - // user is not allowed to create workflow - } else { - createWorkflowButtonTitle = strings.common.no_permissions; - } - return (
{props.isDataLoading ?
: }
{/* Button is disabled either if the user is not allowed to edit or the user is in "sort" mode */} - - - props.showCreateDialog()} - className="add-fab" - > - - - - {!this.props.workflowSortEnabled ? this.addLiveUpdates() : null} + this.props.showCreateDialog()} + className="workflow-add-button" + > + {strings.workflow.add_new_workflow} + +
Date: Wed, 27 Nov 2024 17:00:22 +0100 Subject: [PATCH 12/23] frontend:New tour prototype --- frontend/package-lock.json | 143 ++++++++++ frontend/package.json | 1 + frontend/src/context/tour.js | 87 ++++++ frontend/src/languages/english.js | 3 + frontend/src/pages/Main/Main.js | 45 +-- frontend/src/pages/Main/TourWrapper.js | 265 ++++++++++++++++++ frontend/src/pages/Main/TourWrapper.scss | 54 ++++ frontend/src/pages/Navbar/SideNavCard.js | 28 +- frontend/src/pages/Overview/Overview.js | 11 +- .../src/pages/SubProjects/ProjectDetails.js | 24 +- .../src/pages/SubProjects/SubProjectTable.js | 4 +- .../src/pages/Workflows/SubProjectDetails.js | 31 +- frontend/src/pages/Workflows/WorkflowItem.js | 12 +- 13 files changed, 677 insertions(+), 31 deletions(-) create mode 100644 frontend/src/context/tour.js create mode 100644 frontend/src/pages/Main/TourWrapper.js create mode 100644 frontend/src/pages/Main/TourWrapper.scss diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 852b0fe4d..f38a260f0 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -48,6 +48,7 @@ "react-dom": "^18.2.0", "react-highlight-words": "^0.20.0", "react-infinite-scroller": "^1.2.6", + "react-joyride": "^2.9.3", "react-localization": "^1.0.19", "react-redux": "^8.0.5", "react-router-dom": "^6.11.0", @@ -3139,6 +3140,11 @@ "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.8.tgz", "integrity": "sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==" }, + "node_modules/@gilbarbara/deep-equal": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.3.1.tgz", + "integrity": "sha512-I7xWjLs2YSVMc5gGx1Z3ZG1lgFpITPndpi8Ku55GeEIKpACCPQNS/OTqQbxgTCfq0Ncvcc+CrFov96itVh6Qvw==" + }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -13061,6 +13067,11 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-lite": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-1.2.1.tgz", + "integrity": "sha512-pgF+L5bxC+10hLBgf6R2P4ZZUBOQIIacbdo8YvuCP8/JvsWxG7aZ9p10DYuLtifFci4l3VITphhMlMV4Y+urPw==" + }, "node_modules/is-map": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", @@ -16812,6 +16823,16 @@ "node": ">=4" } }, + "node_modules/popper.js": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", + "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", + "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/possible-typed-array-names": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", @@ -18669,6 +18690,49 @@ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" }, + "node_modules/react-floater": { + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/react-floater/-/react-floater-0.7.9.tgz", + "integrity": "sha512-NXqyp9o8FAXOATOEo0ZpyaQ2KPb4cmPMXGWkx377QtJkIXHlHRAGer7ai0r0C1kG5gf+KJ6Gy+gdNIiosvSicg==", + "dependencies": { + "deepmerge": "^4.3.1", + "is-lite": "^0.8.2", + "popper.js": "^1.16.0", + "prop-types": "^15.8.1", + "tree-changes": "^0.9.1" + }, + "peerDependencies": { + "react": "15 - 18", + "react-dom": "15 - 18" + } + }, + "node_modules/react-floater/node_modules/@gilbarbara/deep-equal": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@gilbarbara/deep-equal/-/deep-equal-0.1.2.tgz", + "integrity": "sha512-jk+qzItoEb0D0xSSmrKDDzf9sheQj/BAPxlgNxgmOaA3mxpUa6ndJLYGZKsJnIVEQSD8zcTbyILz7I0HcnBCRA==" + }, + "node_modules/react-floater/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-floater/node_modules/is-lite": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/is-lite/-/is-lite-0.8.2.tgz", + "integrity": "sha512-JZfH47qTsslwaAsqbMI3Q6HNNjUuq6Cmzzww50TdP5Esb6e1y2sK2UAaZZuzfAzpoI2AkxoPQapZdlDuP6Vlsw==" + }, + "node_modules/react-floater/node_modules/tree-changes": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/tree-changes/-/tree-changes-0.9.3.tgz", + "integrity": "sha512-vvvS+O6kEeGRzMglTKbc19ltLWNtmNt1cpBoSYLj/iEcPVvpJasemKOlxBrmZaCtDJoF+4bwv3m01UKYi8mukQ==", + "dependencies": { + "@gilbarbara/deep-equal": "^0.1.1", + "is-lite": "^0.8.2" + } + }, "node_modules/react-highlight-words": { "version": "0.20.0", "resolved": "https://registry.npmjs.org/react-highlight-words/-/react-highlight-words-0.20.0.tgz", @@ -18713,11 +18777,71 @@ "react": "^0.14.9 || ^15.3.0 || ^16.0.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-innertext": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/react-innertext/-/react-innertext-1.1.5.tgz", + "integrity": "sha512-PWAqdqhxhHIv80dT9znP2KvS+hfkbRovFp4zFYHFFlOoQLRiawIic81gKb3U1wEyJZgMwgs3JoLtwryASRWP3Q==", + "peerDependencies": { + "@types/react": ">=0.0.0 <=99", + "react": ">=0.0.0 <=99" + } + }, "node_modules/react-is": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==" }, + "node_modules/react-joyride": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/react-joyride/-/react-joyride-2.9.3.tgz", + "integrity": "sha512-1+Mg34XK5zaqJ63eeBhqdbk7dlGCFp36FXwsEvgpjqrtyywX2C6h9vr3jgxP0bGHCw8Ilsp/nRDzNVq6HJ3rNw==", + "dependencies": { + "@gilbarbara/deep-equal": "^0.3.1", + "deep-diff": "^1.0.2", + "deepmerge": "^4.3.1", + "is-lite": "^1.2.1", + "react-floater": "^0.7.9", + "react-innertext": "^1.1.5", + "react-is": "^16.13.1", + "scroll": "^3.0.1", + "scrollparent": "^2.1.0", + "tree-changes": "^0.11.2", + "type-fest": "^4.27.0" + }, + "peerDependencies": { + "react": "15 - 18", + "react-dom": "15 - 18" + } + }, + "node_modules/react-joyride/node_modules/deep-diff": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-1.0.2.tgz", + "integrity": "sha512-aWS3UIVH+NPGCD1kki+DCU9Dua032iSsO43LqQpcs4R3+dVv7tX0qBGjiVHJHjplsoUM2XRO/KB92glqc68awg==" + }, + "node_modules/react-joyride/node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-joyride/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-joyride/node_modules/type-fest": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.28.1.tgz", + "integrity": "sha512-LO/+yb3mf46YqfUC7QkkoAlpa7CTYh//V1Xy9+NQ+pKqDqXIq0NTfPfQRwFfCt+if4Qkwb9gzZfsl6E5TkXZGw==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/react-localization": { "version": "1.0.19", "resolved": "https://registry.npmjs.org/react-localization/-/react-localization-1.0.19.tgz", @@ -19689,6 +19813,16 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true }, + "node_modules/scroll": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scroll/-/scroll-3.0.1.tgz", + "integrity": "sha512-pz7y517OVls1maEzlirKO5nPYle9AXsFzTMNJrRGmT951mzpIBy7sNHOg5o/0MQd/NqliCiWnAi0kZneMPFLcg==" + }, + "node_modules/scrollparent": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.1.0.tgz", + "integrity": "sha512-bnnvJL28/Rtz/kz2+4wpBjHzWoEzXhVg/TE8BeVGJHUqE8THNIRnDxDWMktwM+qahvlRdvlLdsQfYe+cuqfZeA==" + }, "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", @@ -21308,6 +21442,15 @@ "node": ">=8" } }, + "node_modules/tree-changes": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/tree-changes/-/tree-changes-0.11.2.tgz", + "integrity": "sha512-4gXlUthrl+RabZw6lLvcCDl6KfJOCmrC16BC5CRdut1EAH509Omgg0BfKLY+ViRlzrvYOTWR0FMS2SQTwzumrw==", + "dependencies": { + "@gilbarbara/deep-equal": "^0.3.1", + "is-lite": "^1.2.0" + } + }, "node_modules/tryer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", diff --git a/frontend/package.json b/frontend/package.json index 044511a04..aac75dd5d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -60,6 +60,7 @@ "react-dom": "^18.2.0", "react-highlight-words": "^0.20.0", "react-infinite-scroller": "^1.2.6", + "react-joyride": "^2.9.3", "react-localization": "^1.0.19", "react-redux": "^8.0.5", "react-router-dom": "^6.11.0", diff --git a/frontend/src/context/tour.js b/frontend/src/context/tour.js new file mode 100644 index 000000000..18e781db7 --- /dev/null +++ b/frontend/src/context/tour.js @@ -0,0 +1,87 @@ +import React, { createContext, useCallback, useContext, useState } from "react"; + +const appState = { + run: false, + stepIndex: 0, + steps: [], + tourActive: false, + beforeStart: null +}; + +export const TourAppContext = createContext({ + state: appState, + setState: () => undefined, + goToNextStepIf: () => undefined, + startTour: () => undefined +}); +TourAppContext.displayName = "TourAppContext"; + +export function TourAppProvider(props) { + const [state, setState] = useState(appState); + + const setPartialState = useCallback((parcial) => { + setState((prevState) => ({ ...prevState, ...parcial })); + }, []); + + const goToNextStepIf = useCallback(() => { + setState((prevState) => { + if (prevState.steps[prevState.stepIndex]?.goToNextStepIf) { + console.log("goToNextStepIf", prevState.steps[prevState.stepIndex].goToNextStepIf); + + const { url, elementNotVisible } = prevState.steps[prevState.stepIndex].goToNextStepIf; + const currentUrl = window.location.pathname; + + if (url && url === currentUrl) { + return { ...prevState, stepIndex: prevState.stepIndex + 1 }; + } else if (elementNotVisible && !document.querySelector(elementNotVisible)) { + return { ...prevState, stepIndex: prevState.stepIndex + 1 }; + } else { + // due to animations it is possible that element is not visible at the moment + setTimeout(() => { + if (elementNotVisible && !document.querySelector(elementNotVisible)) { + setState((prevState) => ({ ...prevState, stepIndex: prevState.stepIndex + 1 })); + } + }, 500); + } + } + return prevState; + }); + }, []); + + const startTour = useCallback(() => { + console.log("startTour", state.beforeStart); + // perform before start actions + if (state.beforeStart) { + if (Array.isArray(state.beforeStart)) { + for (const beforeStartAction of state.beforeStart) { + if (beforeStartAction?.navigateTo) { + if (window.location.href !== beforeStartAction.navigateTo) { + window.location.href = beforeStartAction.navigateTo; + } + + } + } + } + } + setState((prevState) => ({ ...prevState, run: true, stepIndex: 0, tourActive: true })); + }, [state.beforeStart]); + + const value = { + state, + setState: setPartialState, + goToNextStepIf, + startTour + }; + + return ; +} + +export function useTourAppContext() { + const context = useContext(TourAppContext); + + if (!context) { + throw new Error("useTourAppContext must be used within a TourAppProvider"); + } + + return context; +} diff --git a/frontend/src/languages/english.js b/frontend/src/languages/english.js index 927455c17..7e9c84c5d 100644 --- a/frontend/src/languages/english.js +++ b/frontend/src/languages/english.js @@ -130,6 +130,9 @@ const en = { task_status: "Task status", thumbnail: "Thumbnail", total_budget: "Participating Stakeholder", + tour: "Tour", + tourStart: "Start Tour", + tourRestart: "Restart Tour", type: "Type", update: "Update", username: "Login ID", diff --git a/frontend/src/pages/Main/Main.js b/frontend/src/pages/Main/Main.js index c0df016e3..c4eaa7345 100644 --- a/frontend/src/pages/Main/Main.js +++ b/frontend/src/pages/Main/Main.js @@ -2,6 +2,7 @@ import React, { Component, useEffect } from "react"; import { connect } from "react-redux"; import { Navigate, Route, Routes } from "react-router-dom"; +import { TourAppProvider } from "../../context/tour"; import ScrollTop from "../Common/ScrollTop"; import ConfirmationContainer from "../Confirmation/ConfirmationContainer"; import NotFound from "../Error/NotFound"; @@ -18,6 +19,7 @@ import UserManagementContainer from "../Users/UserManagementContainer"; import WorkflowContainer from "../Workflows/WorkflowContainer"; import Footer from "./Footer"; +import TourWrapper from "./TourWrapper"; import "./Main.scss"; @@ -56,26 +58,29 @@ const Main = ({ refreshToken, window }) => { return (
-
- -
-
- - - - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - - -
-
+ +
+ +
+
+ + + + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + +
+
+
); }; diff --git a/frontend/src/pages/Main/TourWrapper.js b/frontend/src/pages/Main/TourWrapper.js new file mode 100644 index 000000000..f725c152c --- /dev/null +++ b/frontend/src/pages/Main/TourWrapper.js @@ -0,0 +1,265 @@ +import React, { useEffect } from "react"; +import Joyride, { ACTIONS, EVENTS } from "react-joyride"; +import { useSelector } from "react-redux"; +import { useNavigate } from "react-router-dom"; + +import CloseIcon from "@mui/icons-material/Close"; +import FormatQuoteIcon from "@mui/icons-material/FormatQuote"; +import { Button, IconButton } from "@mui/material"; + +import { useTourAppContext } from "../../context/tour"; + +import "./TourWrapper.scss"; + +function CustomTooltip(props) { + const { backProps, closeProps, continuous, index, primaryProps, step, tooltipProps } = props; + + return ( +
+ + + +
+ {step.title &&

{step.title}

} +
{step.content}
+ {step.spotlightClicks && ( +
+ + {step.spotlightClicksHint || "Click on highlighted area to continue."} +
+ )} +
+ {/* */} +
+ {index > 0 && ( + + )} + {continuous && step?.hideNextButton !== true && ( + + )} +
+
+
+
+ ); +} + +function findClosestUrl(array, startIndex) { + // Check if the array is valid and the startIndex is within bounds + if (!Array.isArray(array) || startIndex < 0 || startIndex >= array.length) { + return null; + } + + // Iterate backward from the given index + for (let i = startIndex - 1; i >= 0; i--) { + // eslint-disable-next-line no-prototype-builtins + if (array[i].hasOwnProperty("navigateTo")) { + return array[i].navigateTo; + // eslint-disable-next-line no-prototype-builtins + } else if (array[i].hasOwnProperty("goToNextStepIf") && array[i].goToNextStepIf.hasOwnProperty("url")) { + return array[i].goToNextStepIf.url; + } + } + + // If no object with "url" attribute is found, return null + return null; +} + +export default function TourWrapper() { + const firstProjectId = useSelector((state) => state.getIn(["overview", "projects", 0, "data", "id"])); + const firstSubprojectId = useSelector((state) => state.getIn(["detailview", "subProjects", 0, "data", "id"])); + + const { + setState, + state: { run, stepIndex, steps } + } = useTourAppContext(); + + const navigate = useNavigate(); + + useEffect(() => { + setState({ + beforeStart: [ + { + navigateTo: "/projects" + } + ], + steps: [ + { + target: "[data-test*=sidebarmenu-items-main-group]", + content: "You can use main menu to navigate TruBudget application.", + disableBeacon: true, + disableOverlayClose: true + }, + { + target: "[data-test*=sidenav-drawer-backdrop]", + content: "Let's start with list of projects. Click anywhere away from menu.", + disableBeacon: true, + spotlightClicks: true, + spotlightClicksHint: "Click anywhere away from menu to close the main menu.", + hideNextButton: true, + disableOverlayClose: true, + disableOverlay: true, + goToNextStepIf: { elementNotVisible: "[role*=presentation]" } + }, + { + target: "#card-table-view-switch", + content: "You can switch view of your projects between card and table view.", + disableBeacon: true, + hideNextButton: true, + spotlightClicks: true, + goToNextStepIf: { elementNotVisible: "[data-test*=set-table-view]" }, + backAction: { click: "[data-test*=openSideNavbar]", skipBackStepsAmount: 1 } + }, + { + target: "#card-table-view-switch", + content: "Click again to switch back to card view.", + disableBeacon: true, + hideNextButton: true, + spotlightClicks: true, + goToNextStepIf: { elementNotVisible: "[data-test*=set-card-view]" } + }, + { + target: "[data-test*=add-project-button]", + content: "Here you can add more projects.", + disableBeacon: true + }, + { + target: `[data-test*=project-card-${firstProjectId}]`, + content: "Here you can see project overview card with project information.", + disableBeacon: true + }, + { + target: "[data-test*=project-view-button-0]", + content: "Here you can display project details. Click on the button to see project details.", + disableBeacon: true, + spotlightClicks: true, + hideNextButton: true, + disableOverlayClose: true, + goToNextStepIf: { url: `/projects/${firstProjectId}` } + }, + { + target: ".main-container", + content: "This is project details page." + }, + { + target: ".project-details-container", + content: "Here you can see project summary." + }, + { + target: "[data-test*=sub-projects]", + content: "And here is the list of all subprojects of this project." + }, + { + target: "[data-test*=project-projected-budget]", + content: "You can see overal budget.", + disableBeacon: true + }, + { + target: "[data-test*=single-select-container]", + content: "Here you can view the responsible person for this project." + }, + { + target: "[data-test*=project-overal-status]", + content: "Here you can see project overal status." + }, + { + target: "[data-testid*=subproject-0]", + content: "Here you can see individual subproject rows." + }, + { + target: "[data-test*=subproject-view-status-0]", + content: "Individual subprojects might have different status." + }, + { + target: "[data-test*=subproject-view-details-0]", + content: "Here you can display subproject details.", + disableBeacon: true, + spotlightClicks: true, + hideNextButton: true, + disableOverlayClose: true, + goToNextStepIf: { url: `/projects/${firstProjectId}/${firstSubprojectId}` } + }, + { + target: "[data-test*=subproject-projected-budget]", + content: "Subproject budget.", + disableBeacon: true + }, + { + target: "[data-testid*=workflowitem-container-0]", + content: "Each row is an individual workflow action." + } + ] + }); + }, [firstProjectId, firstSubprojectId, setState]); + + const handleCallback = (data) => { + const { action, index, lifecycle, type } = data; + + if (action === "close") { + setState({ run: false, tourActive: false }); + } else if (type === "step:after" && action === "next") { + setState({ stepIndex: index + 1 }); + + if (steps[index]?.navigateTo) { + navigate(steps[index]?.navigateTo); + } + } else if (type === "step:after" && action === "prev") { + // navigate to previous url + if (steps[index - 1]?.navigateTo) { + const prevUrl = findClosestUrl(steps, index - 2) || "/"; + + navigate(prevUrl); + } else if (steps[index - 1]?.goToNextStepIf?.url) { + const prevUrl = findClosestUrl(steps, index - 2) || "/"; + + navigate(prevUrl); + } else if (steps[index]?.backAction) { + const { click } = steps[index].backAction; + + if (click) { + document.querySelector(click)?.click(); + } + } + + const { skipBackStepsAmount } = steps[index].backAction || {}; + const newIndex = skipBackStepsAmount ? index - skipBackStepsAmount - 1 : index - 1; + console.log("newIndex", newIndex, steps[index].backAction); + + // setState((prevState) => ({ ...prevState, stepIndex: newIndex })); + setTimeout(() => setState({ stepIndex: newIndex }), 200); + } else if (type === EVENTS.TARGET_NOT_FOUND) { + setState({ stepIndex: index + (action === ACTIONS.PREV ? -1 : 1) }); + } else if (action === "reset" || lifecycle === "complete") { + setState({ run: false, stepIndex: 0, tourActive: false }); + } + }; + + return ( + + ); +} diff --git a/frontend/src/pages/Main/TourWrapper.scss b/frontend/src/pages/Main/TourWrapper.scss new file mode 100644 index 000000000..a1666e4aa --- /dev/null +++ b/frontend/src/pages/Main/TourWrapper.scss @@ -0,0 +1,54 @@ +.tooltip__body { + z-index: 1000; + background-color: #fff; + border: 1px solid #ccc; + border-radius: 4px; + box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); + padding: 10px; + font-size: 14px; + line-height: 1.5; + color: #333; + max-width: 300px; + min-width: 200px; + white-space: normal; + text-align: left; + cursor: default; + transition: opacity 0.3s; + + .tooltip__close { + float: right; + font-size: 12px; + color: #999; + cursor: pointer; + } + + .tooltip__content_wrapper { + margin-top: 30px; + + .tooltip__clickInfo { + font-size: 0.8em; + margin: 20px 0px; + background-color: #ddd; + color: #666; + font-style: italic; + padding: 10px; + + .tooltip__clickInfo__icon { + position: absolute; + } + + span { + margin-left: 30px; + } + } + + .tooltip__footer { + margin: 10px 0; + min-height: 30px; + + .tooltip__button--primary { + float: right; + } + } + } +} diff --git a/frontend/src/pages/Navbar/SideNavCard.js b/frontend/src/pages/Navbar/SideNavCard.js index 59abd72c9..000c977db 100644 --- a/frontend/src/pages/Navbar/SideNavCard.js +++ b/frontend/src/pages/Navbar/SideNavCard.js @@ -1,6 +1,7 @@ -import React, { useCallback } from "react"; +import React, { useCallback, useEffect } from "react"; import { useNavigate } from "react-router-dom"; +import AutoAwesomeIcon from "@mui/icons-material/AutoAwesome"; import StatusIcon from "@mui/icons-material/Build"; import ProjectIcon from "@mui/icons-material/Business"; import NodesIcon from "@mui/icons-material/DesktopWindows"; @@ -22,6 +23,7 @@ import Subheader from "@mui/material/ListSubheader"; import Stack from "@mui/material/Stack"; import Switch from "@mui/material/Switch"; +import { useTourAppContext } from "../../context/tour"; import strings from "../../localizeStrings"; import DownloadBackupButton from "./DownloadBackupButton"; @@ -62,6 +64,16 @@ const SideNavCard = ({ } }, [disableLiveUpdates, enableLiveUpdates, isLiveUpdateAllProjectsEnabled]); + const { + state: { run }, + startTour, + goToNextStepIf + } = useTourAppContext(); + + useEffect(() => { + goToNextStepIf(); + }); + return (
- + {strings.navigation.selections} navigate("/")} data-test="side-navigation-projects"> @@ -165,6 +177,18 @@ const SideNavCard = ({
+ + + {strings.common.tour} + + + + + + + + + {groups.length ? {strings.users.groups} : null} {groups.map((group) => { diff --git a/frontend/src/pages/Overview/Overview.js b/frontend/src/pages/Overview/Overview.js index 2f58747c6..4d23fe6f3 100644 --- a/frontend/src/pages/Overview/Overview.js +++ b/frontend/src/pages/Overview/Overview.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useEffect } from "react"; import GridViewIcon from "@mui/icons-material/GridView"; import ViewListIcon from "@mui/icons-material/ViewList"; @@ -6,6 +6,7 @@ import Box from "@mui/material/Box"; import IconButton from "@mui/material/IconButton"; import Tooltip from "@mui/material/Tooltip"; +import { useTourAppContext } from "../../context/tour"; import strings from "../../localizeStrings"; import CardView from "./CardView"; @@ -14,6 +15,12 @@ import TableView from "./TableView"; import "./Overview.scss"; const Overview = (props) => { + const { goToNextStepIf } = useTourAppContext(); + + useEffect(() => { + goToNextStepIf(); + }); + return ( @@ -23,6 +30,7 @@ const Overview = (props) => { onClick={() => props.setProjectView("card")} data-test="set-card-view" className="view-button" + id="card-table-view-switch" > @@ -33,6 +41,7 @@ const Overview = (props) => { onClick={() => props.setProjectView("table")} data-test="set-table-view" className="view-button" + id="card-table-view-switch" > diff --git a/frontend/src/pages/SubProjects/ProjectDetails.js b/frontend/src/pages/SubProjects/ProjectDetails.js index 73081929e..9ed1d6752 100644 --- a/frontend/src/pages/SubProjects/ProjectDetails.js +++ b/frontend/src/pages/SubProjects/ProjectDetails.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useEffect, useRef } from "react"; import _isEmpty from "lodash/isEmpty"; import BarChartIcon from "@mui/icons-material/BarChart"; @@ -23,6 +23,7 @@ import TableRow from "@mui/material/TableRow"; import Tooltip from "@mui/material/Tooltip"; import Typography from "@mui/material/Typography"; +import { useTourAppContext } from "../../context/tour.js"; import { formattedTag, statusIconMapping, @@ -77,6 +78,25 @@ const ProjectDetails = (props) => { const hasOpenSubprojects = !_isEmpty(subProjects.find((subproject) => subproject.data.status === "open")); const closeDisabled = !canClose || hasOpenSubprojects || projectStatus === "closed"; const tags = displayTags(projectTags || []); + + const { + setState, + state: { tourActive }, + goToNextStepIf + } = useTourAppContext(); + + const ref = useRef(); + + useEffect(() => { + if (tourActive && !ref.current) { + goToNextStepIf(); + setTimeout(() => { + setState({ run: true }); + }, 1200); + ref.current = true; + } + }); + return (
@@ -157,7 +177,7 @@ const ProjectDetails = (props) => { )}
- + {statusIcon} diff --git a/frontend/src/pages/SubProjects/SubProjectTable.js b/frontend/src/pages/SubProjects/SubProjectTable.js index 71fb851a7..019397d64 100644 --- a/frontend/src/pages/SubProjects/SubProjectTable.js +++ b/frontend/src/pages/SubProjects/SubProjectTable.js @@ -97,7 +97,7 @@ const getTableEntries = ({ if (!redacted && visibleSubproject) { const amountString = displaySubprojectBudget(projectedBudgets); return ( - + {amountString} - + user.id === subprojectValidator); const closingOfSubProjectAllowed = subProjectCanBeClosed(status === "closed", canCloseSubproject, workflowItems); + + const { + setState, + state: { tourActive }, + goToNextStepIf + } = useTourAppContext(); + + const ref = useRef(); + + useEffect(() => { + if (tourActive && !ref.current) { + goToNextStepIf(); + setTimeout(() => { + setState({ run: true }); + }, 1200); + ref.current = true; + } + }); + return (
diff --git a/frontend/src/pages/Workflows/WorkflowItem.js b/frontend/src/pages/Workflows/WorkflowItem.js index ff4519227..57e30895c 100644 --- a/frontend/src/pages/Workflows/WorkflowItem.js +++ b/frontend/src/pages/Workflows/WorkflowItem.js @@ -426,7 +426,11 @@ export const WorkflowItem = ({ }; return ( -
+
{(provided) => (
+
{(provided) => (
Date: Fri, 29 Nov 2024 09:43:46 +0100 Subject: [PATCH 13/23] ui: fix root switch (#2110) --- frontend/src/pages/Navbar/NavbarContainer.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/frontend/src/pages/Navbar/NavbarContainer.js b/frontend/src/pages/Navbar/NavbarContainer.js index 53b3ccaf0..c853032b0 100644 --- a/frontend/src/pages/Navbar/NavbarContainer.js +++ b/frontend/src/pages/Navbar/NavbarContainer.js @@ -30,10 +30,8 @@ import Navbar from "./Navbar"; class NavbarContainer extends Component { componentDidMount() { this.props.fetchActivePeers(); + this.props.setIsRoot(this.props.userId === "root"); - if (this.props.userId === "root") { - this.props.setIsRoot(true); - } if (this.props.location.search) { const queryParameter = queryString.parse(this.props.location.search); const searchTermString = convertToSearchBarString(queryString.stringify(queryParameter)); From f88475e3e2a619ec3271508f1dcb5b52e57f29c3 Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Mon, 2 Dec 2024 13:54:51 +0100 Subject: [PATCH 14/23] frontend:Tour with extended functionality --- frontend/src/context/tour.js | 23 +- frontend/src/pages/Main/TourWrapper.js | 388 ++++++++++++------- frontend/src/pages/Main/TourWrapper.scss | 60 ++- frontend/src/pages/Workflows/WorkflowItem.js | 2 +- 4 files changed, 311 insertions(+), 162 deletions(-) diff --git a/frontend/src/context/tour.js b/frontend/src/context/tour.js index 18e781db7..cfee86ccf 100644 --- a/frontend/src/context/tour.js +++ b/frontend/src/context/tour.js @@ -1,11 +1,14 @@ import React, { createContext, useCallback, useContext, useState } from "react"; +import { useNavigate } from "react-router-dom"; const appState = { run: false, stepIndex: 0, steps: [], tourActive: false, - beforeStart: null + beforeStart: null, + backButtonClicked: false, + goToStepCheck: false }; export const TourAppContext = createContext({ @@ -19,29 +22,27 @@ TourAppContext.displayName = "TourAppContext"; export function TourAppProvider(props) { const [state, setState] = useState(appState); + const navigate = useNavigate(); + const setPartialState = useCallback((parcial) => { setState((prevState) => ({ ...prevState, ...parcial })); }, []); const goToNextStepIf = useCallback(() => { setState((prevState) => { - if (prevState.steps[prevState.stepIndex]?.goToNextStepIf) { - console.log("goToNextStepIf", prevState.steps[prevState.stepIndex].goToNextStepIf); - + if (prevState?.steps[prevState?.stepIndex]?.goToNextStepIf) { const { url, elementNotVisible } = prevState.steps[prevState.stepIndex].goToNextStepIf; const currentUrl = window.location.pathname; if (url && url === currentUrl) { return { ...prevState, stepIndex: prevState.stepIndex + 1 }; - } else if (elementNotVisible && !document.querySelector(elementNotVisible)) { - return { ...prevState, stepIndex: prevState.stepIndex + 1 }; } else { // due to animations it is possible that element is not visible at the moment setTimeout(() => { if (elementNotVisible && !document.querySelector(elementNotVisible)) { setState((prevState) => ({ ...prevState, stepIndex: prevState.stepIndex + 1 })); } - }, 500); + }, 800); } } return prevState; @@ -49,22 +50,20 @@ export function TourAppProvider(props) { }, []); const startTour = useCallback(() => { - console.log("startTour", state.beforeStart); // perform before start actions if (state.beforeStart) { if (Array.isArray(state.beforeStart)) { for (const beforeStartAction of state.beforeStart) { if (beforeStartAction?.navigateTo) { - if (window.location.href !== beforeStartAction.navigateTo) { - window.location.href = beforeStartAction.navigateTo; + if (window.location.pathname !== beforeStartAction.navigateTo) { + navigate(beforeStartAction.navigateTo); } - } } } } setState((prevState) => ({ ...prevState, run: true, stepIndex: 0, tourActive: true })); - }, [state.beforeStart]); + }, [navigate, state.beforeStart]); const value = { state, diff --git a/frontend/src/pages/Main/TourWrapper.js b/frontend/src/pages/Main/TourWrapper.js index f725c152c..5877e7fb6 100644 --- a/frontend/src/pages/Main/TourWrapper.js +++ b/frontend/src/pages/Main/TourWrapper.js @@ -1,33 +1,92 @@ -import React, { useEffect } from "react"; -import Joyride, { ACTIONS, EVENTS } from "react-joyride"; +import React, { useEffect, useState } from "react"; +import Joyride, { EVENTS } from "react-joyride"; import { useSelector } from "react-redux"; import { useNavigate } from "react-router-dom"; +import AdsClickIcon from "@mui/icons-material/AdsClick"; import CloseIcon from "@mui/icons-material/Close"; import FormatQuoteIcon from "@mui/icons-material/FormatQuote"; -import { Button, IconButton } from "@mui/material"; +import InfoIcon from "@mui/icons-material/Info"; +import PlayCircleFilledIcon from "@mui/icons-material/PlayCircleFilled"; +import { Button, IconButton, List, ListItemButton, ListItemIcon, ListItemText, ListSubheader } from "@mui/material"; import { useTourAppContext } from "../../context/tour"; +import strings from "../../localizeStrings"; import "./TourWrapper.scss"; function CustomTooltip(props) { - const { backProps, closeProps, continuous, index, primaryProps, step, tooltipProps } = props; + const { backProps, closeProps, continuous, index, skipProps, primaryProps, step, tooltipProps } = props; + const navigate = useNavigate(); + + const { setState } = useTourAppContext(); + + const [chapterListVisible, setChapterListVisible] = useState(false); + + const toggleChapterList = () => { + setChapterListVisible(!chapterListVisible); + return false; + }; + + const goTo = (chapter) => { + setState({ stepIndex: chapter.stepIndex - 1, goToStepCheck: true }); + + // change url using react router + navigate(chapter.navigateTo); + }; return (
- {step.title &&

{step.title}

} -
{step.content}
- {step.spotlightClicks && ( -
- - {step.spotlightClicksHint || "Click on highlighted area to continue."} -
- )} +
+ {index === 0 ? ( + + ) : step.spotlightClicks ? ( + <> + +

Click & Try

+ + ) : ( + + )} +
+
+ {step.title &&

{step.title}

} +
{step.content}
+ {step.spotlightClicks && ( +
+ + {step.spotlightClicksHint || "Click on highlighted area to continue."} +
+ )} +
+
+ +
+
+ + Jump to specific chapter + + } + > + {step?.chapterList?.map((chapter, index) => ( + goTo(chapter)}> + {index + 1}. + + + ))} + +
{/* )} - {continuous && step?.hideNextButton !== true && ( + {continuous && step?.hideNextButton !== true ? ( + ) : ( + )}
@@ -71,131 +134,152 @@ function findClosestUrl(array, startIndex) { return null; } +const initialState = ({ firstProjectId, firstSubprojectId }) => { + const beforeStart = [ + { + navigateTo: "/projects" + } + ]; + const steps = [ + { + target: "body", + content: "Welcome to TruBudget application tour.", + disableBeacon: true + }, + { + target: "[data-test*=sidebarmenu-items-main-group]", + content: "You can use main menu to navigate TruBudget application.", + disableBeacon: true, + disableOverlayClose: true, + chapter: { title: "Main menu", navigateTo: "/projects" } + }, + { + target: "[data-test*=sidenav-drawer-backdrop]", + content: "Let's start with list of projects. Click anywhere away from menu.", + disableBeacon: true, + spotlightClicks: true, + spotlightClicksHint: "Click anywhere away from menu to close the main menu.", + hideNextButton: true, + disableOverlayClose: true, + disableOverlay: true, + goToNextStepIf: { elementNotVisible: "[role*=presentation]" } + }, + { + target: "#card-table-view-switch", + content: "Here you can switch view of your projects between card and table view.", + disableBeacon: true, + chapter: { title: "Projects view", navigateTo: "/projects" }, + backAction: { click: "[data-test*=openSideNavbar]", ifNotVisible: "[data-test*=sidenav-drawer-backdrop]" } + }, + { + target: "[data-test*=add-project-button]", + content: "Here you can add more projects.", + disableBeacon: true, + backAction: { click: "[data-test*=set-table-view]" } + }, + { + target: `[data-test*=project-card-${firstProjectId}]`, + content: "Here you can see project overview card with project information.", + disableBeacon: true + }, + { + target: "[data-test*=project-view-button-0]", + content: "Here you can display project details. Click on the button to see project details.", + disableBeacon: true, + spotlightClicks: true, + hideNextButton: true, + disableOverlayClose: true, + goToNextStepIf: { url: `/projects/${firstProjectId}` } + }, + { + target: ".main-container", + content: "This is project details page.", + chapter: { title: "Project detail", navigateTo: `/projects/${firstProjectId}` } + }, + { + target: ".project-details-container", + content: "Here you can see project summary." + }, + { + target: "[data-test*=sub-projects]", + content: "And here is the list of all subprojects of this project." + }, + { + target: "[data-test*=project-projected-budget]", + content: "You can see overal budget.", + disableBeacon: true + }, + { + target: "[data-test*=single-select-container]", + content: "Here you can view the responsible person for this project." + }, + { + target: "[data-test*=project-overal-status]", + content: "Here you can see project overal status." + }, + { + target: "[data-testid*=subproject-0]", + content: "Here you can see individual subproject rows." + }, + { + target: "[data-test*=subproject-view-status-0]", + content: "Individual subprojects might have different status." + }, + { + target: "[data-test*=subproject-view-details-0]", + content: "Here you can display subproject details.", + disableBeacon: true, + spotlightClicks: true, + hideNextButton: true, + disableOverlayClose: true, + goToNextStepIf: { url: `/projects/${firstProjectId}/${firstSubprojectId}` } + }, + { + target: "[data-test*=subproject-projected-budget]", + content: "Subproject budget.", + disableBeacon: true + }, + { + target: "[data-testid*=workflowitem-container-0]", + content: "Each row is an individual workflow action." + }, + { + target: "[data-testid*=workflowitem-status-0]", + content: "Each action has own status. You cannot edit the closed actions." + }, + { + target: ".bulk-actions", + content: "You can also perform bulk actions on selected workflow actions." + } + ]; + + const chapterList = steps + .map((step, index) => ({ ...step, stepIndex: index })) + .filter((step) => step.chapter) + .map((step) => ({ ...step.chapter, stepIndex: step.stepIndex })); + const stepsWithChapterList = steps.map((step) => ({ ...step, chapterList })); + + return { + beforeStart, + steps: stepsWithChapterList + }; +}; + export default function TourWrapper() { const firstProjectId = useSelector((state) => state.getIn(["overview", "projects", 0, "data", "id"])); const firstSubprojectId = useSelector((state) => state.getIn(["detailview", "subProjects", 0, "data", "id"])); const { setState, - state: { run, stepIndex, steps } + state: { run, stepIndex, steps, goToStepCheck } } = useTourAppContext(); + const [helpers, setHelpers] = useState({}); + const navigate = useNavigate(); useEffect(() => { - setState({ - beforeStart: [ - { - navigateTo: "/projects" - } - ], - steps: [ - { - target: "[data-test*=sidebarmenu-items-main-group]", - content: "You can use main menu to navigate TruBudget application.", - disableBeacon: true, - disableOverlayClose: true - }, - { - target: "[data-test*=sidenav-drawer-backdrop]", - content: "Let's start with list of projects. Click anywhere away from menu.", - disableBeacon: true, - spotlightClicks: true, - spotlightClicksHint: "Click anywhere away from menu to close the main menu.", - hideNextButton: true, - disableOverlayClose: true, - disableOverlay: true, - goToNextStepIf: { elementNotVisible: "[role*=presentation]" } - }, - { - target: "#card-table-view-switch", - content: "You can switch view of your projects between card and table view.", - disableBeacon: true, - hideNextButton: true, - spotlightClicks: true, - goToNextStepIf: { elementNotVisible: "[data-test*=set-table-view]" }, - backAction: { click: "[data-test*=openSideNavbar]", skipBackStepsAmount: 1 } - }, - { - target: "#card-table-view-switch", - content: "Click again to switch back to card view.", - disableBeacon: true, - hideNextButton: true, - spotlightClicks: true, - goToNextStepIf: { elementNotVisible: "[data-test*=set-card-view]" } - }, - { - target: "[data-test*=add-project-button]", - content: "Here you can add more projects.", - disableBeacon: true - }, - { - target: `[data-test*=project-card-${firstProjectId}]`, - content: "Here you can see project overview card with project information.", - disableBeacon: true - }, - { - target: "[data-test*=project-view-button-0]", - content: "Here you can display project details. Click on the button to see project details.", - disableBeacon: true, - spotlightClicks: true, - hideNextButton: true, - disableOverlayClose: true, - goToNextStepIf: { url: `/projects/${firstProjectId}` } - }, - { - target: ".main-container", - content: "This is project details page." - }, - { - target: ".project-details-container", - content: "Here you can see project summary." - }, - { - target: "[data-test*=sub-projects]", - content: "And here is the list of all subprojects of this project." - }, - { - target: "[data-test*=project-projected-budget]", - content: "You can see overal budget.", - disableBeacon: true - }, - { - target: "[data-test*=single-select-container]", - content: "Here you can view the responsible person for this project." - }, - { - target: "[data-test*=project-overal-status]", - content: "Here you can see project overal status." - }, - { - target: "[data-testid*=subproject-0]", - content: "Here you can see individual subproject rows." - }, - { - target: "[data-test*=subproject-view-status-0]", - content: "Individual subprojects might have different status." - }, - { - target: "[data-test*=subproject-view-details-0]", - content: "Here you can display subproject details.", - disableBeacon: true, - spotlightClicks: true, - hideNextButton: true, - disableOverlayClose: true, - goToNextStepIf: { url: `/projects/${firstProjectId}/${firstSubprojectId}` } - }, - { - target: "[data-test*=subproject-projected-budget]", - content: "Subproject budget.", - disableBeacon: true - }, - { - target: "[data-testid*=workflowitem-container-0]", - content: "Each row is an individual workflow action." - } - ] - }); + setState(initialState({ firstProjectId, firstSubprojectId })); }, [firstProjectId, firstSubprojectId, setState]); const handleCallback = (data) => { @@ -203,13 +287,27 @@ export default function TourWrapper() { if (action === "close") { setState({ run: false, tourActive: false }); + return; } else if (type === "step:after" && action === "next") { - setState({ stepIndex: index + 1 }); + if (steps[index]?.spotlightClicks) { + const clickElement = steps[index].target; + if (clickElement) { + document.querySelector(clickElement)?.click(); + } + return; + } + + if (goToStepCheck) { + setState({ goToStepCheck: false }); + } else { + setState({ stepIndex: index + 1 }); + } if (steps[index]?.navigateTo) { navigate(steps[index]?.navigateTo); } } else if (type === "step:after" && action === "prev") { + let backAction = () => {}; // navigate to previous url if (steps[index - 1]?.navigateTo) { const prevUrl = findClosestUrl(steps, index - 2) || "/"; @@ -220,30 +318,46 @@ export default function TourWrapper() { navigate(prevUrl); } else if (steps[index]?.backAction) { - const { click } = steps[index].backAction; + const { click, ifNotVisible } = steps[index].backAction; - if (click) { - document.querySelector(click)?.click(); + if (click && (!ifNotVisible || !document.querySelector(ifNotVisible))) { + backAction = () => document.querySelector(click)?.click(); } } const { skipBackStepsAmount } = steps[index].backAction || {}; const newIndex = skipBackStepsAmount ? index - skipBackStepsAmount - 1 : index - 1; - console.log("newIndex", newIndex, steps[index].backAction); - // setState((prevState) => ({ ...prevState, stepIndex: newIndex })); - setTimeout(() => setState({ stepIndex: newIndex }), 200); + setTimeout(() => { + setState({ stepIndex: newIndex }); + backAction(); + }, 200); } else if (type === EVENTS.TARGET_NOT_FOUND) { - setState({ stepIndex: index + (action === ACTIONS.PREV ? -1 : 1) }); + // TODO resolve when target not found in the future } else if (action === "reset" || lifecycle === "complete") { setState({ run: false, stepIndex: 0, tourActive: false }); } }; + const getHelpers = (helpers) => { + setHelpers(helpers); + }; + + // Wrapper component to inject helpers into CustomTooltip + const WrappedTooltip = (props) => { + return ( + + ); + }; + return (
-
+
From 5e15e5d7ab1be310fc8404005bca1c35e651e5ab Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Wed, 4 Dec 2024 15:10:30 +0100 Subject: [PATCH 15/23] frontend:Add translations --- frontend/src/languages/english.js | 37 ++++++++++++ frontend/src/languages/french.js | 37 ++++++++++++ frontend/src/languages/georgian.js | 37 ++++++++++++ frontend/src/languages/german.js | 37 ++++++++++++ frontend/src/languages/portuguese.js | 37 ++++++++++++ frontend/src/pages/Main/TourWrapper.js | 76 ++++++++++-------------- frontend/src/pages/Main/TourWrapper.scss | 1 - 7 files changed, 218 insertions(+), 44 deletions(-) diff --git a/frontend/src/languages/english.js b/frontend/src/languages/english.js index 7e9c84c5d..acdb736b6 100644 --- a/frontend/src/languages/english.js +++ b/frontend/src/languages/english.js @@ -717,6 +717,43 @@ const en = { german: "German", portuguese: "Portuguese", georgian: "Georgian" + }, + + tour: { + back: "Back", + chaptersHeading: "Jump to specific chapter", + clickTry: "Click & Try", + clickOnArea: "Click on highlighted area to continue.", + hideChapters: "Hide tour chapters", + mainMenu: "Main menu", + menuCloseHint: "Click anywhere away from menu to close the main menu.", + next: "Next", + projectDetail: "Project detail", + projectsView: "Projects view", + showChapters: "Show tour chapters", + skip: "Skip", + steps: { + addProject: "Here you can add more projects.", + bulkActions: "You can also perform bulk actions on selected workflow actions.", + menu: "You can use main menu to navigate TruBudget application.", + menuClose: "Let's start with list of projects. Click anywhere away from menu.", + projectBudget: "You can see overal budget.", + projectCard: "Here you can see project overview card with project information.", + projectDetails: "This is project details page.", + projectDetailsButton: "Here you can display project details. Click on the button to see project details.", + projectOwner: "Here you can view the responsible person for this project.", + projectStatus: "Here you can see project overal status.", + projectSummary: "Here you can see project summary.", + subProjects: "And here is the list of all subprojects of this project.", + subprojectBudget: "Subproject budget.", + subprojectDetails: "Here you can display subproject details.", + subprojectRow: "Here you can see individual subproject rows.", + subprojectStatus: "Individual subprojects might have different status.", + tableView: "Here you can switch view of your projects between card and table view.", + welcome: "Welcome to TruBudget application tour.", + workflowActionRow: "Each row is an individual workflow action.", + workflowActionStatus: "Each action has own status. You cannot edit the closed actions." + } } }; diff --git a/frontend/src/languages/french.js b/frontend/src/languages/french.js index a5d255b32..b0e2c15eb 100644 --- a/frontend/src/languages/french.js +++ b/frontend/src/languages/french.js @@ -724,6 +724,43 @@ const fr = { german: "Allemand", portuguese: "Portugues", georgian: "Géorgien" + }, + + tour: { + back: "Back", + chaptersHeading: "Jump to specific chapter", + clickTry: "Click & Try", + clickOnArea: "Click on highlighted area to continue.", + hideChapters: "Hide tour chapters", + mainMenu: "Main menu", + menuCloseHint: "Click anywhere away from menu to close the main menu.", + next: "Next", + projectDetail: "Project detail", + projectsView: "Projects view", + showChapters: "Show tour chapters", + skip: "Skip", + steps: { + addProject: "Here you can add more projects.", + bulkActions: "You can also perform bulk actions on selected workflow actions.", + menu: "You can use main menu to navigate TruBudget application.", + menuClose: "Let's start with list of projects. Click anywhere away from menu.", + projectBudget: "You can see overal budget.", + projectCard: "Here you can see project overview card with project information.", + projectDetails: "This is project details page.", + projectDetailsButton: "Here you can display project details. Click on the button to see project details.", + projectOwner: "Here you can view the responsible person for this project.", + projectStatus: "Here you can see project overal status.", + projectSummary: "Here you can see project summary.", + subProjects: "And here is the list of all subprojects of this project.", + subprojectBudget: "Subproject budget.", + subprojectDetails: "Here you can display subproject details.", + subprojectRow: "Here you can see individual subproject rows.", + subprojectStatus: "Individual subprojects might have different status.", + tableView: "Here you can switch view of your projects between card and table view.", + welcome: "Welcome to TruBudget application tour.", + workflowActionRow: "Each row is an individual workflow action.", + workflowActionStatus: "Each action has own status. You cannot edit the closed actions." + } } }; diff --git a/frontend/src/languages/georgian.js b/frontend/src/languages/georgian.js index bf5a7d098..45f3f4de4 100644 --- a/frontend/src/languages/georgian.js +++ b/frontend/src/languages/georgian.js @@ -716,6 +716,43 @@ const ka = { german: "გერმანული", portuguese: "პორტუგალიური", georgian: "ქართული ენა" + }, + + tour: { + back: "Back", + chaptersHeading: "Jump to specific chapter", + clickTry: "Click & Try", + clickOnArea: "Click on highlighted area to continue.", + hideChapters: "Hide tour chapters", + mainMenu: "Main menu", + menuCloseHint: "Click anywhere away from menu to close the main menu.", + next: "Next", + projectDetail: "Project detail", + projectsView: "Projects view", + showChapters: "Show tour chapters", + skip: "Skip", + steps: { + addProject: "Here you can add more projects.", + bulkActions: "You can also perform bulk actions on selected workflow actions.", + menu: "You can use main menu to navigate TruBudget application.", + menuClose: "Let's start with list of projects. Click anywhere away from menu.", + projectBudget: "You can see overal budget.", + projectCard: "Here you can see project overview card with project information.", + projectDetails: "This is project details page.", + projectDetailsButton: "Here you can display project details. Click on the button to see project details.", + projectOwner: "Here you can view the responsible person for this project.", + projectStatus: "Here you can see project overal status.", + projectSummary: "Here you can see project summary.", + subProjects: "And here is the list of all subprojects of this project.", + subprojectBudget: "Subproject budget.", + subprojectDetails: "Here you can display subproject details.", + subprojectRow: "Here you can see individual subproject rows.", + subprojectStatus: "Individual subprojects might have different status.", + tableView: "Here you can switch view of your projects between card and table view.", + welcome: "Welcome to TruBudget application tour.", + workflowActionRow: "Each row is an individual workflow action.", + workflowActionStatus: "Each action has own status. You cannot edit the closed actions." + } } }; diff --git a/frontend/src/languages/german.js b/frontend/src/languages/german.js index 2dcf71d14..083165fe6 100644 --- a/frontend/src/languages/german.js +++ b/frontend/src/languages/german.js @@ -716,6 +716,43 @@ const de = { german: "Deutsch", portuguese: "Portugiesisch", georgian: "Georgisch" + }, + + tour: { + back: "Back", + chaptersHeading: "Jump to specific chapter", + clickTry: "Click & Try", + clickOnArea: "Click on highlighted area to continue.", + hideChapters: "Hide tour chapters", + mainMenu: "Main menu", + menuCloseHint: "Click anywhere away from menu to close the main menu.", + next: "Next", + projectDetail: "Project detail", + projectsView: "Projects view", + showChapters: "Show tour chapters", + skip: "Skip", + steps: { + addProject: "Here you can add more projects.", + bulkActions: "You can also perform bulk actions on selected workflow actions.", + menu: "You can use main menu to navigate TruBudget application.", + menuClose: "Let's start with list of projects. Click anywhere away from menu.", + projectBudget: "You can see overal budget.", + projectCard: "Here you can see project overview card with project information.", + projectDetails: "This is project details page.", + projectDetailsButton: "Here you can display project details. Click on the button to see project details.", + projectOwner: "Here you can view the responsible person for this project.", + projectStatus: "Here you can see project overal status.", + projectSummary: "Here you can see project summary.", + subProjects: "And here is the list of all subprojects of this project.", + subprojectBudget: "Subproject budget.", + subprojectDetails: "Here you can display subproject details.", + subprojectRow: "Here you can see individual subproject rows.", + subprojectStatus: "Individual subprojects might have different status.", + tableView: "Here you can switch view of your projects between card and table view.", + welcome: "Welcome to TruBudget application tour.", + workflowActionRow: "Each row is an individual workflow action.", + workflowActionStatus: "Each action has own status. You cannot edit the closed actions." + } } }; diff --git a/frontend/src/languages/portuguese.js b/frontend/src/languages/portuguese.js index cf6d94891..05517addd 100644 --- a/frontend/src/languages/portuguese.js +++ b/frontend/src/languages/portuguese.js @@ -718,6 +718,43 @@ const pt = { german: "Deutsch", portuguese: "Português", georgian: "Georgiano" + }, + + tour: { + back: "Back", + chaptersHeading: "Jump to specific chapter", + clickTry: "Click & Try", + clickOnArea: "Click on highlighted area to continue.", + hideChapters: "Hide tour chapters", + mainMenu: "Main menu", + menuCloseHint: "Click anywhere away from menu to close the main menu.", + next: "Next", + projectDetail: "Project detail", + projectsView: "Projects view", + showChapters: "Show tour chapters", + skip: "Skip", + steps: { + addProject: "Here you can add more projects.", + bulkActions: "You can also perform bulk actions on selected workflow actions.", + menu: "You can use main menu to navigate TruBudget application.", + menuClose: "Let's start with list of projects. Click anywhere away from menu.", + projectBudget: "You can see overal budget.", + projectCard: "Here you can see project overview card with project information.", + projectDetails: "This is project details page.", + projectDetailsButton: "Here you can display project details. Click on the button to see project details.", + projectOwner: "Here you can view the responsible person for this project.", + projectStatus: "Here you can see project overal status.", + projectSummary: "Here you can see project summary.", + subProjects: "And here is the list of all subprojects of this project.", + subprojectBudget: "Subproject budget.", + subprojectDetails: "Here you can display subproject details.", + subprojectRow: "Here you can see individual subproject rows.", + subprojectStatus: "Individual subprojects might have different status.", + tableView: "Here you can switch view of your projects between card and table view.", + welcome: "Welcome to TruBudget application tour.", + workflowActionRow: "Each row is an individual workflow action.", + workflowActionStatus: "Each action has own status. You cannot edit the closed actions." + } } }; diff --git a/frontend/src/pages/Main/TourWrapper.js b/frontend/src/pages/Main/TourWrapper.js index 5877e7fb6..718ed4932 100644 --- a/frontend/src/pages/Main/TourWrapper.js +++ b/frontend/src/pages/Main/TourWrapper.js @@ -15,9 +15,7 @@ import strings from "../../localizeStrings"; import "./TourWrapper.scss"; -function CustomTooltip(props) { - const { backProps, closeProps, continuous, index, skipProps, primaryProps, step, tooltipProps } = props; - +function CustomTooltip({ backProps, closeProps, continuous, index, skipProps, primaryProps, step, tooltipProps }) { const navigate = useNavigate(); const { setState } = useTourAppContext(); @@ -47,7 +45,7 @@ function CustomTooltip(props) { ) : step.spotlightClicks ? ( <> -

Click & Try

+

{strings.tour.clickTry}

) : ( @@ -59,13 +57,13 @@ function CustomTooltip(props) { {step.spotlightClicks && (
- {step.spotlightClicksHint || "Click on highlighted area to continue."} + {step.spotlightClicksHint || strings.tour.clickOnArea}
)}
@@ -75,7 +73,7 @@ function CustomTooltip(props) { aria-labelledby="nested-list-subheader" subheader={ - Jump to specific chapter + {strings.tour.chaptersHeading} } > @@ -88,22 +86,19 @@ function CustomTooltip(props) {
- {/* */}
{index > 0 && ( )} {continuous && step?.hideNextButton !== true ? ( ) : ( )}
@@ -143,22 +138,22 @@ const initialState = ({ firstProjectId, firstSubprojectId }) => { const steps = [ { target: "body", - content: "Welcome to TruBudget application tour.", + content: strings.tour.steps.welcome, disableBeacon: true }, { target: "[data-test*=sidebarmenu-items-main-group]", - content: "You can use main menu to navigate TruBudget application.", + content: strings.tour.steps.menu, disableBeacon: true, disableOverlayClose: true, - chapter: { title: "Main menu", navigateTo: "/projects" } + chapter: { title: strings.tour.mainMenu, navigateTo: "/projects" } }, { target: "[data-test*=sidenav-drawer-backdrop]", - content: "Let's start with list of projects. Click anywhere away from menu.", + content: strings.tour.steps.menuClose, disableBeacon: true, spotlightClicks: true, - spotlightClicksHint: "Click anywhere away from menu to close the main menu.", + spotlightClicksHint: strings.tour.menuCloseHint, hideNextButton: true, disableOverlayClose: true, disableOverlay: true, @@ -166,25 +161,25 @@ const initialState = ({ firstProjectId, firstSubprojectId }) => { }, { target: "#card-table-view-switch", - content: "Here you can switch view of your projects between card and table view.", + content: strings.tour.steps.tableView, disableBeacon: true, - chapter: { title: "Projects view", navigateTo: "/projects" }, + chapter: { title: strings.tour.projectsView, navigateTo: "/projects" }, backAction: { click: "[data-test*=openSideNavbar]", ifNotVisible: "[data-test*=sidenav-drawer-backdrop]" } }, { target: "[data-test*=add-project-button]", - content: "Here you can add more projects.", + content: strings.tour.steps.addProject, disableBeacon: true, backAction: { click: "[data-test*=set-table-view]" } }, { target: `[data-test*=project-card-${firstProjectId}]`, - content: "Here you can see project overview card with project information.", + content: strings.tour.steps.projectCard, disableBeacon: true }, { target: "[data-test*=project-view-button-0]", - content: "Here you can display project details. Click on the button to see project details.", + content: strings.tour.steps.projectDetailsButton, disableBeacon: true, spotlightClicks: true, hideNextButton: true, @@ -193,41 +188,41 @@ const initialState = ({ firstProjectId, firstSubprojectId }) => { }, { target: ".main-container", - content: "This is project details page.", - chapter: { title: "Project detail", navigateTo: `/projects/${firstProjectId}` } + content: strings.tour.steps.projectDetails, + chapter: { title: strings.tour.projectDetail, navigateTo: `/projects/${firstProjectId}` } }, { target: ".project-details-container", - content: "Here you can see project summary." + content: strings.tour.steps.projectSummary }, { target: "[data-test*=sub-projects]", - content: "And here is the list of all subprojects of this project." + content: strings.tour.steps.subProjects }, { target: "[data-test*=project-projected-budget]", - content: "You can see overal budget.", + content: strings.tour.steps.projectBudget, disableBeacon: true }, { target: "[data-test*=single-select-container]", - content: "Here you can view the responsible person for this project." + content: strings.tour.steps.projectOwner }, { target: "[data-test*=project-overal-status]", - content: "Here you can see project overal status." + content: strings.tour.steps.projectStatus }, { target: "[data-testid*=subproject-0]", - content: "Here you can see individual subproject rows." + content: strings.tour.steps.subprojectRow }, { target: "[data-test*=subproject-view-status-0]", - content: "Individual subprojects might have different status." + content: strings.tour.steps.subprojectStatus }, { target: "[data-test*=subproject-view-details-0]", - content: "Here you can display subproject details.", + content: strings.tour.steps.subprojectDetails, disableBeacon: true, spotlightClicks: true, hideNextButton: true, @@ -236,20 +231,20 @@ const initialState = ({ firstProjectId, firstSubprojectId }) => { }, { target: "[data-test*=subproject-projected-budget]", - content: "Subproject budget.", + content: strings.tour.steps.subprojectBudget, disableBeacon: true }, { target: "[data-testid*=workflowitem-container-0]", - content: "Each row is an individual workflow action." + content: strings.tour.steps.workflowActionRow }, { target: "[data-testid*=workflowitem-status-0]", - content: "Each action has own status. You cannot edit the closed actions." + content: strings.tour.steps.workflowActionStatus }, { target: ".bulk-actions", - content: "You can also perform bulk actions on selected workflow actions." + content: strings.tour.steps.bulkActions } ]; @@ -345,12 +340,7 @@ export default function TourWrapper() { // Wrapper component to inject helpers into CustomTooltip const WrappedTooltip = (props) => { - return ( - - ); + return ; }; return ( diff --git a/frontend/src/pages/Main/TourWrapper.scss b/frontend/src/pages/Main/TourWrapper.scss index 52888d831..2142d908b 100644 --- a/frontend/src/pages/Main/TourWrapper.scss +++ b/frontend/src/pages/Main/TourWrapper.scss @@ -8,7 +8,6 @@ font-size: 14px; line-height: 1.5; color: #333; - min-width: 400px; min-width: 200px; white-space: normal; text-align: left; From bdac5de09716b04b16c0d09df37e11ee68811f20 Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Thu, 5 Dec 2024 13:45:29 +0100 Subject: [PATCH 16/23] frontend:Add timeout clearing for useEffect --- frontend/src/pages/SubProjects/ProjectDetails.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/SubProjects/ProjectDetails.js b/frontend/src/pages/SubProjects/ProjectDetails.js index 9ed1d6752..6cbd2c45c 100644 --- a/frontend/src/pages/SubProjects/ProjectDetails.js +++ b/frontend/src/pages/SubProjects/ProjectDetails.js @@ -88,13 +88,19 @@ const ProjectDetails = (props) => { const ref = useRef(); useEffect(() => { + let timer; if (tourActive && !ref.current) { goToNextStepIf(); - setTimeout(() => { + timer = setTimeout(() => { setState({ run: true }); }, 1200); ref.current = true; } + return () => { + if (timer) { + clearTimeout(timer); + } + }; }); return ( From bc46549bd38d0ec874f25e3bcfad64e78aee9167 Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Thu, 5 Dec 2024 14:33:22 +0100 Subject: [PATCH 17/23] frontend:Add timeout clearing for useEffect --- frontend/src/pages/Workflows/SubProjectDetails.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/Workflows/SubProjectDetails.js b/frontend/src/pages/Workflows/SubProjectDetails.js index ae1193890..63af25bf8 100644 --- a/frontend/src/pages/Workflows/SubProjectDetails.js +++ b/frontend/src/pages/Workflows/SubProjectDetails.js @@ -92,13 +92,19 @@ const SubProjectDetails = ({ const ref = useRef(); useEffect(() => { + let timer; if (tourActive && !ref.current) { goToNextStepIf(); - setTimeout(() => { + timer = setTimeout(() => { setState({ run: true }); }, 1200); ref.current = true; } + return () => { + if (timer) { + clearTimeout(timer); + } + }; }); return ( From 7aebbc9872a4edd87dfa4e169b5169a598201508 Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Thu, 5 Dec 2024 14:54:02 +0100 Subject: [PATCH 18/23] frontend:Add missing translations --- frontend/src/languages/french.js | 3 +++ frontend/src/languages/georgian.js | 3 +++ frontend/src/languages/german.js | 3 +++ frontend/src/languages/portuguese.js | 3 +++ 4 files changed, 12 insertions(+) diff --git a/frontend/src/languages/french.js b/frontend/src/languages/french.js index b0e2c15eb..03e4a954d 100644 --- a/frontend/src/languages/french.js +++ b/frontend/src/languages/french.js @@ -131,6 +131,9 @@ const fr = { task_status: "Etat de la tâche", thumbnail: "Vignette", total_budget: "Coût total", + tour: "Tour", + tourStart: "Start Tour", + tourRestart: "Restart Tour", type: "Type", update: "Mettre à jour", username: "Identifiant", diff --git a/frontend/src/languages/georgian.js b/frontend/src/languages/georgian.js index 45f3f4de4..623942413 100644 --- a/frontend/src/languages/georgian.js +++ b/frontend/src/languages/georgian.js @@ -130,6 +130,9 @@ const ka = { task_status: "დავალების სტატუსი", thumbnail: "Thumbnail", total_budget: "მთლიანი ბიუჯეტი", + tour: "Tour", + tourStart: "Start Tour", + tourRestart: "Restart Tour", type: "ტიპი", update: "განახლება", username: "მომხმარებლის სახელი", diff --git a/frontend/src/languages/german.js b/frontend/src/languages/german.js index 083165fe6..64a6d0f01 100644 --- a/frontend/src/languages/german.js +++ b/frontend/src/languages/german.js @@ -126,6 +126,9 @@ const de = { invalid_format: "Ungültiges Format", task_status: "Task status", total_budget: "Gesamtes Budget", + tour: "Tour", + tourStart: "Start Tour", + tourRestart: "Restart Tour", thumbnail: "Thumbnail", type: "Typ", update: "Update", diff --git a/frontend/src/languages/portuguese.js b/frontend/src/languages/portuguese.js index 05517addd..c65eb7dc0 100644 --- a/frontend/src/languages/portuguese.js +++ b/frontend/src/languages/portuguese.js @@ -131,6 +131,9 @@ const pt = { task_status: "Status da tarefa", thumbnail: "Miniatura", total_budget: "Orçamento total", + tour: "Tour", + tourStart: "Start Tour", + tourRestart: "Restart Tour", type: "Tipo", update: "Atualizar", username: "Id do usuário", From d67c8d4572dd3291e2adb8f444e64777804684c3 Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Fri, 6 Dec 2024 14:33:28 +0100 Subject: [PATCH 19/23] frontend:Change styles to em --- frontend/src/pages/Main/TourWrapper.scss | 30 ++++++++++++------------ 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/frontend/src/pages/Main/TourWrapper.scss b/frontend/src/pages/Main/TourWrapper.scss index 2142d908b..ebf3afea0 100644 --- a/frontend/src/pages/Main/TourWrapper.scss +++ b/frontend/src/pages/Main/TourWrapper.scss @@ -4,11 +4,11 @@ border: 1px solid #ccc; border-radius: 4px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); - padding: 10px; - font-size: 14px; + padding: 0.8em; + font-size: 1em; line-height: 1.5; color: #333; - min-width: 200px; + min-width: 13em; white-space: normal; text-align: left; cursor: default; @@ -16,7 +16,7 @@ .tooltip__close { float: right; - font-size: 12px; + font-size: 0.8em; color: #999; cursor: pointer; } @@ -26,23 +26,23 @@ .tooltip__typeIcon { width: 120px; - padding-left: 14px; + padding-left: 0.8em; float: left; p { text-align: left; - margin-left: 10px; + margin-left: 0.6empx; } } .tooltip__navigationLink { - margin-left: 5px; + margin-left: 0.35em; } .tooltip__text { - min-width: 300px; - min-height: 140px; - padding-left: 120px; + min-width: 19em; + min-height: 9em; + padding-left: 7.5em; .tooltip__content { font-size: 1.2em; @@ -50,25 +50,25 @@ .tooltip__clickInfo { font-size: 0.8em; - margin: 20px 12px; + margin: 1.25em 0.8em; background-color: #ddd; color: #666; font-style: italic; - padding: 10px; + padding: 0.8em; .tooltip__clickInfo__icon { position: absolute; } span { - margin-left: 30px; + margin-left: 2em; } } } .tooltip__footer { - margin: 10px 0; - min-height: 30px; + margin: 0.8em 0; + min-height: 2em; .tooltip__button--primary { float: right; From d5147337e9738e2b2ebb83639e2fae79de6b8faf Mon Sep 17 00:00:00 2001 From: Peter Baus Date: Fri, 6 Dec 2024 14:45:04 +0100 Subject: [PATCH 20/23] frontend:Change styles to rem --- frontend/src/pages/Main/TourWrapper.scss | 34 ++++++++++++------------ 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/frontend/src/pages/Main/TourWrapper.scss b/frontend/src/pages/Main/TourWrapper.scss index ebf3afea0..4a67006ef 100644 --- a/frontend/src/pages/Main/TourWrapper.scss +++ b/frontend/src/pages/Main/TourWrapper.scss @@ -4,11 +4,11 @@ border: 1px solid #ccc; border-radius: 4px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); - padding: 0.8em; - font-size: 1em; + padding: 0.8rem; + font-size: 1rem; line-height: 1.5; color: #333; - min-width: 13em; + min-width: 13rem; white-space: normal; text-align: left; cursor: default; @@ -16,7 +16,7 @@ .tooltip__close { float: right; - font-size: 0.8em; + font-size: 0.8rem; color: #999; cursor: pointer; } @@ -26,49 +26,49 @@ .tooltip__typeIcon { width: 120px; - padding-left: 0.8em; + padding-left: 0.8rem; float: left; p { text-align: left; - margin-left: 0.6empx; + margin-left: 0.6rempx; } } .tooltip__navigationLink { - margin-left: 0.35em; + margin-left: 0.35rem; } .tooltip__text { - min-width: 19em; - min-height: 9em; - padding-left: 7.5em; + min-width: 19rem; + min-height: 9rem; + padding-left: 7.5rem; .tooltip__content { - font-size: 1.2em; + font-size: 1.2rem; } .tooltip__clickInfo { - font-size: 0.8em; - margin: 1.25em 0.8em; + font-size: 0.8rem; + margin: 1.25rem 0.8rem; background-color: #ddd; color: #666; font-style: italic; - padding: 0.8em; + padding: 0.8rem; .tooltip__clickInfo__icon { position: absolute; } span { - margin-left: 2em; + margin-left: 2rem; } } } .tooltip__footer { - margin: 0.8em 0; - min-height: 2em; + margin: 0.8rem 0; + min-height: 2rem; .tooltip__button--primary { float: right; From bace23564d76cb89c3fa0f7e03c85196c4a32c74 Mon Sep 17 00:00:00 2001 From: "martin.jurcoglina" Date: Tue, 10 Dec 2024 14:13:21 +0100 Subject: [PATCH 21/23] fixed vulnerabilities --- api/package-lock.json | 6 +-- blockchain/package-lock.json | 26 ++++++----- email-notification-service/package-lock.json | 46 +++++++++++--------- excel-export-service/package-lock.json | 46 +++++++++++--------- storage-service/package-lock.json | 26 ++++++----- 5 files changed, 83 insertions(+), 67 deletions(-) diff --git a/api/package-lock.json b/api/package-lock.json index 4dde96c9a..87c402516 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -6720,9 +6720,9 @@ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", "funding": [ { "type": "github", diff --git a/blockchain/package-lock.json b/blockchain/package-lock.json index 505c123f0..5bf0977e7 100644 --- a/blockchain/package-lock.json +++ b/blockchain/package-lock.json @@ -1849,9 +1849,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2859,16 +2859,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -2882,7 +2882,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -2897,6 +2897,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -5612,9 +5616,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/pathval": { "version": "1.1.1", diff --git a/email-notification-service/package-lock.json b/email-notification-service/package-lock.json index ee6d79b00..50806d351 100644 --- a/email-notification-service/package-lock.json +++ b/email-notification-service/package-lock.json @@ -1672,9 +1672,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2533,16 +2533,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -2556,7 +2556,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -2571,6 +2571,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express-rate-limit": { @@ -4281,9 +4285,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/path-type": { "version": "4.0.0", @@ -6843,9 +6847,9 @@ "dev": true }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -7471,9 +7475,9 @@ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, "express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", @@ -7494,7 +7498,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -8756,9 +8760,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "path-type": { "version": "4.0.0", diff --git a/excel-export-service/package-lock.json b/excel-export-service/package-lock.json index add6af66e..e79e4a78e 100644 --- a/excel-export-service/package-lock.json +++ b/excel-export-service/package-lock.json @@ -1576,9 +1576,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2360,16 +2360,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -2383,7 +2383,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -2398,6 +2398,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express-rate-limit": { @@ -4075,9 +4079,9 @@ "dev": true }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/path-type": { "version": "4.0.0", @@ -6575,9 +6579,9 @@ "dev": true }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -7157,9 +7161,9 @@ } }, "express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", @@ -7180,7 +7184,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -8456,9 +8460,9 @@ "dev": true }, "path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "path-type": { "version": "4.0.0", diff --git a/storage-service/package-lock.json b/storage-service/package-lock.json index c62ef4604..61bf92bb6 100644 --- a/storage-service/package-lock.json +++ b/storage-service/package-lock.json @@ -1938,9 +1938,9 @@ "dev": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -2677,16 +2677,16 @@ } }, "node_modules/express": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz", - "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -2700,7 +2700,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -2715,6 +2715,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express-rate-limit": { @@ -4638,9 +4642,9 @@ } }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/path-type": { "version": "4.0.0", From 55206d400de06ce558c4938bbd9adc6e5af0e25c Mon Sep 17 00:00:00 2001 From: "martin.jurcoglina" Date: Tue, 10 Dec 2024 16:45:33 +0100 Subject: [PATCH 22/23] few more vulnerabilities fixed --- e2e-test/package-lock.json | 6 +++--- frontend/package-lock.json | 30 +++++++++++++++++------------- 2 files changed, 20 insertions(+), 16 deletions(-) diff --git a/e2e-test/package-lock.json b/e2e-test/package-lock.json index d3b9ce63f..0a35f7a83 100644 --- a/e2e-test/package-lock.json +++ b/e2e-test/package-lock.json @@ -1116,9 +1116,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", diff --git a/frontend/package-lock.json b/frontend/package-lock.json index f38a260f0..5c24ff35e 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -9146,9 +9146,9 @@ "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==" }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -11254,9 +11254,9 @@ } }, "node_modules/express": { - "version": "4.21.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", - "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dev": true, "dependencies": { "accepts": "~1.3.8", @@ -11278,7 +11278,7 @@ "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.10", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", "qs": "6.13.0", "range-parser": "~1.2.1", @@ -11293,6 +11293,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -16050,9 +16054,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", "dev": true, "funding": [ { @@ -16624,9 +16628,9 @@ "dev": true }, "node_modules/path-to-regexp": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", - "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "dev": true }, "node_modules/path-type": { From e3c318d19785f0d62396ba39fcc389ea30d55166 Mon Sep 17 00:00:00 2001 From: Peter Baus <11943691+galethil@users.noreply.github.com> Date: Tue, 17 Dec 2024 10:55:39 +0100 Subject: [PATCH 23/23] bump to v2.18.0 (#2118) Co-authored-by: Peter Baus --- CHANGELOG.md | 24 ++++++++++++++++++- api/environment-variables.md | 4 ++-- api/package-lock.json | 4 ++-- api/package.json | 2 +- blockchain/package-lock.json | 4 ++-- blockchain/package.json | 2 +- .../api-environment-variables.md | 6 +++-- e2e-test/package-lock.json | 4 ++-- e2e-test/package.json | 2 +- email-notification-service/package-lock.json | 4 ++-- email-notification-service/package.json | 2 +- excel-export-service/package-lock.json | 4 ++-- excel-export-service/package.json | 2 +- frontend-collector/package-lock.json | 4 ++-- frontend-collector/package.json | 2 +- frontend/package-lock.json | 4 ++-- frontend/package.json | 2 +- provisioning/package-lock.json | 10 ++++---- provisioning/package.json | 2 +- storage-service/package-lock.json | 4 ++-- storage-service/package.json | 2 +- 21 files changed, 59 insertions(+), 35 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d602fc6eb..5a41c8d64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,27 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. +## [2.18.0] - 2024-12-17 + + + +### Added + +- UI: More descriptive Add buttons [#2107](https://github.com/openkfw/TruBudget/issues/2107) +- api: Configurable refresh token and session token length [#2103](https://github.com/openkfw/TruBudget/issues/2103) + + +### Changed + +- UI: Refactor styles for Workflow action [#2105](https://github.com/openkfw/TruBudget/issues/2105) +- UI: New TruBudget background [#2097](https://github.com/openkfw/TruBudget/issues/2097) + + +### Fixed + +- ui: Permissions not loaded correctly when switching users [#2109](https://github.com/openkfw/TruBudget/issues/2109) + + ## [2.17.0] - 2024-11-11 @@ -1308,7 +1329,8 @@ If you install TruBudget freshly, this is not an issue for you. If you update to - Updated translation keys and language-specific formatting. - Fixed bug where the subproject permissions dialog would break the details view of another project. -[unreleased]: https://github.com/openkfw/TruBudget/compare/v2.17.0...main +[unreleased]: https://github.com/openkfw/TruBudget/compare/v2.18.0...main +[2.18.0]: https://github.com/openkfw/TruBudget/compare/v2.17.0...v2.18.0 [2.17.0]: https://github.com/openkfw/TruBudget/compare/v2.16.0...v2.17.0 [2.16.0]: https://github.com/openkfw/TruBudget/compare/v2.15.0...v2.16.0 [2.15.0]: https://github.com/openkfw/TruBudget/compare/v2.14.0...v2.15.0 diff --git a/api/environment-variables.md b/api/environment-variables.md index f1c560588..e02045828 100644 --- a/api/environment-variables.md +++ b/api/environment-variables.md @@ -8,7 +8,7 @@ | **ORGANIZATION** | no | MyOrga | In the blockchain network, each node is represented by its organization name. This environment variable sets this organization name. It is used to create the organization stream on the blockchain and is also displayed in the frontend's top right corner. Minimal value: 1. Maximal value: 100. | | **PORT** | no | 8091 | The port used to expose the API for your installation. Example: If you run TruBudget locally and set API_PORT to `8080`, you can reach the API via `localhost:8080/api`. Value is a port with minimal value 0 and maximal value 65535 | | **ORGANIZATION_VAULT_SECRET** | yes | - | This is the key to en-/decrypt user data of an organization. If you want to add a new node for your organization, you want users to be able to log in on either node. **Caution:** If you want to run TruBudget in production, make sure NOT to use the default value from the `.env.example` file! Minimal value: 5. | -| **ROOT_SECRET** | no | 053dd957aaf03669c9c4e04abba7672326f53c18a2186404cf35bee647b5a350 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | +| **ROOT_SECRET** | no | 361d01c8e3ad45279314d5d28f9b6ac12634c90a7f9fdd719518c7b71349dc35 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | | **MULTICHAIN_RPC_HOST** | no | localhost | The IP address of the blockchain (not multichain daemon,but they are usally the same) you want to connect to. | | **MULTICHAIN_RPC_PORT** | no | 8000 | The Port of the blockchain where the server is available for incoming http connections (e.g. readiness, versions, backup and restore) | | **MULTICHAIN_PROTOCOL** | no | http | The protocol used to expose the multichain daemon of your Trubudget blockchain installation(bc). The protocol used to connect to the multichain daemon(api). This will be used internally for the communication between the API and the multichain daemon. | @@ -18,7 +18,7 @@ | **BLOCKCHAIN_PROTOCOL** | no | http | The Protocol of the blockchain where the server is available for incoming http connections. | | **SWAGGER_BASEPATH** `deprecated` | no | - | deprecated This variable was used to choose which environment (prod or test) is used for testing the requests. The variable is deprecated now, as the Swagger documentation can be used for the prod and test environment separately. Example values: "/". | | **JWT_ALGORITHM** | no | HS256 | Algorithm used for signing and verifying JWTs. | -| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 7dbc33dda75136597081 | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | +| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 9e33c0e28cd6ca61ce4d | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | | **JWT_PUBLIC_KEY** | yes (if JWT_ALGORITHM=RS256) | - | If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded public key for RSA. | | **DOCUMENT_FEATURE_ENABLED** | no | - | If true, all uploaded documents are stored using trubudget's storage-service. If false, the document feature of TruBudget is disabled, and trying to upload a document will result in an error. | | **DOCUMENT_EXTERNAL_LINKS_ENABLED** | no | - | If true, it is possible to use external documents links also without TruBudget's storage-service. If false, the external documents links feature of TruBudget is still possible to use in case DOCUMENT_FEATURE_ENABLED equals "true". | diff --git a/api/package-lock.json b/api/package-lock.json index 87c402516..3ff7b08b2 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-api", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-api", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@azure/monitor-opentelemetry": "^1.1.1", diff --git a/api/package.json b/api/package.json index 4c21e6754..c53d6aa2a 100644 --- a/api/package.json +++ b/api/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-api", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/blockchain/package-lock.json b/blockchain/package-lock.json index 5bf0977e7..fb81b0c80 100644 --- a/blockchain/package-lock.json +++ b/blockchain/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-blockchain", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-blockchain", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@kubernetes/client-node": "1.0.0-rc6", diff --git a/blockchain/package.json b/blockchain/package.json index e5174948e..50aa30f65 100644 --- a/blockchain/package.json +++ b/blockchain/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-blockchain", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/docs/environment-variables/api-environment-variables.md b/docs/environment-variables/api-environment-variables.md index 5083d3d91..e02045828 100644 --- a/docs/environment-variables/api-environment-variables.md +++ b/docs/environment-variables/api-environment-variables.md @@ -8,7 +8,7 @@ | **ORGANIZATION** | no | MyOrga | In the blockchain network, each node is represented by its organization name. This environment variable sets this organization name. It is used to create the organization stream on the blockchain and is also displayed in the frontend's top right corner. Minimal value: 1. Maximal value: 100. | | **PORT** | no | 8091 | The port used to expose the API for your installation. Example: If you run TruBudget locally and set API_PORT to `8080`, you can reach the API via `localhost:8080/api`. Value is a port with minimal value 0 and maximal value 65535 | | **ORGANIZATION_VAULT_SECRET** | yes | - | This is the key to en-/decrypt user data of an organization. If you want to add a new node for your organization, you want users to be able to log in on either node. **Caution:** If you want to run TruBudget in production, make sure NOT to use the default value from the `.env.example` file! Minimal value: 5. | -| **ROOT_SECRET** | no | 8d0ab15d21b6d2c48d834bad4785a52126573906c84e6120506fce35f5ce4708 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | +| **ROOT_SECRET** | no | 361d01c8e3ad45279314d5d28f9b6ac12634c90a7f9fdd719518c7b71349dc35 | The root secret is the password for the root user. If you start with an empty blockchain, the root user is needed to add other users, approve new nodes,.. If you don't set a value via the environment variable, the API generates one randomly and prints it to the console **Caution:** If you want to run TruBudget in production, make sure to set a secure root secret. Minimal value: 8. | | **MULTICHAIN_RPC_HOST** | no | localhost | The IP address of the blockchain (not multichain daemon,but they are usally the same) you want to connect to. | | **MULTICHAIN_RPC_PORT** | no | 8000 | The Port of the blockchain where the server is available for incoming http connections (e.g. readiness, versions, backup and restore) | | **MULTICHAIN_PROTOCOL** | no | http | The protocol used to expose the multichain daemon of your Trubudget blockchain installation(bc). The protocol used to connect to the multichain daemon(api). This will be used internally for the communication between the API and the multichain daemon. | @@ -18,7 +18,7 @@ | **BLOCKCHAIN_PROTOCOL** | no | http | The Protocol of the blockchain where the server is available for incoming http connections. | | **SWAGGER_BASEPATH** `deprecated` | no | - | deprecated This variable was used to choose which environment (prod or test) is used for testing the requests. The variable is deprecated now, as the Swagger documentation can be used for the prod and test environment separately. Example values: "/". | | **JWT_ALGORITHM** | no | HS256 | Algorithm used for signing and verifying JWTs. | -| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 9640f5d6c8af1bc72275 | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | +| **JWT_SECRET** | yes (if JWT_ALGORITHM=RS256) | 9e33c0e28cd6ca61ce4d | A string that is used to sign JWT which are created by the authenticate endpoint of the api. If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded private key for RSA. | | **JWT_PUBLIC_KEY** | yes (if JWT_ALGORITHM=RS256) | - | If JWT_ALGORITHM is set to `RS256`, this is required and holds BASE64 encoded PEM encoded public key for RSA. | | **DOCUMENT_FEATURE_ENABLED** | no | - | If true, all uploaded documents are stored using trubudget's storage-service. If false, the document feature of TruBudget is disabled, and trying to upload a document will result in an error. | | **DOCUMENT_EXTERNAL_LINKS_ENABLED** | no | - | If true, it is possible to use external documents links also without TruBudget's storage-service. If false, the external documents links feature of TruBudget is still possible to use in case DOCUMENT_FEATURE_ENABLED equals "true". | @@ -38,6 +38,8 @@ | **AUTHPROXY_JWS_SIGNATURE** | yes (if AUTHPROXY_ENABLED=true) | - | secret/public key/certificate for verifying auth proxy token signature | | **DB_TYPE** | no | pg | - | | **SQL_DEBUG** | no | - | - | +| **REFRESH_TOKEN_EXPIRATION** | no | 8 | Refresh token expiration in hours. After a defined time, login session will be invalid. | +| **ACCESS_TOKEN_EXPIRATION** | no | 0.25 | Access token expiration in hours | | **REFRESH_TOKEN_STORAGE** | no | - | Determining the type of storage for refresh tokens. Allowed values are "db" or "memory" or blank to disable refresh token functionality. | | **API_DB_USER** | yes (if REFRESH_TOKEN_STORAGE=db) | postgres | Database user for database connection, e.g. postgres | | **API_DB_PASSWORD** | yes (if REFRESH_TOKEN_STORAGE=db) | test | Database password for database connection | diff --git a/e2e-test/package-lock.json b/e2e-test/package-lock.json index 0a35f7a83..f0d0b6cfa 100644 --- a/e2e-test/package-lock.json +++ b/e2e-test/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-e2e-test", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-e2e-test", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "async-each": "^1.0.6", diff --git a/e2e-test/package.json b/e2e-test/package.json index c34021365..c0274bb90 100644 --- a/e2e-test/package.json +++ b/e2e-test/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-e2e-test", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/email-notification-service/package-lock.json b/email-notification-service/package-lock.json index 50806d351..58da30a25 100644 --- a/email-notification-service/package-lock.json +++ b/email-notification-service/package-lock.json @@ -1,12 +1,12 @@ { "name": "email-notification", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "email-notification", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@hapi/joi": "^17.1.1", diff --git a/email-notification-service/package.json b/email-notification-service/package.json index fc5888ca1..9d4dba87d 100644 --- a/email-notification-service/package.json +++ b/email-notification-service/package.json @@ -1,7 +1,7 @@ { "name": "email-notification", "description": "Sends notification-emails to provided SMTP server to identities saved in a database of choice.", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/excel-export-service/package-lock.json b/excel-export-service/package-lock.json index e79e4a78e..c07f5bc70 100644 --- a/excel-export-service/package-lock.json +++ b/excel-export-service/package-lock.json @@ -1,12 +1,12 @@ { "name": "excel-export", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "excel-export", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "axios": "^1.7.4", diff --git a/excel-export-service/package.json b/excel-export-service/package.json index 7635cdbed..059450495 100644 --- a/excel-export-service/package.json +++ b/excel-export-service/package.json @@ -1,6 +1,6 @@ { "name": "excel-export", - "version": "2.17.0", + "version": "2.18.0", "private": true, "description": "Export TruBudget data to Excel", "main": "src/index.js", diff --git a/frontend-collector/package-lock.json b/frontend-collector/package-lock.json index 09b8da421..4eb21feac 100644 --- a/frontend-collector/package-lock.json +++ b/frontend-collector/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-frontend-collector", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-frontend-collector", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@fastify/cors": "^8.4.1", diff --git a/frontend-collector/package.json b/frontend-collector/package.json index 8f3ebc221..8fd161f23 100644 --- a/frontend-collector/package.json +++ b/frontend-collector/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-frontend-collector", - "version": "2.17.0", + "version": "2.18.0", "description": "Collector for TruBudget frontend logs", "main": "serve.js", "repository": { diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 5c24ff35e..ac3783195 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-frontend", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-frontend", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@babel/runtime": "^7.21.5", diff --git a/frontend/package.json b/frontend/package.json index aac75dd5d..b626ceba0 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-frontend", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/provisioning/package-lock.json b/provisioning/package-lock.json index 95eadfe2a..31e6bde68 100644 --- a/provisioning/package-lock.json +++ b/provisioning/package-lock.json @@ -1,12 +1,12 @@ { "name": "trubudget-provisioning", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "trubudget-provisioning", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "axios": "^1.7.4", @@ -1029,9 +1029,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", diff --git a/provisioning/package.json b/provisioning/package.json index bf1f2b928..92260f939 100644 --- a/provisioning/package.json +++ b/provisioning/package.json @@ -1,6 +1,6 @@ { "name": "trubudget-provisioning", - "version": "2.17.0", + "version": "2.18.0", "private": true, "repository": { "type": "git", diff --git a/storage-service/package-lock.json b/storage-service/package-lock.json index 61bf92bb6..ef9dacd06 100644 --- a/storage-service/package-lock.json +++ b/storage-service/package-lock.json @@ -1,12 +1,12 @@ { "name": "storage-service", - "version": "2.17.0", + "version": "2.18.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "storage-service", - "version": "2.17.0", + "version": "2.18.0", "license": "GPL-3.0-or-later", "dependencies": { "@azure/identity": "^4.0.1", diff --git a/storage-service/package.json b/storage-service/package.json index 2aee900c6..a513c9003 100644 --- a/storage-service/package.json +++ b/storage-service/package.json @@ -1,6 +1,6 @@ { "name": "storage-service", - "version": "2.17.0", + "version": "2.18.0", "private": true, "description": "Handles the TruBudget object storage", "main": "src/index.js",

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�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