From 115e20990f0474aebe4aaa69d77eb5c4d82a31c5 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 18 Apr 2021 14:10:29 +0200 Subject: [PATCH 01/77] feat: response interceptor (#520) * refactor(handlers): rename to _handlers * feat(handler): response interceptor --- .github/docs/response-interceptor-lenna.png | Bin 0 -> 791025 bytes CHANGELOG.md | 4 + README.md | 35 ++++++ examples/response-interceptor/index.js | 82 ++++++++++++ package.json | 2 +- recipes/response-interceptor.md | 130 ++++++++++++++++++++ src/{handlers.ts => _handlers.ts} | 0 src/handlers/index.ts | 1 + src/handlers/public.ts | 1 + src/handlers/response-interceptor.ts | 81 ++++++++++++ src/http-proxy-middleware.ts | 2 +- src/index.ts | 2 + test/e2e/_utils.ts | 2 +- test/e2e/http-proxy-middleware.spec.ts | 10 +- test/e2e/response-interceptor.spec.ts | 73 +++++++++++ test/unit/handlers.spec.ts | 2 +- 16 files changed, 417 insertions(+), 10 deletions(-) create mode 100644 .github/docs/response-interceptor-lenna.png create mode 100644 examples/response-interceptor/index.js create mode 100644 recipes/response-interceptor.md rename src/{handlers.ts => _handlers.ts} (100%) create mode 100644 src/handlers/index.ts create mode 100644 src/handlers/public.ts create mode 100644 src/handlers/response-interceptor.ts create mode 100644 test/e2e/response-interceptor.spec.ts diff --git a/.github/docs/response-interceptor-lenna.png b/.github/docs/response-interceptor-lenna.png new file mode 100644 index 0000000000000000000000000000000000000000..5e329f24594e6ac18c2f5aac3afbcad46bab04bb GIT binary patch literal 791025 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 iZvX#IeCJg_Y$2_{zbanI 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

Bm;!POw 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

kC8HN<~HM9f1(vb0rBb6>ul}lB7ok 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 z z5xjV4wMfzWJxr;@6yvj5EPCzz*kie1nlD4H_35lCygJ^pP+j@+j^qDU|%UbPa zaNvW~fr6{ByQjMwLD6-U@dhZL8`5;|(Q_ZtG}%Y;nPA;3&)ofTU|t$xoq`bHI1}MJ zO}EFOa)L_Kc~a#J6JL1?!Mly&LM?EGy4o$CK7;cjO_$HWCU?9GC3$N{p5tL4J;D{a z3>-tuh5kY?UI`$YVE)uJ=+k7F8bf#6NcSEB{J9L^Kf(7Mq3l~rf1*uun570*kdIE` z`QZoGL+t;(x&}|+4mo^Hu*!b{(7YmreRsN?nKeG4E2=oe%xTQi#}lG;i2GFXI=IiXO9GHV?*C^8hO%b$rDV~+-l zu~nhVTcR0rJr*SJm!`&?n<`V?Z?Anp&7>(Ync+V#b_~PZBIRu6t00sP2p<{8=c?13 zqBFFG?BNr3i}#$PMXZb7VL()eO`h&Zwf&saL#Pj;^pZ&BH-W`>MB{Z_1Xd>%W=*2e zqhl>gnc}dXO=|Tga!uZg_1}|SMv<+SyH1uj6)aBARI|HQ?ws zW9c`YXS4s&VqAG@b< z*`};xQPDTFXeb?YE$Bw2=OK)c=~FTM}q5gdByCex&qM$}DJpXld%3Q<=w;&VN)*$*?Qb zwj7bEU5L*ywWw&?m@_c_S2*isni5(TMaybNrY)5}sEut~+4Rs29CnhnQ^(iVIO!mJaBl;DC|xmxjBQE&c#7U`He7@QsWCHt=e2qyD7DxDJ1Aa<6xXeJ7~~H zD+t)6ImB*ENiac?CP5oZ7+%Cl2^8E)5t&s?VJi3`E&TmFYtr{Li$^5dV@8ZLhc~M! zKopRUn;U-E`h^UD_37z}u=LkPM$LnV&%#`FR8Y#27Y@xQDM;R~Z%PTMgfuS8S^`(7 z5oLP10c8Y+-IE`ySN;UH&n&z_H(8uKElUmlFO6g9YLGBhVKA#6P&ZJ}WW5n8w{9i! zZXyBuQC9m|7yAI>hm=mYD|m^k*q$u?j=63~Y z8MkFD&Zi2>myonqa<6Y@uWt^iXDYo{YPGvQ&6@(@i^jlLrOv}YosWNFPhK$x%8f_L zF;~WoTUkH5w--P4ie5A*J~|bi=)|ANVs3?`{YJ_85BHjh`%@%G7)9(M(PnqxsM;au zUT51+u6Opzw^Y>w2LIN;kgwpm{mE~)gJsAaM4$U1=K8~@t+%VQW=9`iEih~G6CY@G%-U4b(}*={t^YPi5k|k{%%-$ zK2*v5v3J0F*nU>Ncfl&S#OmZlf97GFV~L(njNeSIMrjut-5hc_C(uytEg07omeVpD z*c*x}}*i!RNPZ{~}d;SMUxnX%_r(#RVl)0;WfWh%v){4X#%){wOFr@3Ko zdFXo4ks8g=8Jd60+B;*C!>&FOJ{e zOX~^j=vEN29PxPTz`od)kn9_h98j@rhy-i@g2ZeME4K+j$PM7B#&(Ia!JGw1FU+^K zFMg_D!n~ueQs;)8*P*yW2yxT@^VurA8n>g{(H|Jre!W};jcI_cI2$!qAPV*zufGCT zz0A`#xMcO5EiK;60dH5OI^_ND3QU*kV0`=j{Nh!UlrGsHM#>o zR3DMBdjEvmeT@$AtYq$;oc2UVef_x^sn4zDOK=G^_PFD3E(X@}d>ZDRi+b(bx~$3> z?uzM6i5cyMiq-#9uz@NZ=c#O^Q!~HFUx6iV?_BLVWR|?{-AI?#tSNC zRK>Yn+`0vmb~KD+rYoS%H~9Ev_}=%%=yQj_V+q!2CBpUl+Ju7ZyMS-LkKx;c?9@m5 zk!ICU$$SnY;*Fkt10V;cQ6GKJ7OXHgpksrX6&@RVynnUwas7)L#5r<&*XRJn=;RLA z5;}YyoW;NYsVp^Wo$y`9<4er!iX+LMR+uC$HCHMi3!32R`u5)72=FD2^X$ks}us}Zph$t617;W)MUn9QMm?N5||Blc$X+ATo@@a|5AG7ONDSU4?V|{ z#-eBW#v90tovTW{7kKhV*!nr*)Bxrk`te~VG)t}6!ir(4jZ{y4*rhO=Z4R@&h0;Bq*x60{ zNvr?(PwA#h;ZD1i6XYj>rAW>Ewn#?*R7+XBVRVY3NL}S%7XOEz_xeE+KHvml+RGqV@EX(`4RS>`B zoek6=Mvw1Op_?vloA{Rz62f%=+4dQ|~-N^712%B3JuBZvSx5KYMKcRlak9)L2*X(Wvx zD9M)5BA}KEF=2(2>5heH1Us4!x;HBj9REf{!z&($FW3N!zzZSddnv{dHMk0nJdI>T zXUOtLQ&mYlqK;bssYYjBv8QCzIN5Ce%4{H+bRI_Owpk;UF?c@UrC#Dga@#)$X@HR+ z8eZjsG_KtVOOECZ5jyF*KS@Ftqm+b`MEtNQx?M^s%si?i&D)FZQ>p@nYW(-XA<|g= zt!C@O1kvs$%IaoT%L2`w4XFaw7c9PUSok|3%?3;~CxQ?Go4heynz7tZZu;m($f+@C zr-=~vjb!(+m_P760Ov@KT@0Tg9KQuTE8joxQ2b|dHLioWuHrcmxd^R4ah;&+en8+m z27QGUPpemr?Efw03l5W+vg9%+f>?(bZg9^RlQ;;`PUc38Qnx!#RgOLniD*})TyGrA zbV;^)hGFMEcZEEAhR}Y-U$%{HNFPfwMG|--wI77vHY3+a<<47XcmIK9cqcw>2vyH< z#>8mL`?m>Wa4YYQjWZID&pfqqZ9nSipp0B;HbtkMSlK!%Se|5zTvq2892)^ee%I%Uri&1tW@0 zB*UfFQ#+%BeEy;Y<@w=sT@p(^f%z%HsR>O|JEI|Hpy9G$g4TE}RHZhlN3Um?Zl_eb zr9~CSZxI)y_JI|~CI+_~TXGw&xMHsb=U*BtjSX*fOMv7`-{6HPtX^axeZt(<7S)Tw z`b};9{rsP4ehkmATDDIQkEee3ukx*>O)pljMOLpt)AiF~A}ygD}Y|i#d97 zdrFTEF*6&*!sANX;7M@$&4?zP1zQ4F$RHv_+&V}&o5ld86jK$EX(~woI!>zqcx}v@R53J$;`AX78yU+Ug@n zSt~);V+_xQRO3C_8pobBq2lqUWO2vLaHoAS2njd)(=^i5v|jBI4~LN*{%4R}3ui2$CXFp*%w~4aiCpeq$rWXoS?dh<*%CdO-DxaQ*wVdL z5@3g*8UFV03kD_gCvl#|S=MqZ;0gA@uiPrIU zx*K%78&^{v|M_r1JOt{2 z3jEtNvAR2OC8aT~BtowgY^VIw&WWUZ3!{^Iv70{Lmm<}hBFU!&#g{78w_?Vd?(j2T z>C-FbLpk}#xN%Q8`QaI5wOHw}m}mCgc`1`+N*eyYmBcm-rxjUVt2j6s0^B9QN1Mk$ zb-7n`I|zn8D6%S$y2>Nf17ZvGebXgu%jwzT(Vx}5m%tO!Il#yBGrkk48(;t6H;)0x z5&upQ?gKP#=nKNz3xDA6u#W!F-Ci8UUD($$WQ!*j>8?EK?at(P67F|Rskw|b4*X&3 zJ{T%t@YOAqeU~500Z4x6!k^HIH_V|xr|>yas{TxK`(g@Qqm%7?B6laAm>)SdA)f_Eg;@dXKno+q`&Z;@|11Je5L) zIc1~zLnyLg#sp8wpT=Os07S7Ifu7hPu-N`ub0nSAKf99}PcCA8(+^PG&JT!&ShJ$d zdu8=A;MneYYuaO7Sdy>V6YYI5uZ%L6#ZrAHX9h|({x3~s^&-ytaN+xbdkYK^Q`%## zD5bYX(zp~II3j(>@(&J(8z{tFxDRCoDO_~i znhU%n;=5bPe>h-fC0l)?NEQsmyTRCzAa#PeTyNhq6Q>0+m)v^RN>)6A3?t-m;b1Nw zpgn@&GSteRxvp%Ne>KCPEIT=8zDjDNr)M_4;>fyW;=y|f<4udL<;bzy#5B{g7O4t> zl%{ULRQ2Fw<>JZ3`3lT1!110&Wy3<}h{hiY=V9C~xKJ4<_vx9BG;?;)cDbuptS3@F z7ewmDzeOlC45ITR-#j%$$h&XwitZ^F?v;vts*r6ckGq*h>VleU(`=hWHCbfYu=!;U zZXUp}pUl}{dqwqb@0GA?2I8eSOIK_oLpPz1$|ps%uQllUjLko2%g^0se`BFYi!Mmb zFUSt9t>D^+q5%a9oevwloenYNI*~@SVq&ynjwzB4tU?=1>75wkTj9obB6I9ev($#Q z)EZ}=3=YW#z{u@^0c+8L%K_M&@!~xetP_&e>$$86_U@Uf{y93rE5f23<}y^Gkt)UZ#uUeS3R|}kAGKX5GLsck!o2}H zCf}TVyS=&{^3F@$xVKkrPS@)Tcp&V z!}jH;#9Me2Q!;^-%Sa$=Zj1&!SfI;RiV^vjv|f6uK$Yq5jC^TOKJ;dgJY(5{yky!w z@l>cbGnI)vHEBNaQ;<40Ei)3R&j;U3asV5>-b3t;zqUo9?0TQ2tu;UbSDqtqehj6- zE^X3D$`Sq;CF^5EAD5kc%JeMxC)zR%yw>iCzOvb_03$-{tNrY0u?S z@8{q5T{_QIn>SS=UsaPgWqgOu<)42Xhss_0&s8tao4#T?-+U~%w{bpwzwD;H^^P+) zfhv#}&Wnu~Z6%3$R04KozHOpJ?jq8cVYrhl`0;#BEqk9x6|IKE4m@kMU95i>6t2_41v6Y`x0(Vf+FCod2`<&I3yP zgMRTjJ(fbh{b_$wZG{%7dG0*kQ$9V=gM_DT48Z{N4!``53}9ZxM>;%2^33rJj?=uc zK9guU1=8DWOu+@30rK{vtz>YDpaebp=-;q!YO^GobEegePeLRoRJ;aoNo<0F?RmS^ zC8b)U50$h}F66Ep8QnTP@7g0TUV3$EMDLnItcV{u<7s*_!Fn`@o`2>9u3-7qXue8j ze8=~_$BM78PqZvR$+UkJ(YpnOr%Cn6?R@$}{SX-+{P_xII6*kuE7p=*Y|HT(_-ZN80E!c zcU%+>ej}SkW84a5vF0huVE|>#NEPgYY(w9l^bHY+cd^oy@gyhhC~m5thIPdUbb}LOkYS7ZtNG!eh}64e8aoD`I_xNmzWN9^lypa{4ay{$jk18$#x?c zdG0awr95tzB9O|J%OO-7F<~@Tm`bTKN-`n%r0`cOU?}-TCf>%dkHI5E;|==#Ae8qY zk~z@h3*p522*n)*=!qiK947gmB-(;PU=t;jBOHgDhY;u9T2QtS>WOU&TqRFFpZFu( z;DFRfEy(bgc&mf@SKlMLgC2?=w)-UJ3u*`q$CsP#%nW9gopTNj*L}{}R~b_V^FT4z z{!AFJNd(uiM;$OD;rGjt=fPmV2zdCjo zu>U~7jPK_b5#@_1mKrLZ8kswRI+7qd1TIrMvQurBc8|M-s%Gkyxo?O0GWXqCR;<$f zgOzL&@0?^IN35A*p8Q${%(k=tA^~4zmE#^ZovM3v)E;dR>=ry`xEZ)tT7}nZB~_sf zH~!hS;2vzFNT;V_MtdHw_OL2*$`#=;nMdTTk>idoX~=S)MdQHqSS- zxceuWETJJqzmdQmTG4*I>HY}I%Smg=Kl|B}4V_N6qH34&ddqX(<@!sHuMaNB(ePnhecJSGztBt}nINT#zol7Qy&*NJi!g=O z0_ey+$*adohb#~0#sa?tA8d4y7t?a`{NKRyN-Brs1}FKQv-yHKi~}X|=iL04iKKb6 zf+P)b(>%dE*nRb_Fu%P&ufsp!$5ByT6Hs%tTw#4KW{XS%{Cn;*f~A>Ei)Tm+EH8$8 zFv~Gt+kqm-?%@53p{d`nf>*dAmy?F`INcUanIkh^AfYI|vJ#)pU0WoD&q(U-zuJWe z#yy5?D&&p}*RPsey@97O=OBBB?{rNlsn+| z?@d#fAkj`&%DfY9mnO_kUGN-j=FNQp45Kk**lqOq0rr&PHQt8(kSwOQ8!=VJM}FUx zC4S8<(v-Y7P}GXF7RNktO;lWmx0WdEiI%^VK5TY0?%84>Kdml?E522Fa4#V-iThGK z-=|ZtbGBgBe95}8#8nf>Q(1S3@mh7;BGxoZx%rpb)X%(Jv1^uaqb%V{;p2<+iltXX`a&rGp&#_vrizq5dZiM3=S>*)rEnH&gX z9oH_TJFlyKjsV2$(7p+>f0MU{YU(dQSZ}eUh78&j_8Hf?(;Nq`_Q8fM!=+=TC0*dP z46ISLezEoW?Rj4)&}IM?ibn$GH5B0_ z)QsAAXOI02^QJp7G1U+2?mw#a=mLarD>SUTO?JlfqnfxHX? zxwQ9lcS7h2b?OOsc;xa=^L==3dUNwZtn&tXb|7DZ83Zy;II)@t_vyxtN??seQ|fm5 zUU&=a)%TQ`sf&mCR*X;)Uzt^h{-k_Q^9zy@x@(6WI@LQa-{BFH$O<0Rg&EL;h2`7F zbc5M@O^E0&w2f`l%HxYWmJSmL4(A1;`$Ew;p-XSRXyZ{av;T_m3~^#?$x(#q34VE|zQI_!@D`7eZg5$G$kQPacv?8_pO^10F!K zfeN&OmC%GD2P1Yi2<9qC&wRlaIq08w8OEB0qKYe|DnVVdWg^XB6qBr?m6dwI0=jak z?+lLXbD-Jw27VdDFuKAD97WbTiQ_{XObCsTM4LOp^uYyjfy01Chd4h%@O}{a)`+D; z#D)l}%TT<3E`H4*|HQn2b^WgHV{2?HV>Bl%8Pf`c3@n(}BC&v<$Zy;&|0F%i4Vq6j7HKN1*>KJdH>y{rP-%l+B;&soJq{=T!Q*dp4fD*b6H3Pakax zX=D|c)!;cKOY!8`w7~n1u4?P@b40f~S9dxWr8*ad6U2x5hOdy(Gwd5mE*nHHi+aj( zy8uOQ8z--&51R~CXX5XqNU3vBetcNQ)@bvmluc8)WSKRbjmefwqrE_dp5{!1!GxRHKDZfi`*shVd9wr-4+t-ju9{{IvG(;_9=;@>jBmRj%{Z)$z3h zvO*U!5?i)>J4G_R84FC7JIwE(>q>+0$t-z7Us+?H0WzOZ$@D%7xk2(N)U^4qiB`&Y zZBlz|AWv{uI!svF0J%KTjk4qeI6!zqK zSl6}o1bLFzeR;#TVMe7~Z|M!?3%rv=Y>qL&gxOt~=u?K!}|(noX>i*^M=dXbuNkZkLZ^rV4a8Yp{Z zT)$@Cp*GM$FRUbjnjbagHgy0W%4y{A8LG)$br@suV(ZjlAEhr!^lLtR_;G@X?M)7D z{^g-Dh=-UgW{k_0bOMFT_Msc|5%IEm@9@{~hXI+Z(H)`><~T^;)hpqEdq4# z1PYarcCRPh9=zmAAhBt85R*ACLlMILskgLAwERYw?5N47JM&#SlQ;ct=l52R5eJIHOSjms_;Qe=4OXjxk{6^||mbWf#$mb*Xol$CXy zi|{Sci?Yee#2p}Q6FUwrMyx|<4~&MjP4AF`c_N0n{hei?ZrM< zMeGpqG^P8MqPzITqAQ?r8k|E&`W-kxj!XM(F)>kyZ7?#1Z7@29Bgt&iCYgpEC zO3ZRW&vHr3wEvxBKhbuf?Xz47h0Pfb_xUS0O-humE&(G*aa?IHT)x33*Sf&5`Dg3; z;GBYcz_eH}_Hp-)(FbPtvsXqs?E2*&sw)BalDr z40_MLM{~aJ12mHuZnMo)tbZ>g_ytjSL#|fa^%Vj(1_|@z;7`e;T{)x=#T7)T$QZFt z9T>;v@GN&xJn^Gz?_hbs5m}#wwcN!&aC=-(?Es`>jV&wn>d6RFhbcvYX4t~zPUiBe zUZr4#dD;;$-N<204?i29iUEcyl#Lr1;|{WY8t$Oa9e6efsC55MB>&hY|J#(=(Eggx z`kRuRk04z`e;l4$amXih<{oSmCq#VTpDBZ7G|3Id3BoQ-;T#HGOiOufTcbtv%{bo2QgfG zxO#v=jDLVHAV{-?IHv8NM%zD4_aU7p5%pFgy3IIM{h&sich-UBJ_MJA$@#v`?LG+C zB`$_vJQGCSXhSZqFH797eD(-7f@0C9_oi276Nl7C;|@nxhYY+_>E-Rs>dIXUug3d_ z2~oRi!OJn|Kha0cj*!4b3Byw*!5tp)osQ@O zI{mIU{5}c&U-EQjv}tW)`{a@d_a?WrQBBmbl*4pjk+BZBo*LEC;@RRsgL9Ula=u=I zv|1EaY=y4EvaPYD8p|C9LfN44W}R$z*`LaDXBvx3C5N-Rv6{>Z4XH`(aY>EQQB7GH zJ$V*dOcVO!Li)l&y0ZnEwuhvOhehH3aPjW=3hlAUG>#HXlRYeMOYZDXrZBc(3I*}u zX;LOLDXIFfAyFb(vAtqLN#&LkSacgyAX}iA&j9I!zTJH2%j!- zE%kPld)@N<-Ld*~b4;MGe8(sElSO&4bLH;tT|(WUCt1XE1jf%O0VWe&Yjt$0qrp0j zFfVz+9Lxwa_X#TKa}xhM@_$cE#AhVg?@KS3!Qoy;wEjCgU|&J}whN8|502d>How|N zapn&~ypQ&@_79R=hh?ly7Nt>PL9t8$ zUOC>eQgTsLtA>2jP>OdNer`G6#-r$5g&a&I4Id^HLNOGcX3y`rp3g09p)bGXs4akl0*98yrIUulxi&DehWW#wMWc2k@)rqR&2M;eAiRV7gKbEXO6nT8(k6tnb2$?%nDh8NbF z9gbQw-^GVL%8z0sHHPece-q&+-Tp(ruqS)Vie#tU@BBVV6>Jct<*JR~Cp*3!zUzj$ z{T9WGvzPc2=~G&xFhme*r#t@I4|iLW$V7Ss4@VVn zB_?)l*yusJWm@e0Sl9q5=0lqL3bRfRR^tP8){%Z6D)3gg$9<|$;Mjq?wc*&x0Vic~ zjF6S_Mb6lPBww&l5NAkdfxH63amwjaW*sd5Zss7K{;g9sk^n)nVOBc&A)ewW` zKlSTz?}c)=r6OIMW!voh)=HNPG8`Go&1bDzlVw@tTT`EXfKl-*r$%y<{Lk)d=o!Mz z3SjkeIlF}lkMr0i`QraRH31Ggmh%uxG}ehrwg8zd2Q78cqR&NL|vW^ip>YVX>FIW@;Vw?;Oq6|I%W z`%)c!*eg7l0iP|C_Ox10rY)w9saKaBjBsFF9l6>|53KPVbx=D8Na$z#Fbz=%>^?tw z!4U9keoW~eMsJaI`@vOlCv62JuC{D{EgoiP4F~eVV?fpKG?WE zpTfgfKHr|-{QQd`$ou@{xr;e>>F)-1d;Zif5M$H{6L}(-&`vTaN4XRzc;+pj)W}fE z9;A(#_%cAJ`^odq8HK_nzKlWRAVV!Ut)IG}?0Y|slTL^>-l z%jM$SpoTF3i|PU#_q`Bv5KS+w0GLo+HK@B->GHHgfadRo8i`&AvO@247|z6;7n}iZ ze8PAI3Q;3y?RJtJ$e#i&g1(UM?|?hr0}S&+piQtScK)6lV4s6%JdPAesW8`Zm1i4&Ra=8sZb6O2 z0sfWk?!TIc8@`KhZa7g~$6k%VetFIi4NfDvEMW!keg!xEij6p5$DY(pu`AoP6I_Q8 z6z3Hz>q~qe)PGIjM$yuaV>&FrW37NrcrZ$bTd za@RkDO4-Ain!Xauu;R=1e0g^7hyD;2hhQ`!GPp)AL0VaHg_%$>Uid+5Nu17}Aec=) zca(NP25t78v}JIgypl;4XC+mplQOnk`0nft^02roBXSoZ)1E(31CBj5G(^!JnwpM@ z8%&9}`OwLA8cJ#?mM=YwEy6F>sW#>*D zitag?e@B8GiHN?V6I)^9@dQR@i|PQo*2u9n5kF^I*a9YCyetbGJ9Fa-3G-~a9IrOD_ z{+9P#h=+t|>pQKOC>*OhovZVoc$XJ)um=R|Ut)NokT!+%5#eBILCC6iZ_Pq#|%L@d1)tsOLhFsfCk4m*k6Ykkmv5q z61Js4X@iBmGQ zLIYR`^PXiiI=%K;6+Ed-ks?;B#TpD6&3`v^-?;w%wid$a!L9NcF3Awp>-=}J>-aV> zM2-AhtIlV&~_H ziPR%HZRS3i|Ggv1>cWo5BcY&< z5x*?@!UknR6V;d{ye)lfeS9Zy>?i<~;m7>>9DbrV2BkNCpf}#~r9t-M5_4Y|^lfVe zwJLS15pB@qUK;<50;~BRs<0d>@0cM|I*|px^LG0!z?-|+e+@g*`G8n(lPqMOIe3*SLA}O9{^EIWdQqPb6()h7bjYgu{@CYARK%+o~x~M$v zyo3M7;5EY#b*CDW#I$?hHdr;kRCLtEqy~HP$9zN}N$$J|$NnE97Azk^M2!n9A1rJ= zv_VCW+joQ#Q*#ZP-$;FKP5smg31N^uVZDPefxRfMgCNd*&lrT!ZX`ECKW+##9#n{W z3shzhw$Q}4KhG|j?+2B5$a93)KK0r-;H#K_*BRN^6W6_>#-gayO^GJ6Tw2#FwtYsO zb^XDvw8^9N@>A(8KNu6q^hf#-ep!L*MXD-&`29{K4Ly>NYiWH*1HfCaFW^U~*FOm1 zA>@~5yN7kbiEsVi)A&Gw)Ra1#A2^;JRyZL+HmS@Nfqn!R*gCOS&8$H~d{`z~M-*2v zI)F1e))=`UC$g3-+fkHkLy2B~N_DPLc3DwTxyNe+TTx_IRZv(}5($>8Ge5Ev?`)ZV z;2dZ}#^Y|OH>BxuX3^wAMrKXN<+&N#o|)N^9AB52RU2Q%@;Mq|u^F$~lq;)yP;2_D zqf~Ur*sD)PWe?t;JtvkiLohokDkm~D11=&nEIe~aRE{uzE980`-3r4$6_G@i$S{(L zF+@Q#+N`4H<4lIRK_z2wL9f91N{m@X3 zl9^BBcN*gZWby_U!f)s1`~_^aGa}{3B*|e%{zWFlTM)^91KMaG>_?#Tg2CGhNsl@W z;4+ft5Ixmr!rujhu<;SN`Ot?44*IZ_ctH9+M>X=nxKu-K%}i&#tJ|yM{J9=EK_Ayd zOd01f%W{;-a*fFli~#?-uk+RY72fO=&UK1v`!|HmQ8df{KUx3^hTn>EPsx1li1ORd zNk!8pbCw?$2E~$=W?LpXh71=ZDi1%wcgX_h28~@vYuhNLtfdM}QNPFnxk&#*vRou! zy{m;^N=;_UCUVO+j{XaIeXwEw_-W{e!saSF>O-?1H4;=E{9r(2Ee8@8IVz<TnV$!=cXTW;ElpS+KY!A#{m@IH{ zNWElrV9D5$EM`}vih@_g%leEQD3dE-Wo)SgKhm$;(TUbCQt5QlYr9i#RIOgOV67KdG>|FQgMA-&{>IWzZ8=?nH^#zCa zIa#7BO0BEX^U3x~qlq7@+n>e9e!K;0vITOY1&mqSarqNoNzd+gb|WUP>rPICQFfi0 zp3`K-@Sa`r#WBwFNi5Rrar@2?fnv(u&f*TB8-0@Ix-i`WzYUI^Pw*%)2ty zn=a3XD)|b?;vxg-t5WmXBJri!`{p|q>}hh*`JLC!wb1ExWQuK~C9)PbP|ebharz&c z{jRP3f7O8<=U(91oPyz30r%CdM_T~XEhnlDSn5Xms+vI6wHAT4{ks7arEAF2TNrbw z?_eH~vp-*ZN5}g6?<`%ROI`n=)^41C7XiVYeiHo8QeKELr$eDR&?9&M{4B3ZU)Ci%DNAhNlfAAQweT#k@uKv}1ZELE@W#O~`~Xl(D0*zgZ)L&%GG(eef&fhD?ZWx=0`LRVvA zu0SGIK#`<_|K?-8_3EF04L@kzI7p)Yn47;lT$>ASi+@cHk;$6I(Bn%z^}Z|mk9vGE zTOVN$7pfo=;$Y*UtOd*p@Z!||)^!JW`iOY?7!-s3O;}m+^nJk5zRq@2$5i1xUwp4_yq+_JSvfwf6dWnr1B^5giw z1!s}7^xm3ewT9%J+RTL3%=C`qxgZwU1`V$bSz_;hlIeyP zO!AF!|D!37#;`qRZZNc}- z>JxPKN?`lrD;56(WMEv~ZPZ?9dTD=p_mTHn))5?kQTRU5+K@S@@=+npOc6T`3-uFs zi#MS)Ry2zQnZhWZ+iD=PGoznGF;Ijo1LN?UIsAM|759;sdMSm;@OGe%8lXDr@Ih|X$#4K7&YtF49Okq zIY}RRId;;-j98ODc8a6Y2?}xn?_>#M9?3%*E2su`G?$jSdOW2jb5)^r#5szyl`R{B zaM+C0CkfD)qUt|ef;b8iJ29@eODsozK@bnsDDfBQBT}oAC@uK~3D6#2Zcoch;IDKa zh49guAV|FgdOcZ|>Wd2d(8Xav=u7tDp))}jR2UFB#`e2S8a=_hdV`Bs$8r%KcB3k%TT4P#w6 zm-Y}jaDq__ddTDWMuUTodNq0#inps)Z`mkaHI2CNpyzP2^5Bi;v?+HrjCVN|_*^Ak zI-N9WE$~c+Z<_YnR$%(r3uF*){j#via4O4zV$RW>_Lu$sba;1k{ZW8?edna^7b$$|9YE*-)+p?Vz=38{9M4?V(ZYQ(ad%E*hPSa zmG8Ge#m;e3sPvrCKs*5TgFV@cCesN5(-$Ahn~d}9cqix_W^eMQ0H-CWd?j=qrms*i zE@cKehXlNia+yTkg%yFDjE|j-u7i-IN)lWeHL#VcM7T6W_PlyBRAv%hd1Rw>K`YMA zQH_B`ZJGe@VmCas%=RCJ|^{{}K{3d$*UY8Zji(my25 zuV1LFy%(eHPAdVR>6=(zfY;aVFMVhj9t(XFoic<5S76ci!Z0xD`ZyfIkoY=3M{H zmsFL*FsWTOs#W64dw=oirSocN_94BUF!3 zN;&T#bwb@xLKSTAIqGP#N>|Zr)j8?;zeKq}Cl)?el5Ye$iPrS&71DDn*Sf|x)w&|e z>QdF_N>ykp`j&~rn~cGPr2iMhze(Bs6q71!RvOJoP1PfD-Chr&Cvn9k3mcHMVz0RA zSea0B?h;+7aRhNMaZ3A${^X1si}9Q+tvz{M6S6|;e__Rvk!im`vMLi!<{RkItYL6D zy`r+aq4joOQpSD807G&}j+iiw$S^(N$WkI`vLhg>7>U1e@$#`7bpLVVD<9>ZvDOXj zQFZMfs(+*TQy4)uDigda)B5jlBeRfpGeDJ%0e!lrWFCHtH;gwyFpFG~V(%1fHmqK8 zmSBICATNR3j)|Zjb&DvUA98<)iAkilMG>+~fU$w2=T|>J0;6$jg4&uh!{apa5)Y1SW64&xg_iFD~iqXxs_Fknw5=m>8?zZLO`%w_22ki&=P{}l+}^fDamv3&03iHn6Uf?J_`QYFT+N@n_=o}2 z96h0^=C;g7!Ebr&ARj*Jg~xajOA&9*W`&i zWJ$XS*D*aXV zP`G?2IIqf$jVw-6wYdv0;H6Kz4SQpSIm-+YEYSOz<-3D8Xw8r)p#tHqYCL=+{_|!MsI-BP8@O(r-ymhx$<3dG!p z%bA~^q0qow<+=;DbWWEmFWuBX9|^|tfr4iUl*L$_Q|zNk5|=v zw{oevKQwDrzpa->m(LF~oC7Mw7hPoTTmsGW727o!*7YDaDpswOKF{xiN`0?7I39gD zw$njZi`U>gdcG5>pyT40q9P9*xkaE^I>_dmutCrG_^udMs-`e5_qe3;eJv*U8e*qf z3p%Qamzizuy=OuFoJ84{Cp#5%WzCv$m}tnU==ijr(d1_^( zL{w#kM+;>JYB;$^Rm_ZZpDlfh=MNg?aR}=o_F=vELG|X+sM&7yGfTF|rrZBYw>-s) z&gLG9s0)OZp_yk@{Ic>(zplS3(m>rgMY7&*v-)L~wCjoeQCdZU-K(h}o4qf3q`Y?s z+0nnG%9V|aMM|W?${w{nD&YqVJ+7B>o2_1xDlOgJR0uIfWsHB!qy>q;Kf(Z#lQTyW z?NQoUMZ2v2ZhoFygwIh%m!kD z>UsJUFeMx-vGjUh;z&6m(K7)!HewuEa8<1bIuI$__LVh{4E8rwP7f`<>mOJ!s@Er5 z2PaPxh??i9Ge;-e;89*+gD#$8P0%&%_Nxqr)NLaQYb^>q30m9e{~of zcs$_R+8>@ZA7eD{2~?%)SWw040K^bMQf(3BocfY3yV_>V!_k>`Q2t!|nD%fO?$nHD zPQNb({aP&Fz+&C_DHp~Ek46{MC6UNoH9^9l1=^e@Wp26V0OfP5q^xWUk z$fVlB-~BIC1`8@75T~v^!8m1rSkcBK8{j=&$gYtN+xirS#SxDGD3TX8n)5Q6|ICjQ zu1B+#uyP|dBug=w-hjeDQbyqgjGYTx%?%@(OLg1HZ=YJ<} z$P;LcW&FsGnUtwsbDUa9Y+8xD&z!zhO;%l%UUjFtUg!CTTgBrdF~uN@brpja$kT5oL;HP0wxlUv<+sTsxTDxIqL+Fz#qUJ~%;M1o$5)QEBk~-Y^Q8 zy*LuqeZs8n{9#>!rnL1dG`P3SS+#v;6?bfwN~_5#ZS>1F+kl0}ij*3L_eU$4P#8x1VN4{0!U2^c=_!leQvo(rpjc(mm^bF2K4AxZBHHqcg6D+hv=Vm5#fBns~ zM|F+ujz$|s-Nsa`=02$pUV_3xTVfQ0sI>b+>_9w_pCaZLI8Fy{b}PT&_|TCTVqiS3 zkg7wVQ~KA=$m}+#^fMdtU!WsBhNLVp1$nQ+ zYayZ1Jaa$$N!D<000|G8IroaC8kF>@bR!<$Aj}h`auSVroEk|Q2@p^}o(%9RU<>_z ztrsV-X{hT=ksTtMx(fREU>_P|KkN98zS%rssd`E1xyg?7 z{=h=3+!>%)s#9SrGm01NeQ14+srOSa)&vODeQEjj#wM~68$OP?K^V@4X7X1Y!AlJW zQqPuza**#KQl*N(o%$s%k{msasecfQ#{_Mc@AIjR=weIwhMg3qu1_00{7miSmCw0V zpYRT^Q&P+4L1+7y}&{MZ&NSz-jYn4`z!!^eB+5E?tVZOi(U7b8+ zo#*(kVXirCBj$B(mHKdv zmi!!}O+BQqJ{w7~7STv;r zwdhW@=>AD*DhE z`rIh|BEj`#S@;mcysBHfGc7&)%_(G1Zm1-&E7zfprhOYONi{{8EI26Fhdm0f-G zUOt%D2Gvci0)(;W~bS~0La*K+4m4j9*j11P^hK?z%d=D0lAqkC(j zE^N&I0m4UJhKoH!C2ie8G+RIff%*!9GsT^K3Y;Vrxc&6satq-1u-{F-U?T9B0Tf~_ z01Dq8q4pmnp2Gv1<1_yr+#76AqZ5NzNR;^_Nx+MT?|=xBY?QA#4)cSY$EmjCtBSvA z6}4||lX+8-N9*IRlFZ|Kxful=fJ@K7IFuqDZxj7=WB`Lqk zOln(9etlGI3p}XAM7KIBZyF14j`{&rY6+Ew^ZNIE^>4=NsTP+84wMGYE7m#Gzed(g zP4T;M`PMQN`jMn@-dWl8{=1>TW#G>LtT)e$DLuBi&(k3>?~ag+dbTChiq$~G5s7B3+%*dYS1a=o)xDL zTmmN$9VD_g(=M8*SF!Xlw?TntCkw!anh2R8B zRc$i8x}$z(p?4q9_OrT1)G{Q9MStrL(vU{%&}@tsY7pmzU*nVT7bGkT#KG$jLfIX; z@|-D+G=;8m*w=@ZK*sY0VBiu(EGiP}I zj;XjnnUNsf;3qFv8@oKH_Xx_gA?i*U#*cS^E|{YSy96pM3>S6pv9!HZ*dUfiiT^c# z(@d>!p)QXYwJ5q>|J9&MTpP?_K^T8NvY<&_9XERV=WfgNjvUVT{+U!pf$aP-+UGrhx`rrRq)WN@JKakRm2vUzv zGWL;U&5pA?he^iq)9>5Wj^w6^aU_rasP!XAwngb3$t^dW?<{2C|Lq1OFa)wLXBij! z^|1i9U;!VLe%9`4&e)0H-cKUR5*8S)aKVmYNQFTo)00~nr}ubTd%5wgg#jy5siyiC zEvSYp;@hjw5I}{k*oMMkU8nTYGV@W2^i+;XK=ojrEwHbXd5U0gNO;G0^2le2%(_Gh zhk1|sCx=9z{9tg`PqD|o4{V|u3s1>jXUQj%kUg57K1+J2Za-<;HuMdL@{V&|Z_M|b zDz(l)J(iX3A(o>wOC?9Y5<1Pd_{?YNM4lq{$Wc;Tn4mcIApp%GS78m2^kRT2hs57( zw0RHvf+uxNBhqTP;6lA`5pGkFVpj-*zePs!A6^n{Zk?dLVhV&k#e1Lpiv$kDj+ya0 zo63ZV%HDTKDOLAKz0g2T?Lj$;lV>t~Rh+QsI}hy<9`UqDy14tukNVRmcrxa8$%Vu$ z^+b`%35p|`O<1XJB4Ya9{+Mm*LO_~7uTP!p z=PZ`#5y}f1=@B|+D)>6LTRC<;Vp6 z$#qkh!0LR=ip3O<+1H+u{qQ3dVD9p0@fz0il7RgTlMxk}89&sM0QU*SKTR-5e#g*^ z(O_uSh1{PTh$bLII5FEwlUP8;?wr=oj@V0M^@*L*OdVfEV{#66n6BEDowvzo&d$7; zv5J+kx)#N{&zjS!oLZ}s+N6=*6qnK&7uOnBv`Rg-N;$PMGOfulvQ90l!63a&xlnz0 zY;9~}by#2pJg_=GV~2D6W@9WlJe>apHL8513pE$W=%CbKip9G_JO7)?Hkm0(>wrRZ z&Fs@iA@{snK7lF+U+^9I{Oc3qm8mZ zfGXd_a(L3a5S_lb?(U{XYi(_R@FO{2KeAe}@$0tg)nw*0CYI^RD$<`RVJw!3B^e5l zX~c&gzXp)8Tl-7rklCB&NukXKwT6B__vpI|=O3OWMCR3l!ml4@TN}ht@`B>DqEF~T z$oo*p(FS#)e2SjwwU}XYC@O$tknIr71uvMvg)-fmFy-fl$rp;bxnH3jEYNPp5ZDOt z-Gg185$Vx)gaKV&xjEWl{8}baQYgkrrl}*JcL*s6*u@p;6#N5#9oDnk*R_x4I>q)H z;UAd5w|3!JT0xb->z}Y9sqp*e@YS06!J1_WPg>byJcWvU%h>CZj_aH>u}iSJc(_a0 zDG%}eCwZ}+>KmBGh7@VDSU7K)i7O0AopBCZr_T&;SaQmpEOru&b+^W|sY;CT6L<+M z&?b9|2)>eo-j#+iB`qWtQ@OINq=iVZ>Vby)Ez`KarJ)PZAQzdfdYZ%RXFd-ovGM0u3+;7}W@Kuql` z8lujuNvxgu?0OA8FL|WE#W7Ro`m{?~4+^%@sQ3j*BaZlyM|5cs;!5_g#dy)bg>#;6 z4Yw+XA+%Rkt>(93-y+BR_PF~WExOWnyfFp5^yy2`G+y1bb=@Z7;xXcWtyeS4t8#{0 z^Pk%Jytf7Nx4DV!zkh7mq?@08SHETN-&K4Gw(QazI6$q*A<3D`2J9xyIakd)m+y+s zVL&n-y?}r!NlG+`(eo4|iz*RaJufqdSvl=3$$!-qxc)*M7S7 zDARYIq@QlXZj%F#XiD7-Gr7=iOX(246J73lM+c1swo`pN)lC9q?2;$1P$E2-ycI*Qx6G!`&F; z7^4;3@G$s(MP5G-JL{)Dy4hQ6U**4KN}#k2D}s_o659xcYGp*z1|j<>gm(Hx*4*`f;fi-+5jh!; zdZBA$%Fj9DE=QAqMIgi_oxXr$$yN>>{4cW3DY}xdTh~cCww-ir+xCi`bZpxzw#|<1 zq+_FFyJOoncg}y#9%qcbZ`Ngvby4+I&H3Uvgk8N`8Pt--5w9OUK?yBu=w43h9-03n zUNktTRyeo(c`l8;*hk9{uYaBlp;vP*%f(h9wlZgyfD6@-mC!4ZUxB2`PAq<_JI0iJA@pQyEj* z1QSdktE8*5OG?*0Ln-485h;ie!?$+<#Ktz-!8JJu6u1m*c7UyO`7RuR_~{JGeHbkO z8Jx)rp%suonGYI9L@(8);Bm(# z)?&wZ$jW$BS>>OR^@I1?N7H91?cQ|BYmQoyL0O^OOwUT_*M-}=!XrMw|FYhAlVC&? zxrz|l7xc#SvT3qJ%um0^ z%e(Sw7yae?H^a@Yj<}8*PE0IgtaCp4lrg};jQyWF8P>NiNrd(pU9I>2!5y8jd2AjbZ zF(600M@fR5q}a!n!zZ~UW7E#ZCD!XYk0_etEH&x%@-$UnX<0a^g$^hD3T8n0k1!2hsM2gm7Td1nQva;^&ALUQdtdiH z0rM%XpSLi%WWNluvcqoGv5(lK&QRpIcVinKU|McNFF<#yyPSlM86s|fX>YnnuUN=S z=L+#?=h@Ag@k7f=*F!QPc90V|h+MdfT(reBJN2LUBzP=ibe(Z{KM}kWYXru?UHV%` z6M!@?p)?P}G;d*a;q`J|r6Gj-2FTWsC$32+t7BgLh*}#ea*0>|t*rbjV*wOpFG=T` zT9hw~9%mBOPd>?81}nA*Mxe4amjzrD_askUpv(xtVn2vwGd`3vs{~t>`3?P@5TfPR z)a8;C5TmdAViFYGXKf7xu3hcc7iauDNoJMy@P6EafWJ)W3;}wQcr_|C{ zmh0|1J6CM0YpSOJmOJ(oRe(8rz2^r`RV{f%#&BoIQDVr_?Y|`%AKmtHb+d~3D$bEb zym?OCMm)JwKi&IUEqm4PcY)kb77kqS60e9l0p|{=)8`VN@;be;TBY>OsEOf}C#^$} znWaP9S|ZgXYpW4G>j@6;GA540W8NrP`jpqj$e*Csq#(ZFy>TGVC?MY)3q>c|nW|@b z&2neWS-CHfr*Na;KYe)H=VzY~8a}Xg&lq}-qg{vk$H%$O8;o}}R7ZSFd(j=Id_q2} zy1rwgZp@la3qg((F^(fK)_YYv=f7RqxAQx;-g^J&aow{bvP;A+)hW9MCW})WssWfy zig9m)hfpKCgBz5nHG8I6zpJX%s;YsvS8BVH%7^Mr24}?XXAwqcb>3$JXK^$ug0Sgl z+*J>Bzl8@iF_SO{q#M}IHStf;I4XEa?h%mRXa4rQBDOw9YOJ_k6TSgM6`_QZ3ZXB^(LxTdRC_^B$oIT(7VB; z^^8>PlA`lQ$^8W}t`20L69Q|ajRDd}I5DSs2K9Djk9CF~ZS_U*Y2E+Q>{GJXy_qRW zy54u5eKs}>FGPOl)|_zkIBg=UA&ohcnd_BV0in2bak))Fx6D(-$j}n=NhPeA_$yc* zzoc<{i7~W)M1EwxBYt9dGHQ~6V>SUm!5 zf$T%{6h`znXf`N&84!T>q=PlW3+E<8cgH0{G#UB9_KX%UWqn6^leY=G@cfr7HXr*} zTJHxTp&)P2=Ou3aIQvO_?IMQOX^>w;to06b=5pVX*ES;FAaBIpps`5)VOaJFN7>7~uGR zEDgj(-3=pHUd+h;6P33!iRJw!aHHWigXQ4-3Zub(3~TeF{kp~@|6ygWlvAbap~+J^ z-S{$~V?*SrmF(P|{K6S+*~2onJ$dud2NJsc0oDd4{1i6yv3Fb4FrJv|)EeCj9`-Fz zEJo;BzknF6?(hVMHwcgwOFE65c-XRKk;YI&#;5|}jK5l-_=gUe4(6p2?63B3FLJrA z-{l-8We6`g)@>)&FBz}z_{Lhzbp>L6Ei;N*HMM0-s^~Z}4e&4AuZi~$BoC{P*?+lT z$NHL_n!1V1n>0JLQ>?2d=F`lp53DtuST&r{E42qBWjYFw>7~S@z-9~Lc_|O4V1jvM zPSLX~3g=wNDq^MPl~&rx0%PMV`Y9C*j45WG?V<0M=fK)pps>fxPifPTA z*&1XHszloIlqRK%ocVU(qd2o=GRT}LleEwr2Vi8!&||p}6@CYzb^jgNGGH#eURFXk z#K!pt6-N*r``v?Hg8*Ib1_H3%C||s+`eEmS7l&=lxGel#a8G;37w$NhX7NLc2Rxn^ zs-gy>OowO`ia+m7H@`z@me-rPga6LI%r4>7TJKWR)6>t(kur%lIbkIy_l+%7hJOdc z_yXN;1f_kR*=rbKV5>IYoy(w_01dG%-<^9%lb15bAxiKtqQyzhf4g%kA?|hzU&4j&FFLC+#d%`nzJcRWJiVLq8kHVauu2a7sTQgM~ z&t+_30d;zIRVui63lz?H3vey&U^ROu)=kz|7@_W+O+15EF>clJUFx~rT|gn@gu1$g zYv!%%e4#C6Q!83s>+;tlKl+c+FK*)#M$vb{?=#Qnz)}0 zufV}n8Z{#T!%?l~ZM)ZeVt@Hvs)O*~)FJIHEm#MqreGw5ru#Gy=+-?O>7*=+6VB@O zxymXwz@*w>YBxt`Bip>1`AP2A$8heupxYU+(%tb46ld!H?-Z5Q#~+K zZ7A_>E1Y|sX@`Ne=gDdBU_zb);x-YaI4#=Z;phd5pt5) zIy|fJFfqdzss;?OKmXnM`J%*{UimD?I#`p9W}6NCWofe2m%@3ZN*Bf2bE z>>+n#Rd?%G%#YgNHsK;b%}NI4Lh z65phiFQ=2Kpwn1XmA=9lGONe0OUCqqF82Z&8K(Olc0D<}BfYY=8o68MiXjdzc0XFE?x zlJP0}=}q>x($_&;+AVC=8Ur;U##<0ZyoxtXOfG(UCq}@f3DS%Aq`)?Jq$9o5vrW~h z&g$P+@2-c=y3@5Q_W-;6H-3_**5Pya5`0J|B(Fb6Jmy)TsyyJ`_t%woFlV<2XVAls zlERWC%(?xAf}%J2B*glpO8O*<`lR_=OpbflS%{fc0I7upDIQo`h74{=Xf_=n`VrYb619(HUSUT3VU8UNqipcn)9hP6m{BDOEszI=+gFUO{gbx-I(PX z%TVd0z~R8ANHPT#il=V5;rMc5hh~(hc_{o+r!u6;r^!m>DQ78QM$yuPBc6jD;eBCK zxo`rq#0+{2(I~!Y*f&MuG{#DKI!eX0Y8cp?Js+DJ@45PtpUeXH!wYHEv!5}WNY--p zse~z$>dDjl=F?`@W^9pKa<9=6+?7gG5uSG}D_K%Ja-|B&;`7wW($0`%%%#RsJT|B3 zvD_i@`29uE;yc}js6Brb_2aLJ*?fse3h24svw;pT^!oW-z=|fQ@x^RABq1%&JVY<0 zSdedMZ+UZG>kmB>Am=Q`7TpnYil|gQ0dW3oo#9oGI$+k`BX^}8q*_QmuEVlCM^~8Wg;@fy493>T5{w&)Du%mk$7c~*pxiQu=35pKZ1kBTm|T+ z`iR&e#jT7QyGgAO;Mls<7+Ot(G;w_vt8HskysZw%utJo@hHT`b#%IIb`F4pT7|l?W88gW99vi1yI_atPb2#4!_2J0nC~42VCtB=h~Me9WX1#7gL?vB|XS;1`mLI z+jy*(Lmbcd06ZTHngNwv6b70>xqij-%J~NIL`+2L(He_fScsA;mW)AdDh<#dr8v36 zc|~>p;n1B16P;3Zm9kq6yXn>B&=A?-n%m@>+wvmxM{9Dcb9}9xcBR6^E>*e(Ha!$S zQ4gSVXsm(540q2(0LmT>ZI1-&4e{uQ2qM_Jr{T2Pb)5C<1jAt#!67B{i`2Y_QrprLpI?fXg7I=oS2p?+$>(2opoEexvZwA^buj-AI`VW`!n+PzrZq&f{ z=OmA8DjWNhy%j&X>H$jzl#bA!=z**>WcLKI~xHCCxb;R4Y{`EVuQv*f<>g<<7Ht5Jj;K}8gG z94?%pBr+-GGBx4&bRb$ELbCrE&UGHw{JlW)X?|K;J&NQ47a_ckYJLdR@|64)l-I$Z zzo?g<^!Ir0Q}ZoPik9dU8rx|m49L#&S;pH>KneaQDHe(n-+lT9K2`T2w&f}O57_gS z)8j{n@iN0z*^kSUob-;*aLS!$#QgTCN&6xv!r<*nv={e1t(9*c*$<&-V$KEWp5uOl z=UM-2{Yx=zPob*sbJr{6$~kZaDEibEa_$Pha(4I>1)Mqh^xhK6R9 zH=>Qb;{)E!pTK-~`r#zGVWf8Weg+kFbv4}yY`iXTXuka1-R`KBi>vSV3H-j+g=5J1 zP4Bs@^qs^-yK7&~MdJWOHkD zXq9U*%y49G)d6!cgOM?}I`dsNDxP)uTpOAXiu!7KelAPb``!6Geh+pl+QK>c^#<&W z=G8*w(+a<;XO7|KV>~k|x$FPU@%jArQlr(JuSg@CfC#aeiXNVE)MRD*%a_eDY%rO4 z0tY|F7sTCfG(kqLfKuMRKTz(`ht6RK8~0OkKtX&kHlNA3HC-Ct?zP4m(FQ< z+$p8IXhiYJt+MM;P~z>2nfckr={c^h`{C0}bbjrCQtggBgf&E~VTC4JqQM8rUxJr1 zNui?H+3J9A_}vMNAc|MC^mHT{224Cm`gf#U&QMWoVG_lko2|TH6q^ZbFkXBVZg@#o z$dD!|vCm5!Rj>Xu*Rf2`fgpGIWUmFR`e6v*Oo|(-n80zeH?n`r6EWcrDF)Aj7a@$L z4`rK)fYZ?B3&fW}s2-@iPFy9?)EE;>3IL6SGu&^c1-Ja79+JHnI>9Ak^yV}5=qA9v z!cxCG_s(N0kvp#uQfovF)F8oQbPE(2;bR}ZlO$nhP?O{EIh4V7_U*i@eqDr6#1Ub1 zKpnS1L-y3H)P+TbS4GN}%n2`w{ae&N80j&&g>)7#^bDNEUpcbTtNqPuQex<*%mle# zb-~}cu)f*Y=!;P52eehxOAF*DI=UbK#$NVmU;yn9rLjp#7aX`my#W?a=mk_IDOexW^N%O+B@;phk zJ&Sd}cC0IsGA)kF#^C(Ag7|d^U$$4Z1jAv4QQ~#dbNR}i3oYkb@u0oav-zxnjfWn} zGwD^muuR0tVL6FoP^EUVWqPtT9)n;RinKC>#9cCEV{F}B-qp9PY-&Tx)~uesTKRCH zfN0ZWwXf%s~i= z&j~sNk2H_+SlZcpH!;1ns-)^rQR5Ec)jP6V)u5A>T^*(y>yER6s{~l_V0HNvR)6(0 zkm)YIHOYUicpcYqTg@`{gt{X^JQy$fuQHvMua5?yMW|m6#X(d$UEac^+P&A_ZW}ht z|MpJLQ{x9LL%=0B)TZ-or5obQKlvHjpzw zt}Cl3iIEJ*-ALgmCQUXHEFqJkh#QOO!j9_53GcubZ%xPx7-#0_b{sA+iiPO2=|q0x zN9NtwR=*72u=^84SVtL@Fbo#&wrPP!G)DnqXf1Ffyb7vB8PrmXTkj@JaA%nHqu(X~ zn)fMPr8jslzydFfP2_Oe;*HEF_p zyogUKl}|>wr?^@8G{}ydo&~VB?8j98n@-;&Pw<6v#423$@)>UZ{QHP)D?OD-sc~xx z)H9{|)>l9A^AYc%^v#my1SN5kM%ElQti698ZoFgD?DJ=1!QkWKU`uh-^evWE&QzCQ z0Z_LXsKzn>U{mn+&0|1yoj~iH=e9_bOm2d*sRd@GpbbKre3qv8!MH3@Z>LBK5l|KJ zgKho<$BB+4gb$4qNhq9MR?=MOqA`RI`M|_9B{UySa75$UWuwpw85F>p9+nO+&!`An3pCrYa>I;b%%yU)-zZuV-@G#nXcNlvRdGXE{pfMAMKS&UIq zA)=zzeIi`9V;Znycw*(csqOfwZTP6IG-aj!YUSH5z^I#Btuwh)WlFm=wm-gd%1&;r zG^nK-g%uJlUgw}ElY4MuZZUxa=^8tkE@wKys^z?}kYN(Y5Wdw%)@5BcCy(QsOAxAa=-?-BC8FQ%%Lv<<N*I&}V) zf_6-T1@5;IHoxqmRL*W8OV=_rYW)-9r$4Jp9Gp!quUU)eJwuo#ulr~A%s!f)2QTG2 z%Cv3R_w9|p``B*uxW1cnLw6tU0V>H^Jmf=`06adI*OtM`UQU!bEn@ZZhz7+0vSkWp zk>XCO`%WcBn`G*1ua_VA%*_c>)|%E^ z;WRE$7h#p(AHkH@Qbkj+)TvPaq&JAu2*=8eP}h$@us=9!O7ydRF4nY1_O(~6S~9EZ z;rywF*Hj;aJNODLFPAs4QLI^llRY%fR^Cc){t)%QNC{Le8FDdJ8G8KaX19EmXew_T zxF(*SQ8lm_)w-hNbWOooyTo0ieaKFEeMA)T6%jb#F$y2=ltSyDl^?F>)s|1v1QiSQ$XrjzH$V;c?=BZdnw8C`J5d)B+d8 zJYd_aJPom}Fy~#z9CihTgl(lDJ#Eh%Z-H+G{oMlvl+c<4L9HVcbT{Duocok4RZ&D> zwZAFdKJK{K8TmvE@ch9l;f8Qab#kK&*>*F@CK-kk;FY|N2QvJ55+4L~w)O|9waB)d@XV@zSv!@KC~^fqSvx2EDr&%`xS_x<72^l$oIS}x z3$hI7?~w$0un}(ek!b7D)A)(=)<_qZgs~(Afv6F%*-J`O^jB6^9TgmN#T&|*2+7%r zDDVhgUQ+E$JeA}Gp*KI?6P4wer{W5PA&I0}(1g`jTj` zu*kZo@D6lh$$jN3F^a6{XkJ2?l@s*lB?PkroF*(}`&dG^Uol)KPGH;CXqVBq|)p#%sbYk{+mv59BG8JFMAD$Zv_ zsIQ(5kk3PGy9)pptok}^2VS@bW`d?Drnl7o7p}M`C1z9UxK(;I-SnS*R$-J59a48a zq|F`t`eFL9F-og6zzAa4Os-wnReMnL1I*gV`BwvAd%EWHYmM6`_ZKAes_a3`?J)w= zekJsG^`MOp*`p}z!CJ>t)K9-mpjzvFg;m?lOJ60hz2#qf$*_vgtC6;&dv%r&`uYD+W==-W;JI8*m)(++TGqaL2dmnQiYvn;75I8+a@f1=xcvE@k> zGmh%ej%kl3RVCAEjKMC-G%Vh-EW*yK-xiHqjsBKtr`cnS0>2}<0gG$u-IrCdbQU|M z%jN)3Op_QS3$}alMP#oVQr)W5Wv&LgWhVl>VtZ6dWN7<-*8i zQ7D>ffPl+rs}zTLEj9hMA@_BB^<`|b{kB|srQgme=zg+>i}h1uQWfJAmgR_bu7vgb zx4~RZTlcq@I^6;cnTq#cx=eQQLixmzcGXaZ5Wc8V1;cPO%{dc%XLy`D1UYQsK|j$Q z0aBD)qT{Lf5p9QUxH!cNOZQI{AYzw}WSSibu^}PQTl_$dzMnF0B8#V`QCkA;D8oHu%sA&yH<&-J<;QM{L9CtDROBN~iRD$>9zMoPi z$z_^-S6B}MBlSY5xq%(_Ki~*9zNAUBBSrsM2j!v{aADgx*qdTyyrqkJqUCI5HuY4F zol6`Ff=huUI=g9vIIKK=v7g|vD;sy2 z6bc(zE!eO{G@p`{@SJ$*mXzytDtF3mh>ZheSt>DhiB{IC5>JBC5(8FsP{FV|b5{i}OXjNJtZ|3x;C z`1&uwl^Jr`&k(|xAYbAkh52&U_f}7GQ>A|WStfW0e3gVgMJdi?R#`Pvm5c>V;dwz- zyb3P7;;buo(_iFO4^FcZZ61Xp&t1tMlKH*KjLb!|ODvXNT4M$Ae`JT`De}W^m^Tu3 z?BDzJTc6eSZzg&`MtILs+y@)(f4heSDYU6<`-J(w#R@BYZz&-Q^&tE7pT&FbVC}DA z>~D}hkdfbK8LQZ_XK^uC2%@bJ0$jpK1;h+;0*pc=i3S?-Y25Wt4u!qKdFa_F1#cV$ zE*u?|yWuBx^db#)#jt=BJ#lF2P)<%=>Cx66tHmCRYMo#MW5Fhe!PM;Eet zA;slSdTOdCV+NahI6HZHa-gCJq@eB3H}~q@gGChK=Z?VX54(4 ztcC7{OUc5H9cYn89wYg45_mUu+%BV??X>cw9#KGy!bqR7u(k*YmxJ^Yt^bPGB&dOo zlqyBohwp~vN57#^+dAzS7z&rB-@%JcxP%!$@L4HIp4pHj=me*DqTTYi1o-Uj>(n>6l@AP*!MZIBk#xa+1Av#oj%oP zY*ij@ZR%TiaOi)XEevm!dRa+i`b~#P1{2)D@Sp!|N5XgQjdB1B-asN*4H|*kcn;%_ zWPBEIg7)|UUx5^U3?F@p1V<1|0!dOR7$S}oCMvm|4x_rR32zAd-8O{Q!_U9Rl%&~* zE+C)wEqB#xlog4ymyi^*UM5eb@Bp?5i4HD`6UCmZ9Dt8D; zCC!OpUYmk}2bhOPqFIV$g*W~78hQJ;mV64oSXl;ia}8@Icd6?bjHpzp6<1>%RvpS{ zIHA*O1s>R(Bx?Uj9MV&AXsPWvQant@CkWtEkj*OiQ<|h=mZWTcoTbHM87Y+^E1MxB zlM@}0(Mujp3}fstLPhdQOZSQgDF_qw5~}c9VnBhC*{r;io6ud_&^N+c#q{BISi=wA z?Y)#6r2F3Q>(SD>tbakf;r(@1)^pJ&Ks&AW_xPmd$m~@40jt$PG=+~k$sA0uv-b&l z2(u+35~?)~yDLoqTP&$;UJ|9!=-zCr{huO3i+3z4GmsF1=sq_|k<$-iB)bl}&!f9?3aSgL7e!;VBg#eyU+Snl4xpLWkfh7m*8xu&@2t zx4|g4fsUNfpVT$!RE+5pv@gAhk1#KVTD#5X(We&5V@e=ixqxju%4LS(bb{D;0*0Gr zyT&_^NAaH4LPD6*PNVbngfJcB$JQZD&m!%%(hf*|#31&PA{P}S-t_X1ujknV>oAJumTEagUUk zM4e9klecKGp2jnRP&fTWp0$QfRNy8G{YrJ_Xbm5wGzq-rTY|T0x1a8UvyCh>(>Lhj z8|}YL{MX7A8v!o_MqZimTeJr5;W*h&c9e0C36wTFECRRb)jCSFVXJ+{OK{xP`0D&g z4*`FxOdYJH_74{p;`WPHRjud~-WfvP6XS0K`mZ!tdJbh=kW2v6;><4%I+Y1XoT z`R;fbr`AbZT8!%0PilRocg*T_uBcmBF)}r#*}Ej$JgQc^Z*aO|{BEy!$aY_9r=3K& zp7yKx$oN$FOoaMk{-E?Dy!o;+K3C{g(0q+s5dbibJJEMlPqZxD7xm43by6uVok^zh z`1%=?-yP(>Pg{e3m}2Dh$iBCCdjb4l{GU=hQ~7Gw8_{=9?M6?|$pLL7vBjfPJOF(y6Q1KYy=++4@44nQL=yUyj~IX9cn zy8OYjsTeB53XqqHn0if2oGR2p@U=gE2KNz?TNp*223Vpq?C+R_4hQ`6k7$%~w6+9|JWO5u9N_4k)|+VRbezcmd>pV3Z0+p84Lg+Ks7zY@%SzIw~w$A|J)m zPOc`n4yZYe@gGGmb>Zp7==px+8x}H$*Qpl7%A^~T(@UMeIn8OOs^<2yVBBiJS(K1O zln2{ZnBdZ8yjmsX2U^n|RHeaj&^%{ibjHYhN_>me!FHDc)!rr4**1x2>Vpwp^6Mm| zW)u{=w2-SI;Wc*%9w)Fht(PipIPrcMs=LUlUOzNl$KNh(w}6BRPv5K4jT@g!%xf^@ z&mqBUey-at`#)`Xxns2QGtChg1^IM;1^1aqM?(kmWom@ z))5tw4;GRa6Z?rMnH^{po5wu7)2d=IkN_RZNvm<&DRZv}N1X&@eF?~t6{CJ+gSW#9 z=0?GH#=&*R#j%ExSbmi}hw6(95&wD16!$qWzk_WJGKB~&c#h}Vi{U4LZVeUL3`rFC zOnlxeg=e3P0PW0-?n#5~wk~+;k9Vo6Irn0b%noh17gE<&-3g1D{X^{P7JB6b^*IUd zAUy8A)g6QC)ehuRi|rF9N9B-_<`&vsCfLU_owI1a<;GLtMs~5-Uy)YhdTNars*}`K z*ihZ>lXv~Y*A4o4h1e)gdMjJh&oS)M72phOSG3(@iYh=t#E$HOKvsi+x)wa- z2fQ`Pzd1R#FK(#)$-u^^Z}IHY{V~{AiiOto@PI=%U>Fzw;UDiKVECqEIQ*Ve8@ltz zQ=-Yu689V)%XO%GUD1BK&WM3^jo( zMJ&A+xpd}+$7aHY&XOYbPr8VXY{^v8a+LJGCxuVWVCGSM8g~{(fI&iPJDoxGtw*Kz z>u=@y)O<~qJA{*p2f7eu+J4QP2K7YKvI$m9bG%8)L5Nq_kR7GwZoVbW^g8Y2%4ww< z^rG67!z#?u+7fDY)*@QVu@slj$mA}X!m4nbD5n>`Y(7BoBss;YGFoXwR{8V7$-qKJ z(EtvOc$!qYj8uk9_!9YmLO#k?ydx>{vxUP9G{XZNSYc5A5YyNEZQ-sgS(X~#`Pe{Hv6xV1Faif!^1d&g zAU}bztDn|Bkleg?eNU*pi}UZ$kNR)ZZ9nk?dbq)bOrulu+7-SrgjADTQr6ShQ)H?h zjMVCZ|MFGn`VPuR60I3!xDU%QJI4*cbY;IV@@A|+PcKd+Pq$_pfs_)^W<$gO}z<64U0+KhIJueRpWi1IN>UWNzVWxyBl4Em=rL zWGIaKy*y1~yQK~&a8aVx^d8q3dJYrjnmtnIJD1i|uUlygg zR19^{9DOU=c_=5(W!218&C+WtQ=q@p7<(N&Cxj`~A2>;>_aa+&|b6))6b+mh&Irf*H; z`Jmt6d7hhLHYAMOU^3xyXW`<$VT9brj(KIv0OicOWGK4iN*3p}bd4S@Fahow?bn)( zuL6_L60M(l4Vz>idW@SkiZ+V?jZjy0 z-m#eM;?T>tp{cOY8p;2;8xwM#U7~xV;ku}AIn~a4Z0|YkY&oRS^n|Hu+b!%mO!Az6 zC%$XbU)B14h3k)M`OV_kpK!;YXHi~NVSQ2g+n>p|IOeamImLR8C;&~eZoM7)8$kD$ zuy9^suz2O=a*SpuxT)b17fh)w$#tuy^G}>#hQMCD1f~`LGN<0j9+0SDi0b!orm%3z zkRL)aZ5;g`3pqQmafY->VUl}s5e=|Wlbg@P^N-3d96ClNHujK(B5Q<1SG>SfcEU(^ z$4mz@m-X^j+_&o&!#y)F6^v286C*z&gZQ1}-qKQC(=#1oaJ}<0z1tdy=?Y0T=!*e_ zJnS9BfJ`Oq=!@96PXl4Op8V36MAUNLFPdxjmA8YU|B|*?axr!fScnpQVWfHD5_u@o zLad|uJqDR#7IOhClz+(^!KlVWF_Kv?Em4$*se)+pyPX!=C{#WkJXj z%v2MYn0|PL(UXko-IMa&r6ANJAl`^O%opn3jk@97KOD^aRHh_RVj;-!5#pMmb`c?r zZF-kQLB`sym-hmwXhB?huxxtZzJ+SbD;(Q1#5$)C!h5lw*Rjuo7{18hg2x1Q7leM? zffv~op%!&+moq+yNRrPi@u zC7#u#UxGphEHoF$_1X#kpK*4RT8-ow^Rbg{aN4wm9}MTlApab3>_O8nWK$5-$cMkkKPR| zK#;fwh-hzzV_{FI)fl9R{z7&BR_nI!$d4W!hzHQ}E#GDbF!k2Ir)kWsinH(v&VM}uR3k{irwF4q)F8(QyGo9kV=}x zNRfJ?1I9?MJJmV-Y(9nJX=LhoX=;@lm?W6wm1l5W8f(nBTr!mj{cG@8rkH?O(uBgY zmd`UoZ^L020|D6?5qYh;9erB3)^PUkr>J9@p1#%|q1+8(-i;=x8~Sv-{Cjvc)5fTw9(F+ zfn@ueWNJD`d>mdBz;mE1PJ~44-<==G9tvzVgM#N6M6K@yNLT5+UtCP1V+eKA{8n*r zeM2D@NK&hNMmcY2Pr&Vq0BTA8{UzbHZHrMkhdJM)>+D!1L7<4cr_fgmus&v~wsn7} zVAuYiX;SeZfruPl#71rWgVh0JNLwV_=PWN@!TH|=U{>Ly2jrE5zg7qHv?oROgADg2 z29OKHZZCivK62wI(dwXr??~+c!6!uSR9?cjlj^*-x&zC)S z4C6S!aE?h#35>)-)%5R+Gr!QeqW+UkV(u1w;jiRD0x1o6>b4-KP5(gNqWt?2h#;0l z|HQ4@{fBZfA7!uF@LBqu$H)v_RJ#`01>%w?De&sUQotl@*LU;PIXa-D=v{!gScS?S zlu7%<_?__={29|LDWrW5;QWKYMgr_R)#E4~cA# zO7(6f%B_k6y9FtZ%_t6QlOgTuItd%Au?^qx9(BtK4LrQYP>Skq=E-~Jt!L)RWj%{? zHrnO$8YWjk%`2LX<96#)8ojHs&Ep!KtIm#1SNE>FfV#V!{6f{O$N!(=_&(vc*g;ro z-ZCs}!AtaSHFV);bl~P~I6*WokPF%mD?86?+s_$$2+O)rsd{j$_%3L9_a^xvkaKP@ za~})|o($I76>YMppmbH9coUF#s1Q3aa~{1t2p0D77La0|qZM8yh~=0pozDlzacreW zH5U~%Sik*#pW1};iewxq&Wix8(IK2q{h&4C zp4Y)n_#*+N!;eFZmj%*ia;p0jjqP7o+uC2fExrkpe|LU*iwZuI{(3hS2t+&kcu_F$ zO!@PcGO*=KYweqJcT31g2}P*^fjVN2oK-0{Ht6y9qA2k=8tUc+f_OK}f&K!O<3zJ) zJxxobYD$3t?M>x|ve1EYJG_u--BD`JmFEKy#u;A3^&tO(Na;~Yk=NuL0-sVynaJyR z(km4&U+#YNWHF!88?B=xDN3`!`c2+KB~#xhQ{ODpJqq$AG~1>CvJbRS7x>^$NW*h) zVh*AaP>=;k@Rp}Qt)PNOZek=aBg7Y?Dxbnf5TZ99VyF!?{GfkKFoJxTc5v`(JLt`O zm{Y6L4zr}Qo80ST7)}mAtKnrZ_NBlpNwiAhWSYQ3N4ADj3bMCOeF8qC&Q1ruT<)rZ zh4K1|9qRM59Tcbl;trj6UpJ5or|Y#d{PyWdzIO48JE3#Xf~R%mt!q!wfjAi{g77kp z9F!PCld^azW4u0$pnQ90wf_Gb@Wle+uY zX{|PQ(cN??bYrTOG@~*lF4UZIwJA8Tx6Sr&Q)(a9#6;EkOw*cWb7=>7GHQopOc+O} z<6{rpIMyr5Dm4=NMI5GM@EMW+Y#u7qo2w4!N5#fbFAKtZM#v|fJsM;W@nhI*a~@!* zRiu+g#a_{g-FO5%X{b%Vi^BO3IYR;I;i1v}v&Kr_2BB|}=3Eus1RjkuU_dS(X5Qob zx*U?m4AN8F=x{RssJ+`*M?vEv8Je@I~a{93j^5^HJtA}l7Cy0d%L9T{1<`0FF@)% zkK9c~SzzvlfX#_EVmVdJ;^+@#@cZ;hU;^KZ1>zeZ--#`gwPGi_6zA6H;@SS0Yu^Lz?CY1tgXA zq1OcROC3NfWg{hj*JtU&qUyjV>%nYiBbX3?I>>vm#(Kuv@+F>cNU7KGtzBTOR}y?! z`viIw_JuMt>yL~kx!h(YcTyEH&{}xWyEX+I(wX5+IQykIbY)r7Y^TS)e$#A0w-k-+ zK)TD5P3cT+RIgjUA2m#yZ|f|$F^{pDgr@0UDz{@4+p!Ip83{!JBi*qa^8Ki7Pb5Ik zlT*l&a>Kdy6>A-at_{7r3l=&0lYzQ6HP7o50eFIY&C7J&Bsl{7n(^|pAYdvOLee{f zu)ij479Tsk!KfWY(jVIrRPg&!1zrV^u?pr8y9_hePg4&5{y4?GchP# zm+m1;GL0hIK-3gy-qwV_S0Ovb9m$OxsU{ck$#n(CEJH*J;Ac4rkbHVb-9mhqn@Zhk zsb*yhe#SF?;PULGGmbG}JN5oBLlVik54&&<()>a4*cSHFA>y0ZwgxGA{usV~0p4^Y z>n1UK>A~8$qls4=-ZcenEmW0FyBExR@CR;vjMOX+IH8AhIGd-8d@AkX#IF9BMeUV2 z=79-9-MRZ6vTO*7eGQL&rHjV#Ox(&>RTrl;w)wtGcqIsK?^Zl19crDEQ?QI`fdh8P z?^sXiKcg{}Tubf?w5Qisx? zh;DRIjbetf4{+xKzi>j>Ji%;-LN+}@0nSN!aK{@R$u~aj;@>S~{YcdZ)zE$V_K|IO znR`_FSwL}Baia1g!{dYsNuUJRGTn2*ej#88!VJn6-0+Z@VTNT7?V0aVJ4=s7fv=JT za7mg>)C~gIR#7v1CJbuoPonTI6NTF8P-~!ZDn)K0<9jOp(H&SWvXF<8q)=1#$Ja8g zPco-i$U#^Rk=#i?N(i^-clK%~c5BDmj?Cb)>|2M(h<1C?tCUZxAG4a!YOf?lc2r^3 zO0`89-FEs5D40(rl(T}La}m3uVzDM5^P(iNpagwjrajZ=a7mcU4N-h^3?#S9YOh;s zEsizC?$ay=(x~3W$ei%Qaw92Eu16b27hY5k@m1>c#&k#NnfN^$S5)6VoX-TiT{3@c zze!!CzGRBezpcD~*TTA}ljhD-nVYa=i?Gn6$w!d!BsfG4<`y)VWpqlzn&T>D%NEO1 zpi=H74I7W>8>0?6MAuT?o5O#yveYn=RPdszTwy&<%qlo9YIrP%I3fG?eVm@c!IYQdrdb`9P3sb0u{m{&V7zH{Y)Z_a^Drz*bhl*CDF?ffmf) zCu`@SD3;+{IH-lyDKYIdoq2{GHivzTfMbteL=VcEGgG`HK>IxN-#( zM{y@H{U))ZP42>2(@C{=j$A(fgbHL05iI-{SLYNRY1D4(uw&b{ZFJJH&5k>^Dt0=y z%}P49ZQHhOCntNH|C~MczNj@u-F!DS>RW5Qb3Su23zoU9WkAT_csu@#3EwE*eWc^= zu+FXd}UoARr ziv_m|8L3WEoG|n;{HKZTpN*qMLhKgfena&?BA$07Fju&kwee!EItm1SSMZeI5(Nuv z%?<2}IZfrnU7jOPWw|jdRJ#q|tAG9vDtA12T~REZagHAm!lW>>7a&8eWM< z-W*5o2TLFKW}xY8AQKe1hp@t)G>YFFh69bH&!WD|rh@aTzT2XX+oFQoYKC`ji067j zt(`X$@kuq6O-{sdsM9G6{7 zI{-Hj4_p&5?s??{iFmmk&^_#BICG@7 zJ6Ye8vzf9o)*|68!oqq&K{K@M=$N0SxXub(M4ByXb(O<)x6^?FCsC@V&jI)4;pR8r zy@@JE+xi=#dfXw2FaD$6$Vr#OrPD#ULFLI_Z9i{rRc_x-bz%f%i$9nqF zKxc|Yuc3ObKS=6jAX*5>@G{?J-L9hY?@1_SjwGW5pyFO{+0ZW0M~SEd_Z)^u4Lrd} zT_uE{AV`oTpaWDrykHh^rCQ|=n!*o zOTEbM3=F13l&C~%Bm%34dhI3rmAW8M<;9R=g7Ti)`g4#9bYWw7w=rtgVCwtu8m9z| zGK`<)&7KW~jv2A88M)R+6qgaPhNlEk)-H@ELuxDk&Q`wGPQ6}NLclSCE>j8Mg#3nn z(^Xp2MSTS2mUxHf{AYAE>_z+{NY$W3Z+W0(MT#u8MAi(&4|@T2*_yX{eO*)hx06pQ z$+~kB5qfn8w|W7kx{t7aj?uYHbUVh?kZ&Wv*VTy7#RpyVQppk5*jO**S4U)MDNKM@ zsG+y~!bIcZ)VyG3nK#ecwQb|ghwj+j%H-3>f&%LYzbIh&&Bpcnsj%-WG;R@SZevmX zcbgt~#BZ^5E2BS~m(-k=PZlY<;?Ml_3EK5q{w}qGW_XFF`=LaEPEQfLA)(J9g+vAH zfNQQJ;|oSc;0+iI*#{}X```!SDujL|3xA2{dXZ83P^omzO*jd8Y8R#+z%5D*usQBz z#tJdTO@#Nu@va0&*P2gP{41n8DNPzr1R8xPs~;MvpDHIC@=&>uP`R^+wq>TZ$J(V% zeE`4 zgr=>5vXpm+iE%?iYBofA?sHuc^}XpKdL$(R^j$s~W!>i!-AZ%s$Ggo-{JBT~4V_;F zyH-ccyFZDC8yRDF7@w}S zkBM88CRSEJG0(Ecry4I`kK0%XwDDv6l+5;rA5buu;s`A9gIK;Z@2{Qz_5J<{L{kX**!QH;!_?y6XB6;ITZtVg8>9zUcdgn=_f<~$UuB?Lj^@7QTMEI*6i$BIl7F?Qv|)s zH#2T=yoV?A^}6J%^Liv(1srXMmw7rcl8O07qOWR|={u(68|GhbJApT?faD^bGWrRC zPj&sgnwdr6V*@bzsY~1P?V%Ew-fJ!68<8wwnFfT%9YAIICZy4cyW=0eQS#5KFXNfn zuFoq-nKa!Z3R%TiAYSp5jz@BiWf)3W^?g%cLvFTUvhZbgvb|wm@~7)$%w8~EaxZ^7 z{l~>IVRcm(a5mFfreCs{a(%_(-NjnHXJ>?YW>J6Ns$F@)6kaKR-?tr|>Z2jg!}>cL zDg}lWvPhqkr!WIeyfkJ^mATz!4Apu_o_>?TGQJh+ zU(0pD54S_hc7TlY9Qkeu+*8QkC#QeX$?BfMckE%`PeZ=X65cOzy=Ebm@an3`bj>BI zFF2ohk5wEIEi?&+!gI)eiXy8xGJ>_w!F3M70m$Kf;e%fw`Q$RsDMCJ*^$^tJ1gyL*H@id-`6f`*-q!T#HXO-A^Fc>rhjN6)xk`SE?geH!~!gCol@;xHTKQTVo`i9r* z)BY=VAZ(RzjCmd)vL9(hc_sXdySOWURg3!&Dd9h}os$KUVf*}Xj$HpCK5YuvlB@I= z;tpuqlzf7%JP2(qWNFZRUqjv>BYx(?uJo_Mc7HahZ1L(mU69>7Ye_zBIn>x%)qCX9 z=tvMHMe+b?T!-Jd#BA?lFfT)MOTlvczQdz3Pp|~JOh?tPNf{i_u9@WkHs3mpckFE7*JyYe%B zdcwcp1;1wf%n2)=V9~16eZ-G>`AwX4=+s%p&W3srDa~EXF&-Ao#`+i_(pk7j4=lxM zC=Jf6f62cGvR@c!hqFkvCMMO#mg2xMFcD@R2RL53mjkD5Yo5+lWy93>Nh_hwX zCut$(q-OvmR~f0SlRL80CB`*DB)aGJ><-8Z_`OOY;}u4Poj3hT=pN8mY^XRq_%K&d z{Z9dXp2FAu)z?1AmLLJg5)w#xM&fY}#?-r-_-4xGFWH$aDG7G%0N;wkk1Ktvuk)|l zqudtIRi7&>b`Gy}+77O4`V7fgS@L3e3-m3Ma2T8^ueYea4|y{=mef7?6XswJ$$WV7 z>bL4bl1!XGAQ42rj6CzrHzalK$Qud%TKoIyy9Mv-gHkKF&mpxMJ$Z=Rx&+%e1)SfI z5Z*-bof80te>-o6I4-kYVqrZ>*=?vjIh#qQ%a}(d;XPC7Tw}IX=kSvPUJU`nIj?nvDq!`8xb`F22Fhe!@Fh?(=A&ofyGg z43};kiv#c#%b2yj{Az@DGzi}qvPG3$9nEERTwpNfmQ=yK(h9?PKVn+B4Ac1t=DitA z7p0U3Td;S@xxcD~U1`0-&};tg6ZwrNLU|Rgp+;>kTiRCMp||>Nr)BdutDm7hTM_T0 z4!2Z=P`=YZ2RtkLI;b^mY1SIFR31&I$meD0QtG!+3O%F9{6W$rPy0cP!2!$josQBG zI!A4?B)R+mrc~gkMRhPA)=cEKF5X$4+{eCEvd2=I+Kx-uq)uFFay|Mll1tTAjI@P5 zTPY6vE1C9{+~~3JP9oxE%NK*GJ&wMz>RJi6EV0Xbx=Q^8zA~YgMzrrhN45z*vWX=dVQUx)}2qDb`5kC1G#t0EM z1=?Kf^(zJJx%gu_MArgp9o4lZ9bN)81FgD`eUv+g zodzg(Mgzw?86e*rJE1qC!gvt+MXgG|@02`_pxCW9sX@Q*5GA&r6e2aa24);*{lIBg z;diG)+m|S>#~F+15?0syjDzVA4olQy>^Ysf7(2~6l?(OwIZ(VlJL&l+({ZvLHQs%m z>dSIlK*B%^{-YxI8dBVSi2vNfFng^pyJaXT1detWPLO7cvoNIrm^?2tOFI&eC8>w; z^XA($1`>NxOoF1b(WCy^TmXH)sd!7{Ovv4Vp7R#3rVI4GrX(R-%Q3n}1ER{PNLrLz z*}vmpd+0+Sk`n@8@eCmY@c$0B-QMqq+{PBBmQj2xxuJ5@#Xbbt5JU(dBfBs&AEI-=Dk4A9Gxy-)`N9V99*goD`rwib z3tTGF0j4pBVlTM*T-|?MI3jMIfUaMnw+|7xPD8a0ad=c=ebk5akZ_NYwNG=9Zmhn~ z-AlW`FK$3ftsnedy`b-c9{+*tcrl}GWs;n8O+$5LW%}s$xA7{ulY!yIg`DLi6X_B} z*kkpp5~&;};u3Ypi<~r~-7q#M%iFj8@-D%9TOH8lyX;}(h`4et&3o`j7ra!o#J-z{ z!MuLP>?Vd?nkjrDy*R1bmGO3MU$iq|ExO`0H@DJQyvLx1KmmWsbC&>s_&i5$UEws3 z5WS{M$tAKAF1MYX0#()}g$VgQK1XHO6u9f>bm)*W8*zzb_uBOYP5T7@3<7NhAJiD) z$Jf{Mn_1P4+Zs6xML{sKtHXnl%!WmxEwoqq2 z9BbCaiD&h|dci2%gGH?+6{s^TsV%#}WNMD7Y~ti`k^hr7r#zKos3Mb(VNVVYJHh(U z4c?TV*A_bjr$-!Nry!)pfed1tIGRHrtG?e|Pfg`Ml^LH8 zFUzlEU*RL``!s>BB9!Thl0`x54snzCAX};TFv<4xacttU_!LeO`BI`aiT>uwcIbxG zytc>^r(z#fasq*DPD=iUZ_4df9>x4Y+OLDZv6=EDG2YPHjk3r2K8Ng zVjTOwrxPm9qjF9gTpKi`8x)z%eT1J00?utz&Jh}kNq}*^D|USovftBL>6=b`1!`Ge zljqG0;8TK}8S}%o~zFe=)nU^MBSrm`QT`$jZWEG#wCBqy$d9rl#s_gbb)850b zr4L)o6}(nv`eYgW`^Sx0Qtnvy6|;Spd1_A5ZPgE-6#u0>WN)QAzQrntal3>YZQ#3U zL%Uk9Rh$eSMmuIhzTCJ~vZKy^uQ*D95~;QNtzhUc1ZBg5AT6c@j%#iNFw>}5ovA+y z5$-NVN(3RFVSS(drs_3X4PG};IK{~WB}PuPX_?xBZJ9$J6Nia$s9O}|>alwn&FxGc zmx_!w@Ba3WK=a2edxsBV-`7&E7_$oiusP3`lFTk;5>|C;^-U-B zv0rq5YLgrnjT$^o3S5DV6ZbR|%dythqnsQEm5qlLjp$X48+uk<9j`C`C3S8Mcb}_A zZG(-TbQMi0tAv$T;I^asm0baomjR8YUr+Pojf&HSgl+4Ju z*q`(KOzxq6uVUd4RF(~FXF7=YLGbJ4!K&u~vqAT%`8&oEvyZvS=lv`w%nj%YFtJ6c zcv|kJ90)pT0(%948@ruaq|CR8lPW&eOU|)dL2;SvAT~n30j6rHs?-t%sn_z1)MEkA z?JT`#QTts`tNWR@Yrnqo4gA(Z7h zw`Ur3Yaw(8d|GHJm3*20Pp?vN4v9A@gpp9bgj9nm#Q~v-xx`{Lq7l&~4_)=nb8p^V z+g+Yic;n`T`=3`;zj7e96++^ea*ZZ`&K!M=xN5#L3D1+nq@t1Bd=_f&1JNjKc_7foPXMd;Cy<$EGUWTAuK?&ROK$xz9$5+1oV{%7x zZ7V3xRK6e%Ce)k&UZeY+>xtNs>9fSScs_O-9_p>yOPL}>WjIkFw|jqhC|GcTU4r{p zt?cU8^uuF8o8QS*5!tl+)H}U}R2+TT?mZzDS6?(*5dM5XbugoCBL#cs2YaH#S3(R} zqELKglQFX-ob>h*+`9H?+l=Bzoz$=hI9oL2v-$9Kg?^pkbgm;XZ*m%L%s9mM zyR1L>{UGOvgh2#2!gs+u2Pok?k8)qCT3+~Wt=6ql<*&|FjZoEdFxQj8Z{iTXV8|bb zlwTEm`%#ec6#KB(srfz7aRmGWVkE>Awk5X;!qCV^pHiD?SOK(gpIL)BrZt$q!rd9| z#A!1VXb;`Wd4O(u<+_S@W-hBd4Yqm|=?kNWiSYyQ3$mrAEDSDsRar}=SgeUMCnYj8 zqXY1Dg#(H6!RRL<>8?Gw>0FX#9J}s;j(QB~XwyYv0Tv`S@k40_j+7()4-8#y^T=`R z0UT5J4&QY^imLCD&g+usjY6s^J;?ztY zraX{`o)XB7JR(i2!c8rHjnBP}Zi82MG956LKv>=cryovEU6fb?F-HJs$cK_9A!gL< z=>=^G$!A8YDx&ch0C?jB=T0-;v@N(=Y3{2yDcETT4Lxu|G?#B;KSoogW)Mc zej2#zJThL;^-pK)QWd5XyE$iJw@O;PEnu$GherQro&4=ew~dDM>cP2d$v-UyYb7}C zfk^S1`kyp5i8UFCx4cQ^YV;)<%o!A!;xt|I-6be8LN_NaV3$;kX9d&zmvut7X&kzf zRPrJS8G1i~YSr!sx~?1%TH?l?(xINBW{Cq-i7IJC=82p<9ZX{Ey8UmDs?1N~?bq^+ zx7EYP-m)=K}cF6>@k1WgL zLE5QpS~{y718`8?2?YIPQN49huXa_*=(O4Dw7G88VJH){XmU1b(R1(+tl*`w#<``^ zeqi2q5er@G0Ko@fV^hm5@MPh=10-^C^Bm?$+(_Dgl3~r{1hC zL>3keR+1DC#Dr!ngl5vd3oGnyaC|3Wh&FM2Us?1=eNuu%H}?Y>pTRE!3J6=-vMHAM zY5Bo245u%LhkGE#sdG3+`h2klCQ8ZSJWi!yop@sE5=pcfWAW@@Qf}SpUfO~5kJ5xg zsT0~GXt)vBgCf}{oKu=2To`q-Y5d08y#ay_@_pG@zos0A(Z2sK{FO)umI&bOH?Z#3 z7fGHId>``@?RS?aOa3cn>vdD0;dVitH}JNh(H67lYKk&G2ocn%`hwd0?0LbDCgB>1s$JFujM{-Wu2Z^3E^pd|A5022pI6Z;Pe z-IR?Kz}0&4%Tw9I$o@Km{^W)s%j`jABF{za%}4YP#kwX{$U;pdLz<1PU?Ghq5q$~U zp$+GWE?mB0`*k(DqM%Y>XC=}g71ZvvaE5Fbq8%E|5R;$;UdpQ5GRB% zkcaHgjP52v2<6=t`%YsM+J*WUAgJ$SxTngvzKGsYuk60y@?XmWyX}2vO|Tax~Yi)@3mV4ODxW64*4zR**@dhp|-d!>*>WA>zfk$l9>M?tB~pS zY5u4*c%N`zGo;0!yki4Ud}h?x?_u6iS|Ua2(vV#gzz_3X5i&VL_>x1+&ahtpGCX^T z$=DI%L5^_~43Kaw9>&uOtLp3BLZvylUWVmv)uP7sQTgm>H7UAWasGHaDLUHX-F))$ zN`txmb~VC3uTa`Yhz@hUg)&rj6J7WTE&sA^!)ck4G9gGl$Is)x=vlX-dl}I39HltQ zblOqNQP!!F&go_qvQGdQcnV9F`Sxo-5AxSN_9}sI5BrcCf}jb6cEcOr?AiB1!}H*Z zrjt|3qSB~n&H{AT(ZkrKjOA`j=EBN(5WSNr(stlXgKym_jpfJFRgMo$G9jb9BOA zSw`YyX-ceS6z>+cy@`t4QpS-K$l_A_am)P<_^u!l_@VtsM$>&Wg@#_|$c(L6So0qeS;p#^e zV>_~sKM0q-&tj&LxMdXH6cyg8nO>}{!48Ty?m0I{E_a@@xD5GhgREOY-+MTn6J*x) z01rSvOVY18N+1&*km^ny_-m=Ru;BA+@LjAk0b=9t2FnA>*mC`p3+f*D-4=ctpmZ;A;_60tBQ=TzQ1vk22q?6vLq#}#Ii z{n@5`EMSqDjehxRgW9G;^;(MITz33h`fi=+QdxzMy><%Muql4QX4^|WqSKOF{~^FN zt@*cA_FM3Tv~8R2BIyphg_w=9Yec{tb=*814+5)ugr*|Z4wodvf{{<4vL+K2*GMXY z(F_&MS%Io5-65CEM9#QvtYb!hyQN@N`b6o@t)Syc66pvOVOb-h^tLGJK*A>mJ>9s9<>QO-OK&$_=eC2`0 zT3*;CTN4y^;r{Eu{nv()-+5Toj-K0!{;x4YQ6D;14}Mk`QB@C=n(;Ms3j9|JNWh%n zdx2iQG2yx>;divly(nXiXVwj0=C=Y??p^s>U<8+(+Gzs66vgoHE!+Gn?R}f zBfV5>G3N0aPH8F@$2>$TPvsY~do7@pXM+M-wGN7O?tNR{F(>a{m}M^`aFOP|NcGfi zm)!!Yi+tsO?b`WIEkmD@o}Ox>G-82MIVlPGag2DCt@>Dr`Upo}Cp))vfTb+4h;N2LIxR4JA2~d_Z9dd!(H3Cu} zSNJurKK}cVD`%w5Q|!*UFb`5mN1RX|Y!Ly7eZnW2+ec4C3AKd$tq^~MTr*#-4UpLdsO z_XoJFlI(K37Bo7E=2ld650FBEHVV-#a)>im>2|18CcvsV`W5RW0?fD)#+r4}?L zMih$tiC|y^H67GLeb3Bm2>m_ZHhj&8?l5p>g0RkhXzR_>{~jdm{3B#;#|k(PCiy{p zOk#2`Dcg%3#yha>9fKM7`IV0Qe&n`v6_}HZD;WI;7%BNH zLHi*{TY&N~W;n6WtEW(tf21gCcDcZL5nGNKQv!!XNqnzFlqF0wZr;$@S|5FIUB2Ub z*p#^t6Zv(P>AVqK*kzH=unEef49_hC&pCz9v6$&Ih|4lZVxAG|l!a*oM`-g!_)?3h zfw=xsL6`uW1)`TaEo7LU}7Cdp0Lcqe{|(WWal3 zqUw-YuZH{w0AhS}U{7K#_agdQK)zq4Q;|;MI65QFGb{hGMa%}!eR(sx0=4-RGLOm} zr7O-Bv(Zc5z&bop-%m+f;y-q#F5NmGkj=gm`+aWdKa<;aIeY0SiQFXj0o0aqg}tlw zywK}Y0?_ENv_2c%l9B@QzCsG-sNy?iLw@N z5&mwNRkeqF(6w!dy$hTA=+5gZcHEpxwX+!42pfM=wd9F<6YD>b#)#ZPQ4nH-0s#O; zI<-l3%G6UAk-ktW)khXb$;&Wilb)ni(oBHLrsayMLWU0=uHG<;!K0c$W_8QRhQAL3 zLWeV56o7_?>3MYnOFCWKu0PgoO^ZHb^A4U39o_RvwX+U@hKn9c&#;n?;bjNkmX}4x zvkl}UBv)h6aWh^JSF2YRh#JJOn=PxVM)dB6BFc1`=t!n^(<8UxmzW0U3Jje zrHNO2?>p&LqpFl{ck;2JE2D-4$Kd_i&_BC{2x;lzy*0Z9wry7o;?4LSUM@4B@7(Tb zUQ+cK46H0QOQw}^q{m5Bm8ndr(y8TfnNT}>WB<@FshNcZ^l70gjwEA4v;$KHc#>m3g=J#u zl<5UVWE<~y9KwL9-NZ65hKAp|IPCOth(@w{tB`j3*}vB^OBwK_DS82!MNP2P&3bgN zxfSKYsxAsI`%qxlL-!XJNRKH^V|U@1&&Z-5`kL?qhVKA|-);DdeC(s6-?Mb+aemIb zNbYU>R#(i|lX1=?a;7U9zEd%wz0nn*kib5AV^4P3mCd7$VQo~&cl>2j?kh#Gr^4PI z33CC9fG0Whbuc15xfYB4{Dl2f`G+0NH}auToms3qc~HJTssXD?_wt^EU&NwNtJ|$T zc2tQO9y!pvfLe2cY0Qw*8ZV|L{f7w`H5pn!zcGBH6%Vn%>SH}qNd6=dg6Z#D|;>6@T{HeCKdH-m;5Gt?NNPqDI#6v3d z7$)|UG~iB9`VMx``|tkdUE$bN-X2oWox*O(P~hcXxE!jY1HZzRP}xp0L;#O6xV+Mj znm>g6iwE54a+&zVM;?1KA;K(XHHmbxhPmp5|1{jfPbP10Wqo)nG$Ex6bmnHLcJjB! zoi}9|YK4DD&xtxJ@7-QuF0L=BmIxGvr5Lmu7*$?FKGD*fXYh@W!qxY2Sf{`p1_?c) z6JL69zc%Zik8}?UbjEg6e(y^?d<5UTb?)!VpKAoYO>M?ctyK7rzs|v@8I6XiK*!m# zr4VD6exghT8k8*cKELswNPsw6Nec4wfDhCBr4$rFvy9ze+Kg*rbZe@f-m8Ku(%;N- zOW#T&_m0ZDiEa+Ic8y#)5#~D~se7U#Wc57;d7hcvBTD(; z+WO1725!TZ&ALrzIp(oPsI8AvKWX&`CRE;B)r(U!FRi>g?qq9mmOU-^+3oS)B|MES z+NxaBt?uOQ?N_5rn z;!^iu#_dc-;j><%dQvG>j;IrH2;VX^Z==St{x}@E^;)3VX*250haLh0v`Xyt`g7E% zO)+ZSTkO?oQs;(EAEXmz7Xm0vbCD0NN$l3R7AwzuRvw7lp_n z7zt#l*RvicrY+(_y@QOjMvS3`gZJIV$hP}VD8dNcI6!L|gKHnd=-h(xB!_s4u)7E4 zI=9t0#Sz+}5xS(&7{jh0-vaO5aISms!1>M}ktX+d~m}j$0 zLHdlh)v9QLIqkYpvzAAYGi0*~L^7?$wC~#Mn`Jp!PTFN3M`Ic|oKo^{)Jc`B8AxCSe z0nN7<17ZZA4$9)ytCL=@#B8K%VL&yFP@E>;_TO$6 zp^t_|zM{zxaVPlt4SkD_u60ZKV0}3TfJS<_MtX$$;uNHZ!TSG@H-6qBqQ}82 zP0BK0JkP`0@a^B$L)GQS3Ai}AxYs)lUlxV_!34achMiLxiE9?ZfVznHW~yBusWjhN zv=8Xs=rUSSgmgJZG-Xz4j!5a!prnTX83fC#ku+}=)2Bnlg-hVY)G6IPh}VTd?2wGww|nxedR-wN2vN z_!1*$DAW@4X#%%$=`XY&Q*$d!h_Leli@h|1e>XJ@n!JPRGX|G!0iJXTC0W%C*SDwl zr`;{H+Z#;u1GabJZ{O{O-zk~i3#VGiNYYnPh+15Qmw13@QH4** z!Gf~Pi}l@J$t0J)-WJ+sGfw>+i9wn7vF%jsMRYE~q$1r>^+fbe27z!!mZ(oFO3mHh zQ5e;2q={NMR6+-7-qZZ9{VboEvmLdoqv+164KG^$pDu#k$+^{!%+pKE&lCKq3mWqHfgCV|pND(Dfs zFYW5>xv^=1hI%Af8h2RZ6uHO>bXshVmjDv8@QJki1j^&`xaH>?>~mz$t*8NnUPXc9 ze}pE^Lj1Kzuz20b9@RmhUc1D9nc;sv1Qfgq9}BvvV#P0GAzr{Dp22`VrFB7ad!$No z#++|y_R_R?XqWvSAJw9#)^opmZfZpGMRfVRTif=H@_jMR?U`5p_&DiM;&hQ^#8D{` zFT6FZam%bqMTHssj_V-w)yyXflf#da!H>>^C%=`5b?^>ybBekz2-~2R<%3s3^6$8Z z_1(tJbQkpV944q)WAJ*KfTlw_CY&11VqEUK><8aelHjK)_Cinj;4bE0q2gCvT3<*J zz~KDkZ4;jLfqI_eBFU(PvU5aS+efY&QUOprJGfa#h|J_9am40m6-$2!M_x@zSD>+O z)rt+oLd-K3hgLB5=-3)m=(4=&_N?I>@NML-=`yR!!wh|BNqo$GpiFIFBjKA8gv^LX zT?qaefRU}5A3@(97m)-iS?bRhV!b$Ptk5-VN?we+p1sd9Mn#+x|ZqAmzva5_eVJ@ zwZ*TH9yJUH%Sp@ErEis*ERAuy7@5{7PSfTt-n9?~_bTYxZoIY#pJgdBBrk@IaM0Ug zWav;F`fS(GVJBK*7E}7`{v`RYyAwI({Pl7LtA}r;{ch#^o65?&%z|>7d;e1T!oQ`` zgCg2*+5ED}v9Seeaa64A>Y(hZx$Msm6`*B>t|2{ERpMDnnTjlta*EJ#R8(5g-}432 zyLL3(7!I#z67kb1*#6Ya(2bG!1{#63%YbJA$|EM5|944ZqhilJv12TD;g> zd|`JQVRuOCF6h|bNO9RW=$TKLSxvzgCaLHvtK)Lo}vcaJFUM(33mUore)JPX+<47{baW zn{<#P05*3ag}I=#v)>k$Lur0 zF&M>BuLQ}I0dUcLio0$HjWUsPGE(O5jKtjs~wT*9K~`%yDz|VpWa9i zJj{l1;|`dIvUJA*fx}=t`n*{`=RQxIxkmrvO5Pq z(AN=qWe0lY0)Ax&`?Y|y=(w>p|x(F~$o0Bj*D^jvJ$BkuY8q>dg!)Vn=2{X9awF6n&# zDwP}5Ph)+rO8+N*{Pk~-TmlXo%zVqQLH3ZZD5k7Ds&V^gHu_ik6oCno$?7lfpe|Wf zI@76e$U37<_?RxA3XleC(~kk4o%dI(uTjVj6Fr*DnKDy^aGnYyy((Q*C(}Q-S4KNr zEhgz0LX)Vz#T2sSv*IN;;59Yi&C9kBwQz(lkm1LF^I!9-1(`h{q_78bLr}5%no|WO z=aD0sp+yk=cLbpCg}MLnL9Zk9KBg7>vKyik2;s`57dlZw?q0!e7%9&>`dn&TjA+k= z2!*tLzSwN%By{*9HkLOed3%1kX$ljhL=>U7v$VKrmZl;@53Rhz5PAks;TzXTpg#9G zB>Ho!6NSwZWlV=eUHu%qFJRs{ZdONc#Sis5hiZ2M&lTE3X&U1(3eo8&Ou5e5+z#wK z{>}I;O3u9f4%6@-9|L`#1DR3Fy$;B^ZO=K(Z`%(Dc@2kp$rT+pM4FCq&C9U%%dm#= z6d3<9LT~mzTMpQ~-@h!6lvf+2LhYc_(x<{ytI-6+(f2B)q>^<`cSOgjSB7?6=C$FA zH1ZLbx03?+!fix?51EjJ+xvz%rgv9)>M03Zvg9oa#C(nHGyWA;ky^&cZ>97SN$x%1 z25p?Y6H=U6#aHW0T`tlIW=On~Z)#v1)kSVrux#adt265?0YKPzzX>#xCYcj`^mW&c z*E;{LOcDzf=2b^!or8E&jw-EQ+mvhV{;&y0`GkNa;)8{;<_AZMw!|B$Jac6!?ZS0R zn2Mh?6)9|%=mFX!cLlLeO1+=N$X>fOR?CSG1l_vo!PB~6nU=f-nUl0Kxt+4P8Y;^< z%>k9<_DPup5wfM6*J#Vv3!^w4C!OU3)y?W3OQ`zu{r#%lGoW!^V<{ljEq0v#JW3wE>Hv zX`QtpIbAz^>FBdD9@rRirUSN0MBgO9+#sZF(caWak$dpzc(?Jt{iW7A)mo=fx#(-# ziFhCre}wwPy7uY(U+F+LfWi|G!bvZpR=x*+gpyvmj_N*ZRkGXnHrvrQ&kG30^>x!c zb&V=)2QTirwOYh&TE*9FssxYJEYCg$@s^PZ*8?N5NqfaDo@w;n0W>!15?NfKm~$p$ zIQ0WwA0n;&iBlYyx9YZcOXE#1rAb~Z+Kh9~5mxk=RU3!zdPd)Ga-A`Z3RC9f1k~gP z2e{KzEfm9Oe_SdusMzi3&}~|zZL+0q5gp+{jH>c)t@?;rk{+1Zn9W2v1 z8ODbu*AOKY&NR96o^FppR$Os3>Q6k=%a`o*GRTsikAF}#>BK4n`Px*2B zq+pw^9-pUYPG3dEyX1Z*2a~PXx!1(lAP|=e$h%U+rd?caP2V!I)xM9=v0g}OfgUzp zOgB-vz?TDq`IyT!s6;TsFC&6$X!Mor&=RpAjSw;+6eB#ve=(Z3SRJ;HduuPRA#4v- zKV&p>R0`!@yk@mLw;4mWi3q?seELCCDD#mwWYT4*K{J8)7Ge&)w-#&i_8qUT;3N{fJrG-9e~B{T_(L__6uVh``Yt0Q|iD&~AX zFhP(gTumV_HdFF+W|45BzP*s?nX{o(5r;tHYY>P{C=ur#(l@ec@9SfdyC+mRf}sJq z*_JuomHO4{)c6i(I?of=9lM;;PwdMVqOBjFnYf?Eg)R+y8&7~LD6M@56f50s0xZ}; z$ag7!_tzsi7*x){~eHkGQQvfOT!evWdj<1t||+`UQMRAxx(^Tifj1TKx(KyJ4~XO8K-8YK?w; z%lnX>TA)2oQ5yJZn5-q z=>$5nrLBx+T20<<8H)K-=IsmsKxt3*cH6*unW>jjG#3k=oTPI3;Oz*#M=iSdQUh;w zht>W1DQVNPze^;0fPWAKMm`~#b9u=PWfnHP4iU<$c}6b77!{5_A&ILb35}u070R}O zkzZ1zHnB1p=(m_OU3%j-s&%X6@02KIa>LdvXbxw=?FwLvuPon2Kq|zl=&AQ^;{|4J zHC1VM5hIE~y*OH%&QkV|llvN@lX0?_UY!p|pmT-zlTO1W;4V=gs9&a9 zu6FY+RhK168}n>w_OPg%re0;xq8GtN)oA~DE!254(X5!#vKjwvHKKn(t!35qq%*X! z5WQygbyuGg9kB4&-f*~9bZD(&CQ{&A6g{bbbh)y(i(5NkV*TCq>bNI^v}<1mLmPmjTg5_2pe%q#qJ z;in-I!8D`gY83MJ6vaJrUs5b^4F|YTQ9D z6l6~#;TED%PqfKOF=j#1lB??7Vro5kXrWJYgLRhJZIAj{9zDE%HBXj>N|8|(=nF7$ zBKnEQ(W!9hxxd4IHgBKnm}ecR$Kr~^rlsBsWpz+rtVPbbZp>zCtM9>j0{K>l6l@pF$ZpNCMwBGLpj}aTc9+14gQhPo zQP$c;n|Otho|Ps=h&=^Fn_9#!ANr@)LAAdQ}$g&(;?Y#XAMFL66pezZ&= z)XkxI4vOLt7hm4|(%Deu`&D8i{92|2xjD>r-2a%LC~oT|fPS|L>HHS&dwPPr6J~Jo zlIsQ0^2=a&s2cc)ybB||FR1Z<0MI}$zt9eQ;1;`(Emu+dJ)`z|fUR77Hre=ZvkSAb z<+_4$LNP@V(6TsWbA0TJ;E>lLn0FvT83@(EWsd&(@1Vpv^hP?`cnIdD1U`S^atP_U+2q%6-WBX8Xp9q+K9DW3wFpMP(B_s|J zl1CDgM+wPe#FPmVZ6b+1mBO5)v*#F`X%=sq&7R_M=0wU_iFgJu7XV;NB$yKNX8~YZ zBApU&&2OjWsncr7tXw*)mCmJR%xGj^(xqQ=RG$^9&sxb`M(S*4>St}*=T!BKQZTNR zO^OARB4Aw1A7S%HIP4)Ny+1y_5037M!F7P4#t2AfG-eP6AHrES1`Oenh7*!T35i2^ zGu#k{)Q67iiBIZy2}@`)jf7MD0Y`G;irIv z1Ad5IApCA0?$5r`Vmxj8-Mmpal4-U!v5YGqe`)+?d(K3S3-5{Ew&khtFqzRe!I*(+p|Q`9z} zsP#_h9iGbb;e|d?_s~hN86=a8XA-2e37I`SatDv{R>;%|_#G_!Go+pA;*JcUBVF`9Q)tuz-AbNOBkWA&n^HL)YFVd>Z;~@QWjwuv zWt4L|L~qTD4KhewQvbs3dO`z*~i~UCq!dMQw7iUc+mX0&mh} z?MjY8#%fJdy%cg<#gexG*7R3tw{SuZ5x(3F|3W*2GL{WbztmtVc}NYlWga zgWF#zn7l3h@+4#asb-}~vG!8)`%BrkW^?qHtUgmMKbL+pUp!Z>G>TT9XIN(bJW(w@ zOIv!HzWg$CrA52?Hh;A}XSuy>%}}}8QM1-@W!19%w`#>yzGSFbF_f?BYggK97Tb%L z-xkkXw*1yD8qA^p%DnFKg8u4~@yepHe#vlcUSGecyS!vh|At$OhTG=*|G$X;=X&s8 zbAR&J^6=-c{r9myS?>R{KMe)?@85^4jT;-SJ*+9R_Tp-#wU%48*52K}Vomqxnl(ei zb!&f_0@Qy0iZx@yb!&gA2R%)9t@XD)vi7pR!rJ|cJZsL!PFeH2;9#w@@s72w7r$9^ zJbc_5!XIP}8ysRSz`@y?`|0!6iiKQj_j0t>Ue=Xa)8Dyl?c>V_*8WleW=$`x{iOh0 zPg7cZRFGxuer|@fOLDQbH}zH4{xZ5}p!tEdPcQCU>wb8{n(1!6HT}(t)>>-ItThzn zSi75*X6=efW-W(Gww4qUW-XmfxAvDtckbX3YxPB$*8Xj=-&(PVZ%xCZT5~>j+S*@+ zO%#m1?nAwooHps8lRhh!$)3E0yB4D(T84(b{F;_lx4+%N5^Bc+0t*g>24e zP0E}kVTOeoN`UtxAx3D#(~yW8?xAI8JabO?W*_#<`PsAR7^vJXs@5U0-U)UikouUQ zdWy?VG(g68rm;>@sHc(=k1|t^ zBv3CTO&8@P=diFJ; zJp=zsY}|>UJn_|Bcs^{qU*tx2u#I>04qv2g7;077#ia-9;Gzeb@qyFoWQ zN7*<8uCt5W=my^8l(H|3e$WeZ*k9sDV(bs4{^VALCtpNpM8AgQUVs>qnUhtd(L!QJ zj`%rQc{7$>7m-pCkXRX!coiB~0Y+zou-wxDggrjsjjoX!U86U+M%p;x_69_6b`D?X z75F!|5F2~G6S^*0{*W$jz>-_AanA_En_z^?uv^^Vn;p>`U1EN8i22bOyUQuhFXkeg zR_PU$al|X@pmW)A@9I;2m(F-yIU97_E9AZ>=rt&+4T8``fV&{z?r7)-M0_6-*9XTB zK+ywO^k6K07>ypr;RoXrNAZcH@re_pqzMXjDuF(c#F?Pcr#QkHHe-ejOwy@S9Kozq zFe_xw2>H_zfw=?B@OiUh$+VO|ArQ_;xYKg^oLDla1kBfS>6#g}>Z?pJmnQqHmdvHg zKWj6-Xyul7HEEMF`GiDZt`HLvq2<_JYRVv$I>2J|p>glQa8o!`7Zlqa9`hca(2tJq zPoxhMNuy-ap!p(+H=LY2n#dd_i-z!|fw%|7|x7Q8-{!#xQ6TSaA)&FmU`Zd$jxhIbY_|#7V;UJeg!le%LIb#Cx z7$6!4_@jLBFq6?wWep^g`UuJWiAg=UCWI_HFKAj&q^)Dt21D1aeN-BWc*pRRqERn(!7e#lO3mje&EvN8}F zy~&Pw*dM;lCBVihWP=N2k3W374|=P6nlq#>8ham0d(9?wh`C)dflk5i6!AK_3=_aG z@~OS)vJaU+Z=U=^HqfILbZ5#sa%A0FQAZlkZBGAbsg^^3)vOK`w=-STso?0-#O-OK zHkG7H%QLC~lY(zla108LDV1w31_q^|L&j-W^Yv=ENdp+t+3i`H_EgcEH1WGM{u`Cr zpq9Kz<+drfdadBCl>f@I?w{5olQpHQTSbDmBA`{odI`v13fM1rf>(UTYay$N!+pYF zJSCH#a9K~OoaZd2Q7Qe9!yc}Y%>JfYc$Q(d+N@c7mGS#a&ulYk-w1@j{L0TZL@3B5mcebnUWiwN~}5Sn{omx=<=#(a^uB6K2IJQ#|}IIqm}* zVM4|>hlF2s3oSqIr#%*uf5b2ID5&scXpJN6x)=H$O8O`+vxQMuY@!)I)G( zfT}PqyCkK$ETLB5Oy-`#@a*VfkW%c-B%MGr9RbE!Ht`TX?hsTSol~ZLR7A<;U0}xU ziizADfjoc``YE(26&2El%HX`DgLt+#Py#$G72UX0+)yXFuXGXMcS3N7!=xx-74sJP zS15FcKVp}E^!7m1?g-resDz_nrhN+aTny<*DE{Yg_zpMd4o~b(-_Z5W5kGo`Z+7CI zk4<-gP>;aU{o*ryxMeU=D}&floR{x~NIM29bBwy?710nCZPLQKi_Mva(LkY=1joqi zgII?=nCBysY(0^CJY%=G#BB16SnnLQ$qBW`AG6In>_?Z7^`M}wUMxGvHRFpZTGp^_%S#m3mbQK(b5guO=j=zUbY^1VU>AW^^s;(rr^;&&XZuUh)GWjQG#1==0 zjRRzpOZWyC=(-Ci8++UiAJ}>)#9nvO1sr69Ct-(kmQQ#+ic;khU2+bTd(5#Wv(WLGTeBMkKsN9aYOEps#Rm>~qNAA{@15r>J1 z<8kCMLc(N9%2a&96fI?f%A8^_CmEdSl$2>Ib%IWtVhLyD!dW(bN(@Z%1=Bpy9G5l6 z7tTt#(+c&BO!ir!os$8xD#@%Im{EwQRN^_M^0Qj@IW2WoC7wwY%qZkDmeoP38HH?G zBA#HgCOFJ78hw;P9%Rz`Db$Y$bVmfT-9O3zg1nD__9C!Dc)}PlX^=!4rBcR7)Ukx* z(Im<^gEvZ{kI*T@iKGD{eGr4}LnrpbF&`1Q0W570pFEOGpWq73|N7UGlI2S^%Qr5q zH9!7GSId8nb^Ygb-#ItPwox!SOaXzpg=eT$VPdTQND1L#~$SZqip^sI=hc7 z`jkQ+NT3hkNIh862V&xTM4SnOZH2})#w6SbMdzIkPTB5>-suO~;e*=Z0k;jr*!rTk z`z9O!5%&9{c7u`*2Fs55iGK}}oefbrg=U-!6&(d>90Fy>yc73&lJ|R?f11#Bj*&l_ z|NMOuwz~-r`Q2yA+oj6xi?ybld_!(-mt578A=fFz&j4vjKs;%;7ws^}{QV;~d4+Ct z4qNXWv&o0B(=Epvc^#S1oRHGSXZ7%y?^V<;cA`nnHgOqkoaAmPrzb<$oiFRni(ByB3LAwBiAT&fof3`)LEDl@3fRYcsb zlE0DhS~b$wWkqk~jCV@;J3052RQQU^YUZk!D_+9|M z7l41t0#M=#HY;#}?!-jM|HrHzt4@k$Az=ojk3i#VVhIJX6LvK4zx}7SqI$f&Uiiuiqs=ey;#IRB4Lmn zH)YuaK%YtHea+!~$rF7k6U~<>zLo-urLu)8V6j>Xnb+WbE)TKJn z->cPsui^h*EnO+)Ef=ROWO6>MlfKGvQ+&cW1^EdD>x9FbeFAUWg_N8P$~zU5^HXr% z@$iZZ@ayi04UycYl)|@+tX5i1TN3j@Fy=uB;l6M5lhD}b5$OA&lsln}hY(hC45uBM z@F;>(7sglF#S4z3q-T;SMmygrX0id0t!-y49xvJqp?LdL1J5}7K5jUw+4{7ZC zWW^0E|0Yg$kFIPgzSesA>hR+${nyi5WweW7Fxqw}TxZ)9Y&k58R9Qi5~ z+!h*biUxPa;CtbS9&B=7bnK^CR3AF751%xGh#$nnj}V9>Xxs>vFcD9hBoZeRk|s%% z@nqUGlQ~6Y%+RTmOztFuHNjxaaH!Kf?z9k?5eTORycscXhR2)(xRdFrb25%O@lUIj z=JY?QlFuq7GaA4$=u<77OP851rd84zm3CIHoK2HXsFmYV`Gk-<#$k=HMMG@%5S7wL zr}UyQ9Wj_T?+{~1R8J&o0FE3clE&f^$Ef5nin#-@#uHN}Nwje?d6YsOr<2BLw9#a8 zKOWZ?i}?tFeS~8N5SSq>W+a6&#sTJJ%CANF3w0H%H?Mqay!&^8Cie8vbM84+^F*qk9gcbvf;p>u|lC?Cnffuxkdc=AVFVjr5+izoHK zP$o2{6-{i2#ngBO3l95Z%;|rl2V}cf%vLYhW|tTnSIizi{B}3OUXb~MbkGMl?8p7Z zOK>zG^=z2tG)R6fBJ*qr?|^swb`Sbb9+=I}u)o z(wek_ZjG>0BQmKNovG&ZFX>F@wyUJ=3Wh0F-l^c}loErIt5@@kYK~qh)u#&EWFnKC z|4ymUDFk{Izg;eEPt&w1q;KWGJBd`M;=EG}+cj*Rl-(v5TMqw{0I%gj%L4(K;I<<+$eo3dbOZXr1r30n%nd`zYkCe;i0`Oe3+NAjQ zQuTYY)LZ~on^IR_h*zH~R-dcaESmuo%Z*xd8CZUvx%@)A`Z9f`HFvqKcuiNns;^u% zRIeDXEE{T93{|V9ON)l8KaTjlwA@~?++MlVUboa%Ja4RCG}g@PDwlMZmQ3|ahD(da z`UT^SMdJ-~;$Jk?FIYN&IsM=Ms=Gele)oF;_+9|M7l7{t;Cli1XDt9u;bs+XQAO^N zB~CGg=R$Ms!wS!b<~f9CoC?S}8JvAKAnjaG*2#d(lb+dU0yJlRGL8kS4!FsVcnc1I zB>UY{Y#b7H`QbO&6V^L3cDZFA@vd?R`7Ioxhe1DJ5Q7QGQ4VdCN1u|hW^x5{dE$i} zbJmwHRi-Ugh?gqVOO>LJgsxn~ z?x-ZY#9ZF(3hrgLXA0AS2HgpX*cF4^3#L2MwTUH_ir-Sh3m9kkq+@YnxbkA!&HBRM zu4tcYgC&?fG1z?w+=-B))JNK=T=cdG)V|Q&L7Cq^kn7^l&JfvOS%eFy4>7X*#&R&i}ZDc!%r#( z8ZtlBrnX7QRiI$m5f9{g`{*AWBLC(b@vrs~+wAcNK6;6?<6D;8b znKH=|PSJSNO!^F$HZ7A+3x$@Q!GK^|CYx4BX3TE^_MBAtSuUJXOQz()8RZ{G1Skb_ zS((!+)s#kJsR0ULE=~PeE}D@DM@7Oh0d*2kk29DfTuvWX@PUxh6$#h-hj)g>ypN6_ zj71I;l1J&xaWZu@g*uv)I7XySkccB}mZcBSDB}$FcnW<4haH5YKZ22cQHX&U=l~Km zkxZOqi)W>*FS(koY<7|Bhw&rf&newwA@0c&|cp(3Di1cKT=!lQv0x0vG zFZYlyVTVidemCMaPsDmh(PuhiTYDfL056n`>bq(Dx+H@X-U)G zPhr*~sTyYpZofBbt6Qjzv;R7$u#GN|jo#!vp2f})59p%TY-YEF-78G#5z#tjoDM;} zj?35aSv?y0$2`dgvm9YpCeV{-IoPW!Luf7lJ!*EBlGl+g?8pM%rvn{oz^D`&)jWer ztXFVNYW7==xKqV9rt^#np(&lyq2|0(0y>SvCHSlXG8-nXeV1cOsTK_qWQVuK;TvD19#nxzu7 zUtQ9De**Bm0DLb1-wVL^0`SjT0E)b#&B|P&^IgJ99inp1h2)(LE_RQ~u?x#M9guU{ zFT*KZd)`0ww4e5*pXL|O^dtVNBi^bbUaCW`!o%L8g8?a<9g{aXB-=Q|+qj7LdgPxA zt#=B$9}aGZ#`MM^`rf$3BOb* z7fVI+m8zv0)wfFCa;n9z2gSH?Gb&;AAAQC^Ux3a1Qh!; zB<=x(aStJBg7cbDz>8Sk^-zAEJ572VC$>+d9D(DH#ipFZX84G5LGsLi)I3y9Hds=c zP?v*Jr@0DKJ$PbAGUGgve40qyhrsNNApR1|J1gPa|s9Gh#io)(_sag+jX)# zjN>@i-k_MBK7>O-USINw&^#D$g_(N=L#@Ja=wS!4!Or2xz#QF2PfZuaq;>WZ_v7vSrL@hOU1_Qf}YBXzH0SA zabEAGn!&RC(W=a$V(oNo>2!VhzyH+ z9KkjoQCppnJ6$nb&L`}4N9^-Q@Ak*6b46`%iMRF4_JP-e@l`%iC2o<~`yJDE+Z7)5 zxNH}A*U9&}tADe1(AyBGKH6LWB8}1U9}xInB+Rl00GHGcM-1V~1E}N?IBpnC8%D+t z$C1Y3$P*asL=tV1!JMK{rihFwa`GgFKFL>2QrOdE?zB)oO{328IWvINvMrb|pW!iP z_`syO3~)Hp66LH+Iw$4Ns#Mcr&5V#cE0@fsOFyfWlN#lWN;az!Pb$RIa>0~TG9edD z2zldd${0s9!eNe3$o+uu6Nb?kp5EIDZ`0Y5@a9!Q!nS%tw+F`T^aF46iP`FpJs6Vo zOE7M4aQyB-@;(pIVSm9vKgs!^EN3wHkeA}5f1aH`@RNVyCa0vG?#bIdF*YvHjqWLX z0x;`+&|BQAqLQ9VGkS}P-WQhimR1^b3v>YUjUwYtJo6%!l5HP@-{*naD>tPJI#Z?Qo1I#LA(dlLaERM~Y zN^8!FW#oV9N^9Awu6RXP^M~?feciI5cGY-!xvh3ZS8J{Z3;HXI`f|&GU%Hw_UEM-^ z&4RfS=r5bo|GeSWV#oFQj)#lJd-Epq^__)|>*n;oV7RwvxU<-P{eOh`=jt%S|A_NKnt+WW^ht@SnDv-X#d8t-1QX1IOX+M6p?)|#tIto@~>+{sL} zb|Xz`t%%LAMhFP9_LlZp*4$2>wT1``vgUH)j5T6Zlr=v)M{6N&p4LJ=ysh22Tw(2Ud4aVsPhV@f8o9Md zZ$E2FCc|19pJxpj5@xMNCAU_^P|_{Q3o&Sq=b#zZHVJ8Gx#Hhuv_Gxab;D>kYf+6@AAe z;)XB$p&zWl8~V^MwmA^_C_3dKD)lKr-U>}>#K>v`S=kqekpd)w0M63@)?2F;M09trOnWniM zD3ke%MedyVU(pGt5@0)GqqjoQ2V+E$X$8z18JI$;vyyd&C-4&GB^BH#e{}!4zLsT9 z{PEbIaF_$Zd7Ppf7u&SK0`#u1$ZfueonCm`5X@FD`0habt{~(tpF~>^+Am%?!3mmE z!7&?Lg4a2PZ}p1Y84$J0C+=u4+X+uO9ZNb6CLRt$Y ze!B;9ivx6{Ys3%s(d#Zi)}4=DXNTTvzVAZV;)vYfjJ9z@ZSsj-=bp6Br645kB9c-a ziY@bvEji**bHc0qq?fq>JaF-Q zgrq?vZZH-%gi9R562{SS<3!d3fiRKGnn;eHULL#09#M4}0QXre=@~4HuSwJ+a;7rMYDUEtYD4A7Ar`5903h8I1WLBe? zRZC|z%2}mw%AEey$|)gt1OP^v%u$|bBqhF|LjOcaF^1sG1)w`Px(|~$jKGa1k|*Mk zV?^jEfiOsbzK4dILi`Po;BHKOKN>cG1NY$*%wP2ph5ZPHe}KmIgOP(^$N-8uh9izK zXrH;v`5e`9b-~iZE2~Yn|NiREx7W8;Uq76>SJJNpJ_+f=V)+n@F~(*Oi6!HJWP~jk zW%5S2{63CoAcfYS%1olLI=k;Be4%cpn1oAlXm#vw|YXh`yjShrU1q4 z@`ddIp|*q2dxDbo`(bRuhjlipuV)qRza+HXiqtK>C0qzDA%GxIs{x z+`t>{5W7J^Hm(ut9FUtm6o*5ughHND7#(t+NyO;Vr1S{m-}4y;9sf0e+b73s7hV=AvxZ4UaHR<-P%THBT?dLswgrJ`2~PMb<()BrlAtX;ur zmrG1amd^Z9DZf=Mcq8J!Qb^v41TA8Di;&wa0-6B9TM_p)m)=O{J!LYVG5C+@yytY9 zLB{)7AR4KYPu*0_KFC>qEL?dmS$UbU_A-5~S^BL}yV@vPdnUDn{%2|58Y~9`uQq0` zv}jhE(^p^TFTcrIZ7W@FD_D6~y4qI0rn5W*SZb?X)K@O)>sEC2OS;;X_NoP)W!lf8 zL7*(AUrF?wUXO zdja@f0KON1?*-s{0r)2^0Hv;A3m-_)g|Ola!A0kSOPnHe&jb|P2Nj+V%R3LsJ?Wow zJ|N#NLTewIe#|@V2uO9%Lv`3kc^D+x?*r_06YX(f?{TN?^rY`_lJEDdIO~7eE4(2r zS`Wp1jK}pec%ux$gorw!AkS!pU-JbE`GPM6k}t)arDFL)xp=-9m@g5T3&28|$Z`yD zm3p~KxK^9~txmdjN%4D?YOPZ9djV@HkGqsX`J%vo29lACEA_;#xvs4}wTH zLX+xT5v6vBf)n9oXM&5)hn2fURGkmKZkHrKMU)>#uz$e_?8&Jfoa~5nZGbE_NS%#It6@}D6LJf~ z6iO$W(1AcXm7M%5KI#YG;PpYMLuhV*xF-GCrQDVRlqM}$D|TiQe}(g1<>>t=_%;M$ zACw&c6mlPAAxjhi*%J3$z*Ct`sJL1A;K_sc_p%!m{_5nTWXvy7N`mrg?aOjZ9`Rr_ zczXbRe<)^8NbHUv^iO^QhXm4*Fxmm1q`hw1AcE2%46@lJbe&_^Cb#I#e$j{gV|RPS z9|Dn1L~!hJDTfgR+i=*nK;#Zc;_h&@2cec#SSP+z8kfpH6%@DL3Aw=`W`iSmlVj{Q z_sC6-key!eooXubv@)bHg7Bd|Fld;a1g$i{+m#m-JsO9(#Iq z@LKiAm5W2SuTMO@G=8VL_eRx+t2xHXf|sQw6(ASEA^U{=Amm2pnDtK4e>(^H+qvi; z9bh)j@U5s_%n&d47<@w@D^LeN(bm7X_x&+?$33=ud)fyPAi-osG$9BVFK7yk@Ah91~5&dBJKrE~uiyuaz22j}1Si~?E zHG)f=AjFR+Q76f?2@-W8nLe46G)?7B(^IBs!YLYKiq8DZWz0!=Gi>23gEcD_%(8@Y z0?xDqm{cgI_?&4mXU2R}DxC&I(<*({SAO2c$jILCkPncE4`@su1l9*d4S-`mAu$8^xDgzFl0yEhQ7%*z zE#InHX}Gr5bZxEW;g^S1BL(Vym3W9R8U}zN9x%k_T2}sWnWKExD3xLE00X3?A(G$| zk@5+R@5SJ|(Fq1Tp&b+VG$x_mD}wtIC~1#(%w|u^!O}Kfa9a>;pXH1>=&m6A!BFzy z0K&n@1Y2MB5r4^XAK9TmwPR4mc|Yb}PuU^QO#1-N&%UG`F2tR#6kC_Xo#r368^OjM zv%wd!!8y|#{aBv=K214LUeQxpq|d8(E#Mot%oad&FPT~p92aNn9<|L4y+1H=n>Tc4 zK>QAmYeFCkgMv<1v;`s zom!zuBkt6S4VjvbEP*~<*qJHs)^H7Sp-v&v$)q|Z+n`qI(nKaT*QAhlDb2B-Z&Zm) zsX&)TZprs*iAl~is`za}-Wws$B$4Xn!Z#8@s|sk-<`|@0or3dPEPJP*y^#stNw{rN z-diEPRW50hFq@^)S3JfGp`b-1Y2mV8^0>_`)?)_e0hRY4nfaWT8vBp*nq~RI*sDUa6L@ zR;pI&x!-Cv|5hdZRt>CH3ztec^EsT)O6sgQagvG|VpIAE1Oq1J894cNXi~iovA`ad zaX6sxTtvaCppvtp74}h=975{7BColG-}VCk<^#DOhIkx=cpMnp6ohCD#y*T>J&O@M zi)Pn{@e6!d8v9u7d1AIBReKW8JQ}O?VC00StG$I{7fMcKT2*r4T~+2doZVK#xm8^h2CAWB%)_1dmlQE3_oPa)Iv3bh zckFJjq{HESM=tp|1-~6a*dJUTO*UM;*IIY;PGSyymv{I^N5}@Z;0^8(o84hM+@afi z;JdwJce-M>yMs47M%Z|VuJaE1n{V(2XSE;p?e+5BYegSx%ZIMljXubmYP>&my=?4O z&BTKn@MiagJT@0N-F2yWRzA zH*vpa5wCwi+FZi^>=yGyn=qy|E&4MtUikol(rDv!EeKjrz*6ZFV6 z^LEQ zGBJ5PF=;%3I6)*$CXr_nNRxEdB#k*mrA|>9vtnS5$DQW$=U9v>k@&L^nBjA0q{1ns z&~h>W-&_DhGgA4KSTQXU%*ti6a?y-NJ*|<=szg(%vN;WZS|y(~-$^yUn=v8gj`L{K zTwt6_AEPCY(D@@Ia(5iH1B~m1U`EjBaXe<6h#E~s^%G;8e1b9#x~A-MPTA(k+Uk=2 zll!HkZok?4HoN#dvvYgu9b$|KdmkP75eoZ+LiIsn2V&4e2;3xvI;%{b&re&tTEBGv z;>wFVi;a(_E7OP5Rl}*uVG(y!VCev(eBP);G9(m_bNC}{<{(`-LS}rTa6b`gy*NrA zme7MEv|%ytp!oaYki64=i93A|+dN>Kd|`Y1@V3FoUB2*LKH%-1v3o)Bhr(0#`(h6S zCG7K{AMsEg^_QIt%5V-=oeUuF_m&;=&2$VE9tcd{=9;wAEoF~e{2mYDR@b;K9`N;^ z2pccWX~-jPMyFUcP*vJnS=^CV{F1_XO=7%~q~9SjN&`{x2mB*8c_8xp$V%6%73QpOPX9(N&yba7RI|+CUaypO%6TRwzf-|CcLTket5-_e z#Jo0*M3*Kss-y;m=#5nLS|n{#O5VyPua$}xjpChz(Jtob)PUt&FafiLO>a~2-pZJ* zGT9r2s8zyf0whn(*D9Gg`nPacPZ^9S9PUH5_%W5)z-G1s{10i|!9vAkz2wV%?cxK? z+C#~==G3(&$y&4K+e_8A7qYb%iscuQm1g-$qx|4=Hg5=U?zIbd1XR)j#(XsK73)@LaID3>4S}6*`A!pY%&R;ivu8 zNBxVZ>ZqUOu$SsrAH@MTV4o9juQPw2v-E&>_F=a=r;vug@KzY63y=MnL>#44#zeGn zDQi+Hn9{Q6G879rocRLaONnH@LONe!nE|?7#`{t(Tdj~SR4ErLl}okUg;M)?jsq?6Xe@N2 zf8Y-wuq_mK1e3+Oa;2=H7^@Juvgn6#MB6}$3nK?vPXCn*+YuG#N=~s)$tG1~B5Py; zs?_joxsN&%f29hza;yBoD&C zq(f2M)1ZPVO0I8AlC2MLHk^IP3%$$LvW0hpt2xj|ZFUXb=n}EfE!v#tb_T@l@@8DX zYXZ{+7ew4+@Zzw9_x0D?D>84!QCWvVV>kOFc6vtd@QT^)7rWC7vE2i|#|yj98?xIe zY`rUJy_es=I)$wBMcR7Qu{F91^@pixX^%W6U(leeRz1yzAzF-y8bOC$z~g;8j3~ zJ_y_y710%8Sq0RMME03G017dHfLmtlAmO9fgkcPR6csmw#!TSiCkY7?#H4W|c{+(a zmcp4%CQY%q6I{VGmp4tO&vBTuZ0fW~G$Z8B@i?=5&MaFt2k@o^l1VOqn!}p}B%fvc zNvUE+DVx>E<`jz0=EN@(THclO=TyRJg?diGomR`oGt#F7Y;(Vz1_YCQ_Bf9<&ZLi$ zsDp&$9$4Im2v~m%bSREEhC`3y(I4XC8iQi$oFX!hgi7}LX8h_`eJ<#(H{_06*e#c+ zJ9hqe&IJ7C==RXXR~G^M7#;CG8vF@L9E77LlHw=%yf5kU&zDLT?p&O2yf=IQ;$*3I zT&o$&*9>Q5jPeCTEY7e{GR)x)^F+f;&PWoepT_B@vid08k4Y)r$(&vs=>r~T#9&(C z_#57_LR&B5R&V59fB5boq-`K-n?Gu|FMJ0GzAF&6+dJhzaN=Gc>@J@qTVLMKp7LXU zs*`?MXM#jWyqG8aUM6L+~L?s81o>q55m#cXj!|L6-@?+N?@x}7L6 z%A|wU#XYrk-IC(PTNv~GgoyG6Yl=WoFOqr^VG=V-%W73L^Dvl{b zsn>7~sWM#}zg+eozE_Ld)k3{eu9ver)H0Kr_f95hPm>um!gngUK_xe-0KG== zRte};3Z0DKVVMFXc&FmOmU7?7#0D9sUCMha5WG>c-%7bUnV?<9d8=T(QOH|FoL3S- zt4Q#Q&w0)VUh)J_S&U~a@>8bpF&AiIF*>B2k6O`KiEQeQZ1I6~sX@BjsQkS-bFD?W z+AROpq+M$Q)|yo-&C2EH+SO+D%FC>8O&W6nSZ*y?dY84*Ub?C)UTZ5~ZNIpzD_zxB zt{Cc;bv2d(pue)9H{YyZ)?Z!H-?q&AH(Xlkyt>qRbJ28t$(;KQH7tDP?cXgrt=7R3~5}@w|;Cli1UI4xqfPdBkPttBQalf>KUa3dDRX_PC ze{oZu4pf}<7aj1F9`KMK^2$FKaLpz3aS*r_5#NQuexgx^xr|W}byCWi)QD!)-1%Jo zmm=PmLeWBL`sY&3*BZq_rF^+kHeVrLsFE$$D3?osm1^-ymGoPUbgfpgRw4RUDOoJh zE|jqsb9oCIrsW9$hd4qZ_7Mq2RPvi}$OF%aI=kSKlRo*!yt5B^mYe}qU5KbY?^kUH zy6hT!)jjBzANa0U#6!Q(M_%BkAXsA{_(de~UL^S@7`P4*UyWcFIU;3e(B;9b%ifHF z({c1)5NQE|^dP<_P%8GM6(G~^l7Ra}NqHEM=0gMQ>8!IP#FoI2bpfH9qhPzi5?FCn z*0TzBi8dySe4LnI3yJ#`DUHp|MAb1*ks-TclD$$A&JdK?lI-})il9`92T$s!&L`a{ zrIpucY93vEb4}JDa}}a?fk~&M%kytsOnWAFN(kQM5xU70y(ctkqg(6_H~QI7{@DQ8 zAy48Sf8p5({;%%*v*46p{UA23mY4r+978sFhi-Na-{c*((HpwOKX#`p>kL-qCX_i6 z$_eSu@-9A#rZTj6kH2~})^fME;ciQ51#r+g zdV@pEM*HaX_NWccv764rw>U#LJ40<;kv2}~t**E&E`*()`0cKV+g#&zx#M?wU~N2* zKRU(P*cAlDUxp-JL*wd0h{b1oFP`+gan|#Zd+=jWM5B-I%RtDxpa?@)ct>#f`xt0< zRCHGi@)H=*4~`jtVfqoV14!g3Hhu_89KjNY;^Iayi4#eL@r2~@B+_U?@&tqR$I2ht zI189!FlO1T83t#T&Ym(yb^&h&5Ki;W(VsWVVo!3#Ga}Jv0eeOwnN`cCWs+Hucv>T! zQ%Gku0?X8YmHEQl3V<1vYR3EtD%qS=KBkaP3b>O3%WmCqK6ix28lsYiN&HVR%!g=n z4-`9qK#ZW_!`Qf92uvRddl?e@!YlT^d(2~B)bkKzYb;R*Mzn;ZUIa$p_kjN97xUY> zpe8qeV|ZA1OiXtSvL6Z`CJ=@bk|(9WOi|XtovUAeyF6E&KUJ1LR**ZMsh&(zj>(iG z9Ns94HOvDBID!ExcaX^#ptAatnf)m#eZ=Gsgp{86g!c(V6CU#{JhsRsJaM}pZjT>! zUnqR5AAE-|dQT9_HW0GY4`S<&*x^Gx6q>ll53|QFYMU-T9i^8NtXX>i7wfE)0HmnkV-0Ha$9^vcP-LRz0V zsY^)K0W_n8-JLG_lqc^=m-XaGy0!AIOzwLvVA28|=Fp$6(P8l;Spxs9hy`rvOYEzD^-C$wc}zp+T!LnY)2TX8r_&iq|d^ypsVsmH3@pYEbc8 z<@`5N(Hoh_e6vl=e=BCc6Y<~3xa}&rUc|A?23(zERHk8=$FptMRFfy$w(Ta{c(a>a zlWp6!>&=*K+vc{r=j_?tug`PN^L)F`b>Dyd)SUGrM5~Ox)u39rUiV)qooF!W&-qZz z+gvGcnL~c!*qy(bItn{Ky;s~30hjW_{l+(|DhI3Z4_DKe6>|0eQVx+wK0m&d?6x+v zQVqOGNI^@FmoL*{ZJ9-F>me(hgYxS0jJ#JJuYVEUPFj8*S_W-am3me+dQ1!S%{uCj z3|hKcr>&nOr8%_8U^6~GMQ4jnM-M|&_>oylDZgSNs~OVm=u*c8kMzc!a;x!WiUr)j z8o!u`8oPXNKC-^zp1+J9rWZfY{RnaIx98tqvdERleDOJQcISAKtB)RQIB9{l0Za zizZ4?(UFgF#jPun`(I}T6^b9zcEU~T6-A2Ru{C~sN{FgkU9^f{0-%aYAP=3K(5H6VV5)MNsO7>Xfk2GgJW(Mb z#WHE?1pv=!D*->~!^Xm;=RL&2*Sj%})uj*q!b87HDa#v@h(~4@$idYvR8fSXNY;iQ z1kiBn2New#{KE#l;I1T8V*GdjjjT+tG`m$E9UPZxgg)YdQ$HwNSVSP0aekhW14JoA z9Sn`!Xy_bMf1bNgpCTF<=&7YI_ren>;|$D0Q3=th0d((PpbJ%T4Z{Lp?b90@#O4d6 z)WXk?%Fdy7!_OpBc*RuzT8if^$qO#S86nA+Aj5+o!x1dab%EuKocjrf^sST+L~$%M zj{0q5(yu)onFL+F7eS&^?h$ACs(9YVoOe@# z%Ulzkr5t<&foZ-hz9ziiPye0lE1mu$9a}(y9z?q%{PLc;s znlnU#^Ki{IUGp|;b3fm8eZtcL{4zdcjTce&lVW!)3aBf8A@=dM1ph?n=J{IRs?Lwq zGyeEY5%&v6Cnj~pkiU2_bHQ(pSW&>J#IvjwIEk`Xy2)+9siCypb&wnC&IKhB-r*;M zkpB0;pI7+7{9T)GD%T@g&}B;uCZP}Dm@?1LPUo(IpLOuq3VTbIJiFi)Qk z-rHuJj_7n23AEPO@@^9X$k^)er}|+S7uva7CMV;nu^2@@G%V3cl=Aw~#D0m)pRA78 zLQdwcn~0#4_bn=)6}o{MZHm5bLmwM)ox^eUE08^lah+34Hk5&#W8vM0M$b^8wTLiN z;u1ibqnRrC{ie~GUpR-u4VKvpG7#!q*=ixMwEX+=UK3TPweyIKPk<~7u!7Bh z4u5|s`r+*E?&=BNI|$h;6yA4__?AfFMKHg!;IF_RaU>-w;<8HQoyI)IVVocyJXAhB zEH<<;+@so&mpMoMiB?hmF|-(1PGf={&R7=exF~9W)HWM1lvo+eJ-E%pMMlt3N>!j# zlcRJ+7Rb+env-B{mMRDe*6l_iHe=$CU#C)CPTC~|OJkIX5#gM7rSklFDA9qZs7&@S ze-Xz9Y2h6pbXJkrHDsN<`rl)H<)>1x`eytp!+_`uwOXYu7X%VMhecI)%$DKRRgGbdFL z%grNG;z=L?4KX>%QxL}dW5G_mVy+1l-s5P!rxTDPSiw=(g`Dos7|r}l+$p0Ch$VZV zo}iyd)6O=iGf?(zC3o2&ERp{-uc5bqUbYb7*25BYPDOhy@OVdhExU30aVXc$PrAdH z@t?+>98+$FpuAr~5#5LJg)9&V)h}kpYCF?gT|jQSX$`lzMEwK@LeczYW+_P|k0XjXl$ryF+k5p!U zYTOx=k-fQOE_s^ONG}(~xs)$-!KQ1B0X3w`FAJ0Azq%aDH(8AVyvx>gEq%aWU6pmW zZVkobAa0g}>fp--O7}PcNI|*th1N>}7uvP|D(#l6wdKm)z-LSs8_y21@D60M%7rSt z%QTjo@DgqD^cwVM3ujr&0>rZ#)hI1zqznRgJrx(>uGjA0q1q~iC~OkL@D}2s6s;6O zxE0kH_V_VxiQxJuc|XBpwwZEtpn(QyKZ)o3>zEzd#d*FYn>4M7pQ4+OZkn|Vs?@D3 z=INI3lC#rNa)y5KHxdui{~Mv_Q>g2b)VG>4uwu}+o7S~s(6?e}YQmlbtb*sdjOl~v zB}HDSJr2|m9>ClFgx5QOzc6jEJ#cm8%@h1koCIj(>=`}Yq{@Y4NXeq9H2D4$7Oz0>U^SD55B?Cd(|WY@Wd8BjIfsg4CqJ=mun zIQY(Jq}IJtXK37O6vFpjmis#73+iMI{QPd2*^QD?J18(qq+s%+V_9UkRmk*xlJGBc zhy0W|gam4aTTCRh9nj8xCgw#6DE;3nl*Wgfe{1Esh0X$fzAY{zMsq)xWL%24?rnm4 zba(Qhbb6&D`+$QfY^G5_QV($5r^ zX-o8ZQrFVacc;FBQE>Y~5m#MFT{Q{EY^afS_pAUt=*OMw$F@kwY{3?ToUXYoW9zmkpyAS|wYrG|xh(-lNW zcAy7#;M3d1!FaLW`gYYSkP$3YZ2bgEu%JsQt6fC^Gv?%QH)~V37mi0>;3uKcow zKU@Mjf#ID)0rg9f-lG}yn{nMkaqVM2Z6@1h{+Ux*PuHYZdo||@ZT|i8vdlN-@r_{t1dt!FbyZk*R}02 zkEMz-QS8P_k)s=328*&&V9SNQ7<->sa2o3trzXNu1aG&>@|S^8fDEwT4s-9CfyaEdO-?XJd9f`FB5`fKyt6!abJeG6nJ~JBBY= zR4t~^M&yt80NB+N)LK;BR#2hU2o$1T@sAk8a~Eu4!JAJ94nhgaEL|=+5`o~va|sKD zAA9m17RbGt_|x-CnbF!l5gqedjRR@*hon1{BmOzMC)Rq-DEpq#uWDwWYjgdViOXh9 zpT3+OB1PqDxb-`qSQ2QCi0fY(*z4*?&n&(vjD5&t`RyjW6%@tDCJ!gZo~pYV%%0G_ z*8eQLqUQo2uGJ#i1+RaqjKC;h%MEf@i6?lJVbg2SHjK;`dztW^% zG~xJ7;H_Tr+1dOUrCz#0QY#^P7D};+POylrKg*k9-~7Le*&h)a`63N`@vOZl41Cjn zdzI^ZqV_EOtzSUtSxD_%NUmE?Yg^Yc%K1#uiAdJI!|DK@H*{CAY%MB%=kN}4ti8vv zRwIviXtCEKu-k#39)UeTvnuWLwz}U{*;nmm#822fH4{3tM;+BQbTG~8bZ%U%!ZVS!OvQp*v|czx9oM_K8Ur(EHV~-R?tQ%r`nnW^t##6r8X;xR;G9 z5jSMsMf3w4-v@k^iit1o8~}D%`}a$!C~M}LlCIY!--H79JrmAbDrMT->RjYYw%v$c z=YdV*gKfJ0FKy1`zm;3^$hOrG;SHlSqc+}~8n_FmG+;9HglTvWd3ZNYFpJ=RE8}}m z*b{r;oD`hp&285oxN?W8@<$+b`Fv`&V0P!4Vr5XLH6t-nZX zPy=du-g)(|fIEbgA$CusABPtYEW8ec+U`L9!IWg02EbI}L0X9y~RA-Xx1!IZd!2e@ajm^Rpe<*BV}Oazm+q1Y^Sfk9r`#;YF!?*L*x ztZBu8b0JNs65XrhAW>h(OgyC&=AXQ5M$MtPbweL8$GFDk^_<1_pviX2VDlT#X)i1N zn$2uyTx5wW{6*ie_uAEr&yjJtF$E(U-@*e~!+-X4=h0&@1^MaCw2yssZ9sSetwhI3 zc}p68B5IiZqh5Ybcqyl#vO`h_z+`kGc3YlsZwvFskQbg;D>!s zkT^`RA+v2%7;#=G@_ZQad6jSpk_r{Ea~Kw-;`w1^!u$9#r5*nf3baG{gdpTn+Ob)Hu9n!Y)3>DkUnDoYez-P|-r{jNBG&R$B_&3aQQNq^2|sJ?*;RamASSQhGI>4*_W+8@qE#Y(>{StT+iLDSnm+k@@5$_axpK;HfgO0=b*oiBJR}AruPVDM|ZO>?VvsTh!?-=cS>J4(AicQ0QYyXs*luuZR~b0Wpj_RE!Vnj_o@w@PAkZ*s@OgEvMu+#zHLk^i>Z&X z!|O$h??qGnrXAJg2hGwtIycG^ZB|1s@pA}fE5$blJ&Gl;vFS>v< zpZk^v{iX+9z2ow?<2LRkwZ<7g)4Bqyye^mSy<6S4gPN?Q2Evv@ zZo3KBfB$P^|DNz1i2hLtk{vD*(~ZvAme`#vG5v4~Kj!3n8!lp@*XLte&9nT?vqX!s zuBABxq&Sa>-bxZ2Qz~wd%?At%PhgmDIC(Eom|tooZgHnOS@aKLK4Uk)4T4e9PtNs0 z8Ap$Nic6%g_d_3kE2nKfj?#Gi zAq(_%KjjxK2B(+?)pM9CnOLa-Lc0D#R11RX_C@s?*|^H)=|)1o#+a`9363Z_1y69n zq~t!tLO1kl)%^#Zcb4xF&<15hN-bA$A#=mLtI5sFb^&nqMhgnGryACGNw3j z%t%TK@8A(NgM5G~tu$=DuqShGWr^OAIr+ugJCh5C2;RxFONm3Y42t_$V+>={b>6;? z!|xZJBhyFk9PP|cUUe-$N-KE#Ia-sH$-#v;&wuWnwT^nJx@l1bHSK^M3Mh1Zx@;cw zO!a-vuk2B3Y_Z7;BU@Uz_`*d{a~&88R_vP(2~}(`R;+t3aY;?1)bov{9go`B$QBtK zyVh^R(I0XLcm-8Ewy`Ab%(7T<6Q$va+~P;&UBA;*2&zw>SDY`S{2DRneGW058XJ14zOLhml%Xb4Ky$^yH`t&_p_eDKH70t2i$mKj`X-P9El< zmre=SBM?vfJRe@6A0gtPz^Lp4gP=shYJ$S-FAxRc-XsxUBoRIZ^Lk)Q{74o5P%jwb znUhCxp%L+6OcI%epEEIHO=j0BdXqWWb?I@` zDk#NzTXk=>tW#%BC_x@@O0$w>ikr%*6Fx8>64jYZXQq!;6U6r#4Na4-3$?hb)a6bO zjNuMamAP%cvYd9pMA>Pu5gdzhjGl?pDv=2e)+BFq&}>nNU&AGFhZ7`3!UjZvFaf-> z1&Bm%#(Uz8z0g&@k|p?1y+7javoHt}EjFF@ueACDEG`8(YXsugu<>R`emCxf zy9Uo>-gPVSFb*P4Eg(|$i<^vkYV5ipc)+8z5Mgzq)~uX@7( zhR+>*za;pacQ#K_C9lcV>!Izq0$2$|%fDQrS9Z{v4s8b8o$K}NqFlevUb@F;>p@>` z0nK=pylB^|Fps8%on48RatdBQ*mx1mS%Lpzg&3z35)TQ7R>S*ifQ>Zb@Xqc9N4Ds@YPz9lU1Io5ZRe^fwN_GrD*OwAa_ zJ>ZFM)TQ%B7LMnhNGrOe_tGbn^69Twg0v&tB4rg0<<_5KJQ7*3jOt9Jn}N?*L|n|! z>aYohO3ziRu%03Q@|5a;v``+y6Eba(zv+iyw?LSLdH`;IaXWT_xtD?IgY0Ufc*D}@ zgT#9_b?Q@lS1Wg+j1xz;DnPtTc+VR1f3-Q$aGf?Y=W4MXFSEvWaXnc7 z0=fz%IX_Yo{=CaNpp}7KJ&#Q>=bZf&bx>wP?Rd^nx8gQ zmd}fj&znacP(dP7Mrt+55;M;X#?BNoBNVT$1m%ngUyF>|0OvS&V!L{(B@p^aI8sP3 zP)HPFnvFclbD?*6{Dy*lABeXpZTjfw-y*yS9kO3QL@+y667Py0-m99wFZ1WrIoXOr zC$vO@%q(*Gqg=<`nz%fz?suzsL|Xojj{H$u`YAZF-eo*rmz0L(W?DHDmRb zWB_GcE*bX7&S3cUYCnL%Gx7 zy5n8<$)74mcyAD7_Xs%mh{!TB@qe%4O|Nn3fw&yrMsV9`4gy3yoBT1q!Tp>|?E9#u z#78`=Tp0t1=uvZE5_m-G-9kk#exPzdde#Uh0A4G0l5O;*_*vMI$S^V~RGK}|o1g2E zW?D-uDGU;biVg`P_K9OL^b*q?Ju(NPj^}mZ*|_NG=EI^@cyLWF;|oV45MCw+dwDm+ zgoqT~I|{4(mGF)%$5QkrQxcOb=tqp%o-ZWNX|QXyrl9QHOs}5IDnsJ@#O65q;lat? zK(1xH&r6K-&C?G&I7M0~aUbTjTE4iCJ`>1xDT7BCC`aGGb~)R^H|f5Q!G}lya5_m( zy5MG1`K>>wM97lD5awjC2cYXRedjdx!*b>Kc7?a$6dxYiRs#p|)e)H;{0h20 zKa8qaj2qzZkU5x{;GS$8oUNV2HoQJRz3#q#1ipED8-zk2L+xy$ zI0OY>Ke@kq!R?SGUDGGt{78L`6MVst#>*c<5EGA`>6aig634CF2^&>1TY%BwAB(}m z1~b+@2j4N%Hi}`1~~ys)1%m8tfS|1e=8ScD+U;Q&Znxg>6xN^Bq4@PTpWDn7?S$n;$kp?jV){B zF1kTA$ll#g*_lN72rsr346%2TafNNi{%L~>-+@tS*HntV|5)K3L{b5b0Voe%DfPAF{{rskeJrH?GuAv>ur^_&!Jky@}^1pM^ZyD4Yy zD%UHqV=Y~MxJ5!=t_0OTeVEj)oi(x0kim;SH7lrNQCcYm*G^)7GwzUIEC)Xaov}*f z2ntNm9&%2~7lUR!CTC!~h04kYg-CA%LWLCSQ`e+O;)7ULiQcQyc##}#CD2~pya2S$ zJ;N)P$Ujpla2XQ(+N#pMe%JD;eHAP=zRPwvfp43et=%;inQuE~nVx8MR!x~yC}?}8 zH7{h|XgL3=`Z=6-u3)i?lRL)vO!sb8Y~ z_PYTtRcFBKaU6NteO`Uh`<<=X`h5a!bhaLP0rsDEWV!a>+a0{mek0vCwjka|#&_VQ zUPW4p)AZOvY`P3VR-Ia)|GX>EPCHP)I*2SfbP)eNY{Ml!%(9hsui`6yY+1EygQ;cz z_Ky#l&(&W@6cU4k68@o(71G}^kk<;qo0tQS0K8bxqFNqfQFO7lFXho1Q)H-!$ZfaN z5Sc`77W}v}_%7E&t`=(2r4DJ&B7j!YNrima$oP6_7T^QWi@0u;|FP;(M|#+37GM~^ z%Og4}6yA_!6w!-h6I44@Q+#oPO=P6PDW{T0cJg^***svCR_&NVhH6Mj!y`+Qmy;-u8&3>TAWj0C;;3 zhThA)#-URciid>TaR8M@!Gb#Q+(l50!3(CD@fMj5^G6Hb&K-2;Rkc;3STK1*FMSC} zQB=ulQZ%lL&D&hs3h-3Y0x8O$&n4~b%oC2YC{6ACmZ}AM?B7|yKgr%$SLr_xC~kNu zE+A-LNO%wYy;h|}4?#8Od`lMgF15^OJVyB9F9f(FvBxOwN<;;ka7G)4^j-dPfg^>W+snzGLOo$$)8Bsw{34gCSIZdN` zIWn1*O}1lKVa@=ZFoQ9hXLa_d5AnVc?(SDN(WHuJ!2G^p$gL7Krd_1N!pFWX%t7y~ z8BU$Xd!_0nFbeI8g*oZl!DH$M5HOh@tvgSBcZs{nY#qe`R>`gq%IEqT?&+F$^8rOH z%~0VT=cg)rM#vyvBRF&DTi5Nmqay+56vUqBN{aYJ9TBlCL@<<<0noPnP@lW<+CgCS zgBH3!Bj9;gUKDRo%lAowx>=9QpH8!Joqfd~Pzj#&o*U z-h@LWR-82AfMNryghStG^W0xjN*qJjT+FgY5w&zoyyNG@H6p`!-e?J&Lt{)oZ@N!* z6V8`^PaZ_Qj?Z<#`mXAVsg;$LORD|FO%vHTx#+;U>;R70H=+AP^7wU7+BSJTLy1PP z+;BzCCV*&9cJrk@A9>gRF7evtHebdwe`a7Dw7=ZUmA886no|ouOHX) zK(lWXjCCe2d=tkm7;siXHPuH=2{NiiO+;S)?IUcdq5t}J)@EP9@Gt0xslz*_i(+(- zL6Ws1+aIUcLGMA6C0e>51$%{_cD8l5CvJ3^4V$ln(q2Tn0PCG#Ifr*ojd!d!gX!?P zAug*19$VVX`aUI>xeN~s>^8)q)kBOfLc(Uu;nh=&W=N6uN!XUD@OmQDwlQiJ5I;8F zLp<<_u44c$zN!O+-UUcan}7FFl;u5wjX1Q+Gt{H|8(?ohA9}Z4L^5b_6wsOr;G83g zxuy@krwDtGi|~_(aThV~8Br0~9wl3tQ7~DBiDO0^A~I#96t+Z1c*RIzK^@B6y%{d* z9>qF|84HhbYH$OwjX|*B-6f)BYHEGb=BQVgW5i2E8wpnt zaRerq?L`TFX#GlCNT)FVr=tCPE;mcn(%hw-DacT_f(SAx2cvfs=$7A)nr%V)M}TxU z%E4qHu0M81Dd)H|*6>{cVY9@dPommHmV#I%LR=+b7)@D#Dv|hSx&rfWVe9m_v7L3;9d@~y24gPS|u=@dOQO-l_{%06dwClsJ>G26)Qa?5pvrld>6yu zI{>{Ev2SnW{vm6J%u>t~xPdx#mOq<~+7D0fzA_Ni2p+H%Kx!+t+tP}v-htBGKj7w$ z+OjI)M`stLGm7ML>_%?hLg^ff>{nBAjI6N2B#Q)>5;Ay#{6qEaZ~fkJFud<@*JU~% z&hItI#l^^ezDsdvI@^t*8ASPSL$_1~uVhbu(f0wqpOZn(F(~BbBLp(~^jQaE)j8{h z-XQLh;O`lF8CO)eCV0w4V9M_xodVKIX8oGL2Vib94HtO*af|1TzxHZb#0k?HrEjf( z+P{?C<5)GfA+QguTpsmJ+>*=4B-fwc^gA%YRbz;D1h@*V4NFy*Q%pWA%Z@%GkO+3N zWkYp<^-p#18ADapvqm`z(=PcHJ9YMvKsjx(@2fHsRd)PF+edj2NJQ@1e+9istR3@(ejYxmHRIg7D@tDT z+;($bmhcW7V}6_yZoGrv%^6?Uv@aJ?{wWFt7D;>y8@?}PW-n=;ZBw=P(9(@5J8_zTR2iz4_c$jHZm$9ysC z7h#PdBZa1_28+55qr9_KZ@`21QPN7%nO`}U7k$+^(t^i>b;?H)u-g~0`2V75$Czhwe|S~ceh zms%x%Prh_9Yj3kf?2hQIYM zncl?QuY(mz-vjSD$Fk*GT^gOKB|0oB+mpZ$ld&buDRVYs0vKZB5Z|!=r@eQ4Z*V)k zL5w!{qw}Xx?)^B&RhBy#(k-UadxG-yv5Gme=Q-SaHI5oQ%IS{lToNF{}yb;n;&WC@OTKClRf_(3CZSImXOHNR8H`PYBu=@ohF$oRppCsx4 z&f(Td?{~K@mU4AF%1~0Yu7yg?hC%Gl&$ff{%@B-_=zY%0W#HH@>a|be5=1Zu+-2yv zDT#K1Hk$f)Usg7XowzA@p$f6cld{p(th@0blu6qV$PRlNW_&fwd{d-F`(ZK+MZ8q% z*cc#~R>7&Q;NLeCBYs)d%kr%b28#FgFvIc+7hJb;!tU4_Ym$Z>(9i1+qSi655|_84 z)vkA|{x@p@xjAr2WXAbOp3t^;2&;sJZZJw&D%M%(go5`PK@hbj=nD*8gPe~8e(4Xz_#3KYs%6`d}HU>Yy3q5C|@ zL4qCHsb0(5zf;K0h}+M}UtJ4yh5LCb0bYac`j`R6q@VXut5=h}`;+|s(JLW_m%^fU zLbYyr11$q-YkJ4uP8hk%JRM$(48@79SzJwJ#Av^u3Mz3ZHLrO%`QJ1Oq%}N7m!$9b zwV%;AU+Pl_>8B+`uxv|p;PAOgzIGMi@1`5(mfMJ?U{Kk$4p{#{o7*qQNhBfvOFm|C0Vo0tR%LR9#VzA&jOXXc0XhKR4kF2Eh_^B!3XIrfvVPvDqxHFW3d z+r%M$L<;WQN%acOc%xtVm~Vg=XyVd43TTII?hvoxp>X)uET-K$d!orn;GgGf&XvG-K!};Zwx(w|H+eDO(8fyc7wM zF*oWG+6c=38q{=whpR&a&sOc`ZFlISEMf^((173?NP59c?P=6U6f|hX{6Ie1u`6WV z**af%K2zbj8$e&MY6aS{r@BGWrdDt~7r}!Nfz(jBQQCMaSb=1rHmd&kq9mi!7{Q*^ zNQPy>imTH|+X7~x41Qr%tM&6rIbwC;cY^l6a_H5l_!KE9iZ@3yhllHU>QcSY3SKnlyzL@yzqpKDFlo^>9hYG z`BdxQx9{RPKp#4f2e}i=d2R<(JVblSZ+{mRZ-EwTw4bLC=&d^9nR}u5Mhh4cCU=gd zoC*GG2mXt38ro5uA}YVn4D%xu_spE;nvyn3N*>yhg`Kb1t~@rzSf%GRH5cp^H~9MH zy8~SoXso0R-F!@-<1P;5l-%h6s!^q(+0MkHp<8N+8~E5LDvMjF6EOV@@){EzgVftw zf!5lMJg-mW(TLAr4%}5Pb9~$~sIH)oKQu>S2_ET}I_rY1FkG0d-t_^^lp~7DBI?Bj z7J=-N)$OWdbij#CaBd459Ff0(V>SZ$ETFk}U0{w7!kgy_?p>KI0hjtDlv)WyTHBR2 zIKpY0 zb{in;DN*R%8`4>%%#TKOWqEJN>_bIol!(hRu^Y|2OeXt?LuN&n&eoqIUt2Kp(k~@H zfx}^@N<2?Lr}r>cuEawgQ@=R&}=O#Mm;`0jGo1R336PWZM0l;N2g2 z?uoQGhZ4vm4icPk#%L$On(WnJ#c02B#^cSb;P|(yv+1VrqghtQ4Y}z*Weg8f@Lw8S zTe=rFzPxKZ4|j^v*3?vDtte_R{Lw48#?{PDV%FD@{PXnii=(A9`Z6RS581V>MtQ=X9-AW#-CB6m)&Dko z6vdAyBPf@G2TB^?W!|o0^)AI=gk$S}&o+9d1g{@}`T=6EICce^mgVW_S6|AY_QWmp z&Mm)~Pe3r)}z0S+-GXtw@v3Hpd=Rtw(F2YPISj7%H?`hRI&0 zfd$@pQpDi0YMz@fUsjqDiJ!QO4RVbJf|u0Kt#|{YDu5wP1k3sKZMD;VM2D?Oo^DG2 z8HBr9r@P`3;`!KYxbvg+S@vVAX|<>XSXA<-XasMKC96vQK_koT#AE8#`7Zx^STm=r z-6pTrr|?ADW)+R=4awLRJs!#EnMOXYbTv#YCig7snpjV2+c0Fcmk&f4l{oK5R0%x1OOmVBJM-)@CN`9Q1=HS8cAe5&6T zjlL#BvO6L-kiV^@|7%UpfD*igY}Gr3ttm_(8XMs?LiQLW_NOG2s9yhgqN6yglz27N zT!pzm&_m)qZE~M@@k?t`AF{sxdI%4*(@z}QM2CAcU zIKkI4&nw6I=JhwK=Dk*|*Xx4NVO}3O-8Wdq*O={KBl-~JA`boCtQV z@3%{oQ=9deXr4!Ps~)TBcJ?XJX0qCbO-}N*(*4B7cPch-_jvB2dt&iC7u@20anKr7<65a%e^ZoHyGV(U? zMCbl+-~$boC#Vw$X2wC`^)Kluu7?7@v6mWb8LVv)J%vX5Buu&qmwdqy|B^I~QY4cg z%O5FdGoC1&m0X0$U>P%utv`1baE_WJiZzO9&@9mX41>Wrg82ghWa@U;r6NwK7&b|l zV&kONkSlB2^Y=!8xY&Ez8$P&oxHKJAlFQ+cX2y^0Vk5;%jPP> z@1N_QTa_BDBrV^m)Vr~1_@$GsAm>_`ud4(f{tWqH4&nZ;e_QFtf-3nH|AI5UcrK#U zoPW(zw=hWslxKLSCl35@Wcl+NDquEk-Aoa@wi&z z_p`#F?;LdS&80+o9h>1wMiqe^+~?+WQ}er8sF*?hA7M#7Mc|@l?FNjdG1~={ z){y|<(~@0M`bVDj#iWIMwO0+GsL*%$xa|m#tj={^2KE2NY>{U4+|} zu^ZOOH@vgjwej~oG7l`qvu(w9uj|*Y>$NUuH99@`0XCH-`jjQQtEv_jT;=BSG&ZoR!f)i%8U`I!JJT8_6F;vjJpglZ9g3S(P8@Broatukj>r@f08N zuoH(M2F|STS`jaFecs*P)Cyb%xtcVKbV*dnGzrPT=r4`3F?AXpI>jl|aPxSR2Jy>A zea7lsUyKn1(Z3zk`<{){hzj02)FzKiCaWKIyy_6Yt+nY@9y1c9h8tR7tJau-Amq^@9N(3_C$w z|9ROd`M_-$i7UHNa?_)kdS^&6u|T>8hEOl^zn&zi9;uS6{zJCH3C+)_9B+T@?jlx* zfolr2e!33KG^c`8Zx$GD4#9)CiXQk)#}Ee|xKEm*l|B67>BJJ@(dL*GfAr%sm4X4xh_;{Q}z+l&56Sc1X`_lNvB%0si;n-E-TjKM2Cs3XNkYDY{ooh-yka1iG zbK162Tqkn878E@B1v|H5eI_&smfs{ zKQq#!8y`Tv0&S!)kGYleMwH96mVR}bo+vUr8 zOrG+TfcGQDdSnW`37375j3t0Q@{Zb%5_O_5f+#@P#L-|JMvq}KrqEO}o;Ze8zsHeb zoG^-Y$`4)1pS9S8F<>3TjFAa|<@Z8Ul?#Z+4e?ek%TX>p=VOEnOvp8}IzUMUIoRVq zDV%Mrr_(G+WerI1d`K1NtA-L6Jbyy8bs2!Vqii}!5PS(|_#_AYBiic);y$g?6OPek z<_OKz*^Lv<7XKL!q;h@;Uje1G3qWlqEz?0AtfE?%m%Vl)cjWog2p+TrH)4O&Yx_iE zBdq8r5ppGjn<>I7;p5@=du1)ln9v7!4(c$g(J&(ST#~WF$a`5Bdc%med`P$MD%8HF z)P_B|cG-nm@~9^Tf|3Q++vDLnB2$%ma9hNSuPbO0!8s- zAhNSGS%p6(+;G}rM~>Nz0cYMmxm$h4bFh+MO0-9Nu{`eS1fpiIPa}L)19w;htBFm0 z9TnP*a^!IsRPS-Xy_R-m#u&8)_nbBBJLwf!EeG#%{O`i?cdXK)rK0Pxn4Gv)h180v zswny2J zQqtX%tBgXTjDo8lU&2cEX$nz=jY4Cy`C*aghjNfd8Pn!s;|#fH~lj1X<1fb zV|g&x(*+TM%>#$Mc8k60d~~6p&JIJ<*mSU>9f_r`Pp4~J-X?uWgm;0t9K!- zPrNlAbTx*AHU4?W`n2|R&ggZ`xY{j)Ik684qb=`JrLHd>i6Lm(3$(H zE3oa3UqP!^Y9g+Dop9f;5O{kaAM)ElPL-r65+g8S|7ig5fp_mi_L%07M;&a6NP95MU#^6FG*{cdgKd}k^Q^yv8B<0P$reak^ zAVMCZOvvkhf6ueJ()|Neh<+0Xa<~}%P}LMfNhC%9J=g;aDxZ)G%723v^5E$ZQlrq! zm5%17@-czHAPxyz4N^eBQ1uSpy-%t_@6%h(i5c!)D1efIW zu1dTw6x8kyj6Q!<4-254@?j_POk4W`7B5`bFCC>?dM-NsJ|S!Hkmm;eUN1VhnMdWu zl6ioa3zUhGd9JjIu@KdyN`nZDlnIyz8qBFSlmS-|#%z*zWl&rHR=va*yrt9Xj6&JG zq`w&L35VE}E!$N5{Vb5Rrd3_JU4TE?tvLZ|sZ5v?0(7w+g?e#v6S&KQQ?k34Hhd!J zJ&Uq?3v+tOb3{uBA4a(@vaZ6Y`LEO*K~*k}0cWI#cv0T-D^JzV*Lu^n#W1x7nad>% zCnzKQ2>YrpQW1=Tf#{Kb{(>u~V=q~~n{t0SYgrj_znuxc4H9wjGYHicN&kbZa|+HZ zjIwsramP-_wr$(&*tTt}W81cE+qTUwPX5eHP5m=db*|3kTj%U|YpsWpYQMN>j;4+` zzO)MCK1Y4HTJId|U+)w~zpCzLG5@COPOY|oW`kCrJ>>~P(hUL)`^Y|yspvI;YmS^uvv+fr0T|0;EfXPqz z&1o;vgv@X_rfK#bI*xw_vrmU9&xt7*Fh6KrEO4sn?y{bb>%L%r81$PlI}u!hrf&Nb z1H>jB1s0vK5d6hpd8dw8ruq5D=7+ulD`xu~GJ^z&WnkRz3O182wR&fZk0~BwF-RLK zlpbI~yIW#T{@V-hJM8H~Ye4RGP;84^1bm+#k6k%(R1rTSYT@(Ovg6pdno#` zsrbE|Df5USmck;8xGHG8GXtzQ6T*TW()J)$FiaVF?}zt~zGsj(L%bbPmW-692fnu! z>hWWvK#~m;KJe2Em`OimBpm{QAx{HwZ?1uhVC-Q@rsnQ$Ty*igd%bG&OySdR{U~F9 zc2qb{aTM9P(R$sU|F~MaY7>*$Nw1ma>3VxwOQL(mHYvX^fnlOvYdfG^3X|r59^HWw z!E>vJ3U?AF{~873js1luUa2MxppTx*2=I&|rhtDra1qI4eb)yF>)`|_Y=A0o2_dn) z7qGq%Tf+!fKgeyu3fVk}SwYFHffrputF(#$i3xIa448X<)Nd6`Dy$a>?DHT@ z-R1siv1?O`^&wL}+$Gw&so*@MTfLOnJeAqnPkO8%yGIwFPUh18Slpw4q0;)#U{D08T%v}=1C%rtNP%X z*jpR(OsV@$srEvt#F$BeF{zvZ8}J1y;v2G=Om{I|rN<5rO1CK0+lX){IfZ;9+SWs0-7yEUgu zh2mOKawBE$iGxUq;AVAVbNOMFhe%2G4kc>mEC?M*KV0~2u+}UAY7bD*72`G&|K_AI zOT+3v_D(e11{@%W1|uTl{4|fXP3Kpy28*+Bo7Xynr!pL}IN1a|1uV$vF%VqO$N4;RW>+DY51xsWsN5n;n`FUNT8OH7Y+<%U@J!-*w7Uxh7I)(CLybPGCqP zi{ghQ&m^ndiZogjYc#rYb<5N$Rm+nrgr$tjUmGTGL^^9QFJ~y{qac~4CEbO30R;P; z1w^)j{n&D$**ut9UXY6CU_73rt@jw6AM}*~quF08xfR)SY+i=fFM}*?V%)Ie-e?1i z4-UE$lyB@Iq2c=#Q2P~wo9XoCfH7u(0_;Z0nEkN4>yYH;AT(X_Y;ZDWK9#9*cEa)! z?q%~-gBSGh@ss^K*4gKB3lT3RxCK(qM`TS@2Uyga!C*3wJpUZJ@ccB`S`u{iog{* zc-^+o>#?PkXWK`%PDNKEUR68@VAKAYx+| z^E1+OU(RN9hakvWz&rzVF2hT4#XXPB1G!mnl&jNR^HUtVi#&s8)DtA_UGEW;{`Ji6 zP5`gj5Wx;ibQLdr<63Oqn|lu=zymR+6*bx674ngj zxOI)JaDcCnjkBAKaSS6EBP_x*P_SE;zeh^aBO$>3AHNs>9&i3!fqFkAG)q8VlpX`# z-HQUOPn3AwuDl`hFj$;^UCfJceehVe5hOLWfACm?P8w-_F@+UO5{sy@^c*G=@f&jz z_Yk6{*&!w^J?Heti48W!wHbUxsk6X|m9T~y zrLE#7NKxw*7}$ZsNUeKr(EmvY8#?^dU6{zw!-Mk@1h&ewb>i0OC5ijySyrS}7gF}e zD-)9*aRI{>{s;{~sYD%+WATHfyatG%R} zm2uOV;~y>Oq>`R!s_NdW-PWl{d3D>W-*)9H?Jpu48v3PSG z_RWp_#K$AvBMA1syK;AV4Lh|_u4U*x0195BGTH%w0i8RVxv+;$Um0R{NCTS}n9K<_ zyE9s9tDNYnIIPKF;+OHJA;Cs5B!tPbS2Yi}YwltSyI~E`8(l9oZMhOKgWB%$d$k;VW3is~cZ(R&xhhB%l0r%H3PA!dC}x$#5e&sD z=`n9Ycoo#0G>sd@ArJCh4z#))`y+&)0!+#(1^RE(@DWR+9J=xo+W@J5RlxYVK8ba2 zT3sI?TGn$kd<)b~hm}po)!n1IXA~M|g(HYG~nf zbg?=c*xd}ry!89rytke7yT6C$cYkZ5!m5Mr_8ELP4f%V*fKL5LuK&NU#+Nqeu2HE< zH8%C9Ulo`Ge1C*C$US^NBfQ{mF)v5BR}(xK3SKxWPS^>a%akLO)Hb~ME_lM7-wIc^ zahz^c&jL(1du<~i<6cBmpb2y$xfusa9`mK7NQSX}o^-%uMwb$pwv5`Z6iSaA3Ex!+ znN(msCsI9Gzj{!|PsU$%A`c&e_iu{sUm3@|+D!8Ps8=slEt9L!oh8qhRx0xpCYh@)Jv%U^BeSa!O1RcmYP!|(3RXH4#Iiv!{d5>I zV=F<;fbO5`Or`e(U_pkl}$ zo5?SyTN8QaxaDxa>3>~e^zjYFcSx}I$`>EQ6Ot|Pn$~rLn=WX*dK*G-!|)yQ4go8Csnae zE3T2+HQ$`=KY%>O)wR=+uZ$LVA)fn1AOTn!?BT*)Hhp5d>nNObSDW!eX^}i>gsU07?^m!$x(*i>DeOe&3uCFO!Vu7gsBK1*1C%c!zlL7^zFRBD+n^3$>QCo;2p=vbC>7H@Mnh=6L<^rcS;JQNl9f$N#u4RncUW4ljtSz<&eyjz&@C>SVVrr z1mS2%_UR;<#j_>k$}np55(TpLZVSq9D3QEpuGwpAUj#AarxKz8wng9JQZL zA}VW~Ngn=HPrGub+xotJzE-`Cu=VWld{@1WmryM&JQXdxzEKD*hv_`w&UPO(>^uzN zwe2J3?ebu|$(?i-Ic&#c3Mt#Lh0jM78?i$eu=OIfK;*X!#JBV*v4SH2g7R?$Yc~RB zms2_dm72i`n!)gK^ip~9T0!**OZa!~atBGqv249Y{1j(qkyiW&#RIO*Vx3x2UUF@5 znWuOEj5d7@;Dk`Zfsea*D6(Z1a=Im~cn*IL(7d8QuYMnezHg=UP(2ccY!xeZmQ9{g zm9@(lw$Nk95uc&zt6$xPNihsggb#M49=eFGr$!P7M0l!y#SN6=nnmv zj|7KF9B7Nz5A^zBX_`VoFdBdUt?#y~CDYbtKJ{Qy@#d7ML1I2bC1oig+v2QrnO`_ZFkP6%_`RX)mTAdjimz7Ypo)=ewZ)Y)Gjl8qYT;w zT?@MFL|LTGS*t{0yE371)C*&YH0oX@d0UjYkdM%nD4`*+?1*{stJjB8kM{`lANwPj z)g2RfliaXxLInmD1fMqA)J_5o4~QD>L~_pQvXv$f#WL>2msfn<{e10wdfWQn_IZ^~ z3!I}VRH@j&{8cGjE>-&PTem zD!L3b8P{VOnPwo2&gcIt&U1k8t8|EgFvW!#=i61Yo819qd>s&A(h8)7=7xOou8Hlw zih13~^!|?N#_Z^P;^JO-elhvuXW{a8{ygC1sptN#_lx$n;d-vAn;|7|?jQ0U4~4n6 zQC%9D`@}(X`I4c%8F!ka& zdU;XgQvVS6z_|OEMweBQPS1L&b~y;z3}rX^UAJ+)iSr?aAN#a$w{iSr=_w#=bmNO4 znpa^6!n+2H$Va{+2se+@MAKX)soY0P^Pa8Z)jT)ys zWKfB(p{UW1d4tJgD?Y|m5yZWRf z(c@X${7MlcjP_oX^h(Mca$vhF;!3`&6ju+S>~!kb?j+K6bP{rLv8`45^742-k}P$T zo)KldC@OA8#QbRTXP=U}dYh?p9&ZlAzgs8|6B{c;vwEpeAffqP#5!R3Yd`I!gU+GL z_Wou&^$GXmQ+`i?-6m4*+=bjcfz3RU%sIhyovvhoH9Ozt;fM=7fz`uIPK+Wm&<*0l z%~MDT$Eyx|M&4C03>$xp&z;cse(=*r(wV)LH%=8b%YimT{wl+XNJRbw(R+>Qk(c=` z+*jUHIDmmVkB+dIkI;mkbkEsq9s=zA2Swtocn`^W#KZXtipCcrhbxjNrl=@dyUKuK zk{Q&nJEmmxhT?BPfLttI_?Of&eK?&|u{f&(>KCuXi<06}p)@Defp;CN zpCE4;f-efFp}{e`94jsAzq?gK#WS&BCs-g+l6k0L18Kr0@+#jXE6IYl#02w=?-J6R z_pS;l9-2sPS2WIRA8XH#*X^yf2NtHIS6z$y6Pp#f#vN@d>ug{9=Zl1kopkK(t?t_& zu!@!OomF^Wd>M|)>CUb3jeGu&-5mt~YYdt90I==?SWW6C0j*i_yr$A$HNx4-E4v@Z zrAJcV3nB|gv-xAcLz&vcD*x3h;8Ggk)~wsZXdj6TeW(llGR?rSj$N%2`qw(~xjgdW zYWl6aFp!p9NpYvIwAd&j0SB_wO~m*UG@DfjMB9gCyhkN=A@>fi)Q!$j%}t7oE_&Zq z!=J$Zbr`*kG{}RX_3yY@+`r}5oB#fN26G=Mb)86MSwx>vo2ZTy{x!tj z@h)Y-S(1HH;np~I84)}B@{Lq}=tyTu;k&_4@Z)|i6swfzjTMJ9k}6{DZ$;9J`R5BK=&-!$P<>P@!{F$lVi$(W(-rwxh>40g?ZVsb&%@{;7OF zNjJPnx4#MZ0F=Am7)^_KY@3K|i)yTf)NMKre0TSAj@y^I>zlUERSXBp>ulDvIyRMT zI?i^~ZMl$pIj^y?RVy)PO*QX3R@FMJs2pdS0YzPm&$pKrdOdxxVJ3q0#D1}s}M>zL4|m* zYS#fjwpfqvd9M&3j&dQ1t^E~V23P^JatE_G6pOfw9sg#0Y2u?K1`Q?W3PnvA!b~56 zbQ@lE9sSz~*G?G6Rup%og7vzUnRQ9hsUXm)RCX$QZ;UN25{9q_?m6^+sBa#!^@>!Q zW%0C$;yovGJtjtxFmWgSd$_&82o}5z zwLscp+kpb?xveGq_&}4g6%__ctYH-uf1`uPLZE$Qem_}}RK0N9wXqZDbc6b^#w}^c zZ(5I*a-tgGR8nve)m?Zi^t2nYW$ttQBG*nJ&&W%>5|At@CA3wxChlg4b0NU^Id?l$ znr+L-&UcsQvGe+tz7(EfYoTXuHD+2hZc;fh z&cV}fxjT$rUbn+IX+ilvk3(Ol z#EvoK(L~Flgcn5+D*}*hi~U)2?4xOc**XXCAV!)<<2eNnxPm&JO4;hdiNeQ- zAQvIAm?DO~2MePO;ztxx5s}Ueq4i`R+I=>J4@v}I*x^m; z$BI*M8c3(1J;doGE@K5tu(lmHSkD}vxfH&QExADgpM@ua0SvV{5o`||SO;dr=B3yw z%m^nK(H}2lw%3E^zA@Ro_yT>w6O8q0{PSu*tD4&Wg*xNe)=NYA&p4p9Jp3npzJWCI zCtBU)z|ct&aUc4q?ln*+=v=FNd}|o~PmlFCIlSi#-_4rtdLo4;$UWpZw^n{WWnG7y zg0{@eH^D>&JpVCH)P+Pr?{SnyrCZR-M18+6QE@jaNp~6&*zvLfB$J-_Ia_+zBPfUl zfdm1wWndw2J9;IXdRG4Gd_JYQlDH@13eN`PVW%VsD(u;N&#D~d@Jf%wc%R=Zg-U?4 zByS7rQ02ukh3E66E)S7V=j#=z4i&vnjrqJ-=Q2N+;6@?ZIvsPh2rj2_*64hx-;F*Tu)<@yr?os@tT5<^#U4m$Tsv{>gHGOOeJYsbn0zMsJ2odLyNv@nUa zD--TeDf{@8u6LL1b!L8j&$Kk|__@wBwr+TKu5>m2@VK;mxip=hbltyXvvJ_yyH(zH zF6X$GUglBN;#Bl}nO^5o)Utm5y>U3=a-7oUv*tF&c}J(A3s9ZJo~e4w(md~~omFbm ztNgU#X0z?&HtlYm^|kid9saoO8rtKE3~WJz$Vh&#p@!X5KkaEXYp=K30B=0&XfyA= zNw&_&1->x7{&@ENepT~@@$=1s@Xb2=?!KD&(EYsH>KPvRPJ4~)0q-3*Yw6lp5&@*o zB&~VcS50s4fbQ0C+OVv@zZdhn(ta)Jdh~wWmUs1)uw6d!wVTv@T2ytNL>~cAP~yAT zte-Ch{^iu8Umn}gtxt^L5)k&|GSZLg%wo!Uev!#-1b(8T2iHHh0xG+fAC>^eJ1*-# zSnT(VE;`UEz}I_^+GTX}cFT(IO+;5Ul{3JjI;&yDyXZ^zv{l~vMnpTU>!iu|Zoej7 z>fwsz2M7u&U~WP16U!)^?JeQq-IaLeFX zoJ{HoP1v{no$YCQW9`|{r5HS@qoLf$!*&5 zZHM8lmsyLMlfKh5=Sj+&5$IY{yW26ue6TV;;d{-DM>6Cpn9{;qe+Ha{?XwhvJQ>n- z_$l%mG4iN{Ox5V2rQDAG-eC^n5HMT>#IuDaxD<%LBP%wO6|xUOeu6Q|`5mN-@+M1i zWXHRJLAlwTg(`-@-HlokD3S}{m7}yGid2_jj1Zq=a?d2p*qh8|&H8cC5eZ~VRmOT! zB6jSjk%2u92xrsP1*xhHlvfd?q$E%=A)JxC^k*75^VC%P%g0@3xkTrDwG(>s3(VQx zg}on9X)xZ@ii|tZ^)TJ1Nvk087laHfv+i8|w z&7OHYj7MP>9Y?&atk89Ndp&D!RIRwquY;#x~`JNt#J#scBWIeXt0xGg%kE z4iz-lGj}K0K8o574)2;>kiR~dAL1db)AAj&>fVduovUJamcUz!(OaA1yJV5sSJc?C z1+}h4HjafhZp%2)haK;huwPcVz^G=$DC0ur+CCFq!AWlbk=U>ctpmw?4X_=N!G|l^ ziGWnGf@z~?ub<}Fh4ylx$17eRx-L;r$hs**0~v}R{t(WWjazH@1ArBy z4>Z(p~MsgA|$() z(Pp%}8*dw5Jx3yg(f=K9;QD$lJ|3C8u52{roR6D0Fby+@xN_fl7Vq+8u=O8yolI;y z_!EQ}`2nlvz#^<}5ql_c2mf50bzHDbh(8)6I`cplAi=o|{V?mkRcpH_P;MVjd7$^b=xFCp(I825>jnZKrbwr1v+a_KUKxF;jOFST_2 z(m;Cd{lHiL)pn*eLLE_5=g_~y-B6vAa2*JtPY{WhfgD%-R?Z)r0cwo#dDyH9FQ`%* zgF8CZHRrjY$$>aFhE`SZmXrv#yW1N6aco3$acMW20yqkPAE*&(bWJj!i?E#>3WgFX za7Jd(U*lg|*0#yRR`MAOMJ5{zI_Y0dy_rlq146==>D z#@bjuEs{$W@lL1KBzhhBs;=dO+R*M9lIzt8t`)z!pzSjhm&?JpPy<*oZxunE%tfqo z3#DkzRe^rAdP0<#v;zQoM7c$2%3Q;zpc>NvLxe<0=Ag`6Pv z+PmbJT*AC+&|Bg2cWw%}cC&7<;%&3qwgji!LvsR$cfyHy#E>-YrIEw=Mv=SX&xVhB zg*n;N2y&+4yr&bUk3e-L`)W*!bfpR%f9(e=&Iz_XYNkDUCRybnsawg@DqEtJCp|cy z55c^Bmn%@Sm40zU&?Y&aK)dZQuIf5H{4f*>j6X)T`Jw8F-q8&zR_u?N z?yX9)S5pFQg%$GZfxr*F!KuVB^yJg9`R;msUL0@SY*cr-dsS)6P;(%wBd4z-U?`m6 z>YO2N?Pj=Hm)L4uAj|p>t}s+ zh55SaeLXmh;~`wqW$%C1o`ZSFz*ZA5maWqPI0NP};#IvFAKTGCaG6g@m^+#9^XVwJ zQIMGaAb&!Oc}0q2MoYc;k#vs~M-P!j74C}0$Ko+i6r?UH810Kgn}eiS5bVvj3RxqI~)B1AIuLWLf z?D&``&|>bF3~er8D6(O02S{s$k{q`cvg8<7 z^CeF7lK{TQNK$73%ywpI1nHktfOVDP6$Uz2D zuT{Vz29hW%zjUWJMNn#%0pW-)?LZ#evZ39&0l#_{_ZG_Lo*;J5>AECCxf_}G&u=}(dc z8V1V_9xU^?EVES!&!>x`Bt0@U7pgEF%#;P9b44kQ6~B4TEH(h&7RLXi*QwB-%_>QN zoW_l<86`?2zZ5Af7s@u2^&+i{YUY1rLxP*X9XggaZGv|>AYCMbW`sY`fu1RH+;gVd z#?bk8?{6I2rl{AM;07{*y~x2!uzP1@>Vx0ok4ny$(3Z}XrgG#|e0k@-*Ww%I}x57DLKC2IU_M%5@f%>Q`0jtQsSq=SkfWN!yegQjS}ax(AZq92+2h z-ISIz)X&PaSQF^cKcf!E$l>yv;fIIf3MnBqD_7vP>yNfBb}vt#TJyZ`dSrXk{_ZCvq6`(2cq0LDzNuA=72c7e4gOI zO1!|*`V*^lf#*w;c@Hvi(YGK?eQX(bT#(39z9em4gx2N6stKS`dn;1^sDezTTGj~t zYWo>L|Ma;uo|^=jbV+o}Rp}N%q?XcO(=UUmUa8QHCY~HBny~I9QC+*`*>lL=@{1?M z70Fu73toZ*sLOe%KUk?7$7ynnYHX7Y`STKN>tH%(IZ7v4nm>e<2hLWDv4qzm~`GkQ}WCNN^W6+W=k)4Le=Ny&XdTT#>0BVMu<24 z4Tsi78Rdu&un9T<2p3z+ruPBYPi;`ZA%xl+r z$$@VK3OUNCzS=d)SKl(Hd2t8V!s~z1U$KWfMhQC0pbBu5L;5pHS4L0DZbV9~V{q}r7#CH}N2aOORM52qw9%CsEy1;feY3-T!lS?Vx)J&S zguc%+nmHi3Q$>&?Ff2)oHtC4xF8)d285$P-cYP9g*My&4PG;dHF z`pEXxYS=5B5!P*T9+eQ=N{CQm>^|Vg-4pQiBhhV;!9FvvU9!-9xq_PSU=1M>8`o0m zw~*~_LH|Ke{R=JC5@Z(Jiw7n6G0F(~jWCY}`F5i8veTvH1K78|D-RpYiX2uRU|9N! zYwq&%N|5^3i~SFrISb0?6nPa1VLeUw4`eu2Oq6#5!ZR=Jmyq;+XyHqX+qt;lCIqts zYzA|H1h(98wBc+4@fR@~i$JdI{%wL&da!g>J`-7MJ`|Q=ylj?9ok@7v0`oC7iFJr^ z)_ZsY@i05ZPsndZfI@?Ij0eml0Iz;ffO`iJr02_*U{pe(=_f+0#@rv-m$ZKTfK#=I zF;5~#Fdh{M=n0ag9WV{Gt|22CC=ui!!3?dI$rJcU_5R)ZDTKG|w}^>7hJiI^`L4`gp6R=A@}g$;oA93S_3R(g7uq34_X2B_!ytSd`mvMS7l*Q$ojj$c)RlSr(h7zZxk`V zpj|z7**xP|Jq(ux;`nj|J}$A}Bl&C+)ZCFCSmQPl67Gt-Uy7JdSXtYU7dHv1>SKbn zB=cP3&9}G>_#)|v3A>SZw@1f5k=Aon+3``aSStIhHkNaa|D4G;k5;0?Ve}Go>5*%4 z>LEOzkiR+i6J*V1(q1os9!m#HkX$Z~b|~-5lJtmCTq#3aow%2YSZk=1NG?~YI*NwU}(Hv)OX8?f4qopWg4! zs$6XH@i{sA+=e)J>;7rfY3pJ(lL`1)Axc39x21;P)V=I!qJPn|Ki%HntqT6yhy;E1 z{a*=s2Y9c&FV)2(-S+P!+h>)_rzQ1~4k7v{T=6&HFfU!b5T;E#eEbJU?g0{wqtl!^ zKKUL#{*D!~wiPv3dir;My=fi1Ku0})OS3XDD;{QmEIHs;^12X8>e;4G_icePd%04K zrSXD?9;w=0k@$U;IJ+A0S32Fh21N!{+_Z`WI_2UH)gsJM{1E4rVwPQ*YRhb{MtkAk zc4AH5k{_BOjp{fWrOJ-fuN}v~x+sMbQ07|vZgPWgdh&G0NH(FQD!A|z+^{qD(6r7$ zNq?ZJxzJSY3A>Mt9*rU22o#oKl)DeHX@}~pE5RZS_Ja4ambiV^9+Uved-@)B9@Zmb4_xA;(VLX3_^Z*lST zv?6J<4BFHN+#0mArT2aI`*n!NF3WduCVP;kFO9eC2`WI0*_}?C7wG&g!cs%>hShRr z2YBMiv)dV%gW39Vf=P#;zqOD*URT%X{nw{A@3-*RtjniePGsE=Pp`c z)N*c>t1JpF&0u$~z_dtf-^c6)yr(rwz&-2SpJp8sl!Z4nxSq6TYZ|l$CSzQy~z|=QfskD!3*p5`kojR;@Ev0>k z>#Ahog^!!Q2V5PLzjmO397PRWL?y`J{NrGTC>%YYHfgriQ77+N4xDA6UsJzt>yFq_ zT+3Je@nSW#rEb*K?EGDLu>)n_49Vk97GsE@w=|KLw8X1lpA4}fO_{Ki#W-;sy@YHA zX`I!GFQSAYN_8-QdNGp;`6LCSafIYg$gULn1`FqsC6z;-4~hgCWgRT~IeQw5h(R><()ap#26L}Y?6ns%g=-8< z^fVs|+%$>`3zcG6;H*%Qs|exm;~EqAk#w>bE75^e^@pbaxntbERMNhu_w@Wx|4qwy z58KgHQ&tWepXQ}U{q6m+;=)>Rg@|KPurAfa$>~i4y3ewF z7d7r3ZNx2y6gOXTNB);>Tl@<59zyg+OtH#~a6J4VJ}U&N)vX987@^ODL}L{wT>mB1 z@C|^>^WZ0gCTRIZV(U+08*$rFDc8=R>S^fJ3{yTm18+c72y$^GsOjD);iL-0$l_@_m@`qNFzu zUbCsUFB6~3CiU>9CE+XjMI*TG*nEnHO3jVyl`wspU-A^b3Mzd_C2@|;`xTAAMNIaa zoI(_FDRcUAMiJgr0;0h^kRxA!hdvc5-H{m-e2pJ%wg%$O>7F2~zZ5Z*>F|@%pF&%2 zzW5o_k2ZRc{KUBowF}EUC4QqS$@wg)>ub#pMcc4bCO1((=kiv_cZTN zNr5Df;kjNI_Fif-u>+fcnL*fgWYLXExqY;i7KF61q$yLOZp5N)gt6{S`7tGl?ganO zRb-lR*>|%ve&c*Lk(B;Q`E~C;;PAts(CK#4dD8top2RsM$jTpdGBb}&UCwHvH*7PVoh)lwT!2Hs z>cm5h&GHthXiEEA_CsV(w0QL$Y?c48P9(vWSP3_>gr_a`ZU&3Ty-EU0&i` zdnq-EfI1Kb;D%ognQKJjd~D%zHW#mS1;$?+8Bjr*;lBFLTrr_$zLs zN*|%EVdZ%6!pnG3bv!YAR&ab)s7i;Bx6$HO(Gg7}V%*WupJ@s2w2|(42=72aIKm|` z2T1?rC5XwF&M6OKpfSaWNbB7tm|YUbaZe-5Au5*KmMJNZV+0%K$(LXbnv)vF_cha( zE`wv3hLb`)GJv=TNMn=9la5YOr1uK;Nz1Dna(}Uha>>f!kj;-MDUFQ1Fo1g|#^mh6 zjGRitL~{xjL@&4*F3;Si75JSJ{d<~gCV=QDN9IlkSljzI*h1t-IJc6Oi_@etXKcjJWLcJx}W^t$ScAr)M8j@KP%%NNF&~3)l zGrpwjAH|V$t>m&Sou*&R?W>&ekUT`6pSDF21x#(~M~*?N~CK3)c)pV&hlP43yXWtdvu1>8tAyg6sfQ!XZL{1740K-&pIFPYk59*9EeHh-!o( zb%6r?Ckp(&TW=VbZWtG=gXnIP*9J^JHHR<+oC+w_rDaw;1Gt&~c~-&; ziD&hQXUmj*SwnrTKtCsgJjaWDagKGuTcl~9w3>xiO9Y@Nv*<5eD}p_;9oZ(JZr>YgNK>0RLBY9EW(65b_xW#<;t@p(%_EAYvyFsFOmjsCYI5g zN=*KZz|AUDgGjAcE_Mp$(4Ni6nk!If-mn2ybeS01!phaGIA8MHN`o#CFqlMgwlK2B z@(vZ%hw*c=B=EE5tktHm{`G zb%z3>6WKojst_UdhPBfKx)b7j0L}n}O?AyAV+9}P!G4MV1Y8AHSDCumLLDD!O&f)3 zo|Ve3#i}OLpQpwtOZ$rQXT4LCWu-C=TkQ>76~aO_s>$+LV*@ZZm(Z`L4%06mKEP{UPbqp9-eCho^g zkH%X?ugw16;ml)wV+(9oK|iu>^la#9i@V*}!pUKFV>p51S*&?-^|aGwRCDE( z)V18>p{QbTV=ofdWy(?n$W}(%@YMKu@%KrWn_E-wMpd@GtLIm*d();4Y4DFNlt>Gi zc;9;9A6}b(=?Jzrwp}MzUX!>qwA0z44Ut`TVKrUDf4X>RvaD{tD`Pg^XIBht3*W7(IqQ0}!vyO_dJV4X6csPcgS|Y3!RB!}3Fmbx`8IVVLWXsMT5`Iy z>SlFFvrKB*y8Cfi7}s(6D8_W8tjoH7cH;rbJFaUP*dFG#%P)i5J#auQ!A9_)@b#fV zzg7o=L)N5%_^*nBg493Zn;c7%97<~3QhJO^@OCkB*RQOjfs2&{A7aeE}B?{1|m1Iq;`b?mCb6Il1zF7XE*QI{fq0FFK@t#(jT+zVh=hQ9MDP5ph zqD;X;l|px#IB}YAzCZG~vdGfQ)8JJ5;iDJ({>WS@$dL)p%{2CbDD$X@8!@p|4xp*H z|0FvSH}1+S=Q$dcNoh@u4Nl~Z(J&YNwFkgSIxzq_Z_|CH+aAi)oO*tZnvmy{fWOBV zdI>Wv3QIPbDq@NuW5h@#@<5I1<`aEG5^)mVD^(@9O8jcb2l_kcDp1TBtp5l3Y^0WA zBOekXb}$elohsP_Lux$~|58$rU9^rnZP5@mpDD)6Puz8wvVdji zVeCWLfsf@IR{L-a*{yC6R|}wk^{Gd>ftnM{fU;jcgg|>_N4bsY?TV5o-!z9;+5s;eB5D=!?={wK`QrVhPU=RD8%M=>@lJ%{BSeCfEGgEb`T+Ffm!Hv zMeL%2R0DUWnFrVR&EREw;_khr+jU3Ntjnm)*SquS{DP`!YI2Y+ha(Y&H>5wzu-wM?L_}bW68PmO7@ZeC4AnZe zhyugv&WOq<+pno;hvtwT%wHQTp~QR+o4{i%LLgJyiVR!)>tBofZG!Nzvc@`l7RS`? zr2IVT=;Iyp2SzrhAYoMOXu)bCBDD={Bo0ww3=&iU%Ki^H#o!8p)jDVl6BSa-N*A4; z_qG=?Pfx42g?U!AO7cG-MeX?My$R#wh#6KjvvY=|Xz4aAg>OULka^ zV;Ix5e9Y<>Wb)ViBwv{o9~E*w3FU^|YbL3Ow7f6r6d$B=J_%GM=(9qdH=R*7LwlUM z#cCr9yyST~U>(Q47V5oPpg%?r9iy3)HD>#wJH(-SlK}ihPI4Ddb`NaWE*78;D&{E$ zW@E0895E0GgO*yZZ+X$sBaJq z!cTH7SA=4Y%N$2i(h(Z1vqLghSfm@k;-5RU4lsw7SA-RJd|!L1k0GA35~fk#ms~b* zf7v~?vw8wcpv2?Hqa@uC`I};dY`a7Bz=Mr22~pZ6-CiFuai5yu9#9Ee{&`J;qohpZ zWQP#tUcG7?`V_XHjkK|xmlz&T9=d%d@A6MrT9ckF5?buE_wr$%T+qP|2jE*|$*y^}r z+qO}$ZD%t7zh=$)=CqFL=y~_Pacwq>G2fI#EE$PZowa;5kK$%9Nge zk9YpG+{{lTV)nWK@#NOMZ_?t^r}_w>ay<#MJE`@0&>p(It6W6t&n1AY&<~^AJgDew zq$_c?{Xn$+aIc_TpZxe@^1XV&SZu4Y&2_ZAYFuK^hxrwl=1S?|kOwPob(}?(?K%~O zFV38ZI>Dn*iUXV2HVQ{7rBtd)!G2oJ`w+nW;4%GCeB@X0_y$d1QGI%98KZ2KqT_BD z2XqyZ-7FQT9&!}u((UT+ZmSTe&Ttgq0Q#PN)7OEsM%6Y4503MAcL1G84$U7F;M~#`CQUT^Sz=@B(?450{ zt#I`v*a?G#nve*eX-%>u)KZ1h^3ZP3)iWuKZ}c98od+ylH&q^H+QPx|?&(&1ou`rj zLM-F5Wna`lG>B0_EzOK}e2hVS^+H+$T&ozY0#PaUnpu;uYGQS8?;_7i1@cGMn2KGi zjZi#pau~8CDwnZ%1jJ#HC>uF2UE4*}{ifl3j>cIcyX!FYuQd2Svrx<8Y6T-Zg^rj} zZ<0TH64weLX71SY>eA}I=65rz>sN%pj|G>z_|$135B`sh0Q>5r%eOxjjyd|?{%0=j zK}xPLD)2I$$vN&EG*u*&g^Y}EqWqsE(KAVzZ{-g=AEI#f?ryhVTk)@!2&aa%>EocQ z<0dzB9h4xwOnmeP$kgkIJgI5t8}LOnk(5>3atM)!(8Efp;7;B6zo7^*?LlCdC1gTO zi)>BZ)_a@$BMbgQ>{UaYT^4nG&}^w(APNbG;Uy|=D(Yio{;7(G;8cU&jHE_KuCPpQ( zzjMbP^C6@OXOUYd&Pb`6ZLlK>O^&1&Bmh}XRNbcN>5c><`1;KzZYkLKXDg+6C=wN2 zU)XpWa0ssmG?^zYUIZoTv{7vn>AYmgVpwSQAnx(Nd}4kJ{2Go^buwlD<;kO98pEnp zbF$E^clcM0pHf}UX~k6URhI-H+J}F{Htf3M7&hTd=ou{UB}VbQ#mwB|m^LTP?-4_i z-eXJ!yU&7uh6wisrI@?pV(GfTMj!U%$xWfrrFpi6M?ge=s@>%mPL@*;WpNx#LkS2U z%|#iPl$ZmBx`U-X)6{ycaq^?fn43&Qyj>_{-TW=LPLcX7#h!@vW)2=lw)b?mbpEiHJhiH-6 z01t=EXV8|wRBG5Q(`*x})^WFcV9wCwoNl2V?)+nLtkgcbmdy)W z_Gg*GlNytE(eL+iCBZ*Ym#`8~1H0>fTlUor-Tt))HHxd!nw`?#J&vHudRYMjI_}R+ z|3_cNMHS6OlPB*haM@0IS%(^M_K7F<>GqD3uXmF#iukwNthe{~?E@Ylk6|h%^d%#L zUJhP|z*XjFcf$(6vN!YDe^Q9c-x3_z>tVa3hNR)D&kv{{{}dEd@qb@(VS>(OMB5(gRF(AUk%?;jn}2FN1#>a$3ws{pZnXi2T9?CUd&8!$Oex-m zap^~Nlerc2xfSjJwUtAgO2gAEcuV{o+C7yj?^+hm(Q)r_lX}y#vEy}cCCf}9lB}AU zF9YHiGjsoiTT1f*-|D6< z@n3kR|Bgu6Y6#>y&@!FrQ2qI$KADq%y$kK^-iiZZjWDeq@PC>ZQ@RAR8)(7n>C-W? zj1*k3LG*5U(~_)cd-uzbZ>)Q9l7Ay?iBP&jXLO=ZuLd1l7Qr>E!uHZk$XktB@Ka() ztVNcFp=0BvS7u{~mE8TU{NygyM*h9N_v4@?v4B0BtzYA}$!risxmB$flVV%$IB@dF zVGq`W1%cUt=gSS}F!Uyp-jXe|4Tpihzzt0SH%TVTy0|!|Fy+?vAi1P~d{cU-Z14Rr zI0hH~ZxLxPa~?IebMglzbq(2~n(7#Cu{pz_djAuV;`bVUbJEWwkZs6I=$&KmvT^5B zx7T;}mddA)ab~iOh_bJ4_PA(wzWRN~1fh)w)i+|o$BN}qu;r@DTc(o?s*#lPfavF3 z>R{3PaKOC`3?p+~2R&RfZlFHlI8tPT11M2!Z1aV5KIFjcQt)*J$b@H zAuqikQ{~jw+*)Wz9G6nb5g~U-#EUyd^9Ej{prIrX;-3f12Zleb#>qx2Kr0VWX2(LP zP+Bb7n)Zcvou!6osJl3W0#1!oUM!3*K10uxBcX){T%G#Hlao_n%N)#Jzpv}6L%kp- zuqzD6qtKv3ymP0&BIOFijRu4aD|q$pmP$Wcv3EJ-ZoIk%2` z4iRRj`!fwkF|Tst%jp|For4Nr(lUXpvZdSUqa*G;Y#v|0rhhWZMDqK{NgNt%D>Llk zXDM<5YdFnc5?=pM5kE1@IHxp6ub5f83~Agwlr3hdnv)4l|jGRdtC~ zzQ%p4V?-;2A_@0UPLJP>83zl30=72_>ikR$!$qIoNJ7}WWLvM)XM;jU9@PXDhzwHO zZ@htm?ax3@MZScSolcZOuANH{19{dg8XuBqkD6!7a#CX7(eZr)-wue9d7BPdIH(N;4E|0PG0RNqFj%%2ClWk8rWbHcpy^JO z^saQ;>PcLGZV2dfTcO8cO&nq`LIw96m>^QSYg6Z8TCDpdt!h_dQ=;`eu+a;9?Ltdw z@0roHaXO%F`!3FBt{p7gV`TVbXJ}-W^p~7YsCyiy^SZ6b>*6FFS)4{uR&K`+=K8F%iYtA`|(&EwC$XYoNu z$2y{prWJs>@%GThcGXK)=H0hS79McNi1qrFx&G~R9BpEKZhXE06}P^#rd=z5i~k+P z1K@hP%RolJO*PxLjf0!1Bgv#j+74`vT9uu0rkUgA+RZk1Lsizash~a~;{ED4Z zs*Z04mQM?1e{fxn6vn&%NOxn73#G4KxpzpDI0Pqe#fvl+6IYAG}B>@R0X&U_ymd<>9}_UU2P3x&^e9J zQP&clMP*X;260p})GI93=K2#|oZt^V(_io8&9Bs#F`(PqSEXmae`fFV5~$_>TEb2= zmw5kG$P?R?%nvSXAAYN-6whhH1pEgisA~Iqd|o^XTRuC9UR5Vrkqmelqcf)_S%P zmXCFTRji#RY_vwJW#L5XVbALE1Ew8U95G0BDY&+xw*@eS`e|B23Z{mUuI7g_1PikB zb;oS3jX^>Er+aM~azO6~9ZaN2O{{WgFL|cOl0AxuQl-0QqBGr0D_1Q!?_euKQ0+Uj zzczw9WZ-L!)tb$3Gj%gq5ci_{2^Q7^hLFc_nXGM?;gc9;w?{m?CGK>#9Xv!*#ovB4FeTK_ zG`Q}+6tePFfVEoldQ0?~Tyz-IF5X0D88~H58WWj2ca~uVPyB1XH~mqoE{U8?RR0f@dlvd?4%pRj@%v)R$Gy4mdbS9fwB_dpO^5|LIBS?N+#WN8 zygKN4)^L_*&5`>c@uH`Q7Id^%Rg@2!GJlwF2>n?YWeW+jrb-{!|W zN@<sy=bnbZA&0gV4dVA~Y=^*a48C9Z+$);KdQ-hjxK% zV)@S?%q-a9`tbQsgL_K@2}}LYsLV?`%&w*dZg?vlOsiecz3>pyoP)Za6!`Hnvtfh0 zWU39BJyVPBLA|Eld#=6Q3ewcw7x$0&!3Yd2HiHi>cDf=;B&T7NnJekYnO0!Z$B zK_1maEEAtp9R_#Rp=oNL5X61xP*yK$Jpb->c8&D6`Lr#x5tr~Sr08Bcj9HTqTf%Qv zIGv+|$_oGV%WhY?VB~Cpa}SXy?*ePAnAtK{ec)xkBz3KspF3K3*tc!Bf87#QRjjUF z|9kF+&37Bi#Bey}_aWPU*gCu6pz4W*r^9f_+1|BjZPT2oYv)q~+u?@0Zr6s?Ub1Oz z*PLPKGv6)pkvV$Z_w+}2-bA?}y@3f~3@N%{vE)=KdM);pv!Z0N5>TGnJwxN)FGPD_ z-})LZ?5>&SnmY`*2M&W^jRF^`h4eHgfpz}vg}Oc&PZtuO@sEjD*(pH7oaZgoud34T zv!Y>F4vu4vkM7|^wHr~Z2{d&<^7flJMUdw!Igm*8_(HS<$b|~v@nJF@?Tx49z1hAJMRj}Wc%Det3 zZw33b%dwFp%RoVswAL0|nRwh^!0TDa_<;S{Or9EEN(4;yV$pw;^DSTZctu_JB1zH3 zO5OBA@pcBx6@!;)?kdHz9y3XV>7N#W+9$kOz0|0={?Pin7PM#IH>*MFD#~1NUD<(= z2}x{GH9e*UT3|2r<6Pp-bFT$edqUni%YHv=liY?n0}x5iM>-=Jt?(OSyqL)vb;8>D2ipOts^5Hzt_%eO6_Hg{@C7?Sy`Ukx_=JsRyx+jAyQ2 z#yUBsHCB3E5{pO~d%HlDN1Y0LQlY3iYh7#1R)YYQt>3x8UyWcaZJ4pXXn*u6s>N8F zYP+)3WnR|O`=`MHdVejR-JL|oV_aKN`v_A6ZalpOrRY(-H z{H5&!7k5#j|4ppZ{v>@LgV_>~mj)sTFiXm(C$&*Sz5B%L`PL-E7EMN4Pv4j$^7dG^>$24nYqUcM$HX|5{Rv60H62H7GAq6tiT-eAxrN3 zLZVObKy1E>x+_%RYyheS`WxzJ z%8&&I+H(oB)(xQ-B+6=Fz9vXw{DlHdRN&H8gnl-_I<;qP0?*@QEzq zC8!@TUD|mB5Bvrj89<{r15$5*@T*tFS=u=6GL+cGM(qis&B#>jL{fGuxn3uEOwpQ- zah1O!`Pvy?=RS{tNZ>?+gN;3V>-oPKxjW#0oySGEi5XY#H{=wBZn3LTG4FV@A4`)z zkM5*J%>HhV*u9jL)Zaw+_xD}s^k;cO0wKDLXc+1-2tgpdFi`DHp~Vb6upTP#b(rLx$>{Y~>m81oioA<7>{Zy@mWlC# zfxeT16-ZLwhFDTcni3sCFc)QT_S~(xXxqW zMyGPfqrPsu+|T&VfJ<-+sGuP)z$K77C*ik4@V$=GM;Gzv7PD(fJL3epW_tcBTS(qoRh zpLBAnh~!9Z62Ff?OZsB{alpYREO`R!s=|AQSCl1H$3NQKj!5FdIrq; zTaWr1&$ux`GFzBW)Bt~EcGQ16>n^14rgj+owoz>gPz;QfnhP4!$Z zpZoBKw{znslb-E6{PI^H&?jKck>e|@TLa1+*uJfJ^%4DfztO%uUGZoA({0P{w)DX- zMW}lz`+E4}xJ?K!?$?lv0btz={A5m$0$jsJedhI`0P^0D-;&VKkC2U~K>?NgaYFHD ziZ8B1c{jsSly9n*GoO%EYeaNm=kZA*Pe*B5$BL~|+lqpjC-L|x2k{}J*QLcf4MNjr zUw!@a!|$!yiC5DpU=c!G@tDu5jteiQCw_Kqe=HJGVPDGy zP9?wH`A(AoFbx}D*@WKva)n-VUf6DS`r|35 z+F?pMxANVb6S!?@6fk6LW|_D5G8>w#WSlgenH`Xon@JVs*exh-2HZc6_UzBcrC;W} zbp6cTWU_3(><;j1yjVEdt36RyF4I(<@nl}fIG(VezVYKfpyVlCbilE06}rwV=O_53 z;{owd!@Y2;np-BddF6bJUcsS-&5CF?uD%;tm(btDZQHEJ))zCyJ(9 z)NZlS%=_&iL~xE9%flbc^Gwi0d4yAW)hKnORsdyJ>P>oMMA;dP0?k zsleD#MTETN9H!wIr4IwQ6ehOt3oYetI%I67fAF{55lN8+8^5Kz-C-T}oDH_CJHG=( zOeR{5rQWqf))+|43 zI)i{e-y(ZnO)Br0FzUXxq-*DlWz&A^E-=WMDu2m1<8ef{=^b9pZ|<1iGHiW0%GJ`* zw7uZDy6Et|3)x)O9UHD>T}V3X1{F?PTQ{B>@Gitx#Zg)KM<}nGEV&4X_vM`_Rp`W)m-@Vz#_mLk+(=Em$O`4VYb^fLamcFNS`!gI=%|sbiVD!Z-sxkEHWVK zYrAj(T)F%_7XhAJ{&xn>i~g?a-me*{e!juBeyYL(55Nw=8DEF83X|IQfZFEK`T3TG z_45{q46RV*K_!tC)$~J=qK<7~={QjX*HB4~jQG>m7Tf7m`S8 zyh+3F0j5>GW>LP%Sw-9*NeYu{L8oH1ul{8(^U{N<^Gz=q8?CgP@6z*n+2++t=hkDH zHSSZ(c$l`GE8Xhp0*FJ!79XPZPto@I(tL)d8GMD$DwH2-R3B!>)3h&petpCtCsR{? zeRZ}Jcddf#h@!g$qyLdCf-KfHsjL{2x?ra?1dVOVGngzdtzG_^ zl|73&8jCEB!>~2b$^T)|K*9Zsb^MnK0mVt2%X?YyIeM710{RNEP?6F=dGXI=$-iyf zy6a}PHni=YiLNsLAb%qFqV>;<&$?_8qWW+ocAzq?NlZnIO(kY?y*vU#+m7_K4UxW; zAhvPTuGBgU2g8@n=CAqd;|-^2OU<{d%cHBcYQ(KJr=JO`wa`l-qFYj<)xSj52t>HN z=NSyH7ZTP17q=By&DE#Q&nQ|R#0W&mzw{x=s(Jh1LYPB(D^qGG@~ljR-ImI=&d0dl z%SW;ne-7XYmwYIVb2=$7N7k{%)q?iIMO!k&TU5uPLJwXCn~L{3t%hT-E~$;`1Tw=E z#RO_UlHs#NNwAcix(nadX`S9$4bf762$^vAI!grJXRyb4JRNAQ2g~+%eFZf0vI=0{!?xC+vSk~!$R}`fy7s4%7c8a z8!_h1>jnj<3_hAds+5`B#KlY*_x^gr5;M=@Jl(`=0w+CP8x8p6YZwt5>5+h#o@Vl- z95NUJ=1MwHzRS?4G~+IHaDKw!bOy%%TiO z7r^NyiBj$|z6}!_%9J|TFgrC00yOwdzpeCsnwaf@O7*Tn0PNW=n`Vd-sFI2>KFvtG zoKa=;fxR4QC8z~tV6CmNRSi{TR7qtNdQ}7*SYXzJ@MaGA-6zJw5`;92I5xs;_)j88 z3(PB7w{uYpLTS#h;e)H7KN7>Kl9W2lA`2ue6NVjQSY+CO71Z=U0CM?u)G^o?kqt{U@e^&Mf7)-)`-{Wk-Cnp_-xX3SrxW;yi{q@cYc4X33$66TyiAQ^ zRt7#aYS)Wg@FYSgGV)0$g%cd|w7Ap?u<8FH>|5(WT6k6$&;eI6Yn=HeFTuo0^?~W7 zSEJ2teC~{;P2&Y8&NjZc>K7ia?T*KWFLUG<_mKYnw$+`RW%e9+IXn;cNFVclx)uGm zeGYb`s!c2M1RD04(wio;f*jTc*bSSU-VqA(CM?a`MND!-oQ2hc1r8jxIabB-9H)kh zuRn3O#LDjD#61*=TglM2(5`bvz5F>(GGz|rI(O&Q-*!7Uim4!hx^P|1+0V1;4~0hq z$etI-j!Q(`PgUP}+b;>jH%r5h#P-oAg&zH<&Bd1eM~*Lg_hnx_j+~ruA>@xLgHwUC z8`_|^K9w(t>7G`Jr&dVM`QVDJJ^i+6?@gm#f9I~NxxOBC!-1>rCT^!uuGcI1uMbVE zh|Z|5slJ{@Z{Q_|_W#7L|1mQhX+buGe`ASw1yf_t z!-bD<4a$m<+|GDSQnoN+*sP#fuENyXM{s)#Wpawq8-tul{`D8jGB)jSRqYS})9OGs z02L(yH=#3SwggG5fZ6Crcy&c;|B841R$R^rQll^7168DbiqHKuGxM%nD$a73W0^PxVx z{YLavVHCI23!B$%8455KsVS+`KlhSq*xb!vG?Tq6T$#I8+g*eBw5a4!m_k%E4kz)} zt*6FI*v~UtU}8B=x#`pAKKz5QWPw4(pVYw<-Nh5qo?8@bL*aWeuq~(J70zg28B;so zG@pjb69dEPPgf@HR=jh(XQRBQ{dVD^XHLkvoS<>aFU;BvwPC%rjeDkY8zIV5Bi*Y48K^y`V@Dy_pl$y|8PVd$?Zy9 z)uoxPZp_l}Vh0I@|L7ca8dgq(&2sxwnQpEncxy*AaKN^^tF1lyQ-AR1-ifyVAiFx7 z^imA^evQ z6F>}wQ(9KVQbALwfRo%iaRbPL(GrEVk^=RUB6Z;@pJhb%aC(K6#r>vAFdVoS{_(B0 zL6g7*jRqU_q5O09?UQC6TmJM0vEGdSccnPJj%SFOqKBKA(=4FfL^uW;I1&sx#}HU} zvtL+-@jwaV?~dUB3DZp**9sS?jWdlTx-Vg2U^=4bv3^}!aP+!6jA0V5!mpwsNIKA^ zaS)?bWlH&p$Mcb*&TY2+w2r~pUIrw`rC&hA#D)IF0l0+t{e*@4>Z0y%u9K=de=_5K zROSy2wtwn-+kupKM%&=YhfuBO-#mZMy1bxjb;?-V>6D>sKjhKQwPd?ixm1euvt8t4 z!NQ?dYyG0lqf`?Fp$f@2vwziu)BEm&t>PfPf6GKwh;voPuFa$VymfTVA*E?Wu8Q)& zwW?vU9AG!YuS|VKm#pYE=j$?RUv^xg=Fbq}saasHehuYPoJ2K9l=0x&EW`hV0L!x7kZuY^UOAM;ren?2e@(oJePfZ&Qg7*7+R;iUYQsk7GLWE6gLys z@h&q{^|sCy1rePVncAiqU$%ZM_`Wi}*a&yF0yqC1cl}%O4Cr+?&c7<>y8j-tAD?vu z9qEzuvYsYi^z`uC+PJ-j*{+XJjY77L0sduIV{<*`ieFXUPaMlJ?C&6|6pKq!X;#pM)nI};vquYHs^Qq`*Th9AI(Yp9Or2pzHxHYGqs z8OBr^Rq*0T)`%C8{rHxkX8xqwG!K_wY~eUZx_Qb-Z-4Egfur80?|c<%4Lr z5s=0Hu59_NbM&rrkO`(!`JE}615~pyE#Y9D638yfC?=VgtzKG>eVZ2EQ-=W+jT4$D zU251}7N8x@zP4ZEb?uDqu-A9^2{pWpy8J2L^DS zs^wOEl5NrAz~3pIXyJ%~|N5LOnaN2|#F591>_iK}QA1}ihLB>QDpSu3lsLC>P_24V zJw$XU7_!7Sq)4lcQ8<&v+^`rInmG=EHvh7irWrK}ztiXxOARKn<@4zpX3`DoiSQ3b z(QNa7a!u&PQVA&t8AN^@QmmhkuJy6EV-D00M&E;a znxQgE-g=C9bE+>pdQ1?0Xltl$y|L91zUoS+`eCzr6r8HG3c{i?*t|MqXSvsvlTvwE zY^B%fF+4Pj!#TMTWkQG82a)+K7i43M>=&Yvu~wFiZXG>B-X=^@&96bGc$3PgVn|V! zr6FlfkpU8v6V5a<0pUiTUTn~#DyZmwl2`qk@DOS51nV|?qp@GuyE4=#L@Y4}wOPb} z$yj&f!lk+qjW=_(Jh<~AGL#83)7yn=T^x7I{9)yxlZZgju7XvFLR8yS6S8r%!Evnn zwbL){-a%l60{dfCm}~0TB4&&3DbuZNd-A@7)p7=NfHTaG*|9*&Wml$5rdy4ju2WG z+!Gure)&gj^bo=lqi_48Uk7g(SrH|?PriMZF0t0zcl$-x)c!3gx=_W%lZr4_rYuHb zj4yKGO75^Kat8toV~3?R0_Ddj#-b#QuRT2niUMNzoF=IAxbQy5&0+t@A;OkyduvTW z$FTP~XT&_kZYQq}D=k%g`ASW8n5r6yrmh*6-1cX0-p?)=XN|bMj#l?WpocY&(YN%TV<+l&)c#LdHY@L-<>owM#miEkK+8)>1`nbw}w3c7$S*FSZEtWji z)TgWdAbkggOumyux-oN>7W$deuN#$)?zp^_GFNOD9;OwW*BcH#mmd!5oinzED=8Nm zj+f2u#|;-g($U)Ue{3C=@eHhzrx(VCB|p%^PJ`t9e$sYQ?CT#nT{&YjH3W;4UfLIX zG--c5_*~98wgPjL0k#4+orSwU6(63uT!C*203th`Q%Aj1+fPof$IR~>(buYwShu5Q zkBZ}DV!QLK{?SSM_V>-}#jiIHu*tJyw z$T@X?ncm6G%=s?hg?tn0t{4z}Qnr^&zSQI2UJGhqj_a=c0zWIFFUJX=Box06!n)|T z+GQPbWB(`E|NjLQt{)%<)C;l-PQg~_dQCrQkwU1sf+=iw)$l}4iStM>D*v0!7$~0) zB1=7hf@Z3XJR1?1lCN}UV0P&s{<*W@0#Z)RdnZm>3>C+hEBEqa(q{_816B&#kEd6nwWpx?7jp<>CNj;9q{gr7ke9)%Aoo{395Ik+&x^h^~G@{aK#_ya&+aIgOFEC|e zNY)l@@P|^@B}h;=g>FM8?P|I_viu?;IUecYd+h2!AcUkAE(0kz9>~v6GB~0{5gmef zL}8N<)il1@CX9$zkX-!lgMg(@$iL6aD0ui<_LXpb7^3Qu46IuNE>5?@`fTOP!(}#D zE{q|)(Usxn%6oleWoil3ZTbo8E!8m5WL#7UUdqBZ%!*MbIC{k&zv({YmUd(_oF?D4 zHl$TQtVSV^q}WxtH0)%5O?iYsv@4A3Ua>unz{*csX#Scl#VLm=B0LsEk&2l*OHnMb5qfW=YKMA~g=R?5woyx?BxbhKZZ>WLf} zNPH!lNYt0OmT;1d(~{G$--VzDu<{hb!?>sO4o zL|%8v%Hh=xCeCvEYB|_{D z;90wVSSWt+t#Vx^VibI~zwDiV(dELr+{~^K{Ni|;ph|H6WtvG`L4`f!oZzBWeUe%s zsebB-JDIG-OsgDA1Nq@+jHT$rN0<*2wgYaobsVn`Nd?jC9E9TH1jh@~g9yqNvR%2D zm&E}h!<~!`LsA`P(jke3@>2)W7;0FWbT_?MH~@R01(Hz*9xa?4Mszzd_WIrbp9?lG zz_G&_Z{u4#X(rg+$kf4!;BBKD++A#CkbZ{=WyYpPj&dHLR40ZhA&BZAHd+!g8TsNL zfdfgP))f-%5jA$CRcEUPo zhmX~N8A?SGbId7k?pZpUaXYZqJs(19-wjhgioGK6FfUbqSh29-I$h7ou*B4_5L@4! z;jg#lqaVY&gU2xi`id=TyPW-iV&sd|+@W`IhEUweV-^s@R6i`s8NaQj}=oBdQ2Pm@vxUSX)z*P9VnwlwOy9h{afb}w7!lBiUttq+fVw~<0P!2r3pk(G0MT(!H^@pS zFc*3;<+DM*^6uy}%JlO+S4i^Xr6#`S<7IPkce>|d{Bxs*{;qU1@99V;XERr}RRfT- zfd5q5*t(Ycr{40tRabj=8i@Ag9Wj{eic~LT*&qWj!;TSB0ox)1MLL`Q_Q&VGZQ(p& z6hI)~(`ync^gWfsvLGO_z~mj2h<|tbT|8dMoHkvEt>6BWzf$OAx{z)7oyT+cuaJ)5 zG!Z54MZ7%YL+OCcZA8$}^PNxLA`vI%m!{Ka50b=75i)A#wu(P%QhvQNI_$5;({T&OUZyCw=OfCYs(>vQc~_H@lx{ zqQV*O#G5*S=6w8~=nYl?9ceoYYqPmBFB1+7U?}m1bg2O4?fUa=K$)3RO**@E$@v;i zdq9cOop0@-Y3pfxQb{ZA;<9Q$FfhqUZ;Ck@6CfY1vRe=g2P=DlJ`y(!hycpRH5CfesU2eV`Wt8 z!Ow#c4`m8p*o`W!ttK~Dd?BGmarelfl|-5iY2qr`Q3F_sYLLXGQd3RJd=26m5$O$o zH(8&qQ;=-*I7>&;IZiTpsR%@aK>gU^8cS496k7SztBuoc6|Z7R*K+E5aUUhAHF0xs zC5i~ha5YPke9~Mmeq?=(Kp~A7!P7vT##y)r<1RvKceAw^6hUiv!tQj*O*!R|$drX& z=mWI&S#4>`nTpkdqk@a%t$B$c$&&1z191w#Ij7Pp-ZkV?lR2FaO1wDI*ooO zym{$f=}-`2Q++Thj44qHol7r`ENyy;sfdB+TGE zelK|nrwEz6lIze-!*_MDM;6iK;mlmU%0Nc?A&q159g+UOTCX}Iz)J?DSCrecEH{c(Zgbnt9s5bGXK*R z<7Vfnw~yz^tpD_81-zwAH}AO6;a@824C#zhL|MUPGMwM(Ki$`0aR7ZrIVjRY;{46O z&rA;ZDU}IyLH0pVEPguiacA49}uvEG^HEKCCx=D5F1jo7vY_`C8pv2aYikyQwbjj6?^rtMD*HypX*U0_N6I$@=3^GfYG|w4l zTA~*PC?q`-3febLW1l|;e{G4%Mr_U;Bzt0M^WHJ|zcf{gn#ap8s~VlV)4stWR{Nzq zX~e58r`H_2VC!aQU@7#=mUc9fcTZLykEk~toEogi>1(*#=65n^E?P7;ovJf+%0@qi zO}>wqIMizMx-4EGxmW04sE1)`xVJAZe8+T885AdOsVEo0Q_geb9xIXoiuoN(s+$_4riOxH5C+kVKL{$euycK{JJiz_(r_d%NwQ*9`t@pZNB%X7CkHQmxLKTj1utGZ)~@{_%d{i{~D&%5?(-OwD^v?Fn*S zy?vjL$mzPv3Bt?iqU)NQ4m!)p&+K~nH2y9WvI;qQZ+V_C=lXwrq+-5KF(K&dxf$Ny zdoS(=YjW~ehZldk0)5H_Hr@YI-;#$6B*H%n!@`|L1|1X2-*pFB!b4(} z6rRxCWmxYCH_BrG+jj>UAM%p#LEZHEM}eT$!1j5Z6S{jmG4^*~RY^_&#GO&_%mDKZ zGGVn>{XU9NxsZ&xp+ZVP6-&Uw1t_z>y%OUR=2Y(D^y2Z+ zDF$#Fb87hnGXpV)vVWK7%`YjScB^THJX6U2-9_!?jpZ)F?=EKWe(AT+fVw9ddp5Qh za?O3~ja%u%F}U$o>%e(p_IE&cDAg`3cLlZrn50%uRds0eDuI0fJN~YczU*lK`lGNT zxu+{T5b(RIC2h!Bd_=J*a$yJi1~b@*E~J(>wi(<#S`OeaLrE{lZL5EQdRO?B9ZONVP;a+Mw%x61!ogx3NnzNLIdR!Ul&`O zUC}S8XA9q`4Avb%LT@}+ykN{rO=^>cHgbKzE>4(d0G9HZsa&WeqH734Fsa+52cMAyua zjMIjkNMM=j2QKVJofcbZG}pC!ZEX`?bU4eAeg_DKxWLP{=KMO-I5tdo6;#6t=y3FN zJ<_u@4WPk}LzEjq2sY(1|IKOno6GEXQ^{N(N`n%$0Cmm}uu^D|V?4B(aWZF6VHuQU zY!I{RI8tcw=p_jn&S4jDB*0!y! zZQIzM+P3X>Yunb=cDwb~Znrj1&D-RDxHtb~zD_2;$z<|A@1uGiu0t&wnK2SEVH>B} z1dlUJpfFdx30~6<;P{Q?&qZ6Y0h)?Iaj{D=X=f7KhGqIsu?{*UexbfLrE)NIL&$KP z>5`^U#Ch#VZZ2_tU(6e z{))+?WGz*$9y3{Rfj{6!<&1vuU-h2&$8pu|5BhX+&zt8kIb>#+$8BPW?nh*m!eo=h zWYhU=GvOx3!ZzggL~e_FI7H1Rif=PGB9xc2nPXl8lDU}9&hYhRb&fqM(`_Y>8-4Jp zCGzPV;v8Gy%m`Yx+-UWf<}JAF7I-XLdh56GH)mlyI;vS%VoFK#w_((;sPM?j>P*dQ z)KhQT*y_LLvMgSTY+)-KvsyNVnd)ZiV_aAxlJVSdC>D`K0Q&$p`_GSL3)_WuRWnA5-!#& zC6^mvhnxP8%HW${L_1-?^hqrGJ8%m(VH-iR6p}tPB^O3!_0zAk!+^xzIN%3hd?TpX zMndab!WwFXFBQCm0#CL$h5Owq1nH%k-$PR>f6>Uyp;YPbAF8x(O<{s|39&jGoo_JC z=n$bTJ4RE$0=M!$)_rEgBa3i^{Xy}}OK|Hr{R32pGEqUG>b5PH>z^kq=9d!=70Gh)Bzcyz zo2|*F&d8=Nxj%Lunj2D^KSr8&Bpx&Sq$XZ0mQR7Nrw$XR*BL1Z(R5@4RiXqFWab(Y zGu23Wj!fU$=08iC6P(YCb1t(+r+u^Ax>&ue?hVTP^pQ13H(~?RHerHvH6?g8B-YY$ z80Z+&9HfVV>*GqJr}@zxiv@>^{Y%XsYhO4(9?%2V#|idC3HU4k@4F9fLxJuODNqsy zs2#&7L4g(PlFShY@UY9AxNp>B6yL-#L*p-oOB@dZUuu*}6pI&lRfy0{H=*d@6&a(& zG=&nY`cJ0*Otu`yR7tP!W=w{o&&G%FmZd?z*;r$Y-4TwjcV& z-slIv8T&qj^K6cC+=rV@bbhsn7WthdyOnIVEL3arr*tmaXw|lUl~-$2-V==@*+uY%xVVD%RCOiyAi{?iO9MYMm-K|oX6JjgjhyQ zcA@0CrkUb0Yw&3t<;A7s#FBgjjd!7s+J-e&p{0cG>{oA&b-dGGDB36pC9-C(0eLiQ zs*^5f{;b80+Cx*>AS%9rh1>@v`KYRXAX|(}kXsY2CK}Bsutq=bn7)>u15x?uf5M_3 z8p*D%w;eNJ--0>GkLAc7!AxU*u8}h`4QbH+8fWuiImtrf>THjKEx|3E??duxTMAOn*&BNB@z;UcQ2MIN-nPP_z(!fpq-A!I3fjIV0*{jm^IdS$m(sA z(DvGvXZ%p_N&)3IL@1sNHJDiWlR9b{;k2a9=yh@kZm_*sJA2DGP0c=iW4}jD^&(5T zj+fP?$LykK={iwkSi(finY5!KmA=eXikR$co9sJ|kp~tsC89zR2&Ub%=3=h1N1+=WcN$Gs?L4*;C_!4`P zb9&(M9PwcUqEx>q%H&E*e(k^+j~&k5V=3Ba!+IBKDaqtPjE&WtNyWMvq{d8|%-v|>&dlYCGL&<|DY5JG&vKh+<}M7# zAyWSnWztNk6j`f>Gwc#=cm?+GIW&nw%!mWx8ZXY66MwLcmjmC}hL02;0vEY&*pT_Q zbk8Jh;C&B!8<`dfo{1;SV#G1ZUo6uN5JjpwflMY7NMrgPE;WyM!2xtZ-ZahU**myDnfeX09L6TB2VdJi_X{g<12ymSnD5$ydgPZc{_?fp zdQJTf=ZKwvCtPpdG&6N?x#;-`S}FIm&}eVH$D@y9(0-f@yR>m_Rk&X%_sUn{`)hrP zqu&DTC`;MaoVc=*=TuKzr#(S}yV5MU!%74E89F+CGf3|ujCB|<@cmim=S^vTAGQYy z4yxlfHORp*2-E3_;q=e2_+(#tGc7i>-H-7;`*hfR$(My&6O3)CL29Z+ZmL24(NP6~ z)KY`Y$K6;Z)G z%s7Xn6@+l5lGe0>gCW<${_Il{z=eUi=v(3%G>M)x@dgRVJ0sh$z(*pZIX^|RAZN1n$vt>?ClmMv%X4;oEf_KBLX6pnSL zaJw4eUcItUrKHE6$)|^q_s6KY;jr3X z74M&MXl$|dd8farhl$&jT9otOIq0}3_j(KGI02}=2&48f!!|Jr&jK7|#6Q84S5#!q z9ii_2L9RMRy2J&b2AG{sOb)7BB3G@F$ib=1YMs0+Z*HqQe317xWiF>?X-%(AjM!5s zx0+)Ed8CWg2n*2gzdJs%sll#FJL-CBNOCs|Q0;|$tC$VG%Y^-fPkj_3`}^D9g;DWU zU=fc;=b*OR)M6Lb-iwlrE~%2KU5j_em~fopg5BGOsz*%dOU66o z4W*k~WJ>m7lv7oc>4W9y~K7=+#ibCXtHr&5w$A-gh6BK!gn?M1Me|`@F z)c<7)IzcLY38oPsKBWXq(TU(AGM@*)LKLv}!YZSPV1_B#iJm?TxOgjP`rc%2HVg=H zIg+LSgV=>8F4h%3^sPsG-3|Rnpc+t>MJ~MkHhl1jUvnSrbRLdL@QdFQ+w;(4k}1C! zZ>L_jy!bMG#rryat9YTOEjdB0nvJG{3GPbHu?_;U^k2Bc{?0-S3!)iUFi)UDmOPc5 zIjY%B8yt@>M=)R3ue?!}ql$BGT1%b2tORogCoZN&^16^9P0}UV(DM|Phj6Jk8G0|; z-L8GMpT8}l!TVKt9%({3B*`b^BiLL<5TV(U!gBgeCQHp3i-CC*MOcpKN07U0sISO~ zJ8|s0>*VKI>~Cjk(=Z*EWU}uG6+SadjBv4ZiEnY*rKZwb-tw0)wjVIuXh>D+y$R9W>2L!p+#D7~sQ)L{Sm<^q3XLu=4=FHRP(kw>n9EhZvu*$MfqimWt z;C>s_!Xu6Fi&$U?XhI5zxhi7*0G=b~yBNSu z0nmb)sun_Nd~BlvSL-K!c9VMO!8QeGHPcn11Tw|Q?bvclJVLX+2PRJeRUGKYuo4Iq zXoSBL;o20btBZzWbZeYN$ow!(RpgapvpUZfp&lu(&Gt@UR56Gf-10_Iz=>1I+w%Gm< zn(JPkEFe4S+2wcI{^e(-z3Rm8%l8E`^R-0Sou#bM1J9ZFl-SE?I1Nz;K7Ci)M7z!gCY< zRJ}9}Z1~lDGjF|zr8&B;FH_Gk*UsbS<$AoZCbb?#cZQs+<9P7lua2T~S!LkH!Gzpe z^G&VxPOauqgW*xV?oPAjPNVjoqxKQ=i{1EtvpF&bzz}vLlo)0F0o>VFC=r<7hd_)N zOamU^)C+r1x;FyMr{xkk@s%TjUw{sw^8q+rNkt+Lp&-^@N?;Hw(7$rmveK5orG6!* z1LS-0!+V2`?^xRgNz(ukM|UIQ(dV8mx8k)A>a|a<+S6xAr|!*_?&_BeLPU5mMCydFrd(ws0NAMU5X_Oo7VQ zByBu{N$2_T-(5t^F8bRxfb|qytemiVZ5Th>kW{>g5BB4ZOZP&y=l0|F#YIES3E`)D z$s-wum>K&lG>u@*lc10+abHQmw*|Ga!w#?dGRS@py*eHQt+fP2|MG~u6QVTtCLJS^ zzEdQJB5l}m#1V+35gej?9+Dx($7|^eo7{n-ns{J#GFJS99KkH?C}AW0jW(|%+EQ-( z!Um7eyRuGwQzMLt7A;wGf+<7DOpiDWJ!p()QdMY(w)iK+Z`DU;3vV`4DdC2;4jreS zbgi0TOVGS5ZN#EXfF9nN()(mIS|3ZoZt}xua(uOI1Zm)?r) zgur0GG6YFmANC|B7YDh(JaWbk0;PwzVM||x0JRKC2qvs~*g$%}(q#+wiw4&!a@ZrZ zxgFRJCy}{_Xatyp6|ou$qA_F;xvuiL(AV}?3^_oloA{1_ISe_X5u@}Shh!a#3{gA+ z{QDeAy$6h3CzV74gxMR71}6BS9dvwmU$Hz;0U+baH4H6B2WGSws5Cm`NRhze8DIiZ zbkHXL+d>fEiKW~^wD_HH87JjhQEK1^)m84;;Q8DLw@H(sGc0bpvHaX?TRsPa_`a>`vpKe>EmcIi#hacZTQ=%( z>f6?H_itwr*P=;>4Z>T-i(8GyS9nN|^dsw(2mDF9zev{g>HnB`0pkVOs|a;mT7UdL zlX<5|Ipl0UPgJ{(Wnh1b+WixIs8U!!O0k^2FsQXj*8735#^BtS(?Aq(hO6qLddkt5$yXSNp)^r=!blcAl_q`NvbPQHM-)7Ewua|Fm zKS6?5ALH99ub)i(PrB^|{!E1a-OryNgGuXUR{ZS?N{3_J&hoi@T`Q+!+h=cjHlX4w znKG*PURTdsPB82)zon#tUREzqHkIh|w8xxx&uUV?K__4P;_5%RyFNq3-ws-etcDJX z9u*df#gN%l*AU_S!uUM9aOX$80X&$Oa8LgX70VrOa`}$SANLK-i>My6tUg6Vo2mHA zGWpuo)i1}|vuzYRoap_B&&TRYpmI0tD<1akj7z9`)iJ%D3aFQprtur8ka$w4eprQ4 zg@Wf&-933I{$_2+jo;nlmxd7KmyQJYOvJ`HkiMJU%gz5fZ4Be=y%X}k@HkIYBB)!F z=aYOYb%|K2&!e*CT)jG)$05(NM5=GWOG#*E!BqEO&n)-QQ@qnARWutR^en`H=X=&Q zB>ERPnENJgfj5D`-%qTRi!MEsyK!o97lKJ}6bT*&GHJL3+Nuaut zxbk9ke@vu8=E37@a9aJk8?YM};+=^9?V9}3qKzsNkRSb-f)VA?4;RwVMJ6VUQa~hy z4;v3Hsuq~Q)4O*&CF$Y^P=^)5!zOu*jen7(g#e>{q6Ib-*AAe}tnXd^~c#L87i zMb$u>wn$LwMacJN$XpsShleCuYA*%-Y_L%7n$~>Ft@Bf__A#jT(=YJUwDi)ncDyMN zzZ!p+jV)a?8yq#;lqvEnnQEIe(&jEPu$rxDSxa5VmyH#_s=D3MO#bj2_@LarA)R>% zAH1Ek%H5UqstC%Wv8?%9T$!iTUU1z7bhy;e8skt~%`HCdKF+*unwMU)o_qTkNCgw^ zPr-iRhP>yC@cAy>l`F>^`y+MOagujF((h)n4_$&e3^$?})u+x? zih&kTS{W~$AFnhG!$3}xvHbmrGnM01P>qcawlXGTvc$N{?9zEL>yq8K5#&+s=>@8a zDstN&1JT^rk{CrDbVqp|qT1~X8oCmu74=o=8tU1zz*tqaXdOGXtz#w&qH*iqikjY< z3cSV^dFLTf#}Mz?A>o!|b>j&l-!cQfo=x4|^3YNPsRF)ymax_HZM@_w+IFH-r{0*w z8P|-fwWf!?$d!Dq^Is-L4t$1^w2qRf6!fWG{2BP@6Dx$Hu%drOmAd$ECYd8%<1J7^ z2;eE60MdT{A0n1z;FCv=X_%d2rVBOAAaOB&p^kt=6^Y z5aS3Vf&dpO3+C{^;one}SQ{q&W^g^BXft%$lj{MCU{~byD<`=22d|J05 z&d(%MSsRdK?G3-+D}g#F(C(#A#V4Q6AW6;sWLMMV;L2kRT!D3%bxH;?N$0Gszau}H zf%?lwu!d9PB}YxPa}DiL=uIxcMmw0&+ki*x(ffpGU{Q)pI*1&4A6#l1R_Zy(@>59y zTc!mf=q60LYo~aMIFl&-0D;&J9JLi7##@-tvvVge8B(D9!VhaloPOb(jRRTsiBfR~ zv+52$K~{K%TET4ybfw;SP;D~hY{L|%ljE|lXbHu(`f`G{+UWFFEy`=j zIb*e&B=MnD`&&?#=bwYA@32s=X`2$8R`mtLUqsAG7-u91s7rXk&DF|4z7kpJ4(A2Y zZ~DE18|L$fYwAUwxMlLYF4!-&i6r4YRGRZg%pK0X>bK>6FDq8wKn=H}azYb4qJ3+k z19QRpQzBFAtE^_^$uJnRclqGgrz_E{hZb%BWt$FD_RZ$D+H|6HQ{ts0VZGZPkyym*QWQ0 zm5Mqv0!El8o}~xRCeXaaS9fccE<{+SKpcB*XR!BsruXf~WZ4d-=B@z|Z=-);0v!^Ecm!B__s?tdu%1_Z2NQG=jp-he9p0gia|_JUnc zS}KcQ`~5#5RwiD)xV;p#Cy1=?X1EpM{dl_wWyJ&B@=Jx>eB*DxOX@1W{2a#uMCTyVoa zsAPUrc3b!G8?&u!=TBXRE6om1tQ%6UEvA_^M5Ib;yc681=pPHpG09YfpB7w8wXtI8 za2fw=BY8vZ_xH|UjN*+9wU;{+1wRfXD`YR%cRmTcFxOH=s4iwb0h2g1W2d3l2##MB zUfs>3z|CKbVFn>97`rG*trAgzNkfZpmxTNT;oCQcN;VUwXry}45QncA+*qB zuNy}aU%Z^A6nY40bd*bJWqJ9fPzjMuoI+`scuY&i95ub_`RoeR1vR!##L-ppjNx9) zT-@JzxK$tbj>8pnzq{;2M59{sG zMMf*yiBY)?K?^xz^%yi6Zq!5qkjI{EL(=LZ(gu+gp7h-y?9^BNO}D;YS^x8t6>;qC zNE4^ju=(d$vVjIdddydv2EwvpP#W$%W3u3Gp&%y4kkyu+%@{R0XP{Vq_P7!K7C)GG z>fh9CIs*L;8nk5sg%RlrzdwAg&ELoe{`L{zwYB9avSZH$9mVBd1#tXg@;HFEhV)f`~^b zNpHd54`Mch9S(^mbpTV@=6Un_L6Ze3!!p{?DA|= z8q*cz^In7565Z4jnVREA2T_)>R$Q{oL&n=>4ZQJi2d~O;1FU*F z80g_3NfXF`8?f0)ed?c5?5ji~aL}_5MdF>rHiFbkFo!Q=(W1n1g2cuMQrL(p7eOG= zLM_Irb@cu<>}6xRToJhuEutgSd~5rCO$`V#vEgkRR4U6J8+_ zwBqM_m1A6$9*c4Z2uzZP|ereJ<@{)_c=-YT0xazW9-ji3;X}h$^IdN$n(@MYQjX9+s{F18RrCZc) zAHSh2b!llDhnU&9R*k1~VNZK+TCty*4aySpNTA{xM9Yenu zF0R(|C^cWg-+g_T2JLg24IBE6bE+L1y1fhf%?tW18~VK)y3HHjP8F>_?R8$yj-hlf zb$qqYE4u$7F4O@nVr{@z@YSqepsvC8EoBk^{Jyh@KTJVaSOs@Tnl{iD5CaDSJBj&w zPFJuMOhTs^71!Km*9bGKaI}K>npilx5OOtOWonW;nWVdn5@nmx)5j%^l230m8P^pm zZRHsJoS>g8_m`x(-ww`LCtj^KJE1q78ZShH=^m}qGH<_Jk7>HLbTu!F8WS>&Bb(^e zt8HtBdbV!#Kg|5g=ez2fx&#bgHx0dVZGW;yP=yAu72D4^5@_3D|y4R z3L+}k)783Qb?lBVfM|leZ+8>kPQz^$+f7{YVqADKoxUY_BFXm(&o&t~eM8ZHC(CW( zPS{Bk*-9K=&G;$Q;Hqw5$F`91D~XL$^lPpECs4{r2%j4^=Q1U}h2{H28aed1Gu#1( zT+cr$tJ6btJqsRB?@Bl;6@rPmV0y{`ZD{nClle? zJ|kV2GrMsChbRcUh)23YP`4UR4{3_sQc%omI2@0D)_}dv(&ULOM+o0|9?0{HGVKFh zwGnyAkNks=>ynoGgNN?}n(Kj*{Xl?xhmh~k(I)YWy;v^+vn=k>a$))<5J7^JuNqb# zGs}KX9mtmunOE3gb`m2EZ<{HiPpoQw+yq7G9w@ADV$QzkRmiBle=iTXRVpe{eg$&GR~c2rc9EB6?xd4Y1!_jmiS``>%JaJUr1?Iz@&eM zIZBZBxwHH$lmF(U0cWe8ok?i~TB?)@}>$?H85^k7(p~})!h9}(K{cE;=2ZE&^ zHkC0V?&iw5M2YLKiD^Hjs%f!Hzs3B0lAvx4iY`)8x1_&!V;-YRJj0UyAW1yLll>qZ zLYCpl80uhHj8jkjmX;EmTaRSfu3B21fkpw6nN$ro8==f)ogZO1P2gM17w6trdORx6 zrdaD2@vIYF*UiUeO#F6K8GfEx@K&8GlH@(3_^V^PmWXx^c^@xKMjav)x=f!%E&pU{ z{$Xvgo5NM{R|AzK8*uqfXOX{s?b2tsNbhV9f0dx>(y!$sP=7Ot!PjJ&uc^X5Gv@KP zDQ8RvFZbHI**$;oWu~(8BCyMjMNiYp4(EW zi9y%>gNRVm_q;;yvdZx_pz*^vP8PyS)0QcU=fCs$gFq8PreMSYp29jx|GG=a z9t6-c6!cys_5pb22r;8myF~s2|HXLqi*1dD3J5g_N}XdE!hx+m3Qr&x;i5!N)rVyM zX{#KR{vo-?G*r4NN8*}fQH1!?B=^`44%l6c+7{lj_k!j(qo8Vn zvGb6`nSpEbg#D_MY=b|)E5&Lrg*uoa<-Z9via64Lx?BjKN-ONFu1(07x?Rk)Eqq4F zyfG&JLm+#iFt>}8f7yN4F+X$*g3O`HSBbvNV z#LSlb-nkiy2s2MpgWRf80gplTTl0WVd%Ct8xOMq(mBK_+){}V@>QofjlY;hUd{MWe zx+iy}tF-q+PtSbDP-hlndjb8WJ-^`kdgt}=WisQDC*!AQ?ZKISSeesO+8M)H(ggy+ z`1~wQ^(Nd<%}GXq^h!Rto&_m4{dcU)fb9%9*oXqik-s8)*z3k8{j=u;)XG{h4hF35 zctO2%x%jy9hykW{kzcdCa|;P%CrS)T8-f)e`TIXq05LcA9! zl-_~ES!F6m*o9EE{(+;pXqLIE*oy5@WvDv{Bv%v$Pf=68BZh)Uu(=IliqwqeK)wPM zEb2)p@JqPhj}R$Gq}(|zXZ8_%665TMjKaT^bF45)D&dLq5~_2Q#%Sios-=lZ=Bg@X zX!;O$Mm#TYxQ+4B8L|>HG9}vu&bgY{cfGlClPls248AQY} zL@9LJ%)Jq30Jbi17Yeo@whUY_Xs}S6M5#p)avtW7<9i8=m}5&IQ~_}+XL{=nwmF(m zH-^tH^>5TrrnrIqOYp<<@MJOatQLa00255G_>uZQ17wk@`~YKErAva^Yr)dZaC#nG zSJcqiFo|1E0#kcvW)5)6EE4ul$d8AR7xV|;NVhI#@21oJHvVNAWBK*sdAHFZ9#Dlk zizS;vX8E4PV!r&B1NSwZe|7WnESCdh^z`*66Lt ziMl$oOz^|%DQ{Q}PlW-WijmidNzR!g$NBY4&KccSV;;E=;$=S1rN-~dvt=J0b;dOY zR0_Tse6Oav=gSqc{t8Wg1Yaz)*9%B%{^gj)eZ6jWdU5u!x#6&RR<)Myj1dgm+8~Ro zSHSILenC)BKKJt+Ga$OEmQEFGnR40>_ezI|=b#pfeWO8Oq3zV=>OmW~+%@!dv4`hT zAg^bQ;!)23S;hX|%D$a$o5`J%{!z{E+?9X*p8yKq-zUd>(^c(O_P;&nwNMKm|CJSK z70fbX`vFT0$VXwO?;#w)h4h$+y`8!25rj~2X>PeGK`?OdzoLT!cjZTm3zQm&gif&x zVPk2z&{Z)o<`ESv0*V*J$rnOKm)ju$i5_gBE0W|f%o%8;hcPNW`6&D><9Ykk28Xm; z2U1&V*jvleTg#aO?CEJb)v`6KL^{b=y3VP(HnQ?dixQho!Dh|+jT>fq_VYDAPL{He zCe&An#xbs}ovF^kJz$tw2Z5G{L=cO0VpX2!Nd3dI#so#dSz?nKKZ z-ap&TZkS`^Y#Vvd(x!|53pbDxM`j?Bz*x9?q!JP;l;|KyyNIB0BeNTdy3$XRnMY%) zCaQV=Y^L7)BFSzC!F9unG7Ka97&(C`^(BXkdjk_&jchGF!j9+J`f$;K&HR^>+{40X zC~9OTC8N0FDAf2bUJ zq$ql*W`4Rp%$@1BW1UDB5~FhyGtP5Tl9BhPyf)}=;5A2nz#1vBn_9!$dc#w&2NJ-V zzKB}%e18)n9%WKNfi3WqMByNs*#IZ=0Av09-hT%LdLPtYFO=@tQDcG~Boes>+v9*p zCt=pc*26(e3CrL2{&&vY_O*?J2bX#*RO?K5t06x4S?mI%)B$0(7K#E1@a!Ru!ivBR z`4>uD%p1tPQ^6fRyG!gaO=98aVKl8MWr{6@38`csUga)y?oAxZTfh)5!~oNuBU#WZ zQdlQqY(Gr787tierPu~1z6C*cIa0!onh{y&VCV!zxa;W$pA5v?uhH(_Jk;gtn_cH^N4lJ$< zZ{nBULY1z8$Se{q1K3#viF;@z4lz_8lxkx40>u`8c3#Aa&FFo|;IS;S3@{~Ol=u^j zuUTUs1|I_^_(@Pq#h9F&@kZaBo1DHjr*(-Pk+a=2MInVz-9+qc^>XdDA#g`E=svsR%LKAcZ z`q(PgKKJPF$-F(v?K>BsJtO1Q}vbyuQ)lBT@VV&opdb*?Zz>62elz=L{}xHO2px2&E$ z=6ihVUab8W^NcV26>^?=Tn{JiGV0LGH|PLGW%|`|9R7s1ZY7_JgSEozm7OF0MXxbe zE2}fc`gxSozL|WT0?!jiW6q37T6rB!9IlSOw^6Uh*H6#Q%IgHv-0BGy9*DApW z4f;oQ`p0Y+|BJ6&J8LbcItaD8hh@gcC3@a0fo~l2+*ukgx~Z@0o6W+nx*Ijn*%wvs zuGYbfU|Jt^vi=8y2A;3>&$^|bSN;<(y$3VB*PlMu`#Q2EROYk@{OzmCM`PQ*|3s>& zx;1(DPdeug#{Nu!a^Dzsk$>`n?6F@ysROBev2^(ze_meix29St8V!QwUeC|-k%&ur z56Fvq8(}!|M{+xDBpny+Xvh6zxoRgVxf`~%4<^S>X;eAfn2MQ5 zI*PdWR*D_xn2L;;2VPF?Lpx)!Yfg$E54L)B43GOxmVs19_}sbdIL*1q6GOS#C^!5G zrDfiUV1b?ka?%gvaDZEK2zU_r`!=dC-#}6uYyj0ih;TmXh=^Nq4%B0~w?B@GD_>0b z&pZ9c{m+-%kt95V*jzQNeGe6z1uv%qpH8ZU1s6r0Qw1*-W#D7+)kj?}H8;Lu;b0M8 zKLxoLIJd`85^t}YCn_4@!I*UScoKZ@5}KV%B~=i56BVbGEdO)&RT$M-<7O_sBLD6F z-VlT$WnCU<-^@6a$_jNB4GQc^dU9v)>mA;F)~u-cm?TGkir+)E<$FlZcK6v_Nx8wM zpCO|{fwgCmLiq{#0m-kzMMdghb7#IklooX%Nk07ypwHW5H7GabJRV92=_uc)6jLE! zufWXK@~7`%;oHF{|FB}cVTt4!B9@EDaK_y$Ol~d5;B#(;NczaF^3=8S(k$>bF!$Il zeE(~qZKcZi<3xZ1TQh61>VB1uVWe4g^{ni-rY=$*5Bo%!v&LzornT!;m0TUj#NJuG zS2v_C`5cPGH2ar-a$qM`-U=b1>N^@KCt@l=$e(XQJR-Bh-ietB)x08Se08&@sW;m1MB3el*uI(m(@t@OV6%i#-CDKsTv_OS4yqT z%nBNWidV%)KQ)^K6?R(z|vW+`O$(7@Ir3`2niJK$BmB|!0GmO91|M}VC5P0;gi^MDzDV_S0pFdzl% z`bABLo2?A6C9i+q6^f_FuH23r-zHMMMf<(;RdW|tKMfJlm~buoZ{=*(@e!r`3-NVE z9A}ktJvIQvCLufq_)SC%;Juhbxv~?vBNPZ^#;~d4%b44wyJP`U&T6NK8LXn@Gf9?> zCe!Sq^+IOT2x=hwEi?{$Wn%4p*2DcuDv^FwxMfpt5cn*(D)Y>);w%?}%ND-qT}Z#5 zi0R}`1;}HLKJta$I?8;jKYwT^@>;Mf;GKYmJ)J50ZGJfnRA)0! zWJ3qelM>R-a!0$oYa9S`J@-SL>ZQ2IpEbP!iFz^CFmbua?g0HM1!SCYKR5 z;dy~#^`34zr*t;H$MqEtQA zi8}buG}GG&kyKfLg7fdSlP=YaVn+B^vsBuhIdWRDsO(GA^~~;P=leGBvj2sF zvfueUZ|0MuozEC49J+_}p~^j{Hb-0COv@c@>n*3WTQ>}D3hI0+>YUnpeJu08^jco4 zCybz8zT=-nT8=HX-xe5=TIvwl+laog*LCnBHnq9-TxN_SqM9D`Z=_4 z2JArXKZ!mC!WvSuPasIGdt{$sjNL+9`vh!Ejb>!UIde!jaf(NF1+wN*pY zEG0->i1||vmj z|3qf+)G7ba8P%9RoL!8XogR}VJysS+sYVz{w*uV?)n7vrQMgG%fZfN;sZkVG$&r6G43j7`hcM!m3}lqH(>##^iW(3G&PflKDBy6cUAX z1=}h9vFCPtY_*=5=HjV@M7p4=Q)^hOQR4N(laEnLspQd-xm^{hhRiNsn zaLCjJuVOefVrb<5Qo&<8Q>5;^ji7?p{(+IWL@96GUEUJ5t(I)T7rC%6X|*r8Ka4He zS>2PMZZ9aoosr*8YW2(@;luk?!u|X7QBu?30Xc3R4Wj3e1&~V zwe+`KV+bHu*FYeE9R&Mil}o0(-5Ig^#>Sw z_|R)#5_-XMV)Cdn{$8M!W1sBcv*PMN4``WeZDG9c8WGvrHe8+a(up{wi)J|99xHfCKND zNs~^&T3Qjr-2u!U%`*n&IXx+!oO`BT)97A{5$o+oV^wTGid>=QXx#LdtNTkRhZWz%+Y2TCE zL67B>H=L<=1=T+8AYh@d&XCU?@yyG%--iAKi7^Qes&WsiPQ#M3!7qlW z{bfSmHo37S0UkovQkpF|=)sQYUz z6dc%{t?|joQ+J?BY{g~3uutqD=@7*q+_?#3P+`rW2itm-H&Bv&u(Iz6BHD4tLE#wq zBH5I;);lZN?-2ueXye~TG9N{(QB@{(aN1!|!fJ@m6eD*50X)<)pQ>GUyj-8m#jJ$Z zThaTk;wOW^YI#5@Q}zX#=!1C5@ZUN!97-!X^V29QSs5xhZ8nJ=qXgR#;=HD_(#3P- zZWpB~g5NY@x2~6ry_ZOWl^@_$jcS5Qz~iae2X47(@OPn}nr*}L2~I?G(?^WM`&?$E zHP=m!3!wtj@;@7?<8BVRO z7Jsx~CyF`!n&~Z6dQ%m;GBM97Y*@GGLO^`rXYps%e5>4Sa;muo?fqsFjrIT4?2~i; z!s>iEVRDp*#t3%&#M)H7`x*}WF+wd5 zn@^0YAHK&qV&X!al(~0Z6S443OAjW>k0!%|6JtKM2vOBCN$;>Yo~J5#+Il!z;(xe0 zr|!(cEepp^#i;O$Dz%*@ShgY%7ru@ma}9HCQA4aX4MnhNljZO>K5agW)0P|D9Oct zEodRnMd{1z^~>l}j?~|2iS*+WIK+B3!=&0kL&?`5>;id9fI@C4b;R_aD*2{gGTvn5 z9%>FxULrD(P|FZwX2FQx;d@H`C##|1Yk_HVS(u{)SoCaZCpjWFvgkO(CW2{bT%t*( zYVEL-FcCzM04V-Cx9yY0$&plFJ_D9qg^&GUpcr6^6nw*(fWKjVb)B1o-zi-!UNIEb z?=IW19ofg-rhcuYU{G|e|JJxAwAQGr%w3;lTt%S~32a{I0ucgH_MnmT!9x17Fr~UW zEUry!vOkML5w3ad6rC5!n^bBR%knXld-gS!owE~}U-niuyeS>yzqeAb)2_)jww+&= ziX?qq%+e`dtS=XPSVq>*)I<}Z(G76qGi)u&I+qIByK-v4vmVve)`kx?^Af+L_#bz@t4=oI}&qZQ$8PSoja42>mU_TgDJzr$6;lM zhmH0G?S#KV#5)KVYH+6B9JbUFh=Hg= z`!DfgUmS&IxGLRv>R9l})gq%TfF^ADj~u%IGd60Vei+EQe!XXSLMH!W8nqV(LrgRKu+IEPTfJ`0BIollfwm})%?W80$MF+9?0O> z5&I(p<^_-@Zisi=l@?{yJivmGLyUs_OZ~;8dV>=1UFblO(c}^LdR!QNfW$%gt8;oc zg`*(ks?E6zy{G-AcL!)Tmr1b#0Or?V0?#zUu<5^F2fQxLBI6F<&Uip&!pX6LDo8 zJkUO;pMpAaBB)|Z{Y{_Z(WphgH~YltEGTmrC&_+754Za0?XnY9yq$;BcrLn;&XZ!& zs>Nx<3di|CgtzIZ&1|(8ovePWFI~o2=N!$C(qq!N>#kG9TfLw=KS_I;l4b-gWicRU zs66L2bDryoUgnhkS4jpnhsdAj8F$s-5Bro0^^T+cq57ikHQEAcU+$Av4)=@k!8+P` z(ysL~B424|8sOcnb;w*x_fAjuPVZZt=e?KsqEPK|6uymXbvHYUTmI#KHUJQ}E?%~V z2T&{jbAO=W{qr{sBGVcNuZNL->F&MU{Biu$bYQQ{dr94ste|y{XgWqn2M+@N7uUv7 z)&}ne2k#sY@4_#w@6mH0(qqvW>L}pZ9&h_bPyI$m`^JHFN4?7Z4j?ZKziW^iZJ=)0 zUf)t6y8Sue5dymeUj|mNDX75O5B;qu@(wXb8qnWQhR24SW}9 z5P~;MJ7q5qOPDgq_(#dHZlas0YAFY7s(Z5L7XgjFXfH2(XkL;1D0@s4gQ>#Shxmkh zAVd2b6lFRoH=O=|CRd0s{s-H}mQ;zIHt*8$jX{>m2gfG1k6oZn z+48vwV7Babv|Tw_ayx|wR^uotLYlY~LRPjZ`9w@#DNej-)9IusFRt{9lA^{5l>Y@q zxsI_UK;ddML6NBT;snls4gmD~b@!xFS#6<5Zv{xn$0`|UaJlHW(x{h%k%v7P07&Rb z1(|@0cbb=$F^F$Uak^OinB8Y z*#kBVbUb)aYo(1BTNR00{X?EYn zBi~q;E{=junLo)w07pVPaQ&4`JtKWE8dgjNOgPGzLG)@6G;lxYycq#sI(jgWi}?=} zHTlsEGgL+x6=aZNa1xjTK!6z{J+eFw9Jv}e<*$JFz}^crR8|OWWRRjDfLY%b26&+! z6g|#ZSifAL9@7rLM)Z-ez-nIZ926NV@>Hx}1L$9{tr$J=u^FRPjaI5Z;)tP$RU&b| zQp6C%^&o$ZXXS=CTEXNZ#cJIlMcR-GHlvV(N$vXyKIm#GDEhjQ)Z2iS@G=%U;paL* zw;CXq+F@Oo@SMF6F1Q#D8BpDk(tY3q-f*KklG0~W6lOvvvBYR`#z%1{^EapgvZx7v z#ERzK#+-Eegy_u^1~UujO`%8_!S-nwb^(!_sR;wvXh)w2>vtnW2ag)2`SJqRTwTGX)QH386W@Asr!SZE0CB(cf#iDT6 zLp{G^pILjU%4adUuAKQa1={gYk?GLhzSodB%{x@6XVAY(8YCA)bl~f+P_(nTf)6rx>qf<+njYkBfT$a zL*Xcr2)^og->aP8$9C5*ouE&yniwJ)7$F(Qq3Oq>8a%NslL+{4 zJ6VhKpXQauJ`)+I7*{S-AR%;fx9+XxK9$zDHpl&T`yV&kf?tNX_q~?|){zCGz>z>W zdiJ%B=7rAorHB9hh?fHe<_~&^q`GT@{R7HLBg#OkNgAURKOqwlm$=3qF<0K34U< zHpxCV%~Xxb6RhSbnoajrG1E=u&ya~Vluk8VcgHkCjLgS%K`ecQ(Fe!dGJRj^emsr8 z&$U7wf(E$H=W*!G7wu0cJ#SMY(0WFHWtlEzO3-q*v$nual?m3DC!`vae>l)dH&E-M zri_PAC0G-lyC#jaAQjyPC*wo|kC8orDiSJ^$+vp>nz;ZdIH6LWh`1&ZvM`beMD8Zd zMP`3#=(|bSTR|9d>olf`!%UJ#DQIgMS>iD{R~TwF!xB@V zInN3=A<3)9+po@tybKR`EYy5v&!kXPW&zh+6J^|qI%{%TE?SF^utP4{me`gYk4IZs zu?VEy8y2q>f)72zYrG#OZHfUm7ya>uGwQ%$8~C~Gy#4nedhWn8`D9E!(j4RVBIkQ?O zWU5#}*n+>pmiixdbVI!HwS@6_z4koLWq5`*Yx^Ia?J`)Gi$s^fvuZ~<-hTTrpN-UZbskc{R zUx^Vp<&(0FXFr{9LA8W*zB?Yxck!!VPXLafvY(veKDgLC9a-_?opq(3GZiQ}i<0a`do-zZwRnjuaU zYRD*psL6+}r-P3enU?>^L+C*;0D4!f6Q7F|E(AePZXo_Z%*q~0?F}UXH#|?I52$Ug zN;rHekGxM#f-dZL@(2Prips@d&>u0C64V+gy{dq5qQBgp3Laq>B2LxD+^tryQ|%B2 z5z;(<{rEt66?^uFntIjNW|!^6`y!>>zpBGQRj-1UiFYk{b5#yNH3h{Jnt1sP$! zl1{dge09v*dwRUe%N(Bk4D-ic#AGwdVGXf$=X%u9DPPs0p)Z=ywBC2PB`8?+iL zf!cq^j5@6rc3C8Ro6u=1{iZox>^Wy%j%s&=86wHL3XpTqpyDPGyo z$4=Xn*>_c3!C1Mtbr{Vd-OTZ!)jX@v#H)Je@Od~Nj6W>X?UurOlmSb>xSfK+y4Lbq z>4Li8I{CWW33`U_4K$S8H%+<5zm<7xbG5kT(Sxdz?A>)bo>N=iQ=9HrTi!PI_2^{u z6hU!4fopAbw68SmTUW32v@f)`Z#33#G_-HE_9^_l zH#^=Fd*2f)dHxvD-ys6L(f(?thG+hs{`Pty&H0M;Lb>e`zx+Oy?IHjDFdg=7J(~Od zp7XJvG0k-OTvW1jIUXFtp zDYnSpteLC2SL3W8awTzZdq?%&^5__^0s?v7;*w%_B(Pw&;Pvhqv~7r~w5QvB5=i&eT>Wq$MuQu1GFxunu3h&#nm+sbYXs3A= zUA>H!_kgv!bqp;p!rpJf&_LiHa)Ak00y4Cx6? z+?9w&Gex!qtZ1spfi^?MUzbx?qskv+4mm}wGRIJ{`tFzDcMyfSAOg;YzpKHD4IF7$ ztL0kjX5jSM2@E#z>dhqE-E&mx=}XvPWVYjEpR3)4O(FK@R1Fwa2^CfK$?U-`8YjRo z#$D>~KI~uh%O09mKct7E)V$=Gcsz||^u_YX{Flx++^-fk|BU(|lvHRe{8W!(&qXg* z-VH>c9Iie}MCJFrO3Ln6{ZSVENuj7;+@Y!_%|CgX;USc504>`!Hw1Nnr$1nkh}86! zjf*8MNk_v~-kOVXJqQ)lzLM(Oy;(au~1QV~=JRZ2Y?iPsmUh_zTO*!+r62 zV|KQ0Yuc^FUC-vE*BNE_NuGu4UmQ|&7+i7yX5iRg*T%2r#n#LQqKX*~GDo0~hKe6S z4ACDEpm%^s#tb3|FIqRCpTEdvgPQO=5T!=Yp#U(kIMNAp(~XY;3zB=lCnt`Yi3SSp zz)JwMhpQ1IkSqe)A{g=cH_Ts7gDnC%iX@Z-)*xuU?tspoEa_B`IM8Ce&jf3@CAI~^IA`L)qI+9q1d?m<7ANvMmDY_gfrldLLw+m=jq*z_A}0)0_GM30ViYC* zBV6lNi~L=&z}KXnr$Iv}nO&zt>w283#uCT2eA9MJ+jgvyw(=jwpHIq$(<1p#feKF> z1)e7C?6b#M_@fewp-d58BKpZOrN1zTi3*J5$8eDnwn=eO1kgi1h##?tCU*IdBir_= z9{@KWAU0m0w0%fQxWJ>gzDN*25S^JmROO21DzrEZ1XAGc15~SrD+M!1UrdmrVeW@> zSv?yn30XLDr)nqqWTY732c|3nL{bPpj0$nXXJ38T0qE!ok&+7~;cz>|)hY-Z@xMAG zrP%T33*kg-(N-4z4Nm!|N6a7R%n)`gEA=W|*8W-u%O{|GiC)& zJzN)R?b~06KJVN2zA`@UD^HI;pLbmalFu9%*Dci1%(O90w6V>!+m~9Y9Q3>%PCgeS z{buVQo7Jx!n>vuKut8r>Lmk|(1zGn9F<+k%xt7pupoQPNCbkdwUmasJV&`*m>w9!| zY6wQ&fCpN57Ec67EOZF$WQdI9H|!qRURU538lY|PoerRnP#8Z}FfbA%!Q2-=;<+&) z3Cy3vc-rtF20?u$UOE!Cv?GM#canHe6d>+gNPaecvPTQ6M;9qhs!J%AYbK6E%s(wC zf9;VoHlxRQk`(O7owqLq&gin(MFx4P@}!_nP+&$Y!(PNlUgn8?_R%}b7J4k>d`jni z*h)P$Z9nZ+>SrpyyjJe&#NX?59#3me6)SAIhq$&Y)gb10bAcb%Vj-LGxz7*|&oF2v z9jVXTLhjWDQ*+Uyj*d5^Mma#o&7x(?R_dqGLZ1fnac0$~i!XkpfM_-s*1jj$0q1l* z&Low!>^~PHNy`2!N0-5GxTvGDU|S(Lk0#}~)RmKSnz>fWT(dz*H+yrVyJd+`IP`FT zn_%MWK!Vl%rF8wpA4Ta|4l0lcDHZ;#2#o6ZZ(#UQL-i$o3F!^(nIj1Y_q~D>yd-1= zaSY7vOM@zdLr{MC6%;NdUb)D(SE)ZyxJ>eUlmMGkQL@jdIJRwiRI502Qf=$R)RY-4 zayniXUoa5;BU#m^*rZklC@IuR!K9cmN&fco<+Jx3>&@GPZ`tk{riF(n81kPDq~( z20vZ{CwM@#SYb*3#FD|xo?KX8%mK9=fT_3xsUJjGst?dX6+(qJtmdyP$jx6QQ(+52 z&V&jY?^Fgj07c;?3~u=yhyp<)ONIN{^(ROW0umPKM4(b}fJj4u*Nx`J4)T*mqjJHn z6?PWsTu_6sA@(3hOAQI;Zou5Blp4^qvA~Z){?rG^Ieoif?PT(c=Pv>lEyCC!NFsnE z3liYhHS_4zaoNGscT*7810nCVeBVHXaz;x$gH-v~k5JIy ziJ5Pr)a?wq(hRL!2Wq$tW-USF)*OJ7f!JJSwk&J5&yi{@t+2{c>5kh;!CpW}E{PPn zU@L_d!td@cUL>!^f59UHG*(Zt-#Ei0Z=QZ(m9=u6S?Mf`?bh&a-GG+-F470cVK+jA zXKx}xi|}XoG>fjRQQ%at!FiJTn*HU;L}W9d*Jhq8!Fw?G(DB$ZcHwOt!XMk!qp*Bk zyXBDlxR&U8apsd@vSQwT`Qtg9y^S-uX1;YZd|J0Owe)vb?Z~uMFPHb6CT=oecb)^| z6l0rwDo5VtuYP1~xs8&wnK5WHoK9Q9^_UO#U=w3FuZ>$A3U|FlX*lzf@|MhHCW+I8 z4V47X?St&nHy1{ZUKZASV0Qj0&kY=5qg9k%pwP**^XcsN)zAGp@0zMXA?=pQ`C@Rs z8-KX1`78RBe(}a(@8o{>!hm>t?Ml0OeZvCL?d$NWvwrtEb?C`G{v1Oa4N}()JMz{$ zHMfc03yco@8}n2R2u!ci*uK-#2Q$t;M)+FK_jqno#rD~+!y5KE1{CDxdF4AkI4^l9 z{wO&9X~ zvg5?NX-~WAOgroDQ-3~mU@5lhPS$z}Ve-v&att99KIaVWUOMFU&%RfvefR1|+2U83 z{QYg*m3H)9m+0GAwKq7FUjX|sW$J<46}r(DU&%MznAK)vg?6lcmB5? z(nE-mf@;hK)T|wc=xns1^ZtnR@BBM%t;;u%({!yxym~z%`HsjV@f2l)!C#m|Kxl09 z3l~l5jm+waa!TF2gq(<3UC2r8$k~S}*+@Z0R@BW!mR95%TPhCxVj5!-QZ9BdoPRR9 zl2wo;NkUN~h(;cygPV%0_o)Z6t)gvon@FZ9{K>5zKo2K=v6dADG;T*YYusBerpG*u zZDSJ;mzysh4&Hr|gyIG>zj>oe7E4CbkrQa>ceWa3M74+lf+aMahR@s|dl=445Emfn z=A^O@RFg}j=QO%yW4CK%A@f)r&d%xUS)4|}BP^bBk6ss(m%UX*E#1d1p*+Bv0ffPg z9900g6#U?Ecrj`iY06&%Xu$>H@u!J)aO4z8oqw_r0|4%jU-pG^RGe6n&_Is;`uR;z zGEgup@zv7%LV;!kW&)^xOu?b>{fb2aYDkE?8b44#i3lP3Pn6$CqXAHKtT-~aplH<~ zyPwafkiBA*e^0(fE1@uX(J!gNP~lC2`GR+$18R*PMS?82l`!G=g9617}69`|Di(qaZjR6GPE{O?ZW-#9x#}+Lyc9-B=!2LjN?_LNJkpW z31gEL-s3eY=QVNwT=6nmd^2fepGW&*!No4l4NL4h7JZ~ieD+(pDK~w$RqREt-}Nhg z75{rY;u~6DD{q0U*uHY@W|w=MGxyP#@2XYLNqh9glBUIJ9{#gv*mW4L@+nlEm1J&8 zGWNqJ(jxWFMcmj6tF%nG`=-ph>3QD!!Us3;~ZP`FMm?;ObW2&{tdW3QeF#YZ2xn#mZKJ9Vm|0>xz}<^lxm5 z_S_Rqu=`s9JgJG7TM_ZYf7Y7|!-#t4#7ckuER4(mU1(M-8TJAiY}?XovzoNZ=1tlb zncqT=@63v5OYc}7J+)4SQmiNPzcd#DRSs`_2E>Zabdr2l%C2hUo>MH}#v22T|M9mt z*KW*S%WpfVLs0z~7Qb?rt=mt561s|(ZSZQ@A+?S;(SHbmPV*+MhRmDIW#4!&EuOl+ z64N}S%PmDFohzO~)IHa$yY}Ta>C=EUTPs<07)xu^#%WR;Q=}rsMOKx&&MKws)eT$C zt<8FJ5`z3 z7w(RK8v05*0iWWFeMs(e>*7CsFt5HkpRJ_a#?T^kN&EI}SZiWg>UJ;JJGFSe+Pu$k z17=*^G(lonCP718JCcVr{4e*q3L?M1$2L2-BV9E+qkHjy7-kySAhhP&nAY}_{5?t0 zyAHiMFhtsU5nO2=nrPsbsNql_-y^-LBSA0yAgJIPsh(75Hh=Ur z?eG6Hmj5${|8Tj(D)xZM_z^AS48-*q+|g1yDg3d1nGEJ)Zk6GZol%fc14%)H#|zRi z`9g8R6~hOrSP3=}?{O&J$p9E-_UdEw?qhNt+WAjO>D*PHci$tS1fABjAr5)|GLYm> zL7mKd94ZE0lnH8SbY)p6yW^<^D>VO@0S9DG*f|5*~jPFg54cQf$H?m9OYLt4yyJ$SY4M-eIT zbC{pad~%kfaNbgcA9CPaSj*8MjGK0+0#^dcZ$6rUKRBkG5s9jKyS8aG3egFnzQ<>; zt!6_KvOg%^NC(0B4?B|lyy142eAPd-5-ltdf3}RWmYqOsN+yIz(NZ`}avAMfGx%pD zH-#)#2(Z6M)!O1f_QcJqOV|04U^G-*^Y^P^Nf!(%CVtzHi&;wLXa@JQ0p{grPa=eiX$*0zI3^3@ZWR(3_WA-_JqyJL@ zfccA&l#ZV~6)9a1ly@gc$9FXxniok#cd(M!FUCZG>HiF>2x>R9Tbs`(ClB}QIz{aD z8Bc{Rq6LCVGuBAd&z-+2fffsT;9@Y#l;JvfCWJj4R$-ASCj|PCl*6ZE8X-<6#n@y z>H`xnzit}=h}3l5OfZCz;tE3nZh50)O=SE=o$lO1s0m`QASo|HtvXWw>`b1- zOqMX?Ins3L#EGYnZ|9w^P{Zj1Nx6wAPH# zdMYd3)a9Rw%b%=`S2HY@GXf85%He7d+_qF#bXzHP(=Tc+V|X_YY0Jm5+a?@cj!`mR z%QRlacHJsjxD+bzPajYyrs9;|EP=D14F#SMpkFDGBfqi$n((yiA>_~@hv0sWs(yEZ zac#VRj$er)h-TY-YCHAV2%!2R#EFCo)ax*JIdFKfrlN(zmU@Ti>3rZaf5(ZzOCgH% z8QF_%qNmcKPu@rpSApFJAiwwnu3|@%*;e?~RAhlWa3$-i13O%clrF}cu6i4d<}CK~ z7Xh8#*fJ=fb(Mi>`+QSBQ#twzfmw(lXF4vb?PhXOR zTkSXhdEcnRx=@kjnp9dfy|l`zXc9>v!);tVuUzqkGZsYF*lb{Vyu`d+k$I`YtZG${ zV$oI8DJ0iF0t5i`kw3$tb&GlK#_BP!SFclt)G_WREvU`HuQlgS8qFHb#pA{Y^+(WO zL$$CkVvghG?PpBePFOaW@GVtqnlg`<44=vkXUXe!o5fugOxyV}TKD{k^~vJ;9Qug`ou5C@{)B|wBSE;i?hbt-TfU}0V-CZs zhw28lybuasJ*^{MV}T@ga8L0qwedLX!Eit%?0QV?KN6n{I=CgDf!dQh3%>j)nA|`0 zE5|)Q!(119?F$XfTaA5c-SrEdeOjICdVK6ljrDhKO1?r~`-)%r^?Gbxr}Borj$U`K zg4ZE2Y=4w-_2>Wpe2-8j0Gm~~{0$@^?s-Y@b92z+V#E|c0G|KgJK&=;Olnc3B*zqr znIsM+cqIrgUgQHAVCMS~!ozy5#yK*Qy&0&V#Z34ysLqL5j>oz;zCJdP{v6|FJ;m{R zk&&e#JK$Ts`kF1uRwkqvCoI#vo`0qo5}l_ zEqR&M`&h_LwP^4(mGU&5@iK?;DwS=y3Dt1*FSpN`Qmhf-*+(QWCjNCq3FZbKV!o6r zTMern1mMuuj^)rTYSvD2&i^7oZy|(PcPy+*n*#+Ha3-u}5wHOrTC)5N%D8XDhArZ} zz0;;TEGB%65r7Q1mO?rq0J(ajGQfL_wKZgAC5*R6vC&Ww41H>QY7e9~}+(&0X zoKFYD4;vH*!bhSn{*m=sf4MT}Y+e~Bq;G~ygcI-_i24FNiYEY^NryZZ9S~Na_khS| z4jzS^H~}R*1Cl^2Fa7|4vPG+RLrcYidumRD4VVi=ng9aW1W0z(K=E;XgUN$IjihhP z7}-13d%?$`K^unpxgp7k$T6^@5^F@p{o{MxmD7h)s>Py;@Q)xO$h&71UK=WQ_AdMEpGM^SE&UG9vX?r0Bh1x-kT z7TuMS#2dhTY-95D8C4nT9;_(z1{cjJTp|n7mLudjxFdy_I?uEQ7tB3?!9#&G!LS;e z8lY}-s#SIoFT_ZhFb&1zn;2$#aHn3hE1ULFruMl}=xfv1$&jJzZZ$ow<;yYt^|Q<} zrRt4Bu-kpL0x~AJw-kqS=;D&|WUJBu%v_XRAI!>a=H0cm0ujnlty* zIC8(JpG?DzMOzzoxXe`IFkO&3lR{7q;IG>uV+zI%`va+WQ^Cilzi*c5FX2~=q-RSgWaF{u>bIYx+Z zukFHYmbxnY`K*-V+?u^rNG;=*^Jmm;0~7n$Qf~85)-G<hBJo^-xfo2 zYH(wPPaoEUKZ-+Dja@E+g1 zfi7ch!^U>&!uCts^NoY;rh)C__XjWSSKoK%JMUdIwU;8pNygx}bg}LW>HYUXhG!3w zpYKY4mM*6^yF=+l$~~@gw-)=-#rPr$_5Yg7PsT5E_PQc8xcA04{qnjYU!$zebS|$! zv0T%UUMn)(oNl7iV7irlMZ3=f}ez=Xzz+dN^Zd0tW#)*Fr#Q!B-5IA?0M^(7`-HDaD_gTH&UBBOWTb~i|wAhZuR|5~bTfw+=DT)Mi z?K<|oUyCC!oW@;r`FO3tUvvk1jerFBkm>2dYZ?5Zg1*q84*)xKX?Rei)e)qxePT#A zdq7b1P~z%Iz3>|qn$c`=adU~8YvJP@e?!073vQe={)I1eUL|%a%1x{;e5|hugDTB= zv)un|MUw@x(5sFTyNXpGX~J*$V-NqTd^>bMpK8y&3!c0SKC~;|6n}Q4t|P&WkA3~m zP>;vsU(drLfaeUJCQIHXPM(%C9=t@~(#6gSq;C6qopdzclT^o#J!pw3KK`xf#KxR` z`_SfG%00Oy%tC6AiwNO`3vtd?M_oYy7g3m^4zU9ot(mI($%#F#D$nzHh^X$LmF!2P=sk>Aw5MOzv55qEPN>9Q!mS8 zfgG}fYLbJR!Qzjw5rh#y)f9oq5&ixh@w)Jsw!|b&Hj3_+qVpz@zUIxMNx{bcl zA48(hmUzYb=t}8Xm78=+;~td;8Ma8vGt|w;J4eWuVT;vG<;r#qd0FAnJPL~}?iz_? zD^pwaNMuxIr{S`8Z0?99h}72$n}1FO`^}|CB9FI6IN~yhnV6DvB`NLtjRg~Tig2sK zzpX$1o%%<1JrR4U5H|xLEQRGs&Kc_a?bU&AI%^;H!k7fqUVo|I3?+oY?$e<_*!x4eTzMr=OzPI=x_I!wg@PTQx z0|CJ#@&UVGzL?B(**M7nZBUcY0I@tjc|Kr$0658<;7p<(F*{v2S}N3mn~N9&F9cz1 zaB_%1TSeW^QG^G46n0!MoD6z(2>k${5>RVJB-MyT9RcRp-+Kp-`N$E+!IFj#p)NDr{@#hdDJ1<_RA(Gj%sa(>8;VD30){o`^4=1R&J+qXNMP)EvN z3M;pOhWW(8;f4wD9590nO(}{OJO`Mom>)ApF*>q0W&@Ba2#1a zhCy=-Te2^m_SrP>FqY@L@6c(V(p6*EQw=oLs_ULPebEd4uSNOrno^5)qZ$M4O7-fq zW{k>Lg~PO}nZ3eVrO=BCl~={wMCwR9>m*xYVSJapfbW&}A4WCEPv27ovFHbnHVy;r zSf2&@1qc!9X3!f5=sPmj3{Y~4qs zL5{G^Reo1%;1seWE;fAUOa9jD^u^L-^B$#^D3vDI{jFG|F#anp#VVx76@-Y1%5)BZ z#Ix9Wn-$l8JFUJuy+*^kWftp#s)vo*T<7xJw9jxOY6BcDJ@edp%CV`1fiwel!S=0V zTng1#PU)c)je>`7c@B@c!%P?T4;k<+Qfr(L);XIirmT;e%q_S}JfYRgHm%l85A74G zm2Vj?``0e#){))I#pjgsn+_+onns{3XuZ~;(+x_6Cke_N=E$jmHiNdl~YM+>{*E(P>Fx)5Ls6kUsaen@%k!4Pp+$xJ*QGPWO!` zWF5-zWhtcW9T=P6aI&#UKV}K{wr&sG((AI(yRM>W&(!CK^V{)ZcudXw@Q*|B#j#cQ zk!$}Gs(r>z5l#P*u#!d6yZ*jhvruiGtN+mdu(;1IXV0|>fP%iJXc1)GLqC2T=U9C8 z?(HjWcDv_q+Q<1$x(%4Z@1nl9p}h82dBC10=?4`Y6YWFGBtqlFGb_~tzRrnlI=lDHQ^_IETS(Ww~H=A$6(|?C=OM&D*k%6G{-$%EdU?4Coc;S;VP8cwh= zp5U>z*kn&I=`Z=TXSIiSuBAdhM#@~Cc*h)z;AyFZW4z0s%eoA~HP_H8TMg;!b*5{L z!Rrioe2qt2O;mgh&n=@5kIr&p2Hl7X|Kfwfna%@WXr=f!dayj|>;gDT})DUnPx z1yXT#!IzKi`a7Ayf{Yf!iv8MTu~u?qb)?Yhm1G}1MGJ2Mea_-m?ySXBiJA~P1U@ME zG?4vbE}7Pr+bRbCf)#-x(L+?Qq9mKKvO&u;Fz0k32YsQlZaF3rhOFOzMYI*gbW-Z3 zdAS)0Ie*9vIysipGpW6VPk#jT=~y=LrPcn9e?aRZX6vFh$2P>5$;_nk6)jd4v%IsD z1Q}7(t2IzpMuUR`r@gG;NKnP&s19xj$@_t4CmexBG&F5AI7eioKew42S8=S?&`3x} zw;ltP6f_t130kul<0|Bik$4I<3yc@FQ}(25W-wsM0GJGalMJi{3QifCo~jrUCUpf< zZ3!+6A3u|ERjGH@gPmL!*H=_I*FUbltT-7f=(BT#qGczbq-CQ;kO&oFfE7T^npvPm zU}g(I4aX7A4B9!_lVQyODX^s<8$ ztdH9tA#jtw(;rP{0BBsn*SHzbA-pLK@>7own`53ykQ0j6b&v;21$#Ltcay+O{YfOe z1e*JMzVw9`A&Cdv5X-{_?c-1Xl2vg_0rQg(NC1x?y%3|L1tEwEkP!I$iZogzFQ+e+ z;6$y~{fkQXuLwL?lE|NoeZW8IoBAxwaalcgHG$J|w7DuCU||Ha zA{4kSuq5uGy~&vuMx`~lBygi!ai3G7wuf+~JF)T%WiveSBH4p8Q;$i;tiAB9tEzj$ zrEa^G?B#{-%A3w=d+wU8@ACY&=<(P3iPtfGA7vX~ZS~jo_6z0cd*h`0;PJ<~OZP(> z-!9+p^R+Y8q$`Z3(5)qv?zL+V4I5trmWi~nb8Tkc@Y|O96k2uwh zJMTBi-5>94G|SC7lU?=uFat5U>PDrrw;5a`K67`?ze$LM!_`oGz4l4l?AXP~n5!Qh z{s@djt%X=s;O-%Q6wcR8oUQmpw2=bqHFAz)%T2HRaAyMeSt!kYEI-wr0$*jt^DzMl z&9%1>yPg~pcWl>T@`isuPLWf|68CN-ggYX`#yLlG_Iz&3UegwH@smZlrsN_bDa{W5~V6V~xh<@3gZh4R4tW zZlc8OgwdE=$ynIIVYf~fyq>gw>{8^H1b4D`Bm**wktkCLE$K&)8Oit$URi8!&POLH zY4hXrq}@`FAI#n#HKEqN(Jj7@G?(11PA!J+jr!)5xMKH_1=hVwnuGUS@kO4Z=vU6P zTqo*2Gi^>ahNoZjfM?J1psni{hwqn^j!VfckZ74iH z>E}i22VAvwN3*=|83Wx<0oolP>PYWUp6xPS9Ii$

G|)&r83-UTarkzAG|$T#*F3 zO!5DdLqMb3n!{N;kOWmy00_YodNKp3R3tF+r$9N?K@=6YpCqIzNnC&;nLgVZ0(2*0 ztvRlPFW1$M&PHBPB8!{{Bvl7W!eYe8RX|ae0GgKUcxN;z97^OBed)f|9#beCbuO>` zZBE+Dbo2&>&1;6ny2pKq$>zJs{JY6+=%2-R^wo@ke+ZBL2$OdR(rdBO<*zKa z!!qMu9cPXOuZ|601N^TUpZTnKx0*YWMhEN!?g{d2A|yJ~BU~^t)*InvQG!WBc^8&( zQ;(@*xTm2mCJOAQ(6PPh7CWzf`BTavTZ8oC=;#htDlz?n!< zcq^J1(@Qpua>hd=`elwZ?yWc(2vN|($+zQ4>PC|U>6h|D2>>DEgOG|Eip7&jpoZ)n zU#^qrMxqOsi1|TvV-ZC7)h-!?|7hr-1j0Ug9zdzM;i%R8_XT-{e2C<5A~AjO1G5Lp z;eMcE2D_Pdh|HJ*50Zrt?j10-{eMsV5jDu7@P6$N_W#^gWa`BkaBE;e9|i@2>xX|p z#m#8CLQ%v>?FILN&FYC0YaxQ}hLAw#^UXz*jdFw${+jv~NY~$+U>0X=TJFra&<$T6 zF6^jEQZImVLit?lyF&h=-(j_ABG|iBfASImA0FEB$Mq68Ya{z*{Haj)xnE|O$cE6) zyX-fS`f6ZW;qFC19oO3CUIIDAK2I8#aPek=BR(DYyi*JYi)R8+dI2n+W3X)S2dThN zrW^xhvTQh71H~gg@@kI7reeWUn#g0x=);z~LcmvPNFcke4N{FgOw;_5daLK9C-Z7h8>(e{4ad} zA<=>(ISGH#5i?psLjY->HYW-HdV{x z>Lvtr%h!z#q1J|N8sI+LmK#;APK-OllZRbVmz}(sFc8%iap~GW4!U}%rx@qe7 zPdY-@WvHJ2kX?^bDR8#|v~|PDvNjXpr_HO5>1!p&iCX1l#nMfumjARxyG^40{2#{3 zB}}%CM(s_m=GQ7|KY8np{JHnSrJSX51*u~5#d#GYvG0hOqQ$(O2p+CIH=N2020Kb8 z`D+MLyNkPp?_?ya)X=OnO0OPy{5R{z=QN43RC5L24F1~{lNke~%rBfP%^tXapQ&O* z<8cJV38@XL*+!Ib27;r?hk>Gx#Lq_@QVs9Sf<{kW>@qMw5xj zNjKE6jJ4Q-9VS0RGZqtu!$~~PJlus5}FkCiBG;w>+Z9o<~|7QwoCMY z1j3&qW_C8&o$Z!~%fo9~I%aluFOJp|GZ5sf{NBDMZUr4*qchfe0*p^zUGp5y1y>{O z(}d>SK!f8~$L6D>ke&=@`t2D6-@MaL$CiU5)rraWOM7!3ziivQoQk|0ix;kM*u3!b zZ7j7`!ny~);-#VWFb?pJ5+DG2Edlt1{trMMM653j)?39yM2V`80r6w7mkYo-bq4sF zq%1j5-Xz-J)sp>h+AsB zU3aogdAN=Ia1))$F7hP~J;mR;MBxIR@qAt*rUR+E0|`G=0l$>-qbANbQlYy8>Elsh zD~I4M4dkvBA=Lh3c;;i6k+jsFblH9&_DUp`QLjSb;+B!%m5NYxLkhBssymVpEkRWqWb!nMMx%5AXA)q4L1r=dA^ZjlIU zxtKNsWUvdG&fJrlQK~n*FqJZb<~Jm|rizGdIj#K#^VNy+g(b~dZ2^M1%3tk&#+!%u zn~z{Q6&J3iV0Il(CcXxy+lZUb;^O;$C$pvl$H6rp(OuST-4-^!TNZ|TxP8S^v^F#- zNcG93%`eedpsWNsnUagOQ!CZO;d_!HbHV+Z%FF-}1TjyDd^T7Hg}%|E-708NOXMmt zo>pjJi(np(B2tLO+{|WA zvBzWB(HhrlKI9E*XfIHawseUeQMxYe-Zm}aPTkRVA^L79^DTyhZL@2;#t+wq>Ax{O^hW8ZC^&k$OEb3Xo zzd&a1q3PIjWh02whEO!?2MalsQ2;V>lO^IP#{jemT1WsJPiEVWe1hVNS0WW&e+)n! z98~M~P6JVVE8HM6(UocMi+QQWX&VaD<({k>n=E8Nr#kW5SaJ;AB~!+J1QiKO*dAVBWg#B}YqaSv46iV3v-2 z9)px#=JrW_^)jxB9}CxacGqKvnXhVT`|kM4wZ)*dyp*kh6>-8e?A9n{*QohKx_h@! z!hLMNXXCg_*}7fVzGLy2^J-qdd?n|hjiUPR0>?tJ9G{Y!YhMwM-a*@r+`HXT@`zWz zAmw0{8RU^J)6@o(r0lKn*z0uA8l+*&Mi-GFUuiWADBF5)2%bvXYYPB59@0+ zwJNr(=2<-ou2ZrcU)fe4%xio+OV@WM7jgTW22VeI*7m)CD|db>4`(1tgdoqP0DthE z{|xpoMUY<*BHc{y4cLBLngF_}e#Zf&5<_ThDj!4KU@C+Fl`d>%ELjA=f=I$GcoS%V zL$%;y)i7HbO6YDeF|;Lk#?RQX?NE{{;e(vfGTr=!nwzeZJWmapE=J5xJ!+3q3<2j+ z1NE_O^{j1Is%ojHXhWe2%}-8cZzwSX zg+2!&%hKf~)rCd;z1sf{ z%v1CxM^LFV1!F`~!2?u+8ay2}h0r!SK((;L=%NBx2X;z!nbg5U@nMQWgi2&?5=(-e z0NMCKrI4i5e&1fzDqd(=7*N)rUen$920$HJ0P2v)!HuLPT_h$TSzLtukAok0`djVV z(Y!?y2ckYU0wxIZ-nFb6i7pVHF-lAl;2@8ziJEC=5W+@LpeutiP1Z&XL!qBM4GVD- z*s$t%wiczK8XV{Xk}*BXW=>W|&S307ZsEXg;)7tau6?})zY0!qL>KDvJKet|z^ggf zsj~dpjQC6(<_@v>9#Y36tFOzT-O{c({MESjX zQ9yY#7b{w!xwH&&g0*@#Mg8fojrY3hTSLL4YxP^q`b|&iqpeEO&nKX5h3ER*b4&Mw zt;|_xYHF+N<;p|MRVLrohkFb{t`ZKP4S z*qkPJKyP$k;~w+5hq4%+W=dc~&45F<9U%xBgqf4DAPGS7`)CIC2?Npz;SWPV$N{1+ zM){Bc_8}r1b&@bA8IF2zQj<(dbk$C@&3aU=R#<+~gLUPGO7;ECF=%sL^#N`VT&7k_ z_P_Pux#l4lpor(rR}P->^% z&5xZqF=;WUjb1~+a_(a#K+Tez3ij-3);#xa5SEiLBeHvP!))-bZJ(X&L#uQz02icTQ)tHZ_0gqu*0ZV55`t-O=1WJU`AdGe5?!EXSpHYjyl?#^(6;EgX-q>G_ zA(ud6KI6qZrt;TImM>K;TcnfMX-f7<#yE)m(;2sVtFU&YInvYR}As zDDjCn|NO3Lk6}QA>25bXd<4#aT}(B)w|utMf4s%qgm4$EgkhZe>0f4PrSGiY+!;N^ z-E|9;{q@(qzI35ieFCoXeV2@W*sMIU+HO;<`{mlayH(t*!_2HCEp5jx`f>gH>>By7 z?L50^+n*BOUtoAhf_${Ky%|H$>zU;3+?)8y{0?BcYPkk(ed2z-EdcLy*7CM}c7B39 z%h4Zx<$Rq?B*{qlU|Uw)nqEnUF-nZQ`Eb?Sj;2NE74_(H)~%&&lYEv8==iof9dC02 z?UNXRFunF(4sK8BjID7O_om+NNsM%OTbO?Gv5a`%PxhosnNGDUI4`+O#`Gq513$PM zGNwUHU5-^uUg$j;e(=L6GRB#-yLEA&7w_8uMn*=wyMv{n{T^N(_rWwECE~M_^!-jo=NQ1dA zS+Keeksx`yT|e;c0xqR#U?RTVK0IO@@Ne>7OuU^W^=$BWO{EQV)Az7ZoAh9D(HZzv z5<+Oz4`bSRl`?(-(cgcXaXNtrK$9YmLH^>}4ZnrP;=_?gkeC0~6LegC9wtEBud zSurA@b(m-h<~Y>!Uueo;tgI7Ka7U4%TYR5$+3p0YLz4p?J$zrJpkvWZG_HkS+bXU+uY9G903mw!wjI$&|n z(m&|mM_QLFJWW zjXZm(2sF?{^642%hkisAMUW>vlK>(K0*gZhwG15~0pdtvOu~lu$fAybVoo%z1}0oA zeUu2~5n|T}CN4m!9C$`ze59tL7Fi%VI2~dr8l;GaVSGcl&6{#L33lIibkKVPR{@b5 zRRdmt5hG;%Kz^bo=TFFC=*hx2^ZM=r0X7+cAT!wf1n9g+0kS-_A{I;vIX%2onpkgp zftC@Vjs=n|93mwQbYdXjTu{=~qlFEmP&1P@W@cI3^emNB)saaFJ{cDhT~vrYg6Rk+ zni^uR3rD>hv>GCy-H<3(LlG<>TFhGJi?;gxON;)C*4EI>0e%)8!ZJDxzDo45M$m4$ z|1xAx-iRrQtiS!+c&_~U!aF|1dsvcPDC0@4VOfRivW!4;gec*crRSD41=P}Z)F}5M zLl#Ju$&)7YuXK%5&6L3TFm^pq=|1_>f4^$sRiO@KL0{+~;Iw_{ zc6RPr(6pzFZF9-;Dudm8DfA9>nb_&G7Z!d3DY=!ia}Y@vC%GhMAiPj<5gL^oRW53# zpyXepvXhn)nUxVgd90`u9aT*K9LY_#2PjlP=?F>*%r7z2dC19>vYqxmqFDcymF+Hr zqE^E8--5&d1_;6SKJ43kn_47`LZ!!&=fAGkhE6A%e>~z9Rg*$145Tcy!)kP52&sN) z(2FhBOgS=yb*2rRYV>LgLOfJr+I_VK-pGwXODUQyNqgY7t>y-!L6Oo5Ge-|WtFgR< z%lewWe7G=B=Gd>X}E z`ZSx)oAMi&@|-c}RM+RZrcbwJo8y&^S*@4^oh2{0Y#ngw?DL<^%Pnh$QQ(>?v&J*GMmVy%FXLU>dX&gnULe?nsr-!J^cpqev0KVZtT50iTZ zQ(w?;GzAW|typkcG+fR7LCkClYkmde{?HGyYE|x(E7+!4iI$-mp(Wej8!vFWVUl1T zMzKX1RnVe)8qv)|TJZ#oGz1+ijkn=v$fa0)Ov*V~&FJ{+x0U#U!O&oue*ZN5Kf zejJfrD!iTXU)p*ARX*%0FE0XaO~XzMyRTyt+>`{lRRg!8gFpXo|Mh)$LP7_)fzQLy z;>jb0)r0;nDS$%)KNb?q1g1sLi~WiuOh<_yiw>zXp1uEt^%I@~c3fFPD5vsT&aylg zz8^ZBGrGiH0?n=u?Q+UcPPrX(Vs!1<%cnUCFd`Ex*J`vD?=|I~d^Us<(B+}&39gC^i2?CjOlfo;8k!GT7bjf} z2O3pexNTQ!5*nHodJuk+4h}+!q!%4#Cqyi8K&X%^oQ^<$S1s@WO9{S^4wNhsQe&{F z_y+4r9Rp5@0XdzMz*;M!Qfi`^L1>XdWQlPA%lKC$XOo9v^Di<+JY^J6 zlQ;8ljIs$Z7FT9LW5rZH*wuQ_%@!Q~4#Z}5gchV|F6bb9(fFs{@R7RjMQ*>$U?J^L z$dP5BjBKBp)k(ARm}|`rj)Y$hb%z0kCs86lsw4qSa9qiF89I6#dPSMli*d-!3Fv7V z>&h*UJ*E2&`z5z+sOO58( zpRP;xxOlav)_FWRjJlWRh;OV(Hw9CE1_y1m%p1!UcID_QP77RapN_(Firld%0W>!v z%t0_E36g3o37A1eqA1h=UUuTJjN}Q~>7v2Jaw)FlK_4qCB}=+g0tus`9S_I0LTGpa z)Ix*MmeK^;z1@R32Rlw>teE7od@UixSb=a{Pz(uDu{kU$GI2maWWV9Ei7p>gYg+HB zpfOScXY(0!^_nOBn&^?0jRN9kGu~Xhe1-mR=c=%kYO!V^XBfS>tIMZ=UP8HLvsz2NZbp);2 z3aZ~VC|r~kwq^JXS1;c!ClNFYQe~dwW<2{2@|rQ`U2XK{mC--o_Wfl?HV>1`&ZN=~ z(kDDuvz`$Sf4FU;H0}pTdH0rYR{p&FiHn%U_9i|2Td;dGMJr!6(3Q|H=7%R}$Vnf0-;4uW!;?5hM8^1O?jY8I1aKjZOfW6mUFcyZDQWmME(SOZC}63(fymy*~##nlcW= zzIbm)0u?pjR1(0>5b_A>2qw9Q9LXt9^=(ky&XeI%$@Y$zXdk8q4pFt!QhO8q_^eLi zXO%X{M61mSb$3l6%#^#*zR&aCAbfSn*24!mPX zv2cQOd*S3tFXV<0>0<50`96<{iEa<09#=0Q7Y>d2^$RWaD)UEy8KRDKZZ7o>5F_Eu z7ArKg%j3y{At;5-`O#Bdze@|{NtfqT+lx~F+KI1y!`GXC=XRIDf*zpW))f$2@a)mu z+3vz{GW77favcYT^)C5-AgtTjt+`jYYS8OaY7YGYXTg!K=&%S?r}1yv*!j(Rd_$%T zPtAyvhWnc~g7i?lFp7kE2tY>;s)G|!7D}v1?4V8-i4$u!glf4Zh#g@*_=9VX%n+@B z1f)!Q_>Xc#M@n$!gQzP>EM^Ep)ORpo0=XfT9lSCcTx(75I4W}$78)P)WVGOHQGA!l zH!e*QEp}t1xaVQw$=gDPdf*%JBjQ(>u!mB3g9SV#jurvPQ7{q2?k__;Q33?akzZs| zR9d{kxsjSBV)^>vX{O)MbfkFbJl$%GI`VP+G?$d~9;Z>Vjw z?CbU5hgz|!Ats}sD;nUY4q)@+peqr9zkPs{x4?OtK%v)s7hIwVY=kPkC`)+|H}c<5 zi7WO~!gkt08@VAk3PE;q5|`jb@`g-hPLi0nG8B?r=FXN!RHkK-=_5{SD!OxO6y}*q zj_tZmVYD8j)L%NPH=;FuR2Y1zxCGWN{*_ZRuD3@mnHpZ3tlcl|bD!f@{@b(H9W9S~ z#yJ{bTWoAT7IrsQy|{5lYRwlR3lHO#-n$MxZmW4KOT6{zxowrXYAgKA+63h>?gxiF zDIGdaL+BxgkyW=gmNy_aLMvXfmQ2~FP>lCs4y1|=Cc;`ih{jS3uBI^L)M+R|hGa)x zNHT>HVp1k%uo(m)W+T7asbAhXNxq}q69OFrBjGEd-?7+!BI@A4pbr);R*r4e?1B*$ zdeHrZr-T2_bSAEHi06eg4HxDx+k2~nC?f9yVOeOzn@iQ3&HP=e z9nD;>RI12rzJ|w^IlEbBdZk@~tE+vR*RV0?Q8nj=Q(hxurVU@kt`>52#xvUdJXNKp zLaOW}c_izh+PsUCK8gJ?NxgCfB$j)U()JK0=&)|cvDc8#f`g#N0twd@>ftrVYu~PW z?v42|OAc!3byNC*xZ5yJywjk1vuN%-UXnw`L}v&c_vLoZ=>%DZb1?BLUR~dMv1j$< z-KSyqXsG5zXTbS;fD3Fqp3PkvJhe`3ZF2d$@4x3HysYE;>k(#ma0jmL5o7_Iza@-+-;%Vk^H1@k8vD#nZeI6l`%CSs^QDA#nGe>ZSASi+ zH@^bw!}s19INLiFJ-8G9!u_L+(zPFQ0-JSqb7!yX3E9}H4PrnOt7%G zFa{T)2FXtp+d&1M7g~I0EGS_>n?nVW1Ijrdwa*aN&Xhi`0};YE9A!T-l*b52EWIfJ{9JjXV*otT1er5nLQ$tfhGk=ww}&WPXb3`=#l* z#40=BN#RWQbJX_fB*owUvJk^s#tLg@B)#9~Tt6Ak=|2<#2Qoy}YUS<+UgL~Pi(^qx zVkLd+K?uDtX>*fjTI`yh)(LXJ8qsu7j_MNZ`QyStA2X`hA6c~WrPAswoG_ky!Mak? z2`F@^6#u-31UsVT5Gdo{4Y@!hwQUf|xx=s(NZ+@?2ftFXaDUfgKG|Y(3Y2fpjh~$` z+g~W#)(I8w{ZkgV5%Q$bOQKeC zd`idUaw7hd4ew$Jk)5gY6q~-ff68`V&o(eYF4We01L|qTe9O&hZJ z*37pa;6DJ2apH_Qy4ED_QI%wdP(81;O zJ|0~$eo45(L2`CUvK(`IS|s*@ZXbKkF^7&r+=#bgfe+Q6u3FX2mDOC_`x)0%Ovn+| z?t?#*xBXVWCskf*dUqW?pK2lt>)I=w+DBQ#nHubmnA4|}Tf-O=aE*r{WAF1-{zl9K zu4{zY(f*Y#?kSW*Vq)a6t)@?3P}JLy%_ zVx`JlD+*3!bBy~-xl}GVyT4VjkERKqVN-n%&|j=xPi5yVQmsDyR($78g!P?BI`nV0 zHTx73enl4nLX9&v>&7gXOO}tBc-~E!n^sGHMV@)`ts>Q{bV@eWRd_!tMl=)W8pcs# zZQ69(4NAH_1<3CYLVP ztOpub-Y|?l9tzqkw~_@oot-@n58IxuS03ipPUu;Ga!ks{P3f<5xi78%a^d^2Z2oX);_b}aBdw0YWCTfR!77f@L75m>(dkX&jFs$uNZBXrZ;wq5KxR)60# z0ovxv-`qX@BjRCIs%f*a9Obstbn}Ex$AK+^`2ELEOYC#!|Icy7Ht6G!L#P5e=`sjX zEfhsFKr%jj5ma&7tBCY_qYQ?(!4!jLvi>ntfkf{~6sDP#I`{zF9FYb~6<9d7IC5BB zJMPXuN0Uo4rW<4if0jI_SQW>hsSeUzzW9kxj;K8C2gZ$1%!kaChu5cXn`!m%)8?VO z$naAR+`#WG7cK!eEq=Fe#}ZEuJgxvzMo;W+)4wAEp(S+!6lsPzO}37*O-#u(*D*U65`nc~jV=t28Z0?RU% zG)Yfw6Qa4CaGHp^L8_~NwB9e_Sux&p8f^%!&n-hUUglT4&) zNYz1xr-JjlAgn0k2HXxl7E(}|g!$Ydoyx^fyP6t8trN{k8}g}2Y^8Q2GEi`FsJ9=; z5`_U4g=v}sx|4_&%#)>w4Q3`zhxTR;9+>{^6_SLc1t$v+fHg)=MbW&e zW|6Bcr%=@~BE4o@eHkJBq+980xzb(50=!)W);xASmios%nEGD8xj(RG-9(Jte;1Gx zD)Dn@=bp01(RWaqeTd|I=IXl1Rph8+)zStZc?6y{GOOMZtP5mt5t?#Jrzber{H7*1 ztVdIBJUrnOumdeYl;W}~E^Uwf*fzXpD7uc6w{2~^Osm^$lnGR%o+1w3Uf%Wa4&6A+ zF*|MY1RZ3HIVpbN)mCw8Qu7xi;;Eh}l)F;izru9C2Cs3R%x5=fDP+2iRHg2#sZpM% zE-;L!rufcV3LMnsRkz4;=OiuFIJ@nO>P-b(6My8nY07u#j%=p>V0eRx`mEbL^j(q4 z+Ra~cnmy#V`u-o!M8ZKB$q5}mTmZ?kZ50BJSgclZoF~w>(l&d;zi#3zU_=--3b)n^ zbF0?i($->`U5B;x(}NBvRi5;TpLLSv5~@tGu0S5z*`|BfeXImk0|{(inwdV_T`nIF zU$TmTcJPx5_RpTChSxLi51;L419v||%`g$e%(_{aHU)V2*!;V_cg?=;dpDZr+M_ms zUEGfC){jnKlO>PscinesuZIjS?_GS)LQK3)40f;kImIUn>rcpJ0( z6Mu3@dt@)Sb|%_=v%W#-^BH?Dre^md#veT5K3r^nFD7DZAPrhtR$iUno*4{c?M|OU z(z4E?QitxvRO7FrI+Ax~qNL7b_|Y!m+jw7-D(-m+kwTac@k&p5qx;X7C?Midx1o%hXRMB+Zi;CpWtMgR;*i z=J@t|Oc)II;VhQ44V(%b3~qNN4Y0ri8M*b_8RM5Mdo;y_4RGLb4BEg886~`Qd^|lb zzhAEg;^ltv59r*V<~`#6>Qr7fltxqEi^{Hk1j0o84opYSgV73`V~ zLSg%I(H7(w5QrjxH4O$(`(>O1pg(G(N$gwTf)8HIRf=vx`~+VGSXT?y8iIXnLFY4} z?Iy_{Np8aoJ-bIYh$TOn;@cp^_?0Bv1xvPe8tkIl<7lJ_ai0|s#*dc%uBb(>sGU9` zWX|B%#Oal~JOUAe{?9oA0fDtWU3?mG^C1=#dvSZuaY&7>3_Vf&S!%b zR**8(2DIkwvTdTx_-A{J!6f96LXRMg$KceK5|S0Oy|n7B`8Hu0R%#~EN6@eLpcAp2 z#H=EiAn79~P(W|748hgmwYn-KyCW&WC#VqxzlFF7mB@^_Hc)>wE;K0w33P~Ei`{mJ zFEXM}T1?#Vxuf-;E_paL{A@OVS(F>it4;)K%U3{KPnO4G&SD<%vVwli7N3Dr9qVw(iB#CKSEahGBPuv{aug{iP_$sI;@lhCiHAWRxG8$;{L|@Z;t8#O3$0pz zdd&H&2J{Z{T}iiGpcu%FNh$KSa>FCY;O2DmQyA#WdDwr$6(3RSo}Wz2_HZ)PWnhk$ zjU@U<#|uS-7PcR0EY;MeD-E3q*~_v&x)m)6C&FrU9W6=62Wl8Q!kL<2l}21et*OCX zZ^rIc0BytB)QgmShD3d9Km|^w0J${q-LC`AiZ+N4lng228Q~$$nTc_@1W@DxXraU) ziw%sE7&ZZrY2kGVLU%$%o(+F}TNvPwDAdp({E6A6KbjIGO}6w6Jh&@$ z;D#|0tI9XS*RGI)EgY~_uu!MQy&ar&e26x%VXJ$6>a|$K`MMDfPpB>f(moS^HyFT8 z;U%|{)tO*v2||=w`y<_rV1Jst`L>7(?APA-J>RH_e>x)Yf*(8tNWF z-Z)U*+8?cPrgslH9kCixX}(F2y=xtRl{NORY2j1L($CTq2*$Pn1hZk{^Pa6tLOZ!nk>i=p?^HmFG*)EwbkGKMTJKh zIvOLwTBNjLQAHg?Cl{C&BDBhkY>6fd2yl4s7I-|rbzq`J)x?RPf}Kni{e3{qsRkrFCK$@m#LkEJ4JrsO70z!p)G9QKdDD0AsI!5&Wx^vJe|`MyZmx#9 z^Ob>m10;^g?KMt+Ylq8ky*Z}frE+sCT;Pa3nD&Ep1?mW6&+n=~Il$Vuam!r}XVedw~?8I0BZFHnKaH|zM>t?=gU=2YP= z=c;9WEBeI1eO!O>?y{3h!{kLmW|Y)Hc7dgif;;IulYl|Gh)$aJ_3A9LdwnP)#LqJ1 zQ}DFV<&*?@f$;u6^u_-;cLme|zx0nkkwXc?@d2n5hpFPd(m{Vqdc6?>|QGIpAbhM!s_cXI~GF8HjoaH8{f=j-iYoiMZAixFl{~FptF+ zviH_~wn$Mv3dA2Li+%O!Jx>z5trUUQsoiHSe#c6_r;b2ECZ9{U?kjfRQ&s;{C3@%p zci_xpy~La4;JfSSqx0ZPH}F&^ZPz*Lpu6lgM&f<4)T8Rx=8w7>C8shcCpSUn59_)b zQ6E#;SYNeI&hA&2i{tyPea0HOZJRVZ$s&Y8xoYG?L({3H=}#2APBt_dUGSNkkt4_? z>A-}-VqNRd(RgvzBASpt5ZQ{LjG*5Tw@OXnT_W6Igy+UFub)+o5tm4F;25+xgQ`9f zc^!$=B$Kc_AQ|m@19r%;s;C}CI|UeHY(Q!#D78{>Ao4FMrf8hx0@(odYVk4Sf@no} zTDApmsXF7{b7(AbXjvq1$9|!HEG$OY@hCyXE}`#P{~b6R)aW@k%VLiUtO^lkD~NAk z0vEuUfD42+PPoOg5F?RK4qqG;Ie>w7WRt}KNdWCliExmjD`er&$pKd<_jVSj+hA0| zfug->kz~%8EDxH^fQn-Kf_p<&5VdumusUNFvHDDQ}S-XDapp7r&Tc zz!#nscc@}kJu%Z9v#au9OlS<7gT7w3 z+(iMV`G{=U+33ae&%cgf_mboW(lQI^43&)23nFlGJY7`Ck|E;^Lrp6m5Y`A?92ujk zQbp98NpiN~zlDjC@O%aNY#37pnIn=UtozW(05aOlQK`{Zvwwe94sVQSvpuqzAW36~ zn1YC10K(b9bTK0JBD?1Sbbe@)@qwrk!mcoFr>?8=;I?2Qs|sc-RfFv2Kh_mPrt13L zZ2Zv4fRLIy(qgKn7#`|Bte1bBE+=&e2G_{?Jitc72Grb7q)rFP}1v0r< zbJ!{y`|@tRSyY|%6x=ISf9h9%B&vC8Q>^#>xGYwD3>RJhvp6L-S$#i0h4%Lm^^gGP z;uqIleBEunV2c6O7HL8b>K&5w0o1{%i1-vr#$~dsi{_tgT9r!`>!&jtDE3!UvjOU) z%cjkGCRxcc9S1=7ZSa)qxLwAzszOJ08Q*0R#)4tie*T=-q#dUnOHNBAqSj`ZY-rK) zco5_nf0AFGP@_TFMhV9yGnV^F(;M3ALVQt1X&4c8Sm&mQzN`bu$K+8QG_qt+fUwu;;DRmrhcBkY~c59PgQzU+kNAXQw;06I+AZ ztlrh`c3uvL(q9|**XJppYu0+sE1_NLOy14*mrhR`DSc})_|9ozetI@<2Yg+NpVo$} z3LhIU(;1Dn-&-y}uD|amiW6xfxpAGR+qN}c%;jDiR6Y9`x(P~%3lYXlRnA;pEZ8ap zIdVv&G%%3!g-YZF@!4PFbgyvfPcyP!M1eT)GzcJ#-N1!90fqmj>Hc?~s{vL)6d9xa zQ>+Z32Cxd&k^^Mj6y0_UC-?l#Fc`;aUZCPH^OXLj>33o2?tC!b##OQS=W}vyVj)jwsRic|`_O_xVd4!J=KfGnG)2 zidX`8lm<#vTI#(}@vBN?Lb|y|>>`QT6HznNn(ze@g{uHvM`UhFKrUuresDhAyHYX{ zuO$k`Q{2YJuVVO0!U}X)55OBvc~H7GjPepQNi(Z(9(j^aYL z!0G6GxKt;4XiwHw!&PohRp;^)0o??Wol+;YUr8lxHB$A}N`AAsD|Az;Sk99lj~7|o z@-`J)?Ufg^W-EtwQuf}So#fqxM(EAhjJQRTtrcgj8gT?zd8_N5HbIUmaLo!(iA*Za z(uIx?hEzt#k>^koNP%7go_@#`oUn2cqTfV~7{Eme>n|;!O0kUsMkgt@RzHTBUW6?W z=5mQs2rZEScFG`GsSQi{S%HWitwJaCk9I7wSO6wuLRepyQZ70y4HDFX2+^V-6D9mu zRH%nY7bnJ8Y=Fv#peX>0k|YT#AbenUi#Fy(!%d5b3kMw71ySbK{~tdedZ>fy7z?(VQ^Cu_@j^lZJOnMZe&t zR>gAx^n%U6PmCz<@S9zyPdkW(Lw!)|*)s|`MFrk|YYIKW9@?eZifVa3uo)tYTbqZy zxi9pB4pQf@1+RQo&tE#%9#`#r&z<Q*!a%s z_$;k`H|9Q@iY^ZXuNHD&)4KU)yl@Cye{Nmb_N>i%4lJ;2vN@Fa{j)mTsZRZb%57;( zZTUcN!4L6Su)=eP_?;GMRNNnhdQD!BB@Um8AyZt6QKyc<@Uvze4 zi(R19&_Ps%$d}D+h@#WbdQ5}Jt){4%^P{%mU5DrI47?>?zIODQF=a&Gjboa)F;H=K7?W@2;&=u-mwE&^*Dj~?YOxtWjU;_eIk z9mN>giQ_+=J+q=@+@ffPu}yWPv9jP`ThLfW{$%U1z1l(g3Y6^u6nugw)<#m!=^582 z_OJd$xv7^UVyTS`&hw#Hbd%iFNKg5-AC{|oE7o#VE$7w!jXhloa~&r2`k+qw43-ku zWs(1Dt75kR6Ze+9>9uGpa9G1{xIp*-8?@vxStVfBoL6^@hOT$`T#43VNpl^?DQ4DxBR3NUcI*w-+KE?s4Qxjd6RocKyrB5AHSQ{i(B7 z@oy<33kW<|2|@r~!q05uWCFK-`Zph}9OS-K>fNn)nU#ipxB7i~RzJO!e70BmvT8{9 z>l386FY>uNI($ZIfO#D;JWhJx8eHZIY_s_PalMp&+IVTnXxxNj^;Ky0=%m=+B>p|% z-5z#yHLZ9gs>lO$P%wc>C5j8sNS$JP@tIIu~2E$!2ifR-7e}z6X>3&W0$S1sFcs zcwg*i-<|idjdvON*J`I_zL4Yk!uNWq*KumkgLz=(9Pj~Fu<=r)_C_S@LZtP^I&RlE zZ`Zi&P$cbsApc@N;6NqrRxj;DChp)aVBb0IL?`a0(H$uD*&}s3P3>ih!Kv)Ap8szHKEl zdn+575d2_#pkgqP=pO)$9kob%!Yzr04x9HS(ML!c?20;~)X!02AD}+2bt0+@Q1E zTClMwWOJ#^YJ0iSf3d!jA1L0QO0P4-1~$~;Vt8N$!_yOtEoLmnN~7Uu^E|F@sFKvw zr*&Kenk>r}U^+W8&;qfDzs-h`nR*X9<(^<;aQy*lsIWU#$Lap7)M zk*-8`0vl;+`-dlLO?tt`9+#if#Yo|4*U|b*@gN|~1f7mJ>Alax|G&7p#^y@eZXG)l zTYF+B6Wg|J+qP}**tVUCZF}O0olJaEPu2V7{DJPSyQ;g_x(LGuBmB=?%@4rCfS&q{ z)lP~n6hFXR=s@Q8O7zp2WrEN_4BY5(8p6m?X5+!_hYe12GyO@|d`MS^1(f{UVRNv9 zDW_%hHvIVGkida@)pNrEs@aT;&45lB5h#IX(8y6vOQ?$pixzI48V*WR^fSq!o&}Cd zGC+NVxa7N%)w5O~lOG_AU$2G%-b`V>Y21GWp>X1)apGj+j$6qeJ=cfd3!BkI0PMmO zbch0>DH);HYwN!Tk?PE}{ z{VMSQAoHV-U&E)&z&9~nR!exw7y9P6&S<*E%cfC?U6Pdi>y>j>FXaEMK0D zP2(&&N>t)4W9I#ZotxpDdxpTU(4=={(mf&Nt(S67%y4h&_|%k?jm6oD1-V`a=cIRN z)-yHfr# z2`3f;ir26v?jx{5f|}e7TLKx&qI&+BNk}0@u1Y3;zcW?F^`?rF%dq3q=yqfQ8kpi# zTZt)s1lslR`rtoTMh>z76*aI_q1wo;0ErzngIhL_V>OwbxRmA^6H~^*9}ImuN%uba z_kz+N)rlSHvJ?`jx?GhOH4a?Zap>|Whk?lxOWuhpy6O7VJiYd_rzF7i(9 z`H2|xGAh0J)!tiYZ#ya6Yd0Lb=6w1A8HJ?o!f5wx{nLIR1$Y_9gz0yE&q}Kt{zli5 zuEAyPpgH`_RDGn3J_be%32V$d_z-i@g0zCLrHpg&ApcN6_`&{&gS^88_|JnNdkANf z;u+kwwrB+RlL7GG0XBj%>>wW}9t-k-M(5Wrs?28c+_N7AU1W3qP-8w%rJ;aE zb~1EPkScc}ynRDe#mHrpKVdKy*0jg<&O1hmr7w3~OykvBH&c{e$%ej}wqGp(-`+7M zebcuZGJikU>AdQAL{9h`NTMv~G%ft-X&hfNn6z!19X4D~@W6&-**j^uSDfh^q4PFosf0@6_66iYW-*1- zEQ`t-(rL3sHyTmQ5M`UPH6v0beuPcv@ke3!ftx#7bX$m=%jA@9!rZgqy%)5xT!%1! z)Ws~h_s}sUBg}-TuDkfk22TU_LjX3CY^ zpH;F6%elE%{5sg}UGj?Rq}Hl-#?kD}BG~6~1gY*~AKZFBEbf<1Z-FGP;c?A`M3mX( zf0m=%<{bz*it$j7K*`z%C3hl4kSLeog`WhJ-VGxdrx7NbX`%Jx2cW7(2NY5@;)w zWc_*cMxOp%eC%Oji{8rngFQ+v_xEkQVWfC+1_jKNvr9iD(-*2R%b@8lMg&ol<@3uO zG|vkO;ah{ks|K;_)9>nW#wuk#wF>jpN^$CSl8T33tq+BYo*I?uzYp=>DV|=BBqdLg zN_R9+9?CgLgcnu|jrt+*qav9dWiFV4fwUzzOuAodhSHD#t}#g;~rEe+k5_>8PZ zMzF?9#1S%iEAjw!Xk~~y2UicI9J`0S`AEnHfiNXtJi-Dng8*QKB)ju{ zW;x8i%C4oD!UkLe*MiE2w2*s~OD+mvqKuWLjFjPw>s5arLh;nl;;KWIrd|wj<8}Ek zG{6PWMa$WWD0C(+4e0*6$cYR^DW51Wey=GHk{u5-2r`vcLeul;YCe>d-|a!&G=@L- zRJ{uBZa$D&r)uzu`HAb$E9SF;f@z&HPDHFA=Ga`I@`;_wmMw%s`fJ2u%Mtg4QlEng zUGA5LGFU%{zKZ|=9}5>r;k3wSI76gIzZxfzvdm;67;ZX5##hCZt9<2pRXaXY20Etm z;Herdt@!|Ruma%#7&CQn`qadUL$O$0wn#U65l5n_DNgV-h|@vAOaQ&mh@@c~&a5^I z?L*n*FkywuZXM2YELdZuQFWev{(AUo7g;D>X=V7Gt$b$)e3feb7cu@O}EEu={j{KHQJR%z4EJF;p<4}<>X*lS{x3O+-moU zL(i?4-_~u5hE0cw2FYp6R>R1WW#kYExqZ}eHORuc-$kEv9SwK^Nn8y*$F?{AwKlDb zN2Y;R_7Kw&Hhf|mW^NN`W(#6!BiN{5q3+KO{=`%6FW_~>~RRrU2b%kF=> z3-90Z@HMKhj{G{it8+;+?aI2Ov3F(<>R{xNSG7n&P&*Un+R3%G{nx6xVnNm4wV^8a z&PV+c5?Fgipr&r?`9pnC`J=X$5Z{ID_nz+hi;g-R(|D>bt%Ir|b7$dilv)Mv1Dyin zPpfPFKfjUHH2`C(f!`O~8%9+BGCyso+O^AZW%YgvsCpY6)!pV|JUqLaS5(J(-PFxF zwR3Z=ZdqAAogr6$tCH41Ovh-iY{S*X!EsUNL0G|X5ih1O0vlW2CI9TJ83kMK*j(Nf z^O2Fsrukb-sqXK6*po%9Q&EAgzV??x{g1A<&aiE~%cH|_GYv-8QDsTt+VXJno9<)F zN{7^9xvr!Ii@Flm_VQe>n0oM~Kj?PPDu%@>p}Hg>f<_Lt9|I%Qaadl?E!44>p8hUY zOFi{RRTUbzZY}xulYMv{MO1xVNBVyr>%ZG#yK`H~yu)on}* z$Qi?}kiLKxGQb+G-2gt{hP#*=SGfgV6(5!=Qef#)5UD@1%p#@=Y=)rZPeat(5~;7< zV(-L4&rDk{O~a>}xsC;;&#r~0)uhYJhxBFIa9TBzZEML&HPQ@xjb$`qYv@XK3Hd=; z>DID4C@ZF)9TUTf=E)@D^&MHA>;Q$-3_;|(ROKIJP5%%B4(na_s_UD#@HYM}UWc9- zt!6yKZ76GuM%T3M+1(R38t#;Y%&;!e&({2#-e(;eWg2vl9!i-Tj(m}*QIyp9U z5((!dV`&m`J|ueh+0?rdsgM*|#E>`*xCcK<0oao_{f-|=9DWjb0+!KxjXtQ#Jq=XW z3i$H0(-euPf#!AcirP(1#Vo9Sn%isoj`bv80zIWoq#YB; z!)-%SQy@78;5nzcQx5Wn5K0|CRmSPXew2_imyAP6%@(k*m=amhaBgh|(n2`!2-4)Mz{61g z8*k=0oOy-9fk%*sKg0xF>Iz!rADHKrKx-59djXg}%qB4X6MF_1c@^vTeP9Hb0)8Dt z0fkEQPeuIiJy`Ht4J-;X*9cjJ1P0%OrUH5!mxJufD09@Mz6Xu+k3z!tNovbz_{tG1 zzGnt`IwIuIHhfjIpW0pE++Dzm7zMGRm=9owD$5yWmLpk^BXO)Jl`7-hvf2@ar}ODc zcwPD}9w6--M%g}$yt>1A?pSyO8y8MI3>0#aC+<9Xr$pOThP#q3elAYZmU^U%e5lp? z6e#MnXPT*Oj>m}7tT}DixtYrM1p=R0m@h-8Z>Xp5h-p3~{hpd+Mx!s9(}AZm@Xm2D zC!9cMPt)0^M|mb&`5c@-^}OTLe!1qJz?>&ql55M{4@=pX$TWai3m|*E@;*%*MgsN4~Zj8%$cIsJ}_W4{Rp&NNo4+XK~uy|Yv5>Dj} zpz~Q1J!CjYWEBT6LCHH8*?E1K*ySTDm_sunwT zSj4pM*Yc6C;U#VyqfI$PZw^}3VsR{zi6fMel4DE z;Gd?t4p{d4oy}*&7?af$-h2ic+M{24nap|0eKhi;v{}0tH}(8V#iR$D?$x97X;bEH z;_@>!Tz8j<1KhyjXs0)oyJnI(c5<FpZd$5%VXJMYTqTpmu>xp zs`y?L*Lmwi_C2KM1 zqNR7fzwa1HSK-N@!kAac9ae-Tzfh#LiSk~R5o~4g56Uz&0c)5b^^n1hYynYiU{UV< zQLVz!?#9urT;jh>h6}mO9U~=9n?kNv;hD`ZVsCF| zZ$ipDKFTxDCx7+rbM2ke1oo7Q4up%03z{CJlZ`8wuZ5+LPts!ITP&knHrz`_+Sc!| z%uchFeDo`Tdz>>43$^I2z1aNkNBs{2HF0`rS~Hxib{KUVCP<-_ zN=}*dyjnH>7= zi=TEUKH==T8j^z!S@bDH@*|PQKY|O!ZZpQ+Mhx@1Uk$`@d4BCdp`H?%3Pu2Rl?3QV znWP=Wf}jc|Qz>2sr@mSwawGI>evoW^<7Gf6rH(FXCoAqeBFUBb zo_v7>1?&_J!~zD~8<(_~HlS-(efKDmsGh^!V}ToWm?fBB_-Om^{>p(2>E!}i=+igx zAy>dfz0!v=l_%-$DiU(h>YgC+B2LLiy`a5nj%PvhxcQX=H=hxzR z|13o~)+}NV2d|&8)gOaNf$*Y+khF@p5@mPNdA0+I8K||OvXFgjyhs^;2pSN{+W?7o z1tFqxF605EFbN+tY(jxRhKv)!^u})^EWCkNK)as6P9_JCA?D;q+S@S3=t7NQc_Hr_ zE^+})=NvXzIw~WdFZ+N*~)KT6daK(zJv=yu6bw6*siZ-|cRUto&fQ zsDZSbq0}*QGcds>_9R+vbFzm22s8gFs;=Mfth~K!n0szem~yTXq}>bcffl$VOcO~N z;U80tNTw|ET=^9kWKZFYB#cs3qd1+xShL9jUk;?MT zByemR@M|;vM1E!p`OsPZUZe)TlQuDmZ2FP)e^D>TNVFU%4HwV2DA4E4t&wAF2zyNz z?>Nns0~~lkHOvU1(i2IwO2n2^51HN_r7=9#J&Vl7)pthDRI zc1hS>;AC^aT=BH$r%yb^vTO8mzjFwie2?rlCk9)uk)Xc1H=jP#-tJ^B z+p1D&7FB5$W&P#S{rl9OZ99+7Wj2Y}yVTS_JM{W4vfs)!)66&2N;lKX@YHKte0%i1 z9+i&TCROzrR{eW4?vG^d)17VMN2&SoEBv?>UrNjNEybT~Tt{SDkAmblX7bqv(3;pt zRK8&^=zzUg^4du0m(iWWJY$Q#3)2tuNk?#4ACL*;1U~H47D%OLNX1SxWt33bSb-FA zlsgiI|KVQ$ebqlj!38j29F^>cEL!uI3}Md6%ZG@F5ksVX1&A3y>N{vt zd*rL|%-`i^rZO<0+dD7rrfck~ubo)aO3SX_%W4v7JMk}V^0ROp<4I%TO%rL~sii|% zwfI;}zpv#!S4{q^sQN2ib?Iz96Ha|DRQu`My5F+RV&1@uOl?QWOmwvJ&c)f{@HTXQ zKsJgVQFv)!%gEtN)8N4{jVqMkRm7PqA&A_V23)tLY7#9~`f&XB2#YQ6(TD}rg&B7* zOuEjsbDdZa5xfkV%Pc9#fz` zf4^8bgusAL!6Dh2GlC#>2yyV&jw8vQdNtm1qiTxGlpUK(8zDG0v(;@{g0rJAJ8KuX zy_m(nkjkqvYAp+X-d13aNwa(0E{Fd zKi24nrA>GZS=o75e2S`kD?adyVg%73` zFXSK=`K2(#5c`;maT9(@mzNOm9mJ6g#W5KA93P66z$uu(+3fF54t+s$P3^h ziWq{XzU!}M3*(o-hfxmccg0g%{cN)lkQPqp1hn%Y*ujcd=c-Mi5yOT}bQd`B*Ym*8 z-3C$n?2Q;`NJ3OPA(e9CZlc4UM~*yz-W&+*Yl2<#M7kwTbxRs;72jMrmOOiOa|?~@ z_TK%_{TEQwIeolc(p2kI!v1eS8-J%+z%zZamo9A^EBfkNvO(IIg?iMi;;c^JSGBN} zHgP?U-UN4GoNB3Np0W5h7u!`nwv)5#133J;RPAjw>t)8q({OH1@Zt=0$=r0*Kw`UM ztN6Xcdbu+;uZ z^!SDMqY~W}=uf2bE&*iNh7Kdx`@fj{lLm0jVZ$x<1*y%0My|^wUn#r&p!_rXuTLc2 zIM4WY&OQTw_IgNEXDeAygd{medI{BR*Db_QJt$LufX4di)bi)I5i|owUDIH#UsL*- zY*=J6E|ZU&6_b6pEO35li_78&bIJA%tdudiOt`+8r1|=ohL0_bFA}NXT&_c%IQ97+>7D1bX@7R>b@`OM#?!QXPwA8DRqC}XwKDAQjy1>6ld}5u z&GdD(SG$joUZbn$w!5|5$_1{bkBkAWM>Mg!GpfElN*|X(^Vbv;efU+c9))JN65|W~ zjk{t}`p+r+w&R`Zmi*~voI@wgB#s^2^Bc0*6?ic{m}2(BmC$Q^m@A#YnG;WhMht9|L1|>v`_! zrF;y~Ih3w$q!hC*hWDIRmYm|)KJdIpz_MWMZo60rFx#3e{ybRUoxhI!q+&Zrxk~vc zh`I{a&MV6wn_k{V(U-I&dAbr zxx~;iCSJy>s>(NI6G76Kr$Z=1O<0vO1d6)>$^CkhPCNxr}Cr3Yi3%Y2gf$#K&opxVW)BbR+#* zV%lE#3=GQ(<5Tn^TsB?H)d42HEKQk(r%f#1j0cAu7*6;M1!H1iNv(jJIoXHd(p zh8)8fNK>_z)BppldNAEggu|#eF-7u^I(%94oC$V z`tYX=A&%XKjDaQK>r?J_#D*Fj?qP=#NueX0c!7lSDTu)BWeOw5f;X-nDCmU{8#31iQKN#%*x%N(oW zRc0W=Y{Eu*eyZ%EOkB-bwuMAx@tou{v*|d@?M3X%zGq`pG|lAv5j@4eUvG8*$IfGequ(+L z^GFyXDv5%NnDML5Nuxd}gz%0}@nz;G4_ucxy+Q8tWtxPH<6xGDn`DCXoF-_n(W@ZA zrUb)%1PrkdE5${k8#^t6#@cDv^lPuxak?;8egIpi zaX^HG*~NJ)Saz-JyMeSHKBae?sUt^tvAaaoweL+nb(gc7tlv}l&WlNFU{L~v)MbB!PV2J-MSWrT?_48OHIT8JlWmsRh{aW51-+5=3)J~ zG+(ZiJ{HwmzsiTUhJiL+vbs%pqI4Rw#wqBI3pubJ3uqlIkb|1|lN!i{Pm;_%NF&bx z972I!_n>=kWi%Kjh@ZAU1;ja;X~EQ5&~&k~RC)`F z;Z3+{m~a!@PiJ-kX7&K5K|xN#fNa_P2^bA{7Ee?;4q?EoL+CTa11ID&Q0|>a_L*M0 zOCh^eA@`TQbxz%EuKl={O|ws>l)lYaw!K`Q{rIPX)tiR>*ILGBLy5(>XTkDo1Ko+S z@5-pwLAcZK=6-e?B(QFQDfdu?*OJh~`E#O68hqAz87*WeDhGR0?8F~Ww>e!6JlX7m zv`YA|PM^xhamr8QBVcWVU}M--^k63m%#I|)wMZcrX4{WQ?PyuIQ3v1Ti^S{+6JI`& zB#dE2s6x*j>|Tl}w2)s{MtH;>Iz%iC9HB%a`_S{~f#dtOB zz{o9R+}%8pTexxWdT5Qe|F53S65SwFoIRTXfMe)2?BhhXo<8 zbPOYAa2uS6?&_s2I9X|FF@5h>4U8JCrfAa$BfM7Tdxuob3|#T-YDEiR`Cl%D^&OIW z_gkqAjN|!{y+O3}x2C6aP}FP&xbs+vC(#9=Bp@GSAiow`+^Fy2LC20R)GER8 zRBne%=>r2->M*z6VoC`-`UAfQ9WdO>C<&r;0glQ^vWP}~ z3lbH)7bOtl#Vmvtln^dp`iUINuY-|U?mqMJlkxWK6C#2Zf&Lb9a&@=@Okf3|(C?

CUK9#* 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

H5^JwKw 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⁡-w8Ki0iS7rO_Up^v?pVsbD%{=FRz+5}?P!;% zbm zf#rn2KQCN7BV)D)4JiKbH1!Cw#u8{?(Zx$Bfrl^`+BMc2WbTg2rHeeO5;0%yLj{G| z6@YN%R6vR&yakUCRtV6qA%><_M<3PzHD!q2VUR{*2*-F4IqTb5VKa*m9Z#wit4E(H+HeKr!+wO5;wN)U|fur(j=3 zilhzXL4z(c9f~}a%5*`VMPYB3n@qJiHSc(#D%S*LsNzY@KT|sDR7qy5_zBGg<|X4$ z(X$#%UCTk+z&;B}2h3pla$r`0OGYv?dAKk|O}U9&)`ZDI8|!ytxv84uxmc$TiR)>y zT;fF0FMf8*qGX;7Ih#L!d9HX&;#O&yMCP+^11bnD97p!j#i}VGRaP+60DEDuPfGOg%sd*Iw~)h zYhY%=h4q}ntGY**rT;9Z9o?~Wx?P&eJ({Xbi<-TPnhjlYP7d5QBl9O2Vj3p#PcnH| zSUs(`4{C2xhsAXP*xv51GiP_6dU_nUm+$dUsWFo}oQ$p)18-*(=-uzWckk~Hk#~tl z807S{8?CoHkGo_71ee+`-`A#M&s4rm{-^n@a{kTs`@N6xY<%6XlbykC-j>g&VGJL4 zubW~Dvm<>35GZk4ajqZgti80(O-%tBK$uDp_Tp#mVPZBAhkq*8O+$K7|}(duxJ4x-psXt z+-0MGbjqeE{_8_XE^#ke#)=ft{Dd?2cZ;6RMI@FFwF?_RElSnu;MF3SuFxrXOQyXR z^u0H%KXb*NYP3BW^gL+uh~Aq9oY>{`nFf4Z^V59dE_byt228{ZV)wO%2bb)2HMNQv^3*5a2)F27X#5xM1~ zv}MPfCy+i4?{65|PG=`6Z|Xl~7dp$owyACLAvA###u~a6k1qfvEhUgSjSy9_3s$ug zO|}tX9YW$JycdMCiORthuOF7Iru2L@;xc zYC-A0?D^|4Qiq>el%0D@R_Za5;8IcWgUCF81gGX5o3h!QVl{E{WF6+PQU8NFj19yP z29&%y(C5E1+26hf13bvw*MQshS6yTagut~rWZo+&a#sWe9r#Qtsg&A|60ycZLPPEQ ztr4A$Sz8;!)0567FITIb*Y3>q0MH+2&qz(IP2O1ruc8EJT ztNd!gkZ}1StjMBT`|kMcm%b;UF$FQ@nqmxNOp0tU#)NJFYWl%D8bsjA}(c)zVB-F5{pj95?g?^boDC z`Fd26a)QxM34=Oy%6sp*8jCN#FV1faK4w)t(0Db`^=sn1QAetN@y*M|{ zOe~On2;xCL5O*Y*I;VC6JZdW3_zvv!P6SPSP%AmYCDA?4ykFo76U&r+Xyg}6$-KP> zn?*_#FPWZTmvp~e6UI6wcRj_vxN$$}(2Wx0GYak)YF0c2gWhvQ(inoyVpZQL4()oI z0#Cp>Mls{v<4HOgc6gFu05mFpG*^>UImwRJ4h%DNPiLr$SeY_pUS&$NnM#VBq(Y@E z=gX`igEtd)=RV#l^y+6#9^qbLr=c$!PE8XQ=sVXcRi`oU9|wbTl~OhKnk>;{VO7U? zRJP}+@ie2&j9p33a5XD+`dz6->9hI_lDMLYGlZBbAGhVt$mY2&8^-ppqdvL1WU12G zEUib$wJZ}R^P05o5$ab>=34)-x>zNU$X>}Ua?d4x-8F{7ztelsPI4m8kjQ`bES*<$#7Qxc%Yv(pI`RA36EomH^(bw8(aCMRy*2Z<6 zk|&*%+dVCH;Toqd%ROtmPY!w?(|9)-x-LDPE8Y%n{ME!Ew=y@MUMIdg;9@&k?;kSC z^|~J+dItL)zm+fsd}w>q&)1XS!E(PTdKtin{n^B@))60_?w6y*4sa21OZUU+>Q?^g zTNArlD-H#K{Cj@+_BHTzzW$T5$ItqF7%dGJr^v?T;)uvavlCtzR@4M3p{Fba6|fA6 z_neJ-g;0{l?V=A^`X^8pJFGUeZMi$@43ktwsf>p7=f`%+V9t26(Rg0mqT)zGfmk}^2~vNwJcZ_wnRzD9E~C4gPS6+|DV8JR+PakV}tgdnd!t> zm_jJHAtTefRpq@!>$B#;p-?o*EtL%XC2aiEV!pA%&G9)tYDFFkdbcH7PhC0>?LrUD ziLWZ<*BpU|0x4$hI5yw9`=hf(-|nr?Sc<@I{`I%v`Wt>9%=e4-!>uc}&ks%DaN-iX z(dwlX@DA?M6?=#d^aj`89yMh3C&|M=?z*cGHnD=r`nL0#f3jl9QdZECo0mM;*!;KK zd@Dg*g&}Y*-{W*8&}cinBxYEiKhs!S@aQJQp1>=x9h)fXS$g{`&kK6^ifqKQc7i^s z21UqfIIR8qUc^!kGj?7U|) z-|9&AWX&EkfSJv_tB$->SG;61$)8;e-UbD?vaW}3pB=$FyDv8th$O89;`JD>e}S$? z)2s!Z2JhQIX+<k~7>N$ZKChQx7N)tpw+N|Ua4q#3Np$!|?9 z+8R))?y+Q)oH8~L1(fQ@qq`N^_+oA%j;Ui$Blf_8DRd|V@x&2o2d0D|LzFXi=m&Yx z32(dqrC>%YG@%70`htr3gq6GvmdF2%Pq=uew5g8XUoy9%i9A4O(5o&#$JD8e0!NCIdr6`zgh=Mm9iU;n zor1;N@0L?mg=B)LEAT@ftYR%tx-Ezk!9O7uxBaM}DqY*TNnhHhSY5%>NfBn6qYY9l zg-WvJr1Me-4chnGg>@%$I@G~B^lR1UeUBDK-5rqZp| zbgJrWXIB65&nGdjYaCxv{%yo)=N{L#31;3rxNMqR1>Rx=!ZWxmcVJehaV{{|7uy_4 z9F+?TGj!v7-aH(aCwl4vc&=YJ{FjenyE^OKuzT9SX;tk{kIS{uRva_n7SD^%?)!VR zW8@Y@i}TH1mSgs%&a2ze?thHxjjsE>PDg%V_wC-MG+;RUa_jkJXHbto=WD&+v74vs zc|38RpO;XF}hv@j4nFNq#hJQL`bq-Ale0?ncZy?DUTgZ9U)j6M)der3~i(s zhDctdVcaS=^bY}#Uw-KrvZK*M%H(rrxeIIoHIYMDs+I`U3&Rg(G^MW@8g-*Gi=EmB zAKDMDg=4AByI^m)COud-Ng{6xz8$}@*)0t$y^&T zlg-Zv&gh3{S|7NKJAc3uWR43FmX3lPMLIATtsxI03saRLd@BaI38eIb(S>{E4_K6L zMNW1JHYttgNxDl!g~JUHM3N$YIVgU~aG(%G3dT=6L11D9WVupKLIZvgDnQmBL+}UMcYfNTqRY!AVp{$*URy>UGq-6_FW}@ES}7l@Bj~V7u)b8zoS7o zrOqd_6ppYmu*`BcU9&<1M=pmp_*W`9{pA;osMT`33K3=#VkTZ@4>ZZ&fcQ)S2yRTV zC(#-(A{Jj#X6RlR!NT*Tf~#$E(L1;d$p}U!3J7UL(Z79?@Afj59W&T8%9Vr6fwfUc zq*iF*&9D^EgBEIublmDgm8g>*5yeOeO|wora3`7_22fk5g7Y?nltRB{_@TWy!@3|S zwF6Uww+G8--Wgj+QFC?s6)MRi`@<3zMHHcv@St}qL*}~zcD=U;$kgi)BYp+3`YmEz zZxAd0@dzjkQ&+F9x@tsVgARoqO%qP$6@O!Z$2dP5!?99}J|-bso8+;IqWWoDVW_N{ zSVyCfA}Bq6nRH36syIfTU`(gkiQM-Xp8o7!C%~ft2HBkvD_ba|c?JD)!UMuvL$&E>)!782&_dWSUBC3+CB zA7)pNgtV)TKr@lqkY#Gx=k~~zy zjJ?bTGQYpVNvpv&f7L{Jn)GB7J!_rRkvs#BJaDqY;U6tR;*f=GEydY}YJPuSHtR^1 zSm7TE`{M=MMyH`W;m*EN#r4TLi^c&{r8QRM49#opK|LNEbt(Xpxi$99F11qQ3?RXH z`R4_BGMyxER)ym~6PNNSgGG8d<;L}{`0foEw)|Ow;S-XSGw?&Z)g^M z?@s^a5AaSF<&Y!23e4f!)3;fVPgXqMb5JLntP(=F#}c-w_g~3 z&0~k#gbT3^Y-hOYpAsv=gNXg1ZN(G89Do*=oKsA9LX>8kQiUfxrV}vznFIvOaqYqA z2A>JpWy@XJgm!>R*o50{=t;Xk(j`b=6pe#VH~?36W)R&Joo7WUxWJVBIfnvri;Y>0 zOil|FomdNDtPIUqCXBY)DPoMHf&+9we*OO@H3uIO;u^**D*y5Bfq?I-z8D2zi29PMSssO@h;1DRI7U(D7r^EmR2bPsFe1dO}}a4y>oVb zZNI#4?p(ckW!^$KoOU+r#u@WwPhe(`d-ExIzPNlx?03%|qUMWEVfYVvB;~uD{!yjz zR5Zq;W!gXyS*@r}r#0K?5XDtC~(&5-4f;%VSlF#Rw+hUX+*ywNzXF zPc;clU=J=oBR}TgU1(Te4G%wKKZckdmNvdUS>m;%@^ z#`v{xE!cI1fHIdt7JhYH=pVN;^9e>`_P7ac|AeYsjiws9c&87pIu8<76DaZKaD$bx z*{gjVV$L>rI1Om2dUOU@k{T~RIQ|ww=sa~<#>)H~Z^2tu(pl;bVq6BT;DgEl81UJJ zYQN_~fe?P=P6#nXky~MnfCJQN@o@IqJF0`i1|W~JE@yp%^!mC9c2)8{OPV;>yr#I+ zBYZL*9u>EW^u=gIN)zll)I^{Ok`Z`kD_BLPNdY4E8F%5q;6L0mxp*F=sSjAcyYRyw z{chtZEj0R>gaxFSc{)GTDj{%|aue9{QDL9coGpX9e`*9V^@kzT>w#(O$U!f(IfL8Jv-*t(GKnkMkErarFT5?v$@ zT67-}F}`R~y@J~+Pja7_ZSrIu!Tb&5*-OU~c8yFe07dILH_xRk{uz3tQ+yasl+1_* z!Zt&=kykvW4k*))04tYW50IeW0nb)#$K>+w>O|=YwMDGA7QfHZzQq=p3y)G+nr50p zxhzAe+-3{odF;ssMU(mRi&y1#RTE|$3@F!5ABWmljT1)o4YBC;l5|$84eVMP$up*m zEcDH&#eKOKS4_-x!wDTC-TI3O2@Op`fp-%-?nq3P-}ynrSh&LXRIn^l{Js5 zbFM0pOF5J3V^?m@jQS*L(3pK3&!d%BgVRPy4(D6W8A!=%E-q}Ji)up6-%Q`HJGG`N z8l)4pkgPf=T!Ex*bTzBhQij7Yqo9-8|p> z*BP7Da#7t}tnY_?y=tkkQ(62xuBSa2(&9iJPCnnW^Y_WbJCvitYTr)#yWRKwU__K7 z3|oM1i>Lc%3q$6-{xJ^r<#wu+evCDO7}+h^?3d`KR<7){nv`C zcfL2wLIPdbnobJ>Wh1=QW^}O&QR$|-E1Y*<+PR*z)+6~t@!Cd%J*9pMwHvP-j;Kud9$Mu3I;2@8JKw*~x zHBsCv+iU24huJcgf(uzk2rStJs@RFJS&Om{BbB)#X@Ml!a@7Bnz%)30WISkZZQDe> z0g+q_K4>Dusx+6Q(FB4SHTC|mArzwtnDSAM8N zyI?V)(47%eW;ftyq|}AiR=}2@T924ofv&Ud$w23~Kr+GEziH6nRrPjOMClRY=R*M*^dJbeWO~CXVk-P&hrz#^>^pE9R~hY0#%u)sO=7a!(&gK^ z(EED*;Qz4rIpbUP@v_|K`~30X`#gAX(abL2LC4d6GU@$R(OgP1+{w%5IJ3SYkrohIQyKurCT=7Gt0AV>yD2bpd3{bR8~Ivj*2 zxaj${7^Gn5;(>{K`Q-Sc%j0oNb8Zu)9T?M~mf^mf9S6t^4i{VRx4E6ljt|(54(#<1 z9tQ6iJ$ACI$*Kh=$rQ2oq)^)BjNk!txQ#kY%20t^(my*k`MFLnK3vs0Ci%M#FE(9M zJ11oTk1iH1;~AL(*DfX9i|d(p0QTiQtM6BYG~?~ybPU?99p3mt_&DI>cDu#c@hoFZ z=ps+vLEVBOx9|~OBInQ|*>3ihnqm(9g+*L$2ApEGu`xP%TkjwC^132ibb1=89F)BEtdLTvcM-T#07y;(1e@g$V#XpEfADHNz zmWNa|CpLvvsPS{ah)?)AgCGk55SX2--PhbSwFGJ9>y z%$|m1GQH?U+q`jh1*eRYh(?xG>;g*?#RkanThW?SiZHdl2b>leUkF}I;uVp3YjP|0 z*#VsJ+eQ|7#kh~&3Vm8D-jw!aDouIAO2W9V041>6bW9bj?)HF9MZfZjU(1bTu}=F0 zr<8ol1q5~p%T7nlQ7QzuBfMKZ)TgPYcq0~8J?Uj9Kgd>gJ2+%rc)BA@Es~Vcjq2xJ zVOs@{2k-g3r|1j>4UbW3HlwSk5Bl!YQ{ZQdCm;>(lPqDRn9E+&PH>m zLG@+A+{rx1C2gT7iD#L*I0`Z&^c%%8FOC*#@7-oI$2D!7FL5-#mkTtrU!FQnqOY8a zH*`vKrcc~3k##;nwTiYH4s$n%Bj_VOVUr=`@@`wC|IdCbFtckRfZnCb$ zm6CNdzQ9@CdH%%Wk)@Ju-kN62#iR^x)#5v)As*A4W(A;4ZvvRyc|L{6EAIV>|502oL6O=*J0wGRg6JC?bYJ^*V+D-^5H*6!;0z$QBPIDX8T<8|_rpM4SNP!85)7RV z)x9Z1>9TYZ2wem*@m#HD`q}-M)$A=;Gq=`2Ei&eAAt)azMeABvZsnC36#6e8CP!Ip5Q9(SjGeieV`%EVtQ1s1P-bL&4Tjh z19MAh{5X4icIiqE%?OhPV zD$dC(-p8|UDyu*#ZVDo?qnOA_Nb;uW{2Hc-AlFzHoZP8Na;_<0%=wL(qX+XFGH{Wo z=YK}-3PA~ff_gv)=KFm%IWGY#JZG`(7>TULgWzQ3dTn>W7q1-r!6o z8AVk|>6~fEm=gflM5sSzrCVVu)umG_NRHVZ_IFSvF_oI*3v{IuDuiH# zb~aS(KP^d_k%XT>YrF&l1pYbUiPc6It%{@s?Wp@en}TF^Bh%=Ln}+0Y2&#{zLf0|G zpocMn-3K>BFd4X_br&isEhn#UZT&56J~d4AC`i(sDWJhB$0U$^D+SeDvdi$k<#r3qd@$f z+|W(Qxei}~3aB)IamU#q%h-mmE%8@hKniO?4B!u@(CJI8QlvsrUXx`y!jE*xl4u(* z0vbA!A6K+nPubwxB*?W1=IZw3q_YJ?gWiDgBVCk>#3N21gH?x!Z zhbuh~%!4oi9b4U`=+c))idZ5}lq+TFn=C}w8oi{7)0QZUdBB?$&t`CJG&dW}DCL}nISG|y8<4%;Z{T9CzxRl@`Q}?vs>H$PRL;DO? zxkS??Qde~r`ovwfFFCrz3(B?*9q3R_~I#lHL* z8i2j%Az^SUL(ztr+6ItUgUuUTW!&n0Bf^-^E6bi-nN2U}dZ?AfX%Q0ur{=$^m~>7r z^B2v`gQ-U&^PF1FSxqw&t#s-X*|T*~H~Xq$%z=HM8^=+*(Y-3fOU<*iyx8rAwgwon z+H1P3@L{cYajsrz2h*|BYV}|0^!@Wr7WxC!SIqseY$9MPs?8&Ha-_qu}ethq3 zEf+sxAn^9R$Y@@cpWNi&blqEc8?7fGpPJa>xx0BxLrnbUdRrUppLV-(w$F##Q@`zu z_r2z2j4SZZ$J=T|Ub&Ck>jnAPm1~ z61nv-m*VKdMOX|HKs)=DfM!1%;pPAmgaU^i>gNUu@);r08^NJbbHx8U&H|6r=4T!L zoxzg;4I}jd>~MxHD%F%$ofzDnb6@BmqH;SxMuper>pL zbfZmLhB~x41c2rhAWq}uoOxos$^{f;k=l`uuU+?fVAewp(1zt6UG`zIlcp~TDJ}KU zm7~D>!{Bp$x!EB7KRty1+ryv)BgC&0$l+p?BS82aB9yRXNNc4yl&oMyIfoiC628-L z{YSiVHMC4?>i$t18!HPFCyS@$>oHf@HTJyA(QSGkxHI1V#sK#KI6huW%$}!GNFI!z zTN14A>qXOw7bct|g1bS__z)p+2jtnK6}3>;>n@meSju=V#=n)ZKiT-MW%PC|f4ta* zFk^&%=H91vs@Or+Z6O>@L??M|=zSX4y@tlWzX0bDH(T#Emx9Uf*168C<9BmK8wtcN zK_xVQP4Kpz_b;W>7ce=}EY<-GHACmC2gku{jR`1c5ec=wlVbTAK7_VN0capQko_%! z_Agwx!vwvzp^`$3r_d?HaFx1&sTF+|?AtG(93GS+O(}*OLw~A<9aa6@b47eOq-xVD z!naG7YdMM3#gI~dh5f4RJ0n(?T*n%MZZiNE{uT4b?tgK0PSJ6I-QJJU*tV?+8r!zj zxUp^9X>6N~Z8mP~G{(d}^L}f+>s#mKYH~Gqd!D_2e^8!rEwpCCMKie`!9-hdO5z9Z zKL;Gd9{91Oo7JvwXQ`zJs%WLWC>hkg6y#oD7{u$V! z5)RBXi47`Yf=4wyLF9N^DfjL>%fxxY`CH>wquWX^qfx3wf9|p5X7G;=G1L*F0nvzd zfG@8JM(GWG5+R)K_d@E1RWy?48W+qK$rw`j)Qak`KU615P9ubjE_mT9dL#&@Z|&R4 zOX77E=4kGWv*6kC@UDC{biJ$AzFN_>cIsxXX0GmJx>iNzWkdi{O{&m~4@W{5e6`y+ z^)*Bk=_sw#ic0C;G=vQ;>p~Yahwn5;WqXP=28x8Jjr(Y_-l-*2PuS* zhW>hr?ZI7#qnoyQZ9&v{67fSUhC5g`Ey)JKgaUu;iM!|nF9`&#VduVB%z$2_-|W;* z0+f~nEoLmerUWel5F0oVMB*xQCQ%uz71@|qMEs{@8SIKCJLL=ZO<^877hU|=j)#IV zpVIxrmTGl-j-WW)wcfX3h96!=!$2X}pC4r3^^6r%o>dUfq0)rN(1iBx0#uy>l;QHC zc;+yJ^A)JOL|*03{m;MTncODLxN;ZDK#8%SfI-r8hB7A22-SVoiJ<%IrEx<1up!dc za{zOkuWo6M=7a$?6Y6=cZth}@hi+{h)Om{`-;YKfH4qS=sZqRYz%Tz=?DC)%`PU>} z{y?6gxXWst>kWb>?qDm0T8ebfiofNg?dS^)$a0os%a+Ky6m2-*g5!$g6`c;>a)nJGx3}XB(~oE6_+E8d25TXhI!v__V@R+aF8LW8ywwSKPTtI^enOMb9F)d z<7M0pS&>m2YA$36k7rwTy@+}~h z5toehReI2$+%0kViUR1}aL>%sfiz+ZjlpZOv;xZ026S2o)!C4gnZkB^a+f)hu(M!h zw_uqVp!}{2vxX>?&4+U{j`c)J{?Y;bG;cR{qZ}d-{gMOR#n84XrJ6B`V!^Gz4sx{Z zcPV#s$gce^#r`Keu-~!pdo^ZzyT;e0*6KxcZFAyqP3*LexUqKDs(O)kqqbh@@YA{W zIpCW6{j=f0!D#jKW2`s8SMTMw!_P1Gdf-r8%aK}EMvtnV;N4G(ODOnNk{G)kl=^Lm zy1!x5TZoFt@k)r{W-uXB?r7B>ru6PZ=VE9Idw;1>E140s@Pe2TD6p>wupPqEuSd8? z7T1NRk>NTp$Owm>VDLK8${G?VugGKgl2W+{%lB*sRUa3|D0Eoi~HvWxX*KcID?;GF31w1=tJ~k>!{n+IV}|Wie9;5HRKb;N;=!d6qb4?>r`C`sx8laPz-Ru3 z%Wg$aYz8Z?OE81oW}Unm8m#Z_pG^_XaQncFp&)My@%w%aj}J!;?GW?b@BX>j8WP|h zTb~20#Fmu-8V^TMZT2mcU$H%pm|Y$CZ=v#d2TXj+4+Iqye$BE^W7EuFm-ki4`7Z0e zRxz3MGPo29-I+VQ4jNBZ&rXNcO`pc6cJywR4s0F;9dg4i><~};F6Q4^u)1{6_*8Da zwvE14O`b9S;ZMHv5!nQX>toCFlh1ddt1rqgQQ8pWaQI=xl`{O3wQ~kD9Vc`zBpHe{ z?Puc>%RbLG+~}m|tPQO-mNX_JM(qF{cjCQXBPz!mPpe(Jk8p|29_&-JaaC&DrGo zv1;zb)bl9%-->@)HZu1g0QRK1o#2tzgc7XL=Mkj=cw$e{me1so`D3bI5ajhxw~+g> zd@?Jn@!pW}59a(XSlUg<3_H?T;iMh@(&0kk2YIofWPU-IcE#nWi&GV?rPB-B!+DJ> zKYsXm@X0cB>hxA6x3rW#dEmrz$-UN?G%B* zfGR@p6m-y7P(&CYjn`2lEttg55RPjj&HeC3K5g?^!G;ac$biv_pnsoWZo7-MtBb7| ze*6u9xAY@szJZ?Cl2q-BEUAw?3cv#w59lRPZ-l7=f>S{cA-Ic7KB7;yjVxb@+>4t; z95lctl}u?*nxmWKh-Vh0T&r3?RZhdopFxFuM2>n2QwXL0Bmvj#|7S>UEHy}`u_1x zy8J6$>t>zmUqF)#sV{?@nrxvQQ=4^a|L^ZhRo1P4>lS%kowF5xsL|?sr)?#gaYI5B zC{^?i+voc36{!{o{kswsj zhwQ?sy;2G5%CVBRr&^frPs<2!h)mgrd0&??! zd2(m6nS1q>PT5FaRdYENZ}L(bpqh!>i&tnXDW50T#QBJZC-5U#-m=h*ckYl;rWvQC zOO{<9t1|vfU&^nont4hmgL5nSx{4*!j>T^t@%=j!7`xkk~}_fjH8o@YzCZlcMmmDTaiU86AC%Qi_gh#msS1-Z`};C%D*zFx={e!1hjD=)SksK2Ux91 z#djh1-bCpb0>^BGPFdzt=S1m@BoljzLIoYoS=sG4?7`-G(o7pYN_u(q9$#(tA~r^@ z9Wwg54B9-Yd`?}D?*t2r)46qMGpkgmkzRps(j>Sco|V>v7(H&2}>t#1F8|ylrB<-mMI>hX`ALMjk3uv;;m6#zijFRsfat zXNcv006OWuZJ;XH#P(xf3FFj;VA)B62Kthu3ZHO`B5F?tBi`UGij#VTRWMn2RW{@K zAW(1bLXx#yFkXj5sWzr$SzN7}JTgsM1k_1uPT332U=!%PK0k=e7!X)@Vt)EMK8YL+ z3R^#;j3!9Tk%a1lkYtEADZ7@`TOFu5C$-*4EGysu2x>u~fNCErh)$xd(;jOgnanj8vc zYVDG1^BhZfdc87>vcJIYLH?~Ap4BYDo%F`d6mB771Hy5ALh0OV1-+9=&-t|1BEFx! zG!7jsFEax*9-wi4f8295r)xi@Qzxfa!#1mhcd-V1kQP-bi#4phW zx-Zu9Ra6Q80^n8~%9YfC&1(%uLMBG(;SoCUEaQyoN?CR>IG6^VIIN9uTopmS2;;*Y zL7SXzqn2^Ul0^P{D}Fv#SzrQOO7iazOajB2MM2gB@+lN5L#35)_-Vbr!NLH9o9MWf z!yf)it||*Y(9OePb7Qfum0&mJSzX3ClG(>7=$6nX z`si+6MO<+c@1Y5XecI|o#xL9#P2WlXcncztiL*1{=RIWCY~sg zXe?=}8sTP0C(VY|MBOcWyt6sH%WD1wJ^!NOLwT2VE45K!Ia#gN5>7g5CJNrd9DQ91 z>+6L!q^3iu=E*T&byg*G$NaZ8l3(rkpfD_};|!HaPSQ)=L<^?K-}G6ZUYKrfE&bfd zrx9+;~vc|E)^tmG?`v}ZVIhZ^&UJKB%`RGfD_KPRpB&Ui9e zwEL(91)$Vh5p;TC4O^Ld*$7vN;`qLeBuK-;VuvQ|;TB^#g5qW{1rUq$?#g)5l5NK4Mt$u!q|5BoBy;yBWovT)# z&z?;v+3FM7Z`^R2S{Di;+22c5y3je9V+J$Rj{yvX>7mvx`|`;PX{OF+0OlUw(Hb{A zOy;;H`?hH-EX88qQPNDV${gK}F2p1ihgD$tl4`l4EjR5Y{%MJ<@gkg^QeSaJ%B}x^b2|=w?j+5=*5d8>$-hRDVeHf-k+UZi`)7qHdC2)^zLpM)5w@g zDBRQctL@&hmT%Q%QuyTwTyw;BzXVo3-aS`0Wjr``|5?Hs>f`2i@xKCrQCb=C-Q7G~ z0T0zLKaH3+1%Erf-4E8@$$7A_Z1c6ce(eK4T;vWi40pPKuLEhnF)Tsm(r52|;D!|U zHh=r`)%?Sg(a!75^C(LK72KPheCd!L6{$O#sPy6HhD?`6?r*x8!m-e{tl78)V4>6UIQy_35;xYI?Tc~ zoe(sW;TQBkVf(=WpyF9?$FfEan(8ht{k&y2;#oytgcncgizM^IQ_#kfKp0ii5?A}e zA2NWSS`X(VSN6{+_wr|T0hNh#5j^z8YkhdvUkn|bt#UgX<+8Tp>!eU^T6QE?!koYF zwV-GL{kzm|-&W(kp4(3IceuX}B1QuQt6u(vyeF)>80E`kpQC-|jP+4b5XX+Wj*|X# zr-<>OSnw@UTM?}}PXbw$PDKiUL?_Wqf7Z8#I~}#{0KHs@DqSQ7jRacV1Ue09YTZ~m z9VzRWQ)i*<-bvkP>7QUyLX+tz^Uns_)(Fw75axiuj@HJ|=#SVcPYVsgN{He5=yG)t z@zVLjENO3~Upfi9u6q)>;%-7>?Bk8d&1oNlhsasoSoM`-w*?x$h>IQ zJE4=X!{;4B&w@=gL~hpuJ;jWD*S+C5i7zJdRck+13RUhCuUDz`S2I02s@9ThwEhGa-Lb~Gqw9G^_k@f;Nx6Z zx{`u$`H-i7WpjV1>rhR@4a3XdvA(!JF%mDS^yx}~vrfSOlH&PZDfwqUi(LtmGMVP& z51i8L9f!c_wES%e^T1(Lv@{T^*Q1Xnfc_h1*N+66fRzv-P4MWQj@6XTO?f5V$rynb zo0hQ@y^MGtQOG=56x2PHJmJU7C#YAcefR4-C=8-=c%=B7(6|9_(GW6zvf#oz(xGDh zpzDPDP+V9b6du|oJTLobiqJ9~{?Dq%!(+z?(3ib6KTDK@2SvQMhTD+?&A>ps3EX;5s*jQO1C7xI#7SMmgtk+V4k-vvDRh+}S`OzOp`To(LnOAI@2Bs4*GiUaT3CS=qz*LA8%$ zbzmRvg&_t(`Amw-f;#aa*8BnD=uXpMm?M1gB%-KLLps}Vuisdm%mGs%zZ`n?wzx`N zY4b`TG{Ih2#bKy`ycer{Yt#VBC=e1gm=kIfhxR_h(U6slO;UAo_F9_wLLRqnRntAg z;DniHK4)Pk%c)&+(Ll0(Vx%N}HwFLx5^4CNMB&*2^C5@KT3Sj?YdDX1&9mD+3_I{no^z|ie-tBK z#{H}38>Io{L0v4mKN`gy1f7;dd3_wyW`yC*Qiln>Zp>;p#uG-;od8A3^Sd65-LsZ})I9b$A@3$*!XW@_x8bFxRNqWga)FLWyv zEPYKm`8c!aYTZ>G8ZuklQ?@HLz^pgS=Q~^2Gq9x(c|9UniYLs~L7l3LydyO#T)DRH zr{)~ki!F2mX$6^WCkF7kmcg5uS-d|mXSFdGqj)o9P61Pw7IAV@*<4ln_+eWHxauaW zj^G~+najvj0Sg699hTs9gfOJ{=a)7QsS>6hEb6T7KB0K2Tp^qGs0x|p?kVeA96VHe z*5PYOl+ES8E+@S8q6gDTTFdqHb;>e>DJ`Q$G;^$3WL+VgNFqO>K@i#2(y6YQbWtar z%OHirAnnp-(tY`8mg{hi3rFCZ!D~D7tBB!C!e`AkVCZgs;a~Aqb4V)-GN%B^Pam(E zgO>@=(iCo#C-8puUWkK(JZ-=a>UIj!T2<=nd|h6MJGfg_V%+Lz@cah^KA#?S{rg%( z-NjG*G}`HTf8AdDjq=ruzB};1onYVlb}SSEmS7*?>H3i2Q2znkN=p#R{kr*x((;(y zq+`C0rCJK4bwgF_GbA_MR8DgFINDP+>f-)ckVbILuUyYanib)eTPj7#2GKjp9D) z2x@q7RapAdaUsL_0%yLWZ!}R5ve}O`Oz)QF<$VHuF9w6kp)UQM*YIVdXCVQjv~R24 z(?`JVIC5Ka)>oCXS;H~c@4H-i^NtbA>!sn)4vFT+UG{o_fc^UzHx>wWzxExxIIx&8 z69c}}-t?u5y0hRbe7bK8nmLk@&6*?io;I+ijzHsQyGAFJ!8k3u@+hSnSs(z@{` z4X@;lE~ND?6n&S?{B`QyCg^)bb`1(Dr4FJ#5YJzRi<*y%h{Nl?)y{r9kb5W9H-ejj zoqXokJyb%4HXROftP|2~OQ$rHQ*|J>_LyJzL0N?w>PwXMFJTXKZ4$A%;)NJO7=8!` zzVE#wQL3QI6NYNqmjPEzy$C8@11J|!=ny3tek+>|@NDCU+F)$8Czx+BDBDrOeMBbL zY7g1hQK^^c$7IyeOs$}6=+TY}Fn%z%QG(4phHya4#|krUkSHJwJFbw*7&`e1HBf@V zZNkNKhh9dI`iNK=&Nms`?%M~khf?d~WDwFRBH-Ax{V@~aIi`o>1C!LlQo0-1*E*Qk zh8v;Iq|;X>XFQwbH>fAHmAO1;=vy*!^Q+kN_t@)zanhnIFVS5x9HOlm#K|BB0t=40 zMD`1Mi{ut);e(ZZ`*Xlre3A6AFlpQZAe3LD;qp*^b+P9iV8|E|fp#WKU$lv5_UKm~ z$}#TXX5RQ)FGM>Dz*{qGolq1J6xN$a3B%yXHd`>3@<^4HpRoQcvb-HnrxQz!JE$Ci zr3oXJKq65IR7`kt=tO_SmEs;j)=gu)Q`~sHSowq->lEc0EJk3Ncy+@=BV4hLq#{}W z@h#u#Dg#Ylc)Ob%9g-}~C&`cPuvz^IlK4R{=oyynD@qrrKKK!(t zNxxT;^CVB#QcdMvyIyw;Nw=9^(0~VUPur|q?A-aoFzg;OS*P{g?bW*Wuetj7`$=oa z!0pnsX{$8m5a*SeOc`0nOr&P&jxMl@Wk7C$Vz&y?XDjpWoiqU+4J=IDKq|OgRv5d)}Rlb~!lo!7hBQ zt_tyYLh|&FU9-Fchh9n@W_|epn@Wev5=8{$@U^&_G|`(1dmcYBA;m}G#CXK9;{J@l z(&j+&&*LTq1P&4OH@{8<3+5D%C|rxM>at#F*0dwfR!RNIQpu6!Da9O|iXlC`mc+Rl zD6-4czFMS2f=={x$Vb*b}J z_5G7pRX~^8$6HU)4)wQyF0JR|WG4$@ew~RX9C(A)EF7_@sec?oo8#}E<;NsXXJ0QB zuOvpRUmq%`*9UHWhU{}BvaaqGy>gZYg&4YzVlJyAnBl`EZxPv$MJcOfDeofb!pe`- z{oKY>e2qtZsA+*P*F))-Qt4NcX_v!Cb~Kn*)Tx)FT2c$TyETfG)%ldfRB}>Q`$M8X zP$bqQcDV|8I7w|J2wTa6bvt1V@WhzF)fhxVfwa1AfJXK#eGI9JZxmcoN!jz8$k8~RvkO5AH`K3ja5|{v{Z1z z=KcoN#8A2qCo1kwJZZOFw@j96##1bw(aZR&q_AzIvaP0f{K@KGI;evHtmd<=W_(o% znK!c76>|IavbZ^s9&9PUb`3#;kx05^_;93qqvNb|U=ySms#ASfrR!6~Fi*J(NNO$kgiDLw5C&ih;f~&l$b>XpXrONMB2JOeZHE5yA}bMI z*H+rE8$0u8oGv6BQY@R!pwyO2bSTbrcTuHisd@nQG9){3EA?g;Y{|^qm%)7~GX`L8 zv83Y!nnROne>!TSrtc$}Jd=5z&#MaKuAuX5v+ifyw$F(KBUQA(IRS|)d7z5cgXLm0 z&sI}PL_Af%!mkr7>m(Z>C%QQii%3M9^@_KcR!}_?WR5JVyb=P&8a! zWX3>_xXorwP(bBV!1*@cx*`0~l}Pj^OqBFXjCDbW@sumhJ3_K&tZb7C`L_GNXRDKoaTq=LIsC`CMj&7*|ldG<}8g}E>$G*{l zveN}TJXb3e+zE5qign`m8Od^y^M#5$NGVY8hN4M^93c!SfR_KqGM{S}ja z{R|jVJ(W<`=jC|t5h6#@+i~-`K|n%X7vSl8nK8B+@NoqkBT?*m`@A?zQ!5WkUT3wn zLu}-VUx66(*lia8?16=FPJ?QDLqo(LNyT_158~Lq7t24w#m_4pAuF#9c^cv*Z^oJY zrZ`oY_uLgy706P7B~K03KDv@L6ZZ}E)BeyfvoJM!ygtMuY&6(N9x<=Kz_DTA*=4u`QBQdO^XNrft4 z&Dzt8=V)ea+NkdM)BpF`^;6X+mkRJreCwKIO+qu2 z__1vu^>YYFNSE$*a-s0|KCWS3;8#&?L)BI!y@!Uf{Je$Z6_@rWm-Ym*=K!_msiCR? z;O4usw^O%ZQAK_ku|*^@D^`fO40rf)wDB?pG#05O-Y-Km1%|lN)T^Pii!m*640_Y= zSSH&2NL6GPFmTOCllEk^-lsrtYt_Df0IfXXE~V@I(u}JYhRS^8fqFlb`TX>|qveRa8;{l2!cW+U@GC#Jo4u$;DVlhBLV|9N z6&Jsj168Bt)98i0!$bSVCi1)-g7{j<#m>fy6zNGK-cui}r*g~=4!LW3*(@gRz6vGp zHAJY_mY3cOt&i__AxCl{nK1&;2v=xM3$32D#2*+N2%n7;*jkeu z=zwYN5|j7eK(LAiv@GSH7?Pn%@4^nay=i9|n9b-S22jN|!&I&f0wQ7-Of|CN)Q=Rs zO)IoP`pGp(z(oOp$2=Y=$C@SiG~w{M__UhT)d6)2M_vcX0@j3zpt0(~?35RA5l0>< zx}Z6F!bQGlN=e7(Ip_v=C)ntYAkj%ovnHDYr3xh|K5LW8n8=JwMla@-bqVocA4Zm% zEdf{>-`HUM5cB#Ns~U|5kPy)dtt7eEgsNI^md}Khrm;oqqIYJacby?gOsHV0fI&S+ z4iCV+@J99%45Ngy^+g`OhICZ#>ukS$7j$BDFs2E=BAC00$9^9CRXy}80O?1~UnK*q znfLsUr8)Ay)uQITaG4J63w*l&i0qIM=hku0{Xw8s<2TAeJH{q@JP%xO{?Kkcc@p

vz#4K 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 literal 0 HcmV?d00001 diff --git a/CHANGELOG.md b/CHANGELOG.md index 5704e46d..f71d4ed4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## next + +- feat(handler): response interceptor + ## [v1.1.2](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.1.2) - fix(log error): handle optional target ([#523](https://github.com/chimurai/http-proxy-middleware/pull/523)) diff --git a/README.md b/README.md index ad33d661..1aa3595c 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,7 @@ _All_ `http-proxy` [options](https://github.com/nodejitsu/node-http-proxy#option - [app.use\(path, proxy\)](#appusepath-proxy) - [WebSocket](#websocket) - [External WebSocket upgrade](#external-websocket-upgrade) +- [Intercept and manipulate responses](#intercept-and-manipulate-responses) - [Working examples](#working-examples) - [Recipes](#recipes) - [Compatible servers](#compatible-servers) @@ -481,6 +482,39 @@ const server = app.listen(3000); server.on('upgrade', wsProxy.upgrade); // <-- subscribe to http 'upgrade' ``` +## Intercept and manipulate responses + +Intercept responses from upstream with `responseInterceptor`. (Make sure to set `selfHandleResponse: true`) + +Responses which are compressed with `brotli`, `gzip` and `deflate` will be decompressed automatically. The response will be returned as `buffer` ([docs](https://nodejs.org/api/buffer.html)) which you can manipulate. + +With `buffer`, response manipulation is not limited to text responses (html/css/js, etc...); image manipulation will be possible too. ([example](https://github.com/chimurai/http-proxy-middleware/blob/response-interceptor/recipes/response-interceptor.md#manipulate-image-response)) + +NOTE: `responseInterceptor` disables streaming of target's response. + +Example: + +```javascript +const { createProxyMiddleware, responseInterceptor } = require('http-proxy-middleware'); + +const proxy = createProxyMiddleware({ + /** + * IMPORTANT: avoid res.end being called automatically + **/ + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + /** + * Intercept response and replace 'Hello' with 'Goodbye' + **/ + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + const response = responseBuffer.toString('utf-8'); // convert buffer to string + return response.replace('Hello', 'Goodbye'); // manipulate response and return the result + }), +}); +``` + +Check out [interception recipes](https://github.com/chimurai/http-proxy-middleware/blob/response-interceptor/recipes/response-interceptor.md#readme) for more examples. + ## Working examples View and play around with [working examples](https://github.com/chimurai/http-proxy-middleware/tree/master/examples). @@ -489,6 +523,7 @@ View and play around with [working examples](https://github.com/chimurai/http-pr - express ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/express/index.js)) - connect ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/connect/index.js)) - WebSocket ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/websocket/index.js)) +- Response Manipulation ([example source](https://github.com/chimurai/http-proxy-middleware/blob/master/response-interceptor/examples/response-interceptor/index.js)) ## Recipes diff --git a/examples/response-interceptor/index.js b/examples/response-interceptor/index.js new file mode 100644 index 00000000..00215f5c --- /dev/null +++ b/examples/response-interceptor/index.js @@ -0,0 +1,82 @@ +// file deepcode ignore DisablePoweredBy: example code +// file deepcode ignore UseCsurfForExpress: example code + +/** + * Module dependencies. + */ +const express = require('express'); +const { createProxyMiddleware, responseInterceptor } = require('../../dist'); // require('http-proxy-middleware'); + +// test with double-byte characters +const favoriteFoods = [ + { + country: 'NL', + food: 'Kroket', + }, + { + country: 'HK', + food: '叉燒包', + }, + { + country: 'US', + food: 'Hamburger', + }, + { + country: 'TH', + food: 'ส้มตำไทย', + }, + { + country: 'IN', + food: 'बटर चिकन', + }, +]; + +/** + * Configure proxy middleware + */ +const jsonPlaceholderProxy = createProxyMiddleware({ + target: 'http://jsonplaceholder.typicode.com', + router: { + '/users': 'http://jsonplaceholder.typicode.com', + '/brotli': 'http://httpbin.org', + '/gzip': 'http://httpbin.org', + '/deflate': 'http://httpbin.org', + }, + changeOrigin: true, // for vhosted sites, changes host header to match to target's host + selfHandleResponse: true, // manually call res.end(); IMPORTANT: res.end() is called internally by responseInterceptor() + onProxyRes: responseInterceptor(async (buffer, proxyRes, req, res) => { + // log original request and proxied request info + const exchange = `[DEBUG] ${req.method} ${req.path} -> ${proxyRes.req.protocol}//${proxyRes.req.host}${proxyRes.req.path} [${proxyRes.statusCode}]`; + console.log(exchange); + + // log original response + // console.log(`[DEBUG] original response:\n${buffer.toString('utf-8')}`); + + // set response content-type + res.setHeader('content-type', 'application/json; charset=utf-8'); + + // set response status code + res.statusCode = 418; + + // return a complete different response + return JSON.stringify(favoriteFoods); + }), + logLevel: 'debug', +}); + +const app = express(); + +/** + * Add the proxy to express + */ +app.use(jsonPlaceholderProxy); + +app.listen(3000); + +console.log('[DEMO] Server: listening on port 3000'); +console.log('[DEMO] Open: http://localhost:3000/users'); +console.log('[DEMO] Open: http://localhost:3000/brotli'); +console.log('[DEMO] Open: http://localhost:3000/gzip'); +console.log('[DEMO] Open: http://localhost:3000/deflate'); + +require('open')('http://localhost:3000/users'); diff --git a/package.json b/package.json index 4bfd0703..30c5a6c0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.1.2", + "version": "1.2.0-beta.2", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/recipes/response-interceptor.md b/recipes/response-interceptor.md new file mode 100644 index 00000000..481f8310 --- /dev/null +++ b/recipes/response-interceptor.md @@ -0,0 +1,130 @@ +# Response Interceptor + +Intercept responses from upstream with `responseInterceptor`. (Make sure to set `selfHandleResponse: true`) + +Responses which are compressed with `brotli`, `gzip` and `deflate` will be decompressed automatically. Response will be made available as [`buffer`](https://nodejs.org/api/buffer.html) which you can manipulate. + +## Replace text and change http status code + +```js +const { createProxyMiddleware, responseInterceptor } = require('http-proxy-middleware'); + +const proxy = createProxyMiddleware({ + target: 'http://www.example.com', + changeOrigin: true, // for vhosted sites + + /** + * IMPORTANT: avoid res.end being called automatically + **/ + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + /** + * Intercept response and replace 'Hello' with 'Teapot' with 418 http response status code + **/ + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + res.statusCode = 418; // set different response status code + + const response = responseBuffer.toString('utf-8'); + return response.replace('Hello', 'Teapot'); + }), +}); +``` + +## Log request and response + +```javascript +const proxy = createProxyMiddleware({ + target: 'http://www.example.com', + changeOrigin: true, // for vhosted sites + + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + // log original request and proxied request info + const exchange = `[DEBUG] ${req.method} ${req.path} -> ${proxyRes.req.protocol}//${proxyRes.req.host}${proxyRes.req.path} [${proxyRes.statusCode}]`; + console.log(exchange); // [DEBUG] GET / -> http://www.example.com [200] + + // log complete response + const response = responseBuffer.toString('utf-8'); + console.log(response); // log response body + + return responseBuffer; + }), +}); +``` + +## Manipulate JSON responses (application/json) + +```javascript +const proxy = createProxyMiddleware({ + target: 'http://jsonplaceholder.typicode.com', + changeOrigin: true, // for vhosted sites + + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + // detect json responses + if (proxyRes.headers['content-type'] === 'application/json') { + let data = JSON.parse(responseBuffer.toString('utf-8')); + + // manipulate JSON data here + data = Object.assign({}, data, { extra: 'foo bar' }); + + // return manipulated JSON + return JSON.stringify(data); + } + + // return other content-types as-is + return responseBuffer; + }), +}); +``` + +## Manipulate image response + +Example [Lenna](https://en.wikipedia.org/wiki/Lenna) image: + +Proxy and manipulate image (flip, sepia, pixelate). + +[![Image of Lenna](../.github/docs/response-interceptor-lenna.png)](https://codesandbox.io/s/trusting-engelbart-03rjl) + +Check [source code](https://codesandbox.io/s/trusting-engelbart-03rjl) on codesandbox. + +Some working examples on /[relative wikimedia image path]: + +- Lenna - ([manipulated](https://03rjl.sse.codesandbox.io/wikipedia/en/7/7d/Lenna_%28test_image%29.png)) ([original](https://upload.wikimedia.org/wikipedia/en/7/7d/Lenna_%28test_image%29.png)). +- Starry Night - ([manipulated](https://03rjl.sse.codesandbox.io/wikipedia/commons/thumb/e/ea/Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg/1024px-Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg)) ([original](https://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg/1024px-Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg)). +- Mona Lisa - ([manipulated](https://03rjl.sse.codesandbox.io/wikipedia/commons/thumb/e/ec/Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg/800px-Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg)) ([original](https://upload.wikimedia.org/wikipedia/commons/thumb/e/ec/Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg/800px-Mona_Lisa%2C_by_Leonardo_da_Vinci%2C_from_C2RMF_retouched.jpg)). + +_You can just use any relative image path from and use the relative image path on to see the manipulated image._ + +```javascript +const Jimp = require('jimp'); // use jimp libray for image manipulation + +const proxy = createProxyMiddleware({ + target: 'https://upload.wikimedia.org', + changeOrigin: true, // for vhosted sites + + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + const imageTypes = ['image/png', 'image/jpg', 'image/jpeg', 'image/gif']; + + // detect image responses + if (imageTypes.includes(proxyRes.headers['content-type'])) { + try { + const image = await Jimp.read(responseBuffer); + image.flip(true, false).sepia().pixelate(5); + return image.getBufferAsync(Jimp.AUTO); + } catch (err) { + console.log('image processing error: ', err); + return responseBuffer; + } + } + + return responseBuffer; // return other content-types as-is + }), +}); + +// http://localhost:3000/wikipedia/en/7/7d/Lenna\_%28test_image%29.png +``` diff --git a/src/handlers.ts b/src/_handlers.ts similarity index 100% rename from src/handlers.ts rename to src/_handlers.ts diff --git a/src/handlers/index.ts b/src/handlers/index.ts new file mode 100644 index 00000000..b7e8b718 --- /dev/null +++ b/src/handlers/index.ts @@ -0,0 +1 @@ +export * from './public'; diff --git a/src/handlers/public.ts b/src/handlers/public.ts new file mode 100644 index 00000000..f5935888 --- /dev/null +++ b/src/handlers/public.ts @@ -0,0 +1 @@ +export { responseInterceptor } from './response-interceptor'; diff --git a/src/handlers/response-interceptor.ts b/src/handlers/response-interceptor.ts new file mode 100644 index 00000000..da94aee2 --- /dev/null +++ b/src/handlers/response-interceptor.ts @@ -0,0 +1,81 @@ +import type * as http from 'http'; +import * as zlib from 'zlib'; + +type Interceptor = ( + buffer: Buffer, + proxyRes: http.IncomingMessage, + req: http.IncomingMessage, + res: http.ServerResponse +) => Promise; + +/** + * Intercept responses from upstream. + * Automatically decompress (deflate, gzip, brotli). + * Give developer the opportunity to modify intercepted Buffer and http.ServerResponse + * + * NOTE: must set options.selfHandleResponse=true (prevent automatic call of res.end()) + */ +export function responseInterceptor(interceptor: Interceptor) { + return async function proxyRes( + proxyRes: http.IncomingMessage, + req: http.IncomingMessage, + res: http.ServerResponse + ): Promise { + const originalProxyRes = proxyRes; + let buffer = Buffer.from('', 'utf8'); + + // decompress proxy response + const _proxyRes = decompress(proxyRes, proxyRes.headers['content-encoding']); + + // concat data stream + _proxyRes.on('data', (chunk) => (buffer = Buffer.concat([buffer, chunk]))); + + _proxyRes.on('end', async () => { + // set original content type from upstream + res.setHeader('content-type', originalProxyRes.headers['content-type'] || ''); + + // call interceptor with intercepted response (buffer) + const interceptedBuffer = Buffer.from(await interceptor(buffer, originalProxyRes, req, res)); + + // set correct content-length (with double byte character support) + res.setHeader('content-length', Buffer.byteLength(interceptedBuffer, 'utf8')); + + res.write(interceptedBuffer); + res.end(); + }); + + _proxyRes.on('error', (error) => { + res.end(`Error fetching proxied request: ${error.message}`); + }); + }; +} + +/** + * Streaming decompression of proxy response + * source: https://github.com/apache/superset/blob/9773aba522e957ed9423045ca153219638a85d2f/superset-frontend/webpack.proxy-config.js#L116 + */ +function decompress(proxyRes: http.IncomingMessage, contentEncoding: string) { + let _proxyRes = proxyRes; + let decompress; + + switch (contentEncoding) { + case 'gzip': + decompress = zlib.createGunzip(); + break; + case 'br': + decompress = zlib.createBrotliDecompress(); + break; + case 'deflate': + decompress = zlib.createInflate(); + break; + default: + break; + } + + if (decompress) { + _proxyRes.pipe(decompress); + _proxyRes = decompress; + } + + return _proxyRes; +} diff --git a/src/http-proxy-middleware.ts b/src/http-proxy-middleware.ts index e7fec6e4..fe13c3bf 100644 --- a/src/http-proxy-middleware.ts +++ b/src/http-proxy-middleware.ts @@ -4,7 +4,7 @@ import type { Filter, Request, RequestHandler, Response, Options } from './types import * as httpProxy from 'http-proxy'; import { createConfig, Config } from './config-factory'; import * as contextMatcher from './context-matcher'; -import * as handlers from './handlers'; +import * as handlers from './_handlers'; import { getArrow, getInstance } from './logger'; import * as PathRewriter from './path-rewriter'; import * as Router from './router'; diff --git a/src/index.ts b/src/index.ts index 9e421cd6..79a95325 100644 --- a/src/index.ts +++ b/src/index.ts @@ -6,4 +6,6 @@ export function createProxyMiddleware(context: Filter | Options, options?: Optio return middleware; } +export * from './handlers'; + export { Filter, Options, RequestHandler } from './types'; diff --git a/test/e2e/_utils.ts b/test/e2e/_utils.ts index d056fba5..085ddcd5 100644 --- a/test/e2e/_utils.ts +++ b/test/e2e/_utils.ts @@ -1,7 +1,7 @@ import * as express from 'express'; import { Express, RequestHandler } from 'express'; -export { createProxyMiddleware } from '../../dist/index'; +export { createProxyMiddleware, responseInterceptor } from '../../dist/index'; export function createApp(middleware: RequestHandler): Express { const app = express(); diff --git a/test/e2e/http-proxy-middleware.spec.ts b/test/e2e/http-proxy-middleware.spec.ts index e1453f08..d7a2a0f3 100644 --- a/test/e2e/http-proxy-middleware.spec.ts +++ b/test/e2e/http-proxy-middleware.spec.ts @@ -407,12 +407,10 @@ describe('E2E http-proxy-middleware', () => { await mockTargetServer.get('/api/foo/bar').thenReply(200); await agent.get(`/api/foo/bar`).expect(200); - expect(logMessages).toMatchInlineSnapshot(` - Array [ - "[HPM] Proxy created: /api -> http://localhost:8000", - "[HPM] server close signal received: closing proxy server", - ] - `); + expect(logMessages).not.toBeUndefined(); + expect(logMessages.length).toBe(2); + expect(logMessages[0]).toContain('[HPM] Proxy created:'); + expect(logMessages[1]).toBe('[HPM] server close signal received: closing proxy server'); }); }); }); diff --git a/test/e2e/response-interceptor.spec.ts b/test/e2e/response-interceptor.spec.ts new file mode 100644 index 00000000..d6be7850 --- /dev/null +++ b/test/e2e/response-interceptor.spec.ts @@ -0,0 +1,73 @@ +import { createProxyMiddleware, responseInterceptor } from '../../src'; +import { createApp } from './_utils'; +import * as request from 'supertest'; + +describe('responseInterceptor()', () => { + let agent: request.SuperTest; + + describe('intercept responses', () => { + beforeEach(() => { + agent = request( + createApp( + createProxyMiddleware({ + target: `http://httpbin.org`, + changeOrigin: true, // for vhosted sites, changes host header to match to target's host + selfHandleResponse: true, + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + res.setHeader('content-type', 'application/json; charset=utf-8'); + return JSON.stringify({ foo: 'bar', favorite: '叉燒包' }); + }), + }) + ) + ); + }); + + it('should return totally different response from http://httpbin.org/json', async () => { + const response = await agent.get(`/json`).expect(200); + expect(response.body.foo).toEqual('bar'); + }); + + it('should return totally different response from http://httpbin.org/image', async () => { + const response = await agent + .get(`/image`) + .expect('Content-Type', 'application/json; charset=utf-8') + .expect(200); + expect(response.body.foo).toEqual('bar'); + }); + + it('should support double bytes characters http://httpbin.org/json', async () => { + const response = await agent.get(`/json`).expect(200); + expect(response.body.favorite).toEqual('叉燒包'); + }); + }); + + describe('intercept compressed responses', () => { + beforeEach(() => { + agent = request( + createApp( + createProxyMiddleware({ + target: `http://httpbin.org`, + changeOrigin: true, // for vhosted sites, changes host header to match to target's host + selfHandleResponse: true, + onProxyRes: responseInterceptor(async (buffer) => buffer), + }) + ) + ); + }); + + it('should return decompressed brotli response http://httpbin.org/brotli', async () => { + const response = await agent.get(`/brotli`).expect(200); + expect(response.body.brotli).toBe(true); + }); + + it('should return decompressed gzipped response from http://httpbin.org/gzip', async () => { + const response = await agent.get(`/gzip`).expect(200); + expect(response.body.gzipped).toBe(true); + }); + + it('should return decompressed deflated response from http://httpbin.org/deflate', async () => { + const response = await agent.get(`/deflate`).expect(200); + expect(response.body.deflated).toBe(true); + }); + }); +}); diff --git a/test/unit/handlers.spec.ts b/test/unit/handlers.spec.ts index 55789270..e8d5e195 100644 --- a/test/unit/handlers.spec.ts +++ b/test/unit/handlers.spec.ts @@ -1,4 +1,4 @@ -import { getHandlers } from '../../src/handlers'; +import { getHandlers } from '../../src/_handlers'; describe('handlers factory', () => { let handlersMap; From f5b95e18b87dfbfffb629990df5d770dc18074cb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 18 Apr 2021 14:21:14 +0200 Subject: [PATCH 02/77] docs(response interceptor): update links (#525) --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1aa3595c..13a0ce44 100644 --- a/README.md +++ b/README.md @@ -488,7 +488,7 @@ Intercept responses from upstream with `responseInterceptor`. (Make sure to set Responses which are compressed with `brotli`, `gzip` and `deflate` will be decompressed automatically. The response will be returned as `buffer` ([docs](https://nodejs.org/api/buffer.html)) which you can manipulate. -With `buffer`, response manipulation is not limited to text responses (html/css/js, etc...); image manipulation will be possible too. ([example](https://github.com/chimurai/http-proxy-middleware/blob/response-interceptor/recipes/response-interceptor.md#manipulate-image-response)) +With `buffer`, response manipulation is not limited to text responses (html/css/js, etc...); image manipulation will be possible too. ([example](https://github.com/chimurai/http-proxy-middleware/blob/master/recipes/response-interceptor.md#manipulate-image-response)) NOTE: `responseInterceptor` disables streaming of target's response. @@ -513,7 +513,7 @@ const proxy = createProxyMiddleware({ }); ``` -Check out [interception recipes](https://github.com/chimurai/http-proxy-middleware/blob/response-interceptor/recipes/response-interceptor.md#readme) for more examples. +Check out [interception recipes](https://github.com/chimurai/http-proxy-middleware/blob/master/recipes/response-interceptor.md#readme) for more examples. ## Working examples @@ -523,7 +523,7 @@ View and play around with [working examples](https://github.com/chimurai/http-pr - express ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/express/index.js)) - connect ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/connect/index.js)) - WebSocket ([example source](https://github.com/chimurai/http-proxy-middleware/tree/master/examples/websocket/index.js)) -- Response Manipulation ([example source](https://github.com/chimurai/http-proxy-middleware/blob/master/response-interceptor/examples/response-interceptor/index.js)) +- Response Manipulation ([example source](https://github.com/chimurai/http-proxy-middleware/blob/master/examples/response-interceptor/index.js)) ## Recipes From 455ba4735bb526813c007591c569f153da5a95a3 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 18 Apr 2021 14:45:46 +0200 Subject: [PATCH 03/77] docs(readme): update shields (#526) --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 13a0ce44..c40925b7 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@ # http-proxy-middleware -[![Build Status](https://img.shields.io/travis/chimurai/http-proxy-middleware/master.svg?style=flat-square)](https://travis-ci.org/chimurai/http-proxy-middleware) +[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/Test/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) [![Coveralls](https://img.shields.io/coveralls/chimurai/http-proxy-middleware.svg?style=flat-square)](https://coveralls.io/r/chimurai/http-proxy-middleware) [![dependency Status](https://img.shields.io/david/chimurai/http-proxy-middleware.svg?style=flat-square)](https://david-dm.org/chimurai/http-proxy-middleware#info=dependencies) [![dependency Status](https://snyk.io/test/npm/http-proxy-middleware/badge.svg?style=flat-square)](https://snyk.io/test/npm/http-proxy-middleware) -[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) +[![npm](https://img.shields.io/npm/v/http-proxy-middleware?color=%23CC3534&style=flat-square)](https://www.npmjs.com/package/http-proxy-middleware) Node.js proxying made simple. Configure proxy middleware with ease for [connect](https://github.com/senchalabs/connect), [express](https://github.com/strongloop/express), [browser-sync](https://github.com/BrowserSync/browser-sync) and [many more](#compatible-servers). From e2043455090493d3fface37ba4d69a8d11b15553 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 18 Apr 2021 15:03:59 +0200 Subject: [PATCH 04/77] fix(log error): handle undefined target when websocket errors (#527) --- CHANGELOG.md | 3 ++- src/http-proxy-middleware.ts | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f71d4ed4..1c53e02a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,8 @@ ## next -- feat(handler): response interceptor +- feat(handler): response interceptor ([#520](https://github.com/chimurai/http-proxy-middleware/pull/520)) +- fix(log error): handle undefined target when websocket errors ([#527](https://github.com/chimurai/http-proxy-middleware/pull/527)) ## [v1.1.2](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.1.2) diff --git a/src/http-proxy-middleware.ts b/src/http-proxy-middleware.ts index fe13c3bf..b93ae92f 100644 --- a/src/http-proxy-middleware.ts +++ b/src/http-proxy-middleware.ts @@ -183,10 +183,10 @@ export class HttpProxyMiddleware { } }; - private logError = (err, req: Request, res: Response, target) => { + private logError = (err, req: Request, res: Response, target?) => { const hostname = req.headers?.host || req.hostname || req.host; // (websocket) || (node0.10 || node 4/5) const requestHref = `${hostname}${req.url}`; - const targetHref = `${target.href}`; + const targetHref = `${target?.href}`; // target is undefined when websocket errors const errorMessage = '[HPM] Error occurred while proxying request %s to %s [%s] (%s)'; const errReference = 'https://nodejs.org/api/errors.html#errors_common_system_errors'; // link to Node Common Systems Errors page From 017ac01aa08bee2cb286e9f229b9fb78d406e4c5 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 18 Apr 2021 15:19:08 +0200 Subject: [PATCH 05/77] chore(package): v1.2.0 --- CHANGELOG.md | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c53e02a..6246898d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## next +## [v1.2.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.2.0) - feat(handler): response interceptor ([#520](https://github.com/chimurai/http-proxy-middleware/pull/520)) - fix(log error): handle undefined target when websocket errors ([#527](https://github.com/chimurai/http-proxy-middleware/pull/527)) diff --git a/package.json b/package.json index 30c5a6c0..ce079b0f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.2.0-beta.2", + "version": "1.2.0", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 88136d181d7ad8607b6cae84ce6a347962726627 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 24 Apr 2021 14:46:25 +0200 Subject: [PATCH 06/77] fix(response interceptor): proxy original response headers (#563) --- src/handlers/response-interceptor.ts | 34 +++++++++++++++++++++++++-- test/e2e/response-interceptor.spec.ts | 26 ++++++++++++++++++++ 2 files changed, 58 insertions(+), 2 deletions(-) diff --git a/src/handlers/response-interceptor.ts b/src/handlers/response-interceptor.ts index da94aee2..cb3c967f 100644 --- a/src/handlers/response-interceptor.ts +++ b/src/handlers/response-interceptor.ts @@ -31,8 +31,8 @@ export function responseInterceptor(interceptor: Interceptor) { _proxyRes.on('data', (chunk) => (buffer = Buffer.concat([buffer, chunk]))); _proxyRes.on('end', async () => { - // set original content type from upstream - res.setHeader('content-type', originalProxyRes.headers['content-type'] || ''); + // copy original headers + copyHeaders(proxyRes, res); // call interceptor with intercepted response (buffer) const interceptedBuffer = Buffer.from(await interceptor(buffer, originalProxyRes, req, res)); @@ -79,3 +79,33 @@ function decompress(proxyRes: http.IncomingMessage, contentEncoding: string) { return _proxyRes; } + +/** + * Copy original headers + * https://github.com/apache/superset/blob/9773aba522e957ed9423045ca153219638a85d2f/superset-frontend/webpack.proxy-config.js#L78 + */ +function copyHeaders(originalResponse, response) { + response.statusCode = originalResponse.statusCode; + response.statusMessage = originalResponse.statusMessage; + + if (response.setHeader) { + let keys = Object.keys(originalResponse.headers); + + // ignore chunked, brotli, gzip, deflate headers + keys = keys.filter((key) => !['content-encoding', 'transfer-encoding'].includes(key)); + + keys.forEach((key) => { + let value = originalResponse.headers[key]; + + if (key === 'set-cookie') { + // remove cookie domain + value = Array.isArray(value) ? value : [value]; + value = value.map((x) => x.replace(/Domain=[^;]+?/i, '')); + } + + response.setHeader(key, value); + }); + } else { + response.headers = originalResponse.headers; + } +} diff --git a/test/e2e/response-interceptor.spec.ts b/test/e2e/response-interceptor.spec.ts index d6be7850..1cfaf0aa 100644 --- a/test/e2e/response-interceptor.spec.ts +++ b/test/e2e/response-interceptor.spec.ts @@ -41,6 +41,32 @@ describe('responseInterceptor()', () => { }); }); + describe('intercept responses with original headers', () => { + beforeEach(() => { + agent = request( + createApp( + createProxyMiddleware({ + target: `http://httpbin.org`, + changeOrigin: true, // for vhosted sites, changes host header to match to target's host + selfHandleResponse: true, + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + return responseBuffer; + }), + }) + ) + ); + }); + + it('should proxy and return original headers from http://httpbin.org/cookies/set/cookie/monster', async () => { + return agent + .get(`/cookies/set/cookie/monster`) + .expect('Access-Control-Allow-Origin', '*') + .expect('Date', /.+/) + .expect('set-cookie', /.*cookie=monster.*/) + .expect(302); + }); + }); + describe('intercept compressed responses', () => { beforeEach(() => { agent = request( From 1704875df236bfa8ff156502436906cd84fc88bd Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 24 Apr 2021 14:50:09 +0200 Subject: [PATCH 07/77] chore(package): v1.2.1 --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6246898d..886d8229 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v1.2.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.2.1) + +- fix(response interceptor): proxy original response headers ([#563](https://github.com/chimurai/http-proxy-middleware/pull/563)) + ## [v1.2.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.2.0) - feat(handler): response interceptor ([#520](https://github.com/chimurai/http-proxy-middleware/pull/520)) diff --git a/package.json b/package.json index ce079b0f..87c3b05d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.2.0", + "version": "1.2.1", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 397f39f6010b1c6600042d31aca214d722b5c3ad Mon Sep 17 00:00:00 2001 From: Chris Midgley Date: Sat, 24 Apr 2021 14:03:25 +0100 Subject: [PATCH 08/77] feat: try to proxy body even after body-parser middleware (#492) * feat: try to keep body even after body-parser middleware * chore: don't shadow request * test: set correct form of bodyparser for json * feat: extract fixRequestBody to external handler * chore: lint * chore: pluralise middlewares, silence DeepCode bot * docs: mention fixRequestBody * added double byte character test Co-authored-by: chimurai <655241+chimurai@users.noreply.github.com> --- README.md | 20 +++++++++++++ package.json | 1 + src/handlers/fix-request-body.ts | 27 +++++++++++++++++ src/handlers/public.ts | 1 + test/e2e/_utils.ts | 6 ++-- test/e2e/http-proxy-middleware.spec.ts | 41 +++++++++++++++++++++++++- yarn.lock | 2 +- 7 files changed, 93 insertions(+), 5 deletions(-) create mode 100644 src/handlers/fix-request-body.ts diff --git a/README.md b/README.md index c40925b7..b2d1868d 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,7 @@ _All_ `http-proxy` [options](https://github.com/nodejitsu/node-http-proxy#option - [app.use\(path, proxy\)](#appusepath-proxy) - [WebSocket](#websocket) - [External WebSocket upgrade](#external-websocket-upgrade) +- [Intercept and manipulate requests](#intercept-and-manipulate-requests) - [Intercept and manipulate responses](#intercept-and-manipulate-responses) - [Working examples](#working-examples) - [Recipes](#recipes) @@ -482,6 +483,25 @@ const server = app.listen(3000); server.on('upgrade', wsProxy.upgrade); // <-- subscribe to http 'upgrade' ``` +## Intercept and manipulate requests + +Intercept requests from downstream by defining `onProxyReq` in `createProxyMiddleware`. + +Currently the only pre-provided request interceptor is `fixRequestBody`, which is used to fix proxied POST requests when `bodyParser` is applied before this middleware. + +Example: + +```javascript +const { createProxyMiddleware, fixRequestBody } = require('http-proxy-middleware'); + +const proxy = createProxyMiddleware({ + /** + * Fix bodyParser + **/ + onProxyReq: fixRequestBody, +}); +``` + ## Intercept and manipulate responses Intercept responses from upstream with `responseInterceptor`. (Make sure to set `selfHandleResponse: true`) diff --git a/package.json b/package.json index 87c3b05d..3e3c17c8 100644 --- a/package.json +++ b/package.json @@ -60,6 +60,7 @@ "@types/ws": "^7.4.0", "@typescript-eslint/eslint-plugin": "^4.19.0", "@typescript-eslint/parser": "^4.19.0", + "body-parser": "^1.19.0", "browser-sync": "^2.26.14", "connect": "^3.7.0", "eslint": "^7.23.0", diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts new file mode 100644 index 00000000..40c6c9e4 --- /dev/null +++ b/src/handlers/fix-request-body.ts @@ -0,0 +1,27 @@ +import { ClientRequest } from 'http'; +import type { Request } from '../types'; +import * as querystring from 'querystring'; + +/** + * Fix proxied body if bodyParser is involved. + */ +export function fixRequestBody(proxyReq: ClientRequest, req: Request): void { + if (!req.body || !Object.keys(req.body).length) { + return; + } + + const contentType = proxyReq.getHeader('Content-Type') as string; + const writeBody = (bodyData: string) => { + // deepcode ignore ContentLengthInCode: bodyParser fix + proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)); + proxyReq.write(bodyData); + }; + + if (contentType.includes('application/json')) { + writeBody(JSON.stringify(req.body)); + } + + if (contentType === 'application/x-www-form-urlencoded') { + writeBody(querystring.stringify(req.body)); + } +} diff --git a/src/handlers/public.ts b/src/handlers/public.ts index f5935888..dd7722a6 100644 --- a/src/handlers/public.ts +++ b/src/handlers/public.ts @@ -1 +1,2 @@ export { responseInterceptor } from './response-interceptor'; +export { fixRequestBody } from './fix-request-body'; diff --git a/test/e2e/_utils.ts b/test/e2e/_utils.ts index 085ddcd5..47a43aab 100644 --- a/test/e2e/_utils.ts +++ b/test/e2e/_utils.ts @@ -1,11 +1,11 @@ import * as express from 'express'; import { Express, RequestHandler } from 'express'; -export { createProxyMiddleware, responseInterceptor } from '../../dist/index'; +export { createProxyMiddleware, responseInterceptor, fixRequestBody } from '../../dist/index'; -export function createApp(middleware: RequestHandler): Express { +export function createApp(...middlewares: RequestHandler[]): Express { const app = express(); - app.use(middleware); + app.use(...middlewares); return app; } diff --git a/test/e2e/http-proxy-middleware.spec.ts b/test/e2e/http-proxy-middleware.spec.ts index d7a2a0f3..2b48142a 100644 --- a/test/e2e/http-proxy-middleware.spec.ts +++ b/test/e2e/http-proxy-middleware.spec.ts @@ -1,8 +1,9 @@ -import { createProxyMiddleware, createApp, createAppWithPath } from './_utils'; +import { createProxyMiddleware, createApp, createAppWithPath, fixRequestBody } from './_utils'; import * as request from 'supertest'; import { Mockttp, getLocal, CompletedRequest } from 'mockttp'; import { Request, Response } from '../../src/types'; import { NextFunction } from 'express'; +import * as bodyParser from 'body-parser'; describe('E2E http-proxy-middleware', () => { describe('http-proxy-middleware creation', () => { @@ -78,6 +79,44 @@ describe('E2E http-proxy-middleware', () => { }); }); + describe('basic setup with configured body-parser', () => { + it('should proxy request body from form', async () => { + agent = request( + createApp( + bodyParser.urlencoded({ extended: false }), + createProxyMiddleware('/api', { + target: `http://localhost:${mockTargetServer.port}`, + onProxyReq: fixRequestBody, + }) + ) + ); + + await mockTargetServer.post('/api').thenCallback((req) => { + expect(req.body.text).toBe('foo=bar&bar=baz'); + return { status: 200 }; + }); + await agent.post('/api').send('foo=bar').send('bar=baz').expect(200); + }); + + it('should proxy request body from json', async () => { + agent = request( + createApp( + bodyParser.json(), + createProxyMiddleware('/api', { + target: `http://localhost:${mockTargetServer.port}`, + onProxyReq: fixRequestBody, + }) + ) + ); + + await mockTargetServer.post('/api').thenCallback((req) => { + expect(req.body.json).toEqual({ foo: 'bar', bar: 'baz', doubleByte: '文' }); + return { status: 200 }; + }); + await agent.post('/api').send({ foo: 'bar', bar: 'baz', doubleByte: '文' }).expect(200); + }); + }); + describe('custom context matcher/filter', () => { it('should have response body: "HELLO WEB"', async () => { const filter = (path, req) => { diff --git a/yarn.lock b/yarn.lock index 646eff8f..52df8241 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1483,7 +1483,7 @@ blob@0.0.5: resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== -body-parser@1.19.0, body-parser@^1.15.2: +body-parser@1.19.0, body-parser@^1.15.2, body-parser@^1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== From 2831df925820b5ae9951ae0e865f760de366c262 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 24 Apr 2021 15:22:36 +0200 Subject: [PATCH 09/77] refactor(test-kit): rename _utils to test-kit (#564) --- test/e2e/express-router.spec.ts | 2 +- test/e2e/http-proxy-middleware.spec.ts | 2 +- test/e2e/path-rewriter.spec.ts | 2 +- test/e2e/response-interceptor.spec.ts | 2 +- test/e2e/router.spec.ts | 2 +- test/e2e/{_utils.ts => test-kit.ts} | 0 test/e2e/websocket.spec.ts | 2 +- 7 files changed, 6 insertions(+), 6 deletions(-) rename test/e2e/{_utils.ts => test-kit.ts} (100%) diff --git a/test/e2e/express-router.spec.ts b/test/e2e/express-router.spec.ts index d4534e99..f5bcf99f 100644 --- a/test/e2e/express-router.spec.ts +++ b/test/e2e/express-router.spec.ts @@ -1,6 +1,6 @@ import * as express from 'express'; import * as http from 'http'; -import { createProxyMiddleware } from './_utils'; +import { createProxyMiddleware } from './test-kit'; import { Options } from '../../src/index'; describe('Usage in Express', () => { diff --git a/test/e2e/http-proxy-middleware.spec.ts b/test/e2e/http-proxy-middleware.spec.ts index 2b48142a..4685cc07 100644 --- a/test/e2e/http-proxy-middleware.spec.ts +++ b/test/e2e/http-proxy-middleware.spec.ts @@ -1,4 +1,4 @@ -import { createProxyMiddleware, createApp, createAppWithPath, fixRequestBody } from './_utils'; +import { createProxyMiddleware, createApp, createAppWithPath, fixRequestBody } from './test-kit'; import * as request from 'supertest'; import { Mockttp, getLocal, CompletedRequest } from 'mockttp'; import { Request, Response } from '../../src/types'; diff --git a/test/e2e/path-rewriter.spec.ts b/test/e2e/path-rewriter.spec.ts index 7941847d..0b0de362 100644 --- a/test/e2e/path-rewriter.spec.ts +++ b/test/e2e/path-rewriter.spec.ts @@ -1,4 +1,4 @@ -import { createProxyMiddleware, createApp } from './_utils'; +import { createProxyMiddleware, createApp } from './test-kit'; import * as request from 'supertest'; import { getLocal, Mockttp } from 'mockttp'; diff --git a/test/e2e/response-interceptor.spec.ts b/test/e2e/response-interceptor.spec.ts index 1cfaf0aa..561a7791 100644 --- a/test/e2e/response-interceptor.spec.ts +++ b/test/e2e/response-interceptor.spec.ts @@ -1,5 +1,5 @@ import { createProxyMiddleware, responseInterceptor } from '../../src'; -import { createApp } from './_utils'; +import { createApp } from './test-kit'; import * as request from 'supertest'; describe('responseInterceptor()', () => { diff --git a/test/e2e/router.spec.ts b/test/e2e/router.spec.ts index 21922755..f8c9742b 100644 --- a/test/e2e/router.spec.ts +++ b/test/e2e/router.spec.ts @@ -1,4 +1,4 @@ -import { createProxyMiddleware, createApp, createAppWithPath } from './_utils'; +import { createProxyMiddleware, createApp, createAppWithPath } from './test-kit'; import { ErrorRequestHandler } from 'express'; import * as request from 'supertest'; import { getLocal, generateCACertificate, Mockttp } from 'mockttp'; diff --git a/test/e2e/_utils.ts b/test/e2e/test-kit.ts similarity index 100% rename from test/e2e/_utils.ts rename to test/e2e/test-kit.ts diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index cff1003a..fcc73c1d 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -3,7 +3,7 @@ import * as express from 'express'; import * as WebSocket from 'ws'; // tslint:disable-next-line: no-duplicate-imports import { Server as WebSocketServer } from 'ws'; -import { createProxyMiddleware } from './_utils'; +import { createProxyMiddleware } from './test-kit'; describe('E2E WebSocket proxy', () => { let proxyServer: http.Server; From 184aa4ab9d7ead0019467f208072bdedba67460e Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 24 Apr 2021 19:25:30 +0200 Subject: [PATCH 10/77] docs(response interceptor): align with nodejs default utf8 (#567) --- README.md | 2 +- examples/response-interceptor/index.js | 2 +- recipes/response-interceptor.md | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b2d1868d..95d96627 100644 --- a/README.md +++ b/README.md @@ -527,7 +527,7 @@ const proxy = createProxyMiddleware({ * Intercept response and replace 'Hello' with 'Goodbye' **/ onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { - const response = responseBuffer.toString('utf-8'); // convert buffer to string + const response = responseBuffer.toString('utf8'); // convert buffer to string return response.replace('Hello', 'Goodbye'); // manipulate response and return the result }), }); diff --git a/examples/response-interceptor/index.js b/examples/response-interceptor/index.js index 00215f5c..92de8ae3 100644 --- a/examples/response-interceptor/index.js +++ b/examples/response-interceptor/index.js @@ -50,7 +50,7 @@ const jsonPlaceholderProxy = createProxyMiddleware({ console.log(exchange); // log original response - // console.log(`[DEBUG] original response:\n${buffer.toString('utf-8')}`); + // console.log(`[DEBUG] original response:\n${buffer.toString('utf8')}`); // set response content-type res.setHeader('content-type', 'application/json; charset=utf-8'); diff --git a/recipes/response-interceptor.md b/recipes/response-interceptor.md index 481f8310..5c1c99b5 100644 --- a/recipes/response-interceptor.md +++ b/recipes/response-interceptor.md @@ -24,7 +24,7 @@ const proxy = createProxyMiddleware({ onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { res.statusCode = 418; // set different response status code - const response = responseBuffer.toString('utf-8'); + const response = responseBuffer.toString('utf8'); return response.replace('Hello', 'Teapot'); }), }); @@ -45,7 +45,7 @@ const proxy = createProxyMiddleware({ console.log(exchange); // [DEBUG] GET / -> http://www.example.com [200] // log complete response - const response = responseBuffer.toString('utf-8'); + const response = responseBuffer.toString('utf8'); console.log(response); // log response body return responseBuffer; @@ -65,7 +65,7 @@ const proxy = createProxyMiddleware({ onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { // detect json responses if (proxyRes.headers['content-type'] === 'application/json') { - let data = JSON.parse(responseBuffer.toString('utf-8')); + let data = JSON.parse(responseBuffer.toString('utf8')); // manipulate JSON data here data = Object.assign({}, data, { extra: 'foo bar' }); From 86586df98045476aa5d01cdf16c8ff20e5274b44 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 24 Apr 2021 19:39:08 +0200 Subject: [PATCH 11/77] build(package): always clean on build (#568) --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 3e3c17c8..b2585940 100644 --- a/package.json +++ b/package.json @@ -15,11 +15,12 @@ "eslint:fix": "yarn eslint --fix", "prettier": "prettier --list-different \"**/*.{js,ts,md,yml,json,html}\"", "prettier:fix": "prettier --write \"**/*.{js,ts,md,yml,json,html}\"", + "prebuild": "yarn clean", "build": "tsc", "pretest": "yarn build", "test": "jest", "coverage": "jest --coverage --coverageReporters=lcov", - "prepare": "yarn clean && yarn build && rm dist/tsconfig.tsbuildinfo" + "prepare": "yarn build && rm dist/tsconfig.tsbuildinfo" }, "repository": { "type": "git", From 765d0b32e60bbf2ee22e33c0d3d7a878140b018e Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 25 Apr 2021 11:31:43 +0200 Subject: [PATCH 12/77] chore(github): issue forms (#569) --- .github/ISSUE_TEMPLATE/bug.yml | 46 ++++++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 ++++ .github/ISSUE_TEMPLATE/feature.yml | 12 ++++++++ 3 files changed, 63 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature.yml diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 00000000..c89e3b8c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,46 @@ +name: Bug report +description: 'Create a report to help us improve' +labels: bug +body: + - type: markdown + attributes: + value: 'Please note your issue will be closed without comment if do not fill out the issue checklist and provide ALL the requested information.' + - type: textarea + attributes: + render: shell + label: '`yarn why http-proxy-middleware` OR `npm ls http-proxy-middleware` output (mask private folder names with *****)' + validations: + required: true + - type: checkboxes + attributes: + description: Please verify that you've followed these steps. + options: + - label: I updated to latest `http-proxy-middleware`. + required: true + - type: textarea + attributes: + label: 'Describe the bug (be clear and concise)' + validations: + required: true + - type: textarea + attributes: + render: shell + label: 'Server and `http-proxy-middleware` configuration' + validations: + required: true + - type: markdown + attributes: + value: 'If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1' + - type: textarea + attributes: + label: 'Step-by-step reproduction instructions' + validations: + required: true + - type: textarea + attributes: + label: 'Expected behavior' + validations: + required: true + - type: textarea + attributes: + label: 'Additional context (optional)' diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..52e5dd04 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Get help in GitHub Discussions + url: https://github.com/chimurai/http-proxy-middleware/discussions + about: Have a question? The quickest way to get help is on http-proxy-middleware's GitHub Discussions! diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml new file mode 100644 index 00000000..e77f8224 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -0,0 +1,12 @@ +name: Feature Request +description: 'Suggest an idea for this project' +labels: feature +body: + - type: textarea + attributes: + label: "Describe the feature you'd love to see" + validations: + required: true + - type: textarea + attributes: + label: 'Additional context (optional)' From b47e0a56f67ae843ed57333d537515f34a16d5fc Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 25 Apr 2021 12:13:42 +0200 Subject: [PATCH 13/77] chore(github): update issue templates (#570) --- .github/ISSUE_TEMPLATE/bug_report.md | 53 +++++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 15 +++++++ 2 files changed, 68 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..ba26f269 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,53 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '[BUG]' +labels: '' +assignees: '' +--- + +Please note your issue will be closed without comment if do not fill out the issue checklist and provide ALL the requested information. + +**`yarn why http-proxy-middleware` OR `npm ls http-proxy-middleware` output (mask private folder names with \*\*\*\*\*)** + +```shell +# paste output here +``` + +**Please verify that you've followed these steps** + +[ ] - I've updated to latest `http-proxy-middleware`. + +**Describe the bug** + +A clear and concise description of what the bug is. + +**To Reproduce** + +If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1 + +**Step-by-step reproduction instructions** + +```text +1. ... +2. ... +``` + +**Expected behavior** + +A clear and concise description of what you expected to happen. + +**`http-proxy-middleware` configuration** + +```javascript +// paste code and configuration here +``` + +**Server (please complete the following information):** + +- OS: [e.g. MacOS, Windows] +- NodeJS version: [e.g. 12.4] + +**Additional context** + +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..83d5d457 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,15 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '[FEATURE]' +labels: '' +assignees: '' +--- + +**Describe the feature you'd love to see** + +A clear and concise description of the feature request + +**Additional context** + +Add any other context about the feature request here. From 98477732d3967a964758224f35ea937b9ef5e6f2 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 25 Apr 2021 20:20:47 +0200 Subject: [PATCH 14/77] docs(servers): order by github stars and npm downloads (#576) --- recipes/servers.md | 160 ++++++++++++++++++++++++--------------------- 1 file changed, 85 insertions(+), 75 deletions(-) diff --git a/recipes/servers.md b/recipes/servers.md index a571327d..9f33c332 100644 --- a/recipes/servers.md +++ b/recipes/servers.md @@ -6,47 +6,24 @@ Missing a server? Feel free to extend this list of examples. -- [Browser-Sync](#browser-sync) - [Express](#express) - [Connect](#connect) +- [Browser-Sync](#browser-sync) - [fastify](#fastify) -- [lite-server](#lite-server) - [Polka](#polka) +- [lite-server](#lite-server) - [grunt-contrib-connect](#grunt-contrib-connect) -- [grunt-browser-sync](#grunt-browser-sync) - [gulp-connect](#gulp-connect) +- [grunt-browser-sync](#grunt-browser-sync) - [gulp-webserver](#gulp-webserver) -## Browser-Sync - -https://github.com/BrowserSync/browser-sync -[![GitHub stars](https://img.shields.io/github/stars/BrowserSync/browser-sync.svg?style=social&label=Star)](https://github.com/BrowserSync/browser-sync) - -```javascript -const browserSync = require('browser-sync').create(); -const { createProxyMiddleware } = require('http-proxy-middleware'); - -const apiProxy = createProxyMiddleware('/api', { - target: 'http://www.example.org', - changeOrigin: true, // for vhosted sites -}); - -browserSync.init({ - server: { - baseDir: './', - port: 3000, - middleware: [apiProxy], - }, - startPath: '/api', -}); -``` - ## Express https://github.com/expressjs/express [![GitHub stars](https://img.shields.io/github/stars/expressjs/express.svg?style=social&label=Star)](https://github.com/expressjs/express) +![express downloads](https://img.shields.io/npm/dm/express) ```javascript const express = require('express'); @@ -67,6 +44,7 @@ app.listen(3000); https://github.com/senchalabs/connect [![GitHub stars](https://img.shields.io/github/stars/senchalabs/connect.svg?style=social&label=Star)](https://github.com/senchalabs/connect) +![connect downloads](https://img.shields.io/npm/dm/connect) ```javascript const http = require('http'); @@ -84,9 +62,35 @@ app.use(apiProxy); http.createServer(app).listen(3000); ``` +## Browser-Sync + +https://github.com/BrowserSync/browser-sync +[![GitHub stars](https://img.shields.io/github/stars/BrowserSync/browser-sync.svg?style=social&label=Star)](https://github.com/BrowserSync/browser-sync) +![browser-sync downloads](https://img.shields.io/npm/dm/browser-sync) + +```javascript +const browserSync = require('browser-sync').create(); +const { createProxyMiddleware } = require('http-proxy-middleware'); + +const apiProxy = createProxyMiddleware('/api', { + target: 'http://www.example.org', + changeOrigin: true, // for vhosted sites +}); + +browserSync.init({ + server: { + baseDir: './', + port: 3000, + middleware: [apiProxy], + }, + startPath: '/api', +}); +``` + ## fastify https://github.com/fastify/fastify [![GitHub stars](https://img.shields.io/github/stars/fastify/fastify.svg?style=social&label=Star)](https://github.com/fastify/fastify) +![fastify downloads](https://img.shields.io/npm/dm/fastify) ```javascript const fastify = require('fastify')({ logger: true }); @@ -111,10 +115,33 @@ const { createProxyMiddleware } = require('http-proxy-middleware'); // curl http://localhost:3000/users ``` +## Polka + +https://github.com/lukeed/polka +[![GitHub stars](https://img.shields.io/github/stars/lukeed/polka.svg?style=social&label=Star)](https://github.com/lukeed/polka) +![polka downloads](https://img.shields.io/npm/dm/polka) + +```javascript +const polka = require('polka'); +const { createProxyMiddleware } = require('http-proxy-middleware'); + +const app = polka(); + +app.use( + createProxyMiddleware({ + target: 'http://www.example.org', + changeOrigin: true, + }) +); + +app.listen(3000); +``` + ## lite-server https://github.com/johnpapa/lite-server [![GitHub stars](https://img.shields.io/github/stars/johnpapa/lite-server.svg?style=social&label=Star)](https://github.com/johnpapa/lite-server) +![lite-server downloads](https://img.shields.io/npm/dm/lite-server) File: `bs-config.js` @@ -138,31 +165,11 @@ module.exports = { }; ``` -## Polka - -https://github.com/lukeed/polka -[![GitHub stars](https://img.shields.io/github/stars/lukeed/polka.svg?style=social&label=Star)](https://github.com/lukeed/polka) - -```javascript -const polka = require('polka'); -const { createProxyMiddleware } = require('http-proxy-middleware'); - -const app = polka(); - -app.use( - createProxyMiddleware({ - target: 'http://www.example.org', - changeOrigin: true, - }) -); - -app.listen(3000); -``` - ## grunt-contrib-connect https://github.com/gruntjs/grunt-contrib-connect [![GitHub stars](https://img.shields.io/github/stars/gruntjs/grunt-contrib-connect.svg?style=social&label=Star)](https://github.com/gruntjs/grunt-contrib-connect) +![grunt-contrib-connect downloads](https://img.shields.io/npm/dm/grunt-contrib-connect) As an `Array`: @@ -211,10 +218,39 @@ grunt.initConfig({ }); ``` +## gulp-connect + +https://github.com/avevlad/gulp-connect +[![GitHub stars](https://img.shields.io/github/stars/avevlad/gulp-connect.svg?style=social&label=Star)](https://github.com/avevlad/gulp-connect) +![gulp-connect downloads](https://img.shields.io/npm/dm/gulp-connect) + +```javascript +const gulp = require('gulp'); +const connect = require('gulp-connect'); +const { createProxyMiddleware } = require('http-proxy-middleware'); + +gulp.task('connect', function () { + connect.server({ + root: ['./app'], + middleware: function (connect, opt) { + const apiProxy = createProxyMiddleware('/api', { + target: 'http://www.example.org', + changeOrigin: true, // for vhosted sites + }); + + return [apiProxy]; + }, + }); +}); + +gulp.task('default', ['connect']); +``` + ## grunt-browser-sync https://github.com/BrowserSync/grunt-browser-sync [![GitHub stars](https://img.shields.io/github/stars/BrowserSync/grunt-browser-sync.svg?style=social&label=Star)](https://github.com/BrowserSync/grunt-browser-sync) +![grunt-browser-sync downloads](https://img.shields.io/npm/dm/grunt-browser-sync) ```javascript const { createProxyMiddleware } = require('http-proxy-middleware'); @@ -241,37 +277,11 @@ grunt.initConfig({ }); ``` -## gulp-connect - -https://github.com/avevlad/gulp-connect -[![GitHub stars](https://img.shields.io/github/stars/avevlad/gulp-connect.svg?style=social&label=Star)](https://github.com/avevlad/gulp-connect) - -```javascript -const gulp = require('gulp'); -const connect = require('gulp-connect'); -const { createProxyMiddleware } = require('http-proxy-middleware'); - -gulp.task('connect', function () { - connect.server({ - root: ['./app'], - middleware: function (connect, opt) { - const apiProxy = createProxyMiddleware('/api', { - target: 'http://www.example.org', - changeOrigin: true, // for vhosted sites - }); - - return [apiProxy]; - }, - }); -}); - -gulp.task('default', ['connect']); -``` - ## gulp-webserver https://github.com/schickling/gulp-webserver [![GitHub stars](https://img.shields.io/github/stars/schickling/gulp-webserver.svg?style=social&label=Star)](https://github.com/schickling/gulp-webserver) +![gulp-webserver downloads](https://img.shields.io/npm/dm/gulp-webserver) ```javascript const gulp = require('gulp'); From 34468a161065cd147120390af799a556dc3494e2 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 25 Apr 2021 23:33:44 +0200 Subject: [PATCH 15/77] chore(package): v1.3.0 --- CHANGELOG.md | 5 +++++ package.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 886d8229..2cf32dd8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## [v1.3.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.3.0) + +- docs(response interceptor): align with nodejs default utf8 ([#567](https://github.com/chimurai/http-proxy-middleware/pull/567)) +- feat: try to proxy body even after body-parser middleware ([#492](https://github.com/chimurai/http-proxy-middleware/pull/492)) ([midgleyc](https://github.com/midgleyc)) + ## [v1.2.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.2.1) - fix(response interceptor): proxy original response headers ([#563](https://github.com/chimurai/http-proxy-middleware/pull/563)) diff --git a/package.json b/package.json index b2585940..66fe6a5c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.2.1", + "version": "1.3.0", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 6205977256d4c58909138b093464e01ef53bc95f Mon Sep 17 00:00:00 2001 From: jeff Date: Thu, 29 Apr 2021 02:38:48 +0800 Subject: [PATCH 16/77] fix(fix-request-body): make sure the content-type exists (#578) --- src/handlers/fix-request-body.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index 40c6c9e4..cc9d2776 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -17,7 +17,7 @@ export function fixRequestBody(proxyReq: ClientRequest, req: Request): void { proxyReq.write(bodyData); }; - if (contentType.includes('application/json')) { + if (contentType && contentType.includes('application/json')) { writeBody(JSON.stringify(req.body)); } From b78d5d4cbbc681e4c4d1b5257477f40974dc3b84 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 28 Apr 2021 20:41:36 +0200 Subject: [PATCH 17/77] chore(package): v1.3.1 --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2cf32dd8..b7fef565 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v1.3.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.3.1) + +- fix(fix-request-body): make sure the content-type exists ([#578](https://github.com/chimurai/http-proxy-middleware/pull/578)) ([oufeng](https://github.com/oufeng)) + ## [v1.3.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.3.0) - docs(response interceptor): align with nodejs default utf8 ([#567](https://github.com/chimurai/http-proxy-middleware/pull/567)) diff --git a/package.json b/package.json index 66fe6a5c..15495583 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.3.0", + "version": "1.3.1", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 76ce96e0a85c5df80f313030cedab47c9222023a Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 1 May 2021 15:29:20 +0200 Subject: [PATCH 18/77] chore: clean up (#583) --- .github/ISSUE_TEMPLATE.md | 136 -------------------------------------- .travis.yml | 15 ----- 2 files changed, 151 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE.md delete mode 100644 .travis.yml diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index aa986d4b..00000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,136 +0,0 @@ - - -### Is this a question? - -(write your question here) - - - -### Is this a bug report? - -(write your answer here) - - - -### Is this a feature request? - -(write your answer here) - - - -### Steps to reproduce - - - -(Write your steps here:) - -1. 2. 3. - -### Expected behavior - - - -(Write what you thought would happen.) - -### Actual behavior - - - -(Write what happened.) - -### Setup - - - -- http-proxy-middleware: _version_ -- http-proxy-middleware configuration -- server: _connect/express/browser-sync..._ + _version_ -- other relevant modules - -#### client info - - - -#### target server info - - - -### Reproducible Demo - - - -(Paste the link to an example project and exact instructions to reproduce the issue.) diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 1dda7b49..00000000 --- a/.travis.yml +++ /dev/null @@ -1,15 +0,0 @@ -dist: bionic -sudo: false -language: node_js -node_js: - - 'stable' - - '12' - - '10' -cache: yarn -stages: - - lint - - test -jobs: - include: - - stage: lint - script: yarn lint From 9d5a4fde78c076123ed1a1d733b4d06c44cc591a Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 2 May 2021 12:01:46 +0200 Subject: [PATCH 19/77] test(websocket): fix flaky tests (#584) --- test/e2e/websocket.spec.ts | 186 ++++++++++++++++++------------------- 1 file changed, 89 insertions(+), 97 deletions(-) diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index fcc73c1d..cd959c42 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -1,153 +1,145 @@ import * as http from 'http'; -import * as express from 'express'; import * as WebSocket from 'ws'; -// tslint:disable-next-line: no-duplicate-imports import { Server as WebSocketServer } from 'ws'; -import { createProxyMiddleware } from './test-kit'; +import { createProxyMiddleware, createApp } from './test-kit'; +import type { RequestHandler } from '../../src/types'; + +/******************************************************************** + * - Not possible to use `supertest` to test WebSockets + * - Make sure to use different port for each test to avoid flakiness + ********************************************************************/ describe('E2E WebSocket proxy', () => { let proxyServer: http.Server; - let ws; - let wss; - let responseMessage; - let proxy; + let ws: WebSocket; + let wss: WebSocketServer; + let proxyMiddleware: RequestHandler; + const WS_SERVER_PORT = 9000; beforeEach(() => { - proxy = createProxyMiddleware('/', { - target: 'http://localhost:9000', - ws: true, - pathRewrite: { '^/socket': '' }, - }); - - proxyServer = express().use(proxy).listen(3000); - - wss = new WebSocketServer({ port: 9000 }); + wss = new WebSocketServer({ port: WS_SERVER_PORT }); - wss.on('connection', function connection(websocket) { - websocket.on('message', function incoming(message) { + wss.on('connection', (websocket) => { + websocket.on('message', (message) => { websocket.send(message); // echo received message }); }); }); - afterEach((done) => { - proxyServer.close(() => { - done(); + beforeEach(() => { + proxyMiddleware = createProxyMiddleware('/', { + target: `http://localhost:${WS_SERVER_PORT}`, + ws: true, + pathRewrite: { '^/socket': '' }, }); - wss.close(); - ws = null; + }); + + afterEach(async () => { + return Promise.all([ + new Promise((resolve) => proxyServer.close(resolve)), + new Promise((resolve) => wss.close(resolve)), + new Promise((resolve) => resolve(ws.close())), + ]); }); describe('option.ws', () => { - beforeEach((done) => { - // need to make a normal http request, - // so http-proxy-middleware can catch the upgrade request - http.get('http://localhost:3000/', () => { - // do a second http request to make - // sure only 1 listener subscribes to upgrade request - http.get('http://localhost:3000/', () => { - ws = new WebSocket('ws://localhost:3000/socket'); - - ws.on('message', function incoming(message) { - responseMessage = message; - done(); - }); - - ws.on('open', function open() { - ws.send('foobar'); - }); - }); - }); + beforeEach(async (done) => { + const SERVER_PORT = 31000; + proxyServer = createApp(proxyMiddleware).listen(SERVER_PORT); + + // quick & dirty Promise version of http.get (don't care about correctness) + const get = async (uri) => new Promise((resolve, reject) => http.get(uri, resolve)); + + // need to make a normal http request, so http-proxy-middleware can catch the upgrade request + await get(`http://localhost:${SERVER_PORT}/`); + // do a second http request to make sure only 1 listener subscribes to upgrade request + await get(`http://localhost:${SERVER_PORT}/`); + + ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); + ws.on('open', done); }); - it('should proxy to path', () => { - expect(responseMessage).toBe('foobar'); + it('should proxy to path', (done) => { + ws.on('message', (message) => { + expect(message).toBe('foobar'); + done(); + }); + ws.send('foobar'); }); }); describe('option.ws with external server "upgrade"', () => { beforeEach((done) => { - proxyServer.on('upgrade', proxy.upgrade); + const SERVER_PORT = 32000; + proxyServer = createApp(proxyMiddleware).listen(SERVER_PORT); + proxyServer.on('upgrade', proxyMiddleware.upgrade); - ws = new WebSocket('ws://localhost:3000/socket'); + ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); + ws.on('open', done); + }); - ws.on('message', function incoming(message) { - responseMessage = message; + it('should proxy to path', async (done) => { + ws.on('message', (message) => { + expect(message).toBe('foobar'); done(); }); - - ws.on('open', function open() { - ws.send('foobar'); - }); - }); - - it('should proxy to path', () => { - expect(responseMessage).toBe('foobar'); + ws.send('foobar'); }); }); describe('option.ws with external server "upgrade" and shorthand usage', () => { - beforeEach(() => { - proxyServer.close(); + const SERVER_PORT = 33000; - // override - proxy = createProxyMiddleware('ws://localhost:9000', { - pathRewrite: { '^/socket': '' }, - }); + beforeEach(() => { + proxyServer = createApp( + createProxyMiddleware(`ws://localhost:${WS_SERVER_PORT}`, { + pathRewrite: { '^/socket': '' }, + }) + ).listen(SERVER_PORT); - proxyServer = express().use(proxy).listen(3000); + proxyServer.on('upgrade', proxyMiddleware.upgrade); }); beforeEach((done) => { - proxyServer.on('upgrade', proxy.upgrade); - - ws = new WebSocket('ws://localhost:3000/socket'); + ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); + ws.on('open', done); + }); - ws.on('message', function incoming(message) { - responseMessage = message; + it('should proxy to path', (done) => { + ws.on('message', (message) => { + expect(message).toBe('foobar'); done(); }); - - ws.on('open', function open() { - ws.send('foobar'); - }); - }); - - it('should proxy to path', () => { - expect(responseMessage).toBe('foobar'); + ws.send('foobar'); }); }); describe('with router and pathRewrite', () => { - beforeEach(() => { - proxyServer.close(); + const SERVER_PORT = 34000; + beforeEach(() => { // override - proxy = createProxyMiddleware('ws://notworkinghost:6789', { - router: { '/socket': 'ws://localhost:9000' }, - pathRewrite: { '^/socket': '' }, - }); - - proxyServer = express().use(proxy).listen(3000); + proxyServer = createApp( + createProxyMiddleware('ws://notworkinghost:6789', { + router: { '/socket': `ws://localhost:${WS_SERVER_PORT}` }, + pathRewrite: { '^/socket': '' }, + }) + ).listen(SERVER_PORT); + + proxyServer.on('upgrade', proxyMiddleware.upgrade); }); beforeEach((done) => { - proxyServer.on('upgrade', proxy.upgrade); - - ws = new WebSocket('ws://localhost:3000/socket'); + ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); + ws.on('open', done); + }); - ws.on('message', function incoming(message) { - responseMessage = message; + it('should proxy to path', (done) => { + ws.on('message', (message) => { + expect(message).toBe('foobar'); done(); }); - - ws.on('open', function open() { - ws.send('foobar'); - }); - }); - - it('should proxy to path', () => { - expect(responseMessage).toBe('foobar'); + ws.send('foobar'); }); }); }); From ab944a83cc017947690dd9672cf396e801c8aacd Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Mon, 3 May 2021 09:23:32 +0200 Subject: [PATCH 20/77] ci(github-actions): ci.yml (#587) --- .github/workflows/ci.yml | 97 +++++++++++++++++++++++++++++++++ .github/workflows/coveralls.yml | 25 --------- .github/workflows/lint.yml | 17 ------ .github/workflows/test.yml | 22 -------- README.md | 2 +- package.json | 1 + 6 files changed, 99 insertions(+), 65 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/coveralls.yml delete mode 100644 .github/workflows/lint.yml delete mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..43166513 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,97 @@ +name: CI + +on: ['push', 'pull_request'] + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js 16.x + uses: actions/setup-node@v2 + with: + node-version: 16.x + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn lint + run: yarn lint + + env: + CI: true + + test: + name: Test + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [12.x, 14.x, 16.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn test + run: yarn test + + env: + CI: true + + coverage: + name: Coverage + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js 16.x + uses: actions/setup-node@v2 + with: + node-version: 16.x + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn coverage + run: yarn coverage + + - name: Coveralls + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.github_token }} diff --git a/.github/workflows/coveralls.yml b/.github/workflows/coveralls.yml deleted file mode 100644 index 8fcb0000..00000000 --- a/.github/workflows/coveralls.yml +++ /dev/null @@ -1,25 +0,0 @@ -on: ['push', 'pull_request'] - -name: Coveralls - -jobs: - build: - name: coveralls/build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@master - - - name: Use Node.js 14.x - uses: actions/setup-node@master - with: - node-version: 14.x - - - name: yarn install, coverage - run: | - yarn install - yarn coverage - - - name: Coveralls - uses: coverallsapp/github-action@master - with: - github-token: ${{ secrets.github_token }} diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index d91a4f32..00000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: Lint - -on: ['push', 'pull_request'] - -jobs: - run-linters: - name: Run linters - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn lint diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index 34004dc4..00000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: Test - -on: ['push', 'pull_request'] - -jobs: - build: - name: Test with Node.js ${{ matrix.node-version }} - - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [10.x, 12.x, 14.x] - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn test diff --git a/README.md b/README.md index 95d96627..e214f656 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # http-proxy-middleware -[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/Test/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) +[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/CI/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) [![Coveralls](https://img.shields.io/coveralls/chimurai/http-proxy-middleware.svg?style=flat-square)](https://coveralls.io/r/chimurai/http-proxy-middleware) [![dependency Status](https://img.shields.io/david/chimurai/http-proxy-middleware.svg?style=flat-square)](https://david-dm.org/chimurai/http-proxy-middleware#info=dependencies) [![dependency Status](https://snyk.io/test/npm/http-proxy-middleware/badge.svg?style=flat-square)](https://snyk.io/test/npm/http-proxy-middleware) diff --git a/package.json b/package.json index 15495583..17a0769c 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "build": "tsc", "pretest": "yarn build", "test": "jest", + "precoverage": "yarn build", "coverage": "jest --coverage --coverageReporters=lcov", "prepare": "yarn build && rm dist/tsconfig.tsbuildinfo" }, From 6429b647fcbc4ac8f60c37a654e0d1c306fd2551 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 7 May 2021 19:41:01 +0200 Subject: [PATCH 21/77] chore(package): drop node 10 [BREAKING CHANGE] (#577) --- CHANGELOG.md | 4 ++++ package.json | 4 ++-- tsconfig.json | 4 ++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b7fef565..bfbf5e1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.0) + +- chore(package): drop node 10 [BREAKING CHANGE] ([#577](https://github.com/chimurai/http-proxy-middleware/pull/577)) + ## [v1.3.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v1.3.1) - fix(fix-request-body): make sure the content-type exists ([#578](https://github.com/chimurai/http-proxy-middleware/pull/578)) ([oufeng](https://github.com/oufeng)) diff --git a/package.json b/package.json index 17a0769c..935ff824 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "1.3.1", + "version": "2.0.0", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -88,7 +88,7 @@ "micromatch": "^4.0.2" }, "engines": { - "node": ">=8.0.0" + "node": ">=12.0.0" }, "husky": { "hooks": { diff --git a/tsconfig.json b/tsconfig.json index 93b32aaf..3eda4a1c 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,10 +1,10 @@ { "compilerOptions": { "outDir": "./dist", - "lib": ["es2015"], + "lib": ["es2019", "es2020.bigint", "es2020.string", "es2020.symbol.wellknown"], "module": "commonjs", "moduleResolution": "node", - "target": "es2015", + "target": "es2019", "incremental": true, "declaration": true }, From f2c49f1fd3f618b543775de682d7e2bd41593622 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 8 May 2021 12:38:30 +0200 Subject: [PATCH 22/77] chore(package): bump dev dependencies (#597) --- package.json | 34 +-- yarn.lock | 656 ++++++++++++++++++++++++++++----------------------- 2 files changed, 373 insertions(+), 317 deletions(-) diff --git a/package.json b/package.json index 935ff824..fa513419 100644 --- a/package.json +++ b/package.json @@ -51,34 +51,34 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^12.0.1", - "@commitlint/config-conventional": "^12.0.1", + "@commitlint/cli": "^12.1.1", + "@commitlint/config-conventional": "^12.1.1", "@types/express": "4.17.7", "@types/is-glob": "^4.0.1", - "@types/jest": "^26.0.22", + "@types/jest": "^26.0.23", "@types/micromatch": "^4.0.1", - "@types/node": "^14.14.37", - "@types/supertest": "^2.0.10", - "@types/ws": "^7.4.0", - "@typescript-eslint/eslint-plugin": "^4.19.0", - "@typescript-eslint/parser": "^4.19.0", + "@types/node": "^15.0.2", + "@types/supertest": "^2.0.11", + "@types/ws": "^7.4.2", + "@typescript-eslint/eslint-plugin": "^4.22.1", + "@typescript-eslint/parser": "^4.22.1", "body-parser": "^1.19.0", "browser-sync": "^2.26.14", "connect": "^3.7.0", - "eslint": "^7.23.0", - "eslint-config-prettier": "^8.1.0", - "eslint-plugin-prettier": "^3.3.1", + "eslint": "^7.25.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^3.4.0", "express": "^4.17.1", "husky": "^4.3.0", "jest": "^26.6.3", - "lint-staged": "^10.5.4", - "mockttp": "^1.2.0", - "open": "^7.4.2", + "lint-staged": "^11.0.0", + "mockttp": "^1.2.2", + "open": "^8.0.8", "prettier": "^2.2.1", "supertest": "^6.1.3", - "ts-jest": "^26.5.4", - "typescript": "^4.2.3", - "ws": "^7.4.4" + "ts-jest": "^26.5.6", + "typescript": "^4.2.4", + "ws": "^7.4.5" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index 52df8241..aeb39194 100644 --- a/yarn.lock +++ b/yarn.lock @@ -329,141 +329,141 @@ exec-sh "^0.3.2" minimist "^1.2.0" -"@commitlint/cli@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.0.1.tgz#8960e34e8f1aed8b2ea50f223ee817fdf2264ffb" - integrity sha512-V+cMYNHJOr40XT9Kvz3Vrz1Eh7QE1rjQrUbifawDAqcOrBJFuoXwU2SAcRtYFCSqFy9EhbreQGhZFs8dYb90KA== - dependencies: - "@commitlint/format" "^12.0.1" - "@commitlint/lint" "^12.0.1" - "@commitlint/load" "^12.0.1" - "@commitlint/read" "^12.0.1" - "@commitlint/types" "^12.0.1" +"@commitlint/cli@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.1.1.tgz#740370e557a8a17f415052821cdd5276ecb0ab98" + integrity sha512-SB67/s6VJ50seoPx/Sr2gj1fMzKrx+udgarecGdr8h43ah+M2e22gjQJ7xHv5KwyPQ+6ug1YOMCL34ubT4zupQ== + dependencies: + "@commitlint/format" "^12.1.1" + "@commitlint/lint" "^12.1.1" + "@commitlint/load" "^12.1.1" + "@commitlint/read" "^12.1.1" + "@commitlint/types" "^12.1.1" get-stdin "8.0.0" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^16.2.0" -"@commitlint/config-conventional@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-12.0.1.tgz#7bf3bbf68bda967c5165135ebe8f2055decf1a83" - integrity sha512-1ZhB135lh47zVmf1orwcjxuKuam11fJIH/bdVxW9XiQv8XPwC6iIp19knfl8FcOT78AVBnes1z6EVxgUeP2/4Q== +"@commitlint/config-conventional@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-12.1.1.tgz#73dd3b1a7912138420d248f334f15c94c250bc9e" + integrity sha512-15CqbXMsQiEb0qbzjEHe2OkzaXPYSp7RxaS6KoSVk/4W0QiigquavQ+M0huBZze92h0lMS6Pxoq4AJ5CQ3D+iQ== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-12.0.1.tgz#0ed5e997026db25eb080559b6e67f55a21eea080" - integrity sha512-XdBq+q1YBBDxWIAEjE3Y1YMbzhUnUuSLAEWD8SU1xsvEpQXWRYwDlMBRkjO7funNWTdL0ZQSkZDzme70imYjbw== +"@commitlint/ensure@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-12.1.1.tgz#bcefc85f7f8a41bb31f67d7a8966e322b47a6e43" + integrity sha512-XEUQvUjzBVQM7Uv8vYz+c7PDukFvx0AvQEyX/V+PaTkCK/xPvexu7FLbFwvypjSt9BPMf+T/rhB1hVmldkd6lw== dependencies: - "@commitlint/types" "^12.0.1" + "@commitlint/types" "^12.1.1" lodash "^4.17.19" -"@commitlint/execute-rule@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-12.0.1.tgz#5bb2eba929270cafb2bd8191799d8b451de7fb7e" - integrity sha512-JzyweYfZlFLtXpgP+btzSY3YAkGPg61TqUSYQqBr4+5IaVf1FruMm5v4D5eLu9dAJuNKUfHbM3AEfuEPiZ79pg== +"@commitlint/execute-rule@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-12.1.1.tgz#8aad1d46fb78b3199e4ae36debdc93570bf765ea" + integrity sha512-6mplMGvLCKF5LieL7BRhydpg32tm6LICnWQADrWU4S5g9PKi2utNvhiaiuNPoHUXr29RdbNaGNcyyPv8DSjJsQ== -"@commitlint/format@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-12.0.1.tgz#5164e5a9e8592c1983482cbd71e7ea86a645ff1b" - integrity sha512-rF79ipAxR8yFzPzG5tRoEZ//MRkyxCXj4JhpEjtdaCMBAXMssI8uazn3e5D8z4UFgSDe9qOnL0OmQvql7HTMoA== +"@commitlint/format@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-12.1.1.tgz#a6b14f8605171374eecc2c463098d63c127ab7df" + integrity sha512-bTAoOryTFLqls17JTaRwk2WDVOP0NwuG4F/JPK8RaF6DMZNVQTfajkgTxFENNZRnESfau1BvivvEXfUAW2ZsvA== dependencies: - "@commitlint/types" "^12.0.1" + "@commitlint/types" "^12.1.1" chalk "^4.0.0" -"@commitlint/is-ignored@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-12.0.1.tgz#0e59b0524e16300b1d9d62f8c138f083f22ebf9a" - integrity sha512-AplfLn5mX/kWTIiSolcOhTYcgphuGLX8FUr+HmyHBEqUkO36jt0z9caysH47fqU71ePtH63v1DWm+RYQ5RPDjg== +"@commitlint/is-ignored@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-12.1.1.tgz#6075a5cd2dcda7b6ec93322f5dbe2142cfbb3248" + integrity sha512-Sn4fsnWX+wLAJOD/UZeoVruB98te1TyPYRiDEq0MhRJAQIrP+7jE/O3/ass68AAMq00HvH3OK9kt4UBXggcGjA== dependencies: - "@commitlint/types" "^12.0.1" - semver "7.3.4" + "@commitlint/types" "^12.1.1" + semver "7.3.5" -"@commitlint/lint@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-12.0.1.tgz#a88b01c81cb6ca1867bd3d8fd288ba30017c2b7d" - integrity sha512-1lKyRCq4ahJrY+Xxo8LsqCbALeJkodtEfpmYHeA5HpPMnK7lRSplLqOLcTCjoPfd4vO+gl6aDEZN+ow3YGQBOg== +"@commitlint/lint@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-12.1.1.tgz#cdd898af6eadba8f9e71d7f1255b5a479a757078" + integrity sha512-FFFPpku/E0svL1jaUVqosuZJDDWiNWYBlUw5ZEljh3MwWRcoaWtMIX5bseX+IvHpFZsCTAiBs1kCgNulCi0UvA== dependencies: - "@commitlint/is-ignored" "^12.0.1" - "@commitlint/parse" "^12.0.1" - "@commitlint/rules" "^12.0.1" - "@commitlint/types" "^12.0.1" + "@commitlint/is-ignored" "^12.1.1" + "@commitlint/parse" "^12.1.1" + "@commitlint/rules" "^12.1.1" + "@commitlint/types" "^12.1.1" -"@commitlint/load@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-12.0.1.tgz#4d180fc88e5b4cfcb476a245d899f85154137502" - integrity sha512-dX8KdCWn7w0bTkkk3zKQpe9X8vsTRa5EM+1ffF313wCX9b6tGa9vujhEHCkSzKAbbE2tFV64CHZygE7rtlHdIA== +"@commitlint/load@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-12.1.1.tgz#5a7fb8be11e520931d1237c5e8dc401b7cc9c6c1" + integrity sha512-qOQtgNdJRULUQWP9jkpTwhj7aEtnqUtqeUpbQ9rjS+GIUST65HZbteNUX4S0mAEGPWqy2aK5xGd73cUfFSvuuw== dependencies: - "@commitlint/execute-rule" "^12.0.1" - "@commitlint/resolve-extends" "^12.0.1" - "@commitlint/types" "^12.0.1" + "@commitlint/execute-rule" "^12.1.1" + "@commitlint/resolve-extends" "^12.1.1" + "@commitlint/types" "^12.1.1" chalk "^4.0.0" cosmiconfig "^7.0.0" lodash "^4.17.19" resolve-from "^5.0.0" -"@commitlint/message@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-12.0.1.tgz#caff6743db78c30a063809501cf4b835c3ce7fa6" - integrity sha512-fXuoxRC+NT1wEQi6p8oHfT7wvWIRgTk+udlRJnWTjmMpiYzVnMmmZfasdShirWr4TtxQtMyL+5DVgh7Y98kURw== +"@commitlint/message@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-12.1.1.tgz#56eb1dbb561e85e9295380a46ff3b09bc93cac65" + integrity sha512-RakDSLAiOligXjhbLahV8HowF4K75pZIcs0+Ii9Q8Gz5H3DWf1Ngit7alFTWfcbf/+DTjSzVPov5HiwQZPIBUg== -"@commitlint/parse@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-12.0.1.tgz#ba8641f53e15b523808ba2eaa48c1bf0129c91c4" - integrity sha512-7oEGASmzBnHir5jSIR7KephXrKh7rIi9a6RpH1tOT+CIENYvhe8EDtIy29qMt+RLa2LlaPF7YrAgaJRfzG0YDQ== +"@commitlint/parse@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-12.1.1.tgz#3e49d6dc113d59cf266af0db99e320e933108c56" + integrity sha512-nuljIvAbBDr93DgL0wCArftEIhjSghawAwhvrKNV9FFcqAJqfVqitwMxJrNDCQ5pgUMCSKULLOEv+dA0bLlTEQ== dependencies: - "@commitlint/types" "^12.0.1" + "@commitlint/types" "^12.1.1" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.0.0" -"@commitlint/read@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-12.0.1.tgz#41f3295ed9f451d4c65223cd37ddd59ef714bddb" - integrity sha512-baa0YeD4QOctEuthLpExQSi9xPiw0kDPfUVHqp8I88iuIXJECeS8S1+1GBiz89e8dLN9zmEE+sN9vtJHdAp9YA== +"@commitlint/read@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-12.1.1.tgz#22a2d7fd1eab5e38b9b262311af28ac42f9a5097" + integrity sha512-1k0CQEoZIdixvmqZRKEcWdj2XiKS7SlizEOJ1SE99Qui5d5FlBey8eaooTGgmpR6zObpIHJehtEPzM3VzUT3qA== dependencies: - "@commitlint/top-level" "^12.0.1" - "@commitlint/types" "^12.0.1" + "@commitlint/top-level" "^12.1.1" + "@commitlint/types" "^12.1.1" fs-extra "^9.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-12.0.1.tgz#77509f386e08bd30262ec9a75c783d8f4f028fd2" - integrity sha512-Mvg0GDi/68Cqw893ha8uhxE8myHfPmiSSSi7d1x4VJNR4hoS37lBdX89kyx4i9NPmLfviY2cUJKTyK8ZrFznZw== +"@commitlint/resolve-extends@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-12.1.1.tgz#80a78b0940775d17888dd2985b52f93d93e0a885" + integrity sha512-/DXRt0S0U3o9lq5cc8OL1Lkx0IjW0HcDWjUkUXshAajBIKBYSJB8x/loNCi1krNEJ8SwLXUEFt5OLxNO6wE9yQ== dependencies: import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-12.0.1.tgz#1c81345f468597656141338a493d5e426e44dab9" - integrity sha512-A5O0ubNGugZR9WWxk5IVOLo07lpdUwhG5WkAW2lYpgZ7Z/2U4PLob9b4Ih1eHbQu+gnVeFr91k7F0DrpM7B8EQ== +"@commitlint/rules@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-12.1.1.tgz#d59182a837d2addf301a3a4ef83316ae7e70248f" + integrity sha512-oCcLF/ykcJfhM2DeeaDyrgdaiuKsqIPNocugdPj2WEyhSYqmx1/u18CV96LAtW+WyyiOLCCeiZwiQutx3T5nXg== dependencies: - "@commitlint/ensure" "^12.0.1" - "@commitlint/message" "^12.0.1" - "@commitlint/to-lines" "^12.0.1" - "@commitlint/types" "^12.0.1" + "@commitlint/ensure" "^12.1.1" + "@commitlint/message" "^12.1.1" + "@commitlint/to-lines" "^12.1.1" + "@commitlint/types" "^12.1.1" -"@commitlint/to-lines@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-12.0.1.tgz#586d89b9f9ff99ef93b3c8aa3d77faffbe3ffedc" - integrity sha512-XwcJ1jY7x2fhudzbGMpNQkTSMVrxWrI8bRMbVe3Abuu7RfYpFf7VXAlhtnLfxBoagaK7RxjC2+eRidp/3txQBg== +"@commitlint/to-lines@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-12.1.1.tgz#40fbed1767d637249ce49b311a51909d8361ecf8" + integrity sha512-W23AH2XF5rI27MOAPSSr0TUDoRe7ZbFoRtYhFnPu2MBmcuDA9Tmfd9N5sM2tBXtdE26uq3SazwKqGt1OoGAilQ== -"@commitlint/top-level@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-12.0.1.tgz#9c7efd319a4f8d29001f011ba8b0e21fad6044f6" - integrity sha512-rHdgt7U24GEau2/9i2vEAbksxkBRiVjHj5ECFL5dd0AJOIvaK++vMg4EF/ME0X/1yd9qVTHTNOl2Q4tTFK7VBQ== +"@commitlint/top-level@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-12.1.1.tgz#228df8fc36b6d7ea7ad149badfb6ef53dbc7001d" + integrity sha512-g7uRbr81QEIg+pbii0OkE17Zh/2C/f6dSmiMDVRn1S0+hNHR1bENCh18hVUKcV/qKTUsKkFlhhWXM9mQBfxQJw== dependencies: find-up "^5.0.0" -"@commitlint/types@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-12.0.1.tgz#04a0cbb8aa56b7c004f8939c2d1ef8892ec68327" - integrity sha512-FsNDMV0W7D19/ZbR412klpqAilXASx75Neqh7jPtK278IEwdukOg3vth1r5kTm+BjDScM7wMUEOwIW3NNfAtwg== +"@commitlint/types@^12.1.1": + version "12.1.1" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-12.1.1.tgz#8e651f6af0171cd4f8d464c6c37a7cf63ee071bd" + integrity sha512-+qGH+s2Lo6qwacV2X3/ZypZwaAI84ift+1HBjXdXtI/q0F5NtmXucV3lcQOTviMTNiJhq4qWON2fjci2NItASw== dependencies: chalk "^4.0.0" @@ -880,10 +880,10 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.22": - version "26.0.22" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.22.tgz#8308a1debdf1b807aa47be2838acdcd91e88fbe6" - integrity sha512-eeWwWjlqxvBxc4oQdkueW5OF/gtfSceKk4OnOAGlUSwS/liBRtZppbJuz1YkgbrbfGOoeBHun9fOvXnjNwrSOw== +"@types/jest@^26.0.23": + version "26.0.23" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.23.tgz#a1b7eab3c503b80451d019efb588ec63522ee4e7" + integrity sha512-ZHLmWMJ9jJ9PTiT58juykZpL7KjwJywFN3Rr2pTSkyQfydf/rk22yS7W8p5DaVUMQ2BQC7oYiU3FjbTM/mYrOA== dependencies: jest-diff "^26.0.0" pretty-format "^26.0.0" @@ -917,16 +917,16 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.27.tgz#a151873af5a5e851b51b3b065c9e63390a9e0eb1" integrity sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g== -"@types/node@^10.12.9": - version "10.17.28" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.28.tgz#0e36d718a29355ee51cec83b42d921299200f6d9" - integrity sha512-dzjES1Egb4c1a89C7lKwQh8pwjYmlOAG9dW1pBgxEk57tMrLnssOfEthz8kdkNaBd7lIqQx7APm5+mZ619IiCQ== - "@types/node@^14.14.37": version "14.14.37" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e" integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw== +"@types/node@^15.0.2": + version "15.0.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-15.0.2.tgz#51e9c0920d1b45936ea04341aa3e2e58d339fb67" + integrity sha512-p68+a+KoxpoB47015IeYZYRrdqMUcpbK8re/zpFB8Ld46LHC1lPEbp3EXgkEhAYEcPvjJF6ZO+869SQ0aH1dcA== + "@types/normalize-package-data@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" @@ -973,17 +973,17 @@ "@types/cookiejar" "*" "@types/node" "*" -"@types/supertest@^2.0.10": - version "2.0.10" - resolved "https://registry.yarnpkg.com/@types/supertest/-/supertest-2.0.10.tgz#630d79b4d82c73e043e43ff777a9ca98d457cab7" - integrity sha512-Xt8TbEyZTnD5Xulw95GLMOkmjGICrOQyJ2jqgkSjAUR3mm7pAIzSR0NFBaMcwlzVvlpCjNwbATcWWwjNiZiFrQ== +"@types/supertest@^2.0.11": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@types/supertest/-/supertest-2.0.11.tgz#2e70f69f220bc77b4f660d72c2e1a4231f44a77d" + integrity sha512-uci4Esokrw9qGb9bvhhSVEjd6rkny/dk5PK/Qz4yxKiyppEI+dOPlNrZBahE3i+PoKFYyDxChVXZ/ysS/nrm1Q== dependencies: "@types/superagent" "*" -"@types/ws@^7.4.0": - version "7.4.0" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.0.tgz#499690ea08736e05a8186113dac37769ab251a0e" - integrity sha512-Y29uQ3Uy+58bZrFLhX36hcI3Np37nqWE7ky5tjiDoy1GDZnIwVxS0CgF+s+1bXMzjKBFy+fqaRfb708iNzdinw== +"@types/ws@^7.4.2": + version "7.4.2" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.2.tgz#bfe739b5f8b3a39742605fbe415ae7e88ee614c8" + integrity sha512-PbeN0Eydl7LQl4OIav29YmkO2LxbVuz3nZD/kb19lOS+wLgIkRbWMNmU/QQR7ABpOJ7D7xDOU8co7iohObewrw== dependencies: "@types/node" "*" @@ -999,13 +999,13 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.19.0.tgz#56f8da9ee118fe9763af34d6a526967234f6a7f0" - integrity sha512-CRQNQ0mC2Pa7VLwKFbrGVTArfdVDdefS+gTw0oC98vSI98IX5A8EVH4BzJ2FOB0YlCmm8Im36Elad/Jgtvveaw== +"@typescript-eslint/eslint-plugin@^4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.22.1.tgz#6bcdbaa4548553ab861b4e5f34936ead1349a543" + integrity sha512-kVTAghWDDhsvQ602tHBc6WmQkdaYbkcTwZu+7l24jtJiYvm9l+/y/b2BZANEezxPDiX5MK2ZecE+9BFi/YJryw== dependencies: - "@typescript-eslint/experimental-utils" "4.19.0" - "@typescript-eslint/scope-manager" "4.19.0" + "@typescript-eslint/experimental-utils" "4.22.1" + "@typescript-eslint/scope-manager" "4.22.1" debug "^4.1.1" functional-red-black-tree "^1.0.1" lodash "^4.17.15" @@ -1013,60 +1013,60 @@ semver "^7.3.2" tsutils "^3.17.1" -"@typescript-eslint/experimental-utils@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.19.0.tgz#9ca379919906dc72cb0fcd817d6cb5aa2d2054c6" - integrity sha512-9/23F1nnyzbHKuoTqFN1iXwN3bvOm/PRIXSBR3qFAYotK/0LveEOHr5JT1WZSzcD6BESl8kPOG3OoDRKO84bHA== +"@typescript-eslint/experimental-utils@4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.22.1.tgz#3938a5c89b27dc9a39b5de63a62ab1623ab27497" + integrity sha512-svYlHecSMCQGDO2qN1v477ax/IDQwWhc7PRBiwAdAMJE7GXk5stF4Z9R/8wbRkuX/5e9dHqbIWxjeOjckK3wLQ== dependencies: "@types/json-schema" "^7.0.3" - "@typescript-eslint/scope-manager" "4.19.0" - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/typescript-estree" "4.19.0" + "@typescript-eslint/scope-manager" "4.22.1" + "@typescript-eslint/types" "4.22.1" + "@typescript-eslint/typescript-estree" "4.22.1" eslint-scope "^5.0.0" eslint-utils "^2.0.0" -"@typescript-eslint/parser@^4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.19.0.tgz#4ae77513b39f164f1751f21f348d2e6cb2d11128" - integrity sha512-/uabZjo2ZZhm66rdAu21HA8nQebl3lAIDcybUoOxoI7VbZBYavLIwtOOmykKCJy+Xq6Vw6ugkiwn8Js7D6wieA== +"@typescript-eslint/parser@^4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.22.1.tgz#a95bda0fd01d994a15fc3e99dc984294f25c19cc" + integrity sha512-l+sUJFInWhuMxA6rtirzjooh8cM/AATAe3amvIkqKFeMzkn85V+eLzb1RyuXkHak4dLfYzOmF6DXPyflJvjQnw== dependencies: - "@typescript-eslint/scope-manager" "4.19.0" - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/typescript-estree" "4.19.0" + "@typescript-eslint/scope-manager" "4.22.1" + "@typescript-eslint/types" "4.22.1" + "@typescript-eslint/typescript-estree" "4.22.1" debug "^4.1.1" -"@typescript-eslint/scope-manager@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.19.0.tgz#5e0b49eca4df7684205d957c9856f4e720717a4f" - integrity sha512-GGy4Ba/hLXwJXygkXqMzduqOMc+Na6LrJTZXJWVhRrSuZeXmu8TAnniQVKgj8uTRKe4igO2ysYzH+Np879G75g== +"@typescript-eslint/scope-manager@4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.22.1.tgz#5bb357f94f9cd8b94e6be43dd637eb73b8f355b4" + integrity sha512-d5bAiPBiessSmNi8Amq/RuLslvcumxLmyhf1/Xa9IuaoFJ0YtshlJKxhlbY7l2JdEk3wS0EnmnfeJWSvADOe0g== dependencies: - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/visitor-keys" "4.19.0" + "@typescript-eslint/types" "4.22.1" + "@typescript-eslint/visitor-keys" "4.22.1" -"@typescript-eslint/types@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.19.0.tgz#5181d5d2afd02e5b8f149ebb37ffc8bd7b07a568" - integrity sha512-A4iAlexVvd4IBsSTNxdvdepW0D4uR/fwxDrKUa+iEY9UWvGREu2ZyB8ylTENM1SH8F7bVC9ac9+si3LWNxcBuA== +"@typescript-eslint/types@4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.22.1.tgz#bf99c6cec0b4a23d53a61894816927f2adad856a" + integrity sha512-2HTkbkdAeI3OOcWbqA8hWf/7z9c6gkmnWNGz0dKSLYLWywUlkOAQ2XcjhlKLj5xBFDf8FgAOF5aQbnLRvgNbCw== -"@typescript-eslint/typescript-estree@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.19.0.tgz#8a709ffa400284ab72df33376df085e2e2f61147" - integrity sha512-3xqArJ/A62smaQYRv2ZFyTA+XxGGWmlDYrsfZG68zJeNbeqRScnhf81rUVa6QG4UgzHnXw5VnMT5cg75dQGDkA== +"@typescript-eslint/typescript-estree@4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.22.1.tgz#dca379eead8cdfd4edc04805e83af6d148c164f9" + integrity sha512-p3We0pAPacT+onSGM+sPR+M9CblVqdA9F1JEdIqRVlxK5Qth4ochXQgIyb9daBomyQKAXbygxp1aXQRV0GC79A== dependencies: - "@typescript-eslint/types" "4.19.0" - "@typescript-eslint/visitor-keys" "4.19.0" + "@typescript-eslint/types" "4.22.1" + "@typescript-eslint/visitor-keys" "4.22.1" debug "^4.1.1" globby "^11.0.1" is-glob "^4.0.1" semver "^7.3.2" tsutils "^3.17.1" -"@typescript-eslint/visitor-keys@4.19.0": - version "4.19.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.19.0.tgz#cbea35109cbd9b26e597644556be4546465d8f7f" - integrity sha512-aGPS6kz//j7XLSlgpzU2SeTqHPsmRYxFztj2vPuMMFJXZudpRSehE3WCV+BaxwZFvfAqMoSd86TEuM0PQ59E/A== +"@typescript-eslint/visitor-keys@4.22.1": + version "4.22.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.22.1.tgz#6045ae25a11662c671f90b3a403d682dfca0b7a6" + integrity sha512-WPkOrIRm+WCLZxXQHCi+WG8T2MMTUFR70rWjdWYddLT7cEfb2P4a3O/J2U1FBVsSFTocXLCoXWY6MZGejeStvQ== dependencies: - "@typescript-eslint/types" "4.19.0" + "@typescript-eslint/types" "4.22.1" eslint-visitor-keys "^2.0.0" JSONStream@^1.0.4: @@ -1221,7 +1221,7 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@^3.0.3, anymatch@~3.1.1: +anymatch@^3.0.3: version "3.1.1" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== @@ -1229,6 +1229,14 @@ anymatch@^3.0.3, anymatch@~3.1.1: normalize-path "^3.0.0" picomatch "^2.0.4" +anymatch@~3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -1433,7 +1441,12 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= -base64-arraybuffer@0.1.5, base64-arraybuffer@^0.1.5: +base64-arraybuffer@0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" + integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= + +base64-arraybuffer@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" integrity sha1-c5JncZI7Whl0etZmqlzUv5xunOg= @@ -1474,9 +1487,9 @@ bcrypt-pbkdf@^1.0.0: tweetnacl "^0.14.3" binary-extensions@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" - integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== blob@0.0.5: version "0.0.5" @@ -1649,10 +1662,10 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -cacheable-lookup@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" - integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA== +cacheable-lookup@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.0.tgz#6fd7e364a0929ee50af00843aaf6e31b9b9f200e" + integrity sha512-5qeyMn8/BERrUPdIfcOLkdMrwltVbxIpgnYM61OLWOg3BuSSh9HrkUtTTRxYthQpBrocvYqD0tJ7vU0y6T7OWw== callsites@^3.0.0: version "3.1.0" @@ -1739,6 +1752,14 @@ chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad" + integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -1871,10 +1892,10 @@ commander@^2.2.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^6.2.0: - version "6.2.1" - resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" - integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== +commander@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== common-tags@^1.8.0: version "1.8.0" @@ -2067,7 +2088,7 @@ cross-spawn@^7.0.0: shebang-command "^2.0.0" which "^2.0.1" -cross-spawn@^7.0.2: +cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2130,7 +2151,7 @@ debug@2.6.9, debug@^2.2.0, debug@^2.3.3: dependencies: ms "2.0.0" -debug@4.3.1, debug@^4.2.0: +debug@4.3.1, debug@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== @@ -2196,6 +2217,11 @@ deepmerge@^4.2.2: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== +define-lazy-prop@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" + integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== + define-property@^0.2.5: version "0.2.5" resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" @@ -2333,13 +2359,6 @@ encodeurl@~1.0.1, encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -encoding@^0.1.11: - version "0.1.13" - resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" - integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== - dependencies: - iconv-lite "^0.6.2" - end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" @@ -2348,9 +2367,9 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0: once "^1.4.0" engine.io-client@~3.5.0: - version "3.5.1" - resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.5.1.tgz#b500458a39c0cd197a921e0e759721a746d0bdb9" - integrity sha512-oVu9kBkGbcggulyVF0kz6BV3ganqUeqXvD79WOFKa+11oK692w1NyFkuEj4xrkFRpZhn92QOqTk4RQq5LiBXbQ== + version "3.5.2" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.5.2.tgz#0ef473621294004e9ceebe73cef0af9e36f2f5fa" + integrity sha512-QEqIp+gJ/kMHeUun7f5Vv3bteRHppHH/FMBQX/esFj/fuYfjyUKWGMo3VCvIP/V8bE9KcjHmRZrhIz2Z9oNsDA== dependencies: component-emitter "~1.3.0" component-inherit "0.0.3" @@ -2361,17 +2380,17 @@ engine.io-client@~3.5.0: parseqs "0.0.6" parseuri "0.0.6" ws "~7.4.2" - xmlhttprequest-ssl "~1.5.4" + xmlhttprequest-ssl "~1.6.2" yeast "0.1.2" engine.io-parser@~2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.0.tgz#312c4894f57d52a02b420868da7b5c1c84af80ed" - integrity sha512-6I3qD9iUxotsC5HEMuuGsKA0cXerGz+4uGcXQEkfBidgKf0amsjrrtwcbwK/nzpZBxclXlV7gGl9dgWvu4LF6w== + version "2.2.1" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.2.1.tgz#57ce5611d9370ee94f99641b589f94c97e4f5da7" + integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg== dependencies: after "0.8.2" arraybuffer.slice "~0.0.7" - base64-arraybuffer "0.1.5" + base64-arraybuffer "0.1.4" blob "0.0.5" has-binary2 "~1.0.2" @@ -2433,15 +2452,15 @@ escodegen@^1.14.1: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6" - integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw== +eslint-config-prettier@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" + integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== -eslint-plugin-prettier@^3.3.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.3.1.tgz#7079cfa2497078905011e6f82e8dd8453d1371b7" - integrity sha512-Rq3jkcFY8RYeQLgk2cCwuc0P7SEFwDravPhsJZOQ5N4YI4DSg50NyqJ/9gdZHzQlHf8MvafSesbNJCcP/FF6pQ== +eslint-plugin-prettier@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.0.tgz#cdbad3bf1dbd2b177e9825737fe63b476a08f0c7" + integrity sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw== dependencies: prettier-linter-helpers "^1.0.0" @@ -2478,10 +2497,10 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@^7.23.0: - version "7.23.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.23.0.tgz#8d029d252f6e8cf45894b4bee08f5493f8e94325" - integrity sha512-kqvNVbdkjzpFy0XOszNwjkKzZ+6TcwCQ/h+ozlcIWwaimBBuhlQ4nN6kbiM2L+OjDcznkTJxzYfRFH92sx4a0Q== +eslint@^7.25.0: + version "7.25.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.25.0.tgz#1309e4404d94e676e3e831b3a3ad2b050031eb67" + integrity sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw== dependencies: "@babel/code-frame" "7.12.11" "@eslint/eslintrc" "^0.4.0" @@ -2619,19 +2638,19 @@ execa@^4.0.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" - integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== +execa@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" + integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" + 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.0" - onetime "^5.1.0" - signal-exit "^3.0.2" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" strip-final-newline "^2.0.0" exit@^0.1.2: @@ -2805,12 +2824,12 @@ fb-watchman@^2.0.0: dependencies: bser "2.1.1" -fetch-ponyfill@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/fetch-ponyfill/-/fetch-ponyfill-4.1.0.tgz#ae3ce5f732c645eab87e4ae8793414709b239893" - integrity sha1-rjzl9zLGReq4fkroeTQUcJsjmJM= +fetch-ponyfill@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/fetch-ponyfill/-/fetch-ponyfill-7.1.0.tgz#4266ed48b4e64663a50ab7f7fcb8e76f990526d0" + integrity sha512-FhbbL55dj/qdVO3YNK7ZEkshvj3eQ7EuIGV2I6ic/2YiocvyWv+7jg2s4AyS0wdRU75s3tA8ZxI/xPigb0v5Aw== dependencies: - node-fetch "~1.7.1" + node-fetch "~2.6.1" figures@^3.2.0: version "3.2.0" @@ -2920,9 +2939,9 @@ follow-redirects@^1.0.0: debug "^3.0.0" follow-redirects@^1.10.0: - version "1.13.3" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267" - integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA== + version "1.14.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.0.tgz#f5d260f95c5f8c105894491feee5dc8993b402fe" + integrity sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg== for-in@^1.0.2: version "1.0.2" @@ -3052,6 +3071,11 @@ get-stream@^5.0.0: dependencies: pump "^3.0.0" +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" @@ -3075,14 +3099,14 @@ git-raw-commits@^2.0.0: split2 "^2.0.0" through2 "^3.0.0" -glob-parent@^5.0.0, glob-parent@~5.1.0: +glob-parent@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== dependencies: is-glob "^4.0.1" -glob-parent@^5.1.0: +glob-parent@^5.1.0, glob-parent@~5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -3339,6 +3363,11 @@ human-signals@^1.1.1: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + husky@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/husky/-/husky-4.3.0.tgz#0b2ec1d66424e9219d359e26a51c58ec5278f0de" @@ -3362,13 +3391,6 @@ iconv-lite@0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -iconv-lite@^0.6.2: - version "0.6.2" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.2.tgz#ce13d1875b0c3a674bd6a04b7f76b01b1b6ded01" - integrity sha512-2y91h5OpQlolefMPmUlivelittSWy0rP+oYVpn6A7GwVHNE8AWzoYOBNmlwks3LobaJxgHCYZAnyNo2GgpNRNQ== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" - ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" @@ -3535,6 +3557,11 @@ is-docker@^2.0.0: resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" integrity sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw== +is-docker@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -3625,7 +3652,7 @@ is-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= -is-stream@^1.0.1, is-stream@^1.1.0: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -3647,6 +3674,11 @@ is-typedarray@^1.0.0, is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -3657,7 +3689,7 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= -is-wsl@^2.1.1, is-wsl@^2.2.0: +is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== @@ -4323,39 +4355,39 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@^10.5.4: - version "10.5.4" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.5.4.tgz#cd153b5f0987d2371fc1d2847a409a2fe705b665" - integrity sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg== +lint-staged@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.0.0.tgz#24d0a95aa316ba28e257f5c4613369a75a10c712" + integrity sha512-3rsRIoyaE8IphSUtO1RVTFl1e0SLBtxxUOPBtHxQgBHS5/i6nqvjcUfNioMa4BU9yGnPzbO+xkfLtXtxBpCzjw== dependencies: - chalk "^4.1.0" + chalk "^4.1.1" cli-truncate "^2.1.0" - commander "^6.2.0" + commander "^7.2.0" cosmiconfig "^7.0.0" - debug "^4.2.0" + debug "^4.3.1" dedent "^0.7.0" enquirer "^2.3.6" - execa "^4.1.0" - listr2 "^3.2.2" - log-symbols "^4.0.0" - micromatch "^4.0.2" + execa "^5.0.0" + listr2 "^3.8.2" + log-symbols "^4.1.0" + micromatch "^4.0.4" normalize-path "^3.0.0" please-upgrade-node "^3.2.0" string-argv "0.3.1" stringify-object "^3.3.0" -listr2@^3.2.2: - version "3.4.3" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.4.3.tgz#543bcf849d5ffc70602708b69d2daac73f751699" - integrity sha512-wZmkzNiuinOfwrGqAwTCcPw6aKQGTAMGXwG5xeU1WpDjJNeBA35jGBeWxR3OF+R6Yl5Y3dRG+3vE8t6PDcSNHA== +listr2@^3.8.2: + version "3.8.2" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.8.2.tgz#99b138ad1cfb08f1b0aacd422972e49b2d814b99" + integrity sha512-E28Fw7Zd3HQlCJKzb9a8C8M0HtFWQeucE+S8YrSrqZObuCLPRHMRrR8gNmYt65cU9orXYHwvN5agXC36lYt7VQ== dependencies: - chalk "^4.1.0" + chalk "^4.1.1" cli-truncate "^2.1.0" figures "^3.2.0" indent-string "^4.0.0" log-update "^4.0.0" p-map "^4.0.0" - rxjs "^6.6.6" + rxjs "^6.6.7" through "^2.3.8" wrap-ansi "^7.0.0" @@ -4431,7 +4463,7 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash@4.x, lodash@^4.17.20, lodash@^4.17.21: +lodash@4.x, lodash@^4.17.10, lodash@^4.17.20, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -4441,17 +4473,18 @@ lodash@^4.16.4, lodash@^4.17.14, lodash@^4.17.19: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== -lodash@^4.17.10, lodash@^4.17.13, lodash@^4.17.15: +lodash@^4.17.13, lodash@^4.17.15: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -log-symbols@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" - integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== +log-symbols@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== dependencies: - chalk "^4.0.0" + chalk "^4.1.0" + is-unicode-supported "^0.1.0" log-update@^4.0.0: version "4.0.0" @@ -4593,6 +4626,14 @@ micromatch@^4.0.2: braces "^3.0.1" picomatch "^2.0.5" +micromatch@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" + integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + dependencies: + braces "^3.0.1" + picomatch "^2.2.3" + mime-db@1.43.0: version "1.43.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58" @@ -4603,13 +4644,25 @@ mime-db@1.44.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19: +mime-db@1.47.0: + version "1.47.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" + integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== + +mime-types@^2.1.12, mime-types@~2.1.19: version "2.1.26" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06" integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ== dependencies: mime-db "1.43.0" +mime-types@~2.1.17: + version "2.1.30" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.30.tgz#6e7be8b4c479825f85ed6326695db73f9305d62d" + integrity sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg== + dependencies: + mime-db "1.47.0" + mime-types@~2.1.24: version "2.1.27" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" @@ -4682,29 +4735,29 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-1.2.0.tgz#9089324595bd3cee6e49ae6cc753841bd41463d5" - integrity sha512-Uz8W+uitfiMpSqObpo27bjgEvbn/n9a22lDY5bDGQQFDPrphp880a/odu5JRiIkjTgO3n/ycMys0s5Yffsshjg== +mockttp@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-1.2.2.tgz#8c91a66941982f84623482b5cfe2a833faf03e81" + integrity sha512-uYUFtsAYyfQrGIL+/qAzJCxDlKLImg7ziOVguUoNAyyYAc1L5DoDZSpmnAY8x1naIw5HJfiGu9ct7A/GGnvUKw== dependencies: "@graphql-tools/schema" "^6.0.18" "@graphql-tools/utils" "^6.0.18" "@httptoolkit/httpolyglot" "^1.0.0" "@types/cors" "^2.8.6" "@types/express" "^4.0.33" - "@types/node" "^10.12.9" + "@types/node" "^14.14.37" "@types/node-forge" "^0.9.1" base64-arraybuffer "^0.1.5" body-parser "^1.15.2" brotli "^1.3.2" - cacheable-lookup "^5.0.4" + cacheable-lookup "^6.0.0" common-tags "^1.8.0" connect "^3.7.0" cors "^2.8.4" cors-gate "^1.1.3" express "^4.14.0" express-graphql "^0.11.0" - fetch-ponyfill "^4.1.0" + fetch-ponyfill "^7.1.0" graphql "^14.0.2" graphql-subscriptions "^1.1.0" http2-wrapper "^1.0.0-beta.5.2" @@ -4781,13 +4834,10 @@ no-case@^3.0.3: lower-case "^2.0.1" tslib "^1.10.0" -node-fetch@~1.7.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" - integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ== - dependencies: - encoding "^0.1.11" - is-stream "^1.0.1" +node-fetch@~2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== node-forge@^0.10.0: version "0.10.0" @@ -4855,7 +4905,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0: +npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -4926,13 +4976,21 @@ onetime@^5.1.0: dependencies: mimic-fn "^2.1.0" -open@^7.4.2: - version "7.4.2" - resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" - integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== +onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: - is-docker "^2.0.0" - is-wsl "^2.1.1" + mimic-fn "^2.1.0" + +open@^8.0.8: + version "8.0.8" + resolved "https://registry.yarnpkg.com/open/-/open-8.0.8.tgz#0e286bb2df3c72e00cb2a0203d604abee002dbdc" + integrity sha512-3XmKIU8+H/TVr8wB8C4vj0z748+yBydSvtpzZVS6vQ1dKNHB6AiPbhaoG+89zb80717GPk9y/7OvK0R6FXkNmQ== + dependencies: + define-lazy-prop "^2.0.0" + is-docker "^2.1.1" + is-wsl "^2.2.0" opencollective-postinstall@^2.0.2: version "2.0.2" @@ -5159,6 +5217,11 @@ picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== +picomatch@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" + integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== + pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" @@ -5635,10 +5698,10 @@ rxjs@^5.5.6: dependencies: symbol-observable "1.0.1" -rxjs@^6.6.6: - version "6.6.6" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.6.tgz#14d8417aa5a07c5e633995b525e1e3c0dec03b70" - integrity sha512-/oTwee4N4iWzAMAL9xdGKjkEHmIwupR3oXbQjCKywF1BeFohswF3vZdogbmEF6pZkOsXTzWkrZszrWpQTByYVg== +rxjs@^6.6.7: + version "6.6.7" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" + integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" @@ -5664,7 +5727,7 @@ safe-regex@^1.1.0: dependencies: ret "~0.1.10" -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -5706,14 +5769,7 @@ semver-regex@^2.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.4: - version "7.3.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.4.tgz#27aaa7d2e4ca76452f98d3add093a72c943edc97" - integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== - dependencies: - lru-cache "^6.0.0" - -semver@7.x, semver@^7.2.1, semver@^7.3.2: +semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -5860,7 +5916,7 @@ shellwords@^0.1.1: resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== @@ -5946,11 +6002,11 @@ socket.io-client@2.4.0, socket.io-client@^2.4.0: to-array "0.1.4" socket.io-parser@~3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.0.tgz#2b52a96a509fdf31440ba40fed6094c7d4f1262f" - integrity sha512-hczmV6bDgdaEbVqhAeVMM/jfUfzuEZHsQg6eOmLgJht6G3mPKMxYm75w2+qhAQZ+4X+1+ATZ+QFKeOZD5riHng== + version "3.3.2" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.3.2.tgz#ef872009d0adcf704f2fbe830191a14752ad50b6" + integrity sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg== dependencies: - component-emitter "1.2.1" + component-emitter "~1.3.0" debug "~3.1.0" isarray "2.0.1" @@ -6457,10 +6513,10 @@ trim-off-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= -ts-jest@^26.5.4: - version "26.5.4" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" - integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== +ts-jest@^26.5.6: + version "26.5.6" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.6.tgz#c32e0746425274e1dfe333f43cd3c800e014ec35" + integrity sha512-rua+rCP8DxpA8b4DQD/6X2HQS8Zy/xzViVYfEs2OQu68tkCuKLV0Md8pmX55+W24uRIyAsf/BajRfxOs+R2MKA== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -6566,15 +6622,15 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.3.tgz#39062d8019912d43726298f09493d598048c1ce3" - integrity sha512-qOcYwxaByStAWrBf4x0fibwZvMRG+r4cQoTjbPtUlrWjBHbmCAww1i448U0GJ+3cNNEtebDteo/cHOR3xJ4wEw== +typescript@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" + integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== ua-parser-js@^0.7.18: - version "0.7.21" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.21.tgz#853cf9ce93f642f67174273cc34565ae6f308777" - integrity sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ== + version "0.7.28" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" + integrity sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g== ultron@~1.1.0: version "1.1.1" @@ -6846,10 +6902,10 @@ ws@^7.3.1: resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8" integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA== -ws@^7.4.4, ws@~7.4.2: - version "7.4.4" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" - integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== +ws@^7.4.5, ws@~7.4.2: + version "7.4.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.5.tgz#a484dd851e9beb6fdb420027e3885e8ce48986c1" + integrity sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g== xml-name-validator@^3.0.0: version "3.0.0" @@ -6861,10 +6917,10 @@ xmlchars@^2.2.0: resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== -xmlhttprequest-ssl@~1.5.4: - version "1.5.5" - resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" - integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4= +xmlhttprequest-ssl@~1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.2.tgz#dd6899bfbcf684b554e393c30b13b9f3b001a7ee" + integrity sha512-tYOaldF/0BLfKuoA39QMwD4j2m8lq4DIncqj1yuNELX4vz9+z/ieG/vwmctjJce+boFHXstqhWnHSxc4W8f4qg== xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" From 75720d27d36b33a40b6be1eb5d8d9b2932792513 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 8 May 2021 13:27:35 +0200 Subject: [PATCH 23/77] chore(package): husky v6 (#599) --- .github/workflows/ci.yml | 6 +++--- .husky/.gitignore | 1 + .husky/commit-msg | 1 + .husky/pre-commit | 1 + package.json | 10 ++------- yarn.lock | 46 ++++------------------------------------ 6 files changed, 12 insertions(+), 53 deletions(-) create mode 100644 .husky/.gitignore create mode 100755 .husky/commit-msg create mode 100755 .husky/pre-commit diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 43166513..16a941f6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: - name: yarn install if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! - run: yarn install --frozen-lockfile + run: yarn install --frozen-lockfile --ignore-scripts - name: yarn lint run: yarn lint @@ -57,7 +57,7 @@ jobs: - name: yarn install if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! - run: yarn install --frozen-lockfile + run: yarn install --frozen-lockfile --ignore-scripts - name: yarn test run: yarn test @@ -86,7 +86,7 @@ jobs: - name: yarn install if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! - run: yarn install --frozen-lockfile + run: yarn install --frozen-lockfile --ignore-scripts - name: yarn coverage run: yarn coverage diff --git a/.husky/.gitignore b/.husky/.gitignore new file mode 100644 index 00000000..31354ec1 --- /dev/null +++ b/.husky/.gitignore @@ -0,0 +1 @@ +_ diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100755 index 00000000..2785bc1d --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1 @@ +yarn commitlint --edit $1 diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 00000000..37236231 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1 @@ +yarn lint-staged diff --git a/package.json b/package.json index fa513419..23a32797 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "test": "jest", "precoverage": "yarn build", "coverage": "jest --coverage --coverageReporters=lcov", - "prepare": "yarn build && rm dist/tsconfig.tsbuildinfo" + "prepare": "husky install && yarn build && rm dist/tsconfig.tsbuildinfo" }, "repository": { "type": "git", @@ -69,7 +69,7 @@ "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", "express": "^4.17.1", - "husky": "^4.3.0", + "husky": "^6.0.0", "jest": "^26.6.3", "lint-staged": "^11.0.0", "mockttp": "^1.2.2", @@ -90,12 +90,6 @@ "engines": { "node": ">=12.0.0" }, - "husky": { - "hooks": { - "commit-msg": "commitlint -E HUSKY_GIT_PARAMS", - "pre-commit": "lint-staged" - } - }, "commitlint": { "extends": [ "@commitlint/config-conventional" diff --git a/yarn.lock b/yarn.lock index aeb39194..a2e28d87 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1910,11 +1910,6 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" -compare-versions@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz#1a5689913685e5a87637b8d3ffca75514ec41d62" - integrity sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA== - component-bind@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" @@ -2911,13 +2906,6 @@ find-up@^5.0.0: locate-path "^6.0.0" path-exists "^4.0.0" -find-versions@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-3.2.0.tgz#10297f98030a786829681690545ef659ed1d254e" - integrity sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww== - dependencies: - semver-regex "^2.0.0" - flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" @@ -3368,21 +3356,10 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -husky@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/husky/-/husky-4.3.0.tgz#0b2ec1d66424e9219d359e26a51c58ec5278f0de" - integrity sha512-tTMeLCLqSBqnflBZnlVDhpaIMucSGaYyX6855jM4AguGeWCeSzNdb1mfyWduTZ3pe3SJVvVWGL0jO1iKZVPfTA== - dependencies: - chalk "^4.0.0" - ci-info "^2.0.0" - compare-versions "^3.6.0" - cosmiconfig "^7.0.0" - find-versions "^3.2.0" - opencollective-postinstall "^2.0.2" - pkg-dir "^4.2.0" - please-upgrade-node "^3.2.0" - slash "^3.0.0" - which-pm-runs "^1.0.0" +husky@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/husky/-/husky-6.0.0.tgz#810f11869adf51604c32ea577edbc377d7f9319e" + integrity sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ== iconv-lite@0.4.24: version "0.4.24" @@ -4992,11 +4969,6 @@ open@^8.0.8: is-docker "^2.1.1" is-wsl "^2.2.0" -opencollective-postinstall@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" - integrity sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw== - openurl@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/openurl/-/openurl-1.1.1.tgz#3875b4b0ef7a52c156f0db41d4609dbb0f94b387" @@ -5759,11 +5731,6 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -semver-regex@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-2.0.0.tgz#a93c2c5844539a770233379107b38c7b4ac9d338" - integrity sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw== - "semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -6819,11 +6786,6 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which-pm-runs@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" - integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= - which@^1.2.9: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" From 7c86a2c41219cd6022c22897d59df9eb8d159164 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 9 May 2021 18:22:11 +0200 Subject: [PATCH 24/77] docs(types): definitely typed credits (#600) --- src/types.ts | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/types.ts b/src/types.ts index 7063feb7..f90c0f2f 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,9 +1,14 @@ +/** + * Based on definition by DefinitelyTyped: + * https://github.com/DefinitelyTyped/DefinitelyTyped/blob/6f529c6c67a447190f86bfbf894d1061e41e07b7/types/http-proxy-middleware/index.d.ts + */ + /* eslint-disable @typescript-eslint/no-empty-interface */ -import * as express from 'express'; -import * as http from 'http'; -import * as httpProxy from 'http-proxy'; -import * as net from 'net'; +import type * as express from 'express'; +import type * as http from 'http'; +import type * as httpProxy from 'http-proxy'; +import type * as net from 'net'; export interface Request extends express.Request {} export interface Response extends express.Response {} From 3115daef3a96bada0ff3ec6a75ab7c80c0373a4c Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 12 May 2021 22:42:14 +0200 Subject: [PATCH 25/77] docs(github): pull request template (#604) --- .github/PULL_REQUEST_TEMPLATE.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index e69de29b..76f711d8 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,30 @@ + + +## Description + + + +## Motivation and Context + + + + +## How has this been tested? + + + +## Types of changes + + + +- [ ] Bug fix (non-breaking change which fixes an issue) +- [ ] New feature (non-breaking change which adds functionality) +- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) + +## Checklist: + + + + +- [ ] My change requires a change to the documentation. +- [ ] I have updated the documentation accordingly. From c935888ea7135365bea3c4c81e4ffe48f359a670 Mon Sep 17 00:00:00 2001 From: Leonardo Bazico Date: Wed, 12 May 2021 19:07:45 -0300 Subject: [PATCH 26/77] chore(typescript): extract handlers types (#603) * chore(typescript): extract handlers types * chore(typescript): set callback types based on the http-proxy Co-authored-by: chimurai <655241+chimurai@users.noreply.github.com> --- src/types.ts | 61 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 47 insertions(+), 14 deletions(-) diff --git a/src/types.ts b/src/types.ts index f90c0f2f..767a5688 100644 --- a/src/types.ts +++ b/src/types.ts @@ -9,6 +9,7 @@ import type * as express from 'express'; import type * as http from 'http'; import type * as httpProxy from 'http-proxy'; import type * as net from 'net'; +import type * as url from 'url'; export interface Request extends express.Request {} export interface Response extends express.Response {} @@ -29,20 +30,14 @@ export interface Options extends httpProxy.ServerOptions { | ((req: Request) => httpProxy.ServerOptions['target']) | ((req: Request) => Promise); logLevel?: 'debug' | 'info' | 'warn' | 'error' | 'silent'; - logProvider?(provider: LogProvider): LogProvider; - - onError?(err: Error, req: Request, res: Response): void; - onProxyRes?(proxyRes: http.IncomingMessage, req: Request, res: Response): void; - onProxyReq?(proxyReq: http.ClientRequest, req: Request, res: Response): void; - onProxyReqWs?( - proxyReq: http.ClientRequest, - req: Request, - socket: net.Socket, - options: httpProxy.ServerOptions, - head: any - ): void; - onOpen?(proxySocket: net.Socket): void; - onClose?(res: Response, socket: net.Socket, head: any): void; + logProvider?: LogProviderCallback; + + onError?: OnErrorCallback; + onProxyRes?: OnProxyResCallback; + onProxyReq?: OnProxyReqCallback; + onProxyReqWs?: OnProxyReqWsCallback; + onOpen?: OnOpenCallback; + onClose?: OnCloseCallback; } interface LogProvider { @@ -54,3 +49,41 @@ interface LogProvider { } type Logger = (...args: any[]) => void; + +export type LogProviderCallback = (provider: LogProvider) => LogProvider; + +/** + * Use types based on the events listeners from http-proxy + * https://github.com/DefinitelyTyped/DefinitelyTyped/blob/51504fd999031b7f025220fab279f1b2155cbaff/types/http-proxy/index.d.ts + */ +export type OnErrorCallback = ( + err: Error, + req: http.IncomingMessage, + res: http.ServerResponse, + target?: string | Partial +) => void; +export type OnProxyResCallback = ( + proxyRes: http.IncomingMessage, + req: http.IncomingMessage, + res: http.ServerResponse +) => void; +export type OnProxyReqCallback = ( + proxyReq: http.ClientRequest, + req: http.IncomingMessage, + res: http.ServerResponse, + options: httpProxy.ServerOptions +) => void; +export type OnProxyReqWsCallback = ( + proxyReq: http.ClientRequest, + req: http.IncomingMessage, + socket: net.Socket, + options: httpProxy.ServerOptions, + head: any +) => void; +export type OnCloseCallback = ( + proxyRes: http.IncomingMessage, + proxySocket: net.Socket, + proxyHead: any +) => void; + +export type OnOpenCallback = (proxySocket: net.Socket) => void; From a6f8e0dbf8f54ed9a6dbdc3e212195505264f822 Mon Sep 17 00:00:00 2001 From: Leonardo Bazico Date: Sun, 16 May 2021 13:12:01 -0300 Subject: [PATCH 27/77] test(coverage): improve coverage config (#609) --- jest.config.js | 2 ++ test/e2e/test-kit.ts | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/jest.config.js b/jest.config.js index 4a5b465e..e5233956 100644 --- a/jest.config.js +++ b/jest.config.js @@ -1,4 +1,6 @@ module.exports = { preset: 'ts-jest', testEnvironment: 'node', + coverageReporters: ['text', 'lcov'], + collectCoverageFrom: ['src/**/*.*'], }; diff --git a/test/e2e/test-kit.ts b/test/e2e/test-kit.ts index 47a43aab..a8de75bb 100644 --- a/test/e2e/test-kit.ts +++ b/test/e2e/test-kit.ts @@ -1,7 +1,7 @@ import * as express from 'express'; import { Express, RequestHandler } from 'express'; -export { createProxyMiddleware, responseInterceptor, fixRequestBody } from '../../dist/index'; +export { createProxyMiddleware, responseInterceptor, fixRequestBody } from '../../src/index'; export function createApp(...middlewares: RequestHandler[]): Express { const app = express(); From 6fd75f7187924702e1da769210f58761b19ad40a Mon Sep 17 00:00:00 2001 From: Leonardo Bazico Date: Wed, 19 May 2021 15:40:35 -0300 Subject: [PATCH 28/77] Add test coverage to fixRequestBody and responseInterceptor (#608) * test(responseInterceptor): add unit test * test(fixRequestBody): add unit test --- test/unit/fix-request-body.spec.ts | 66 ++++++++++++++++++++++++++ test/unit/response-interceptor.spec.ts | 63 ++++++++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 test/unit/fix-request-body.spec.ts create mode 100644 test/unit/response-interceptor.spec.ts diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts new file mode 100644 index 00000000..6ea56ba0 --- /dev/null +++ b/test/unit/fix-request-body.spec.ts @@ -0,0 +1,66 @@ +import { ClientRequest } from 'http'; +import * as querystring from 'querystring'; + +import { fixRequestBody } from '../../src/handlers/fix-request-body'; +import type { Request } from '../../src/types'; + +const fakeProxyRequest = () => { + const proxyRequest = new ClientRequest('http://some-host'); + proxyRequest.emit = jest.fn(); + + return proxyRequest; +}; + +describe('fixRequestBody', () => { + it('should not write when body is undefined', () => { + const proxyRequest = fakeProxyRequest(); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: undefined } as Request); + + expect(proxyRequest.setHeader).not.toHaveBeenCalled(); + expect(proxyRequest.write).not.toHaveBeenCalled(); + }); + + it('should not write when body is empty', () => { + const proxyRequest = fakeProxyRequest(); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: {} } as Request); + + expect(proxyRequest.setHeader).not.toHaveBeenCalled(); + expect(proxyRequest.write).not.toHaveBeenCalled(); + }); + + it('should write when body is not empty and Content-Type is application/json', () => { + const proxyRequest = fakeProxyRequest(); + proxyRequest.setHeader('content-type', 'application/json; charset=utf-8'); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + + const expectedBody = JSON.stringify({ someField: 'some value' }); + expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); + expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); + }); + + it('should write when body is not empty and Content-Type is application/x-www-form-urlencoded', () => { + const proxyRequest = fakeProxyRequest(); + proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded'); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + + const expectedBody = querystring.stringify({ someField: 'some value' }); + expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); + expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); + }); +}); diff --git a/test/unit/response-interceptor.spec.ts b/test/unit/response-interceptor.spec.ts new file mode 100644 index 00000000..09bfc548 --- /dev/null +++ b/test/unit/response-interceptor.spec.ts @@ -0,0 +1,63 @@ +import { IncomingMessage, ServerResponse } from 'http'; + +import { responseInterceptor } from '../../src/handlers/response-interceptor'; + +const fakeProxyResponse = () => { + const httpIncomingMessage = new IncomingMessage(null); + httpIncomingMessage._read = () => ({}); + return httpIncomingMessage; +}; + +const fakeResponse = () => { + const httpIncomingMessage = fakeProxyResponse(); + + const response = new ServerResponse(httpIncomingMessage); + response.setHeader = jest.fn(); + response.write = jest.fn(); + response.end = jest.fn(); + + return response; +}; + +const waitInterceptorHandler = (ms = 1): Promise => + new Promise((resolve) => setTimeout(resolve, ms)); + +describe('responseInterceptor', () => { + it('should write body on end proxy event', async () => { + const httpIncomingMessage = fakeProxyResponse(); + const response = fakeResponse(); + + responseInterceptor(async () => JSON.stringify({ someField: '' }))( + httpIncomingMessage, + null, + response + ); + + httpIncomingMessage.emit('end'); + await waitInterceptorHandler(); + + const expectedBody = JSON.stringify({ someField: '' }); + expect(response.setHeader).toHaveBeenCalledWith('content-length', expectedBody.length); + expect(response.write).toHaveBeenCalledWith(Buffer.from(expectedBody)); + expect(response.end).toHaveBeenCalledWith(); + }); + + it('should end with error when receive a proxy error event', async () => { + const httpIncomingMessage = fakeProxyResponse(); + const response = fakeResponse(); + + responseInterceptor(async () => JSON.stringify({ someField: '' }))( + httpIncomingMessage, + null, + response + ); + + httpIncomingMessage.emit('error', new Error('some error meessage')); + + expect(response.setHeader).not.toHaveBeenCalled(); + expect(response.write).not.toHaveBeenCalled(); + expect(response.end).toHaveBeenCalledWith( + 'Error fetching proxied request: some error meessage' + ); + }); +}); From 21c70a0891490d6a65378a5a05c813e38eb877c8 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 23 May 2021 22:39:45 +0200 Subject: [PATCH 29/77] fix(fixRequestBody): fix TypeScript type (#615) --- src/handlers/fix-request-body.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index cc9d2776..500e6236 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -1,12 +1,14 @@ -import { ClientRequest } from 'http'; +import type * as http from 'http'; import type { Request } from '../types'; import * as querystring from 'querystring'; /** * Fix proxied body if bodyParser is involved. */ -export function fixRequestBody(proxyReq: ClientRequest, req: Request): void { - if (!req.body || !Object.keys(req.body).length) { +export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingMessage): void { + const requestBody = (req as Request).body; + + if (!requestBody || !Object.keys(requestBody).length) { return; } @@ -18,10 +20,10 @@ export function fixRequestBody(proxyReq: ClientRequest, req: Request): void { }; if (contentType && contentType.includes('application/json')) { - writeBody(JSON.stringify(req.body)); + writeBody(JSON.stringify(requestBody)); } if (contentType === 'application/x-www-form-urlencoded') { - writeBody(querystring.stringify(req.body)); + writeBody(querystring.stringify(requestBody)); } } From 88548fc58dab09bab3eff0af8f8c6046cd221402 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Mon, 24 May 2021 14:59:32 +0200 Subject: [PATCH 30/77] refactor(test): fix flakiness (#616) --- package.json | 1 + test/e2e/express-router.spec.ts | 23 +++++------------- test/e2e/router.spec.ts | 41 ++++++++++++++++++++------------- test/e2e/websocket.spec.ts | 15 ++++++------ yarn.lock | 5 ++++ 5 files changed, 44 insertions(+), 41 deletions(-) diff --git a/package.json b/package.json index 23a32797..ac427252 100644 --- a/package.json +++ b/package.json @@ -69,6 +69,7 @@ "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", "express": "^4.17.1", + "get-port": "^5.1.1", "husky": "^6.0.0", "jest": "^26.6.3", "lint-staged": "^11.0.0", diff --git a/test/e2e/express-router.spec.ts b/test/e2e/express-router.spec.ts index f5bcf99f..611247be 100644 --- a/test/e2e/express-router.spec.ts +++ b/test/e2e/express-router.spec.ts @@ -1,20 +1,16 @@ import * as express from 'express'; -import * as http from 'http'; +import * as request from 'supertest'; import { createProxyMiddleware } from './test-kit'; import { Options } from '../../src/index'; describe('Usage in Express', () => { let app: express.Express; - let server: http.Server; + let agent: request.SuperTest; beforeEach(() => { app = express(); }); - afterEach(() => { - server?.close(); - }); - // https://github.com/chimurai/http-proxy-middleware/issues/94 describe('Express Sub Route', () => { beforeEach(() => { @@ -43,19 +39,12 @@ describe('Usage in Express', () => { app.use('/sub', sub); // start server - server = app.listen(3000); + agent = request(app); }); - // FIXME: flaky e2e test; caused by fixed port:3000 - it('should still return a response when route does not match proxyConfig', (done) => { - let responseBody; - http.get('http://localhost:3000/sub/hello', (res) => { - res.on('data', (chunk) => { - responseBody = chunk.toString(); - expect(responseBody).toBe('{"content":"foobar"}'); - done(); - }); - }); + it('should still return a response when route does not match proxyConfig', async () => { + const response = await agent.get('/sub/hello'); + expect(response.body).toEqual({ content: 'foobar' }); }); }); diff --git a/test/e2e/router.spec.ts b/test/e2e/router.spec.ts index f8c9742b..e38b480e 100644 --- a/test/e2e/router.spec.ts +++ b/test/e2e/router.spec.ts @@ -2,6 +2,7 @@ import { createProxyMiddleware, createApp, createAppWithPath } from './test-kit' import { ErrorRequestHandler } from 'express'; import * as request from 'supertest'; import { getLocal, generateCACertificate, Mockttp } from 'mockttp'; +import * as getPort from 'get-port'; const untrustedCACert = generateCACertificate({ bits: 1024 }); @@ -12,11 +13,19 @@ describe('E2E router', () => { let targetServerB: Mockttp; let targetServerC: Mockttp; + let targetPortA: number; + let targetPortB: number; + let targetPortC: number; + beforeEach(async () => { targetServerA = getLocal({ https: await untrustedCACert }); targetServerB = getLocal({ https: await untrustedCACert }); targetServerC = getLocal({ https: await untrustedCACert }); + targetPortA = await getPort(); + targetPortB = await getPort(); + targetPortC = await getPort(); + await targetServerA .anyRequest() .thenPassThrough({ ignoreHostCertificateErrors: ['localhost'] }); @@ -37,9 +46,9 @@ describe('E2E router', () => { .anyRequest() .thenCallback(({ protocol }) => ({ body: protocol === 'https' ? 'C' : 'NOT HTTPS C' })); - await targetServerA.start(6001); - await targetServerB.start(6002); - await targetServerC.start(6003); + await targetServerA.start(targetPortA); + await targetServerB.start(targetPortB); + await targetServerC.start(targetPortC); }); afterEach(async () => { @@ -52,11 +61,11 @@ describe('E2E router', () => { it('should work with a string', async () => { const app = createApp( createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router(req) { - return 'https://localhost:6003'; + return `https://localhost:${targetPortC}`; }, }) ); @@ -69,11 +78,11 @@ describe('E2E router', () => { it('should work with an object', async () => { const app = createApp( createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router(req) { - return { host: 'localhost', port: 6003, protocol: 'https:' }; + return { host: 'localhost', port: targetPortC, protocol: 'https:' }; }, }) ); @@ -85,12 +94,12 @@ describe('E2E router', () => { it('should work with an async callback', async () => { const app = createApp( createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router: async (req) => { return new Promise((resolve) => - resolve({ host: 'localhost', port: 6003, protocol: 'https:' }) + resolve({ host: 'localhost', port: targetPortC, protocol: 'https:' }) ); }, }) @@ -104,7 +113,7 @@ describe('E2E router', () => { it('should handle promise rejection in router', async () => { const app = createApp( createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router: async (req) => { @@ -125,12 +134,12 @@ describe('E2E router', () => { it('missing a : will cause it to use http', async () => { const app = createApp( createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router: async (req) => { return new Promise((resolve) => - resolve({ host: 'localhost', port: 6003, protocol: 'https' }) + resolve({ host: 'localhost', port: targetPortC, protocol: 'https' }) ); }, }) @@ -149,13 +158,13 @@ describe('E2E router', () => { const app = createAppWithPath( '/', createProxyMiddleware({ - target: 'https://localhost:6001', + target: `https://localhost:${targetPortA}`, secure: false, changeOrigin: true, router: { - 'alpha.localhost:6000': 'https://localhost:6001', - 'beta.localhost:6000': 'https://localhost:6002', - 'localhost:6000/api': 'https://localhost:6003', + 'alpha.localhost:6000': `https://localhost:${targetPortA}`, + 'beta.localhost:6000': `https://localhost:${targetPortB}`, + 'localhost:6000/api': `https://localhost:${targetPortC}`, }, }) ); diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index cd959c42..5598ed42 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -1,6 +1,7 @@ import * as http from 'http'; import * as WebSocket from 'ws'; import { Server as WebSocketServer } from 'ws'; +import * as getPort from 'get-port'; import { createProxyMiddleware, createApp } from './test-kit'; import type { RequestHandler } from '../../src/types'; @@ -14,9 +15,13 @@ describe('E2E WebSocket proxy', () => { let ws: WebSocket; let wss: WebSocketServer; let proxyMiddleware: RequestHandler; - const WS_SERVER_PORT = 9000; + let WS_SERVER_PORT: number; + let SERVER_PORT: number; + + beforeEach(async () => { + WS_SERVER_PORT = await getPort(); + SERVER_PORT = await getPort(); - beforeEach(() => { wss = new WebSocketServer({ port: WS_SERVER_PORT }); wss.on('connection', (websocket) => { @@ -44,7 +49,6 @@ describe('E2E WebSocket proxy', () => { describe('option.ws', () => { beforeEach(async (done) => { - const SERVER_PORT = 31000; proxyServer = createApp(proxyMiddleware).listen(SERVER_PORT); // quick & dirty Promise version of http.get (don't care about correctness) @@ -70,7 +74,6 @@ describe('E2E WebSocket proxy', () => { describe('option.ws with external server "upgrade"', () => { beforeEach((done) => { - const SERVER_PORT = 32000; proxyServer = createApp(proxyMiddleware).listen(SERVER_PORT); proxyServer.on('upgrade', proxyMiddleware.upgrade); @@ -88,8 +91,6 @@ describe('E2E WebSocket proxy', () => { }); describe('option.ws with external server "upgrade" and shorthand usage', () => { - const SERVER_PORT = 33000; - beforeEach(() => { proxyServer = createApp( createProxyMiddleware(`ws://localhost:${WS_SERVER_PORT}`, { @@ -115,8 +116,6 @@ describe('E2E WebSocket proxy', () => { }); describe('with router and pathRewrite', () => { - const SERVER_PORT = 34000; - beforeEach(() => { // override proxyServer = createApp( diff --git a/yarn.lock b/yarn.lock index a2e28d87..6614126e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3040,6 +3040,11 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== +get-port@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" + integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== + get-stdin@8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" From 57be865cfd8e673eda61764895aa46bed4a2df1c Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 30 May 2021 12:01:01 +0200 Subject: [PATCH 31/77] ci(jest): upgrade to jest 27 (#622) --- package.json | 4 +- test/e2e/websocket.spec.ts | 10 +- yarn.lock | 2479 +++++++++++++----------------------- 3 files changed, 891 insertions(+), 1602 deletions(-) diff --git a/package.json b/package.json index ac427252..a53a45dd 100644 --- a/package.json +++ b/package.json @@ -71,13 +71,13 @@ "express": "^4.17.1", "get-port": "^5.1.1", "husky": "^6.0.0", - "jest": "^26.6.3", + "jest": "^27.0.3", "lint-staged": "^11.0.0", "mockttp": "^1.2.2", "open": "^8.0.8", "prettier": "^2.2.1", "supertest": "^6.1.3", - "ts-jest": "^26.5.6", + "ts-jest": "^27.0.1", "typescript": "^4.2.4", "ws": "^7.4.5" }, diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index 5598ed42..d2e674ee 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -48,7 +48,7 @@ describe('E2E WebSocket proxy', () => { }); describe('option.ws', () => { - beforeEach(async (done) => { + beforeEach(async () => { proxyServer = createApp(proxyMiddleware).listen(SERVER_PORT); // quick & dirty Promise version of http.get (don't care about correctness) @@ -59,8 +59,10 @@ describe('E2E WebSocket proxy', () => { // do a second http request to make sure only 1 listener subscribes to upgrade request await get(`http://localhost:${SERVER_PORT}/`); - ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); - ws.on('open', done); + return new Promise((resolve) => { + ws = new WebSocket(`ws://localhost:${SERVER_PORT}/socket`); + ws.on('open', resolve); + }); }); it('should proxy to path', (done) => { @@ -81,7 +83,7 @@ describe('E2E WebSocket proxy', () => { ws.on('open', done); }); - it('should proxy to path', async (done) => { + it('should proxy to path', (done) => { ws.on('message', (message) => { expect(message).toBe('foobar'); done(); diff --git a/yarn.lock b/yarn.lock index 6614126e..c7df82ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -21,6 +21,18 @@ dependencies: "@babel/highlight" "^7.8.3" +"@babel/code-frame@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" + integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== + dependencies: + "@babel/highlight" "^7.12.13" + +"@babel/compat-data@^7.13.15": + version "7.14.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.0.tgz#a901128bce2ad02565df95e6ecbf195cf9465919" + integrity sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q== + "@babel/core@^7.1.0", "@babel/core@^7.7.5": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e" @@ -43,6 +55,36 @@ semver "^5.4.1" source-map "^0.5.0" +"@babel/core@^7.7.2": + version "7.14.3" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.3.tgz#5395e30405f0776067fbd9cf0884f15bfb770a38" + integrity sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.14.3" + "@babel/helper-compilation-targets" "^7.13.16" + "@babel/helper-module-transforms" "^7.14.2" + "@babel/helpers" "^7.14.0" + "@babel/parser" "^7.14.3" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.14.2" + "@babel/types" "^7.14.2" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + semver "^6.3.0" + source-map "^0.5.0" + +"@babel/generator@^7.14.2", "@babel/generator@^7.14.3", "@babel/generator@^7.7.2": + version "7.14.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.3.tgz#0c2652d91f7bddab7cccc6ba8157e4f40dcedb91" + integrity sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA== + dependencies: + "@babel/types" "^7.14.2" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/generator@^7.9.0": version "7.9.4" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.4.tgz#12441e90c3b3c4159cdecf312075bf1a8ce2dbce" @@ -53,6 +95,25 @@ lodash "^4.17.13" source-map "^0.5.0" +"@babel/helper-compilation-targets@^7.13.16": + version "7.13.16" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz#6e91dccf15e3f43e5556dffe32d860109887563c" + integrity sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA== + dependencies: + "@babel/compat-data" "^7.13.15" + "@babel/helper-validator-option" "^7.12.17" + browserslist "^4.14.5" + semver "^6.3.0" + +"@babel/helper-function-name@^7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz#397688b590760b6ef7725b5f0860c82427ebaac2" + integrity sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ== + dependencies: + "@babel/helper-get-function-arity" "^7.12.13" + "@babel/template" "^7.12.13" + "@babel/types" "^7.14.2" + "@babel/helper-function-name@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz#eeeb665a01b1f11068e9fb86ad56a1cb1a824cca" @@ -62,6 +123,13 @@ "@babel/template" "^7.8.3" "@babel/types" "^7.8.3" +"@babel/helper-get-function-arity@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" + integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== + dependencies: + "@babel/types" "^7.12.13" + "@babel/helper-get-function-arity@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5" @@ -69,6 +137,13 @@ dependencies: "@babel/types" "^7.8.3" +"@babel/helper-member-expression-to-functions@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" + integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== + dependencies: + "@babel/types" "^7.13.12" + "@babel/helper-member-expression-to-functions@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz#659b710498ea6c1d9907e0c73f206eee7dadc24c" @@ -76,6 +151,13 @@ dependencies: "@babel/types" "^7.8.3" +"@babel/helper-module-imports@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" + integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== + dependencies: + "@babel/types" "^7.13.12" + "@babel/helper-module-imports@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz#7fe39589b39c016331b6b8c3f441e8f0b1419498" @@ -83,6 +165,20 @@ dependencies: "@babel/types" "^7.8.3" +"@babel/helper-module-transforms@^7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz#ac1cc30ee47b945e3e0c4db12fa0c5389509dfe5" + integrity sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA== + dependencies: + "@babel/helper-module-imports" "^7.13.12" + "@babel/helper-replace-supers" "^7.13.12" + "@babel/helper-simple-access" "^7.13.12" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/helper-validator-identifier" "^7.14.0" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.14.2" + "@babel/types" "^7.14.2" + "@babel/helper-module-transforms@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" @@ -96,6 +192,13 @@ "@babel/types" "^7.9.0" lodash "^4.17.13" +"@babel/helper-optimise-call-expression@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" + integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== + dependencies: + "@babel/types" "^7.12.13" + "@babel/helper-optimise-call-expression@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9" @@ -118,6 +221,16 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== +"@babel/helper-replace-supers@^7.13.12": + version "7.14.3" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz#ca17b318b859d107f0e9b722d58cf12d94436600" + integrity sha512-Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.13.12" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/traverse" "^7.14.2" + "@babel/types" "^7.14.2" + "@babel/helper-replace-supers@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz#5ada744fd5ad73203bf1d67459a27dcba67effc8" @@ -128,6 +241,13 @@ "@babel/traverse" "^7.8.6" "@babel/types" "^7.8.6" +"@babel/helper-simple-access@^7.13.12": + version "7.13.12" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" + integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== + dependencies: + "@babel/types" "^7.13.12" + "@babel/helper-simple-access@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz#7f8109928b4dab4654076986af575231deb639ae" @@ -136,6 +256,13 @@ "@babel/template" "^7.8.3" "@babel/types" "^7.8.3" +"@babel/helper-split-export-declaration@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" + integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== + dependencies: + "@babel/types" "^7.12.13" + "@babel/helper-split-export-declaration@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" @@ -148,6 +275,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== +"@babel/helper-validator-identifier@^7.14.0": + version "7.14.0" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288" + integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== + "@babel/helper-validator-identifier@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed" @@ -158,6 +290,20 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80" integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g== +"@babel/helper-validator-option@^7.12.17": + version "7.12.17" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" + integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== + +"@babel/helpers@^7.14.0": + version "7.14.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.0.tgz#ea9b6be9478a13d6f961dbb5f36bf75e2f3b8f62" + integrity sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg== + dependencies: + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.14.0" + "@babel/types" "^7.14.0" + "@babel/helpers@^7.9.0": version "7.9.2" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.2.tgz#b42a81a811f1e7313b88cba8adc66b3d9ae6c09f" @@ -176,6 +322,15 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/highlight@^7.12.13": + version "7.14.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf" + integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== + dependencies: + "@babel/helper-validator-identifier" "^7.14.0" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/highlight@^7.8.3": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" @@ -190,6 +345,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8" integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA== +"@babel/parser@^7.12.13", "@babel/parser@^7.14.2", "@babel/parser@^7.14.3", "@babel/parser@^7.7.2": + version "7.14.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.3.tgz#9b530eecb071fd0c93519df25c5ff9f14759f298" + integrity sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ== + "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" @@ -274,6 +434,22 @@ dependencies: "@babel/helper-plugin-utils" "^7.12.13" +"@babel/plugin-syntax-typescript@^7.7.2": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.13.tgz#9dff111ca64154cef0f4dc52cf843d9f12ce4474" + integrity sha512-cHP3u1JiUiG2LFDKbXnwVad81GvfyIOmCD6HIEId6ojrY0Drfy2q1jw7BwN7dE84+kTnBjLkXoL3IEy/3JPu2w== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/template@^7.12.13": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" + integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/parser" "^7.12.13" + "@babel/types" "^7.12.13" + "@babel/template@^7.3.3", "@babel/template@^7.7.4", "@babel/template@^7.8.3", "@babel/template@^7.8.6": version "7.8.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" @@ -298,6 +474,20 @@ globals "^11.1.0" lodash "^4.17.13" +"@babel/traverse@^7.14.0", "@babel/traverse@^7.14.2", "@babel/traverse@^7.7.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.2.tgz#9201a8d912723a831c2679c7ebbf2fe1416d765b" + integrity sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.14.2" + "@babel/helper-function-name" "^7.14.2" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/parser" "^7.14.2" + "@babel/types" "^7.14.2" + debug "^4.1.0" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.0.tgz#00b064c3df83ad32b2dbf5ff07312b15c7f1efb5" @@ -307,6 +497,14 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" +"@babel/types@^7.12.13", "@babel/types@^7.13.12", "@babel/types@^7.14.0", "@babel/types@^7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.2.tgz#4208ae003107ef8a057ea8333e56eb64d2f6a2c3" + integrity sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw== + dependencies: + "@babel/helper-validator-identifier" "^7.14.0" + to-fast-properties "^2.0.0" + "@babel/types@^7.3.3": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz#2c5502b427251e9de1bd2dff95add646d95cc9f7" @@ -321,14 +519,6 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@cnakazawa/watch@^1.0.3": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" - integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== - dependencies: - exec-sh "^0.3.2" - minimist "^1.2.0" - "@commitlint/cli@^12.1.1": version "12.1.1" resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.1.1.tgz#740370e557a8a17f415052821cdd5276ecb0ab98" @@ -518,93 +708,94 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" - integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== +"@jest/console@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.0.2.tgz#b8eeff8f21ac51d224c851e1729d2630c18631e6" + integrity sha512-/zYigssuHLImGeMAACkjI4VLAiiJznHgAl3xnFT19iWyct2LhrH3KXOjHRmxBGTkiPLZKKAJAgaPpiU9EZ9K+w== dependencies: - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^26.6.2" - jest-util "^26.6.2" + jest-message-util "^27.0.2" + jest-util "^27.0.2" slash "^3.0.0" -"@jest/core@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" - integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== +"@jest/core@^27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.0.3.tgz#b5a38675fa0466450a7fd465f4b226762cb592a2" + integrity sha512-rN8lr/OJ8iApcQUh4khnMaOCVX4oRnLwy2tPW3Vh70y62K8Da8fhkxMUq0xX9VPa4+yWUm0tGc/jUSJi+Jzuwg== dependencies: - "@jest/console" "^26.6.2" - "@jest/reporters" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/console" "^27.0.2" + "@jest/reporters" "^27.0.2" + "@jest/test-result" "^27.0.2" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" + emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^26.6.2" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-resolve-dependencies "^26.6.3" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - jest-watcher "^26.6.2" - micromatch "^4.0.2" + jest-changed-files "^27.0.2" + jest-config "^27.0.3" + jest-haste-map "^27.0.2" + jest-message-util "^27.0.2" + jest-regex-util "^27.0.1" + jest-resolve "^27.0.2" + jest-resolve-dependencies "^27.0.3" + jest-runner "^27.0.3" + jest-runtime "^27.0.3" + jest-snapshot "^27.0.2" + jest-util "^27.0.2" + jest-validate "^27.0.2" + jest-watcher "^27.0.2" + micromatch "^4.0.4" p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" - integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== +"@jest/environment@^27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.3.tgz#68769b1dfdd213e3456169d64fbe9bd63a5fda92" + integrity sha512-pN9m7fbKsop5vc3FOfH8NF7CKKdRbEZzcxfIo1n2TT6ucKWLFq0P6gCJH0GpnQp036++yY9utHOxpeT1WnkWTA== dependencies: - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/fake-timers" "^27.0.3" + "@jest/types" "^27.0.2" "@types/node" "*" - jest-mock "^26.6.2" + jest-mock "^27.0.3" -"@jest/fake-timers@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" - integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== +"@jest/fake-timers@^27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.3.tgz#9899ba6304cc636734c74478df502e18136461dd" + integrity sha512-fQ+UCKRIYKvTCEOyKPnaPnomLATIhMnHC/xPZ7yT1Uldp7yMgMxoYIFidDbpSTgB79+/U+FgfoD30c6wg3IUjA== dependencies: - "@jest/types" "^26.6.2" - "@sinonjs/fake-timers" "^6.0.1" + "@jest/types" "^27.0.2" + "@sinonjs/fake-timers" "^7.0.2" "@types/node" "*" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-util "^26.6.2" + jest-message-util "^27.0.2" + jest-mock "^27.0.3" + jest-util "^27.0.2" -"@jest/globals@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" - integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== +"@jest/globals@^27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.3.tgz#1cf8933b7791bba0b99305cbf39fd4d2e3fe4060" + integrity sha512-OzsIuf7uf+QalqAGbjClyezzEcLQkdZ+7PejUrZgDs+okdAK8GwRCGcYCirHvhMBBQh60Jr3NlIGbn/KBPQLEQ== dependencies: - "@jest/environment" "^26.6.2" - "@jest/types" "^26.6.2" - expect "^26.6.2" + "@jest/environment" "^27.0.3" + "@jest/types" "^27.0.2" + expect "^27.0.2" -"@jest/reporters@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" - integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== +"@jest/reporters@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.2.tgz#ad73835d1cd54da08b0998a70b14446405e8e0d9" + integrity sha512-SVQjew/kafNxSN1my4praGQP+VPVGHsU8zqiEDppLvq6j1lryIjdNb9P+bZSsKeifU4bIoaPnf9Ui0tK9WOpFA== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/console" "^27.0.2" + "@jest/test-result" "^27.0.2" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -615,73 +806,70 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^26.6.2" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" + jest-haste-map "^27.0.2" + jest-resolve "^27.0.2" + jest-util "^27.0.2" + jest-worker "^27.0.2" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" v8-to-istanbul "^7.0.0" - optionalDependencies: - node-notifier "^8.0.0" -"@jest/source-map@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" - integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== +"@jest/source-map@^27.0.1": + version "27.0.1" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.1.tgz#2afbf73ddbaddcb920a8e62d0238a0a9e0a8d3e4" + integrity sha512-yMgkF0f+6WJtDMdDYNavmqvbHtiSpwRN2U/W+6uztgfqgkq/PXdKPqjBTUF1RD/feth4rH5N3NW0T5+wIuln1A== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" - integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== +"@jest/test-result@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.2.tgz#0451049e32ceb609b636004ccc27c8fa22263f10" + integrity sha512-gcdWwL3yP5VaIadzwQtbZyZMgpmes8ryBAJp70tuxghiA8qL4imJyZex+i+USQH2H4jeLVVszhwntgdQ97fccA== dependencies: - "@jest/console" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/console" "^27.0.2" + "@jest/types" "^27.0.2" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.6.3": - version "26.6.3" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" - integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== +"@jest/test-sequencer@^27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.3.tgz#2a8632b86a9a6f8900e514917cdab6a062e71049" + integrity sha512-DcLTzraZ8xLr5fcIl+CF14vKeBBpBrn55wFxI9Ju+dhEBdjRdJQ/Z/pLkMehkPZWIQ+rR23J8e+wFDkfjree0Q== dependencies: - "@jest/test-result" "^26.6.2" + "@jest/test-result" "^27.0.2" graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-runner "^26.6.3" - jest-runtime "^26.6.3" + jest-haste-map "^27.0.2" + jest-runtime "^27.0.3" -"@jest/transform@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" - integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== +"@jest/transform@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.2.tgz#b073b7c589e3f4b842102468875def2bb722d6b5" + integrity sha512-H8sqKlgtDfVog/s9I4GG2XMbi4Ar7RBxjsKQDUhn2XHAi3NG+GoQwWMER+YfantzExbjNqQvqBHzo/G2pfTiPw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^26.6.2" - jest-regex-util "^26.0.0" - jest-util "^26.6.2" - micromatch "^4.0.2" + jest-haste-map "^27.0.2" + jest-regex-util "^27.0.1" + jest-util "^27.0.2" + micromatch "^4.0.4" pirates "^4.0.1" slash "^3.0.0" source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/types@^26.5.2": - version "26.5.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.5.2.tgz#44c24f30c8ee6c7f492ead9ec3f3c62a5289756d" - integrity sha512-QDs5d0gYiyetI8q+2xWdkixVQMklReZr4ltw7GFDtb4fuJIBCE6mzj2LnitGqCuAlLap6wPyb8fpoHgwZz5fdg== +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" @@ -689,15 +877,26 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== +"@jest/types@^27.0.1": + version "27.0.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.1.tgz#631738c942e70045ebbf42a3f9b433036d3845e4" + integrity sha512-8A25RRV4twZutsx2D+7WphnDsp7If9Yu6ko0Gxwrwv8BiWESFzka34+Aa2kC8w9xewt7SDuCUSZ6IiAFVj3PRg== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" - "@types/yargs" "^15.0.0" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + +"@jest/types@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz#e153d6c46bda0f2589f0702b071f9898c7bbd37e" + integrity sha512-XpjCtJ/99HB4PmyJ2vgmN7vT+JLP7RW1FBT9RgnMFS4Dt7cvIyBee8O3/j98aUZ34ZpenPZFqmaaObWSeL65dg== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" chalk "^4.0.0" "@nodelib/fs.scandir@2.1.4": @@ -728,13 +927,18 @@ dependencies: type-detect "4.0.8" -"@sinonjs/fake-timers@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" - integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== +"@sinonjs/fake-timers@^7.0.2": + version "7.1.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.0.tgz#8f13af27d842cbf51ad4502e05562fe9391d084e" + integrity sha512-hAEzXi6Wbvlb67NnGMGSNOeAflLVnMa4yliPU/ty1qjgW/vAletH15/v/esJwASSIA0YlIyjnloenFbEZc9q9A== dependencies: "@sinonjs/commons" "^1.7.0" +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + "@types/babel__core@^7.0.0": version "7.1.9" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" @@ -746,10 +950,10 @@ "@types/babel__template" "*" "@types/babel__traverse" "*" -"@types/babel__core@^7.1.7": - version "7.1.7" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.7.tgz#1dacad8840364a57c98d0dd4855c6dd3752c6b89" - integrity sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw== +"@types/babel__core@^7.1.14": + version "7.1.14" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" + integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -927,20 +1131,15 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-15.0.2.tgz#51e9c0920d1b45936ea04341aa3e2e58d339fb67" integrity sha512-p68+a+KoxpoB47015IeYZYRrdqMUcpbK8re/zpFB8Ld46LHC1lPEbp3EXgkEhAYEcPvjJF6ZO+869SQ0aH1dcA== -"@types/normalize-package-data@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" - integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== - "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prettier@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.0.0.tgz#dc85454b953178cc6043df5208b9e949b54a3bc4" - integrity sha512-/rM+sWiuOZ5dvuVzV37sUuklsbg+JPOP8d+nNFlo2ZtfpzPiPvh1/gc8liWOLBqe+sR+ZM7guPaIcTt6UZTo7Q== +"@types/prettier@^2.1.5": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0" + integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA== "@types/qs@*": version "6.9.4" @@ -999,6 +1198,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yargs@^16.0.0": + version "16.0.3" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz#4b6d35bb8e680510a7dc2308518a80ee1ef27e01" + integrity sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ== + dependencies: + "@types/yargs-parser" "*" + "@typescript-eslint/eslint-plugin@^4.22.1": version "4.22.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.22.1.tgz#6bcdbaa4548553ab861b4e5f34936ead1349a543" @@ -1082,6 +1288,11 @@ abab@^2.0.3: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== +abab@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + accepts@^1.3.7, accepts@~1.3.4, accepts@~1.3.7: version "1.3.7" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" @@ -1118,11 +1329,23 @@ acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== +acorn@^8.2.4: + version "8.2.4" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.2.4.tgz#caba24b08185c3b56e3168e97d15ed17f4d31fd0" + integrity sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg== + after@0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= +agent-base@6: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + aggregate-error@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" @@ -1151,16 +1374,6 @@ ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^6.5.5: - version "6.12.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.0.tgz#06d60b96d87b8454a5adaba86e7854da629db4b7" - integrity sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw== - 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" - ajv@^7.0.2: version "7.2.4" resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.4.tgz#8e239d4d56cf884bccca8cca362f508446dc160f" @@ -1213,13 +1426,10 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: "@types/color-name" "^1.1.1" color-convert "^2.0.1" -anymatch@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== - dependencies: - micromatch "^3.1.4" - normalize-path "^2.1.1" +ansi-styles@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== anymatch@^3.0.3: version "3.1.1" @@ -1244,21 +1454,6 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= - array-find-index@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" @@ -1279,11 +1474,6 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= - arraybuffer.slice@~0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" @@ -1294,23 +1484,6 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= -asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= - astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -1348,21 +1521,6 @@ at-least-node@^1.0.0: resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e" - integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug== - axios@0.21.1: version "0.21.1" resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" @@ -1370,16 +1528,16 @@ axios@0.21.1: dependencies: follow-redirects "^1.10.0" -babel-jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" - integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== +babel-jest@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.2.tgz#7dc18adb01322acce62c2af76ea2c7cd186ade37" + integrity sha512-9OThPl3/IQbo4Yul2vMz4FYwILPQak8XelX4YGowygfHaOl5R5gfjm4iVx4d8aUugkW683t8aq0A74E7b5DU1Q== dependencies: - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/babel__core" "^7.1.7" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" + "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.6.2" + babel-preset-jest "^27.0.1" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1395,10 +1553,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" - integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== +babel-plugin-jest-hoist@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.1.tgz#a6d10e484c93abff0f4e95f437dad26e5736ea11" + integrity sha512-sqBF0owAcCDBVEDtxqfYr2F36eSHdx7lAVGyYuOBRnKdD6gzcy0I0XrAYCZgOA3CRrLhmR+Uae9nogPzmAtOfQ== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -1423,12 +1581,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" - integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== +babel-preset-jest@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.1.tgz#7a50c75d16647c23a2cf5158d5bb9eb206b10e20" + integrity sha512-nIBIqCEpuiyhvjQs2mVNwTxQQa2xk70p9Dd/0obQGBf8FBzbnI8QhQKzLsWMN2i6q+5B0OcWDtrboBX5gmOLyA== dependencies: - babel-plugin-jest-hoist "^26.6.2" + babel-plugin-jest-hoist "^27.0.1" babel-preset-current-node-syntax "^1.0.0" backo2@1.0.2, backo2@^1.0.2: @@ -1461,31 +1619,11 @@ base64id@2.0.0: resolved "https://registry.yarnpkg.com/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - cache-base "^1.0.1" - class-utils "^0.3.5" - component-emitter "^1.2.1" - define-property "^1.0.0" - isobject "^3.0.1" - mixin-deep "^1.2.0" - pascalcase "^0.1.1" - batch@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" @@ -1520,22 +1658,6 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - extend-shallow "^2.0.1" - fill-range "^4.0.0" - isobject "^3.0.1" - repeat-element "^1.1.2" - snapdragon "^0.8.1" - snapdragon-node "^2.0.1" - split-string "^3.0.2" - to-regex "^3.0.1" - braces@^3.0.1, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -1613,6 +1735,17 @@ browser-sync@^2.26.14: ua-parser-js "^0.7.18" yargs "^15.4.1" +browserslist@^4.14.5: + version "4.16.6" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" + integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== + dependencies: + caniuse-lite "^1.0.30001219" + colorette "^1.2.2" + electron-to-chromium "^1.3.723" + escalade "^3.1.1" + node-releases "^1.1.71" + bs-logger@0.x: version "0.2.6" resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" @@ -1647,21 +1780,6 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - get-value "^2.0.6" - has-value "^1.0.0" - isobject "^3.0.1" - set-value "^2.0.0" - to-object-path "^0.3.0" - union-value "^1.0.0" - unset-value "^1.0.0" - cacheable-lookup@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.0.tgz#6fd7e364a0929ee50af00843aaf6e31b9b9f200e" @@ -1699,22 +1817,15 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.0.0.tgz#5259f7c30e35e278f1bdc2a4d91230b37cad981e" - integrity sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w== - -capture-exit@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" - integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== - dependencies: - rsvp "^4.8.4" +camelcase@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" + integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= +caniuse-lite@^1.0.30001219: + version "1.0.30001230" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz#8135c57459854b2240b57a4a6786044bdc5a9f71" + integrity sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ== chalk@^1.1.3: version "1.1.3" @@ -1780,25 +1891,15 @@ chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.1" -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== - -cjs-module-lexer@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" - integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== +ci-info@^3.1.1: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6" + integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" +cjs-module-lexer@^1.0.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.1.tgz#2fd46d9906a126965aa541345c499aaa18e8cd73" + integrity sha512-jVamGdJPDeuQilKhvVn1h3knuMOZzr8QDnpk+M9aMlCaMkTDd6fBWPhiDqFvFZ07pL0liqabAiuy8SY4jGHeaw== clean-stack@^2.0.0: version "2.2.0" @@ -1848,14 +1949,6 @@ collect-v8-coverage@^1.0.0: resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1" integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ== -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -1880,7 +1973,12 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +colorette@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" + integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== + +combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -1920,7 +2018,7 @@ component-emitter@1.2.1: resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= -component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: +component-emitter@^1.3.0, component-emitter@~1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== @@ -2029,12 +2127,7 @@ cookiejar@^2.1.2: resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.2.tgz#dd8a235530752f988f9a0844f3fc589e3111125c" integrity sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA== -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= - -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= @@ -2063,26 +2156,6 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cross-spawn@^6.0.0: - version "6.0.5" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" - integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== - dependencies: - nice-try "^1.0.4" - path-key "^2.0.1" - semver "^5.5.0" - shebang-command "^1.2.0" - which "^1.2.9" - -cross-spawn@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14" - integrity sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg== - dependencies: - path-key "^3.1.0" - shebang-command "^2.0.0" - which "^2.0.1" - cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -2102,7 +2175,7 @@ cssom@~0.3.6: resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== -cssstyle@^2.2.0: +cssstyle@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== @@ -2123,13 +2196,6 @@ dargs@^4.0.1: dependencies: number-is-nan "^1.0.0" -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - data-urls@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" @@ -2139,14 +2205,14 @@ data-urls@^2.0.0: whatwg-mimetype "^2.3.0" whatwg-url "^8.0.0" -debug@2.6.9, debug@^2.2.0, debug@^2.3.3: +debug@2.6.9, debug@^2.2.0: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4.3.1, debug@^4.3.1: +debug@4, debug@4.3.1, debug@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== @@ -2187,15 +2253,10 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= -decimal.js@^10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.0.tgz#39466113a9e036111d02f82489b5fd6b0b5ed231" - integrity sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw== - -decode-uri-component@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" - integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= +decimal.js@^10.2.1: + version "10.2.1" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.1.tgz#238ae7b0f0c793d3e3cea410108b35a2c01426a3" + integrity sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw== dedent@^0.7.0: version "0.7.0" @@ -2217,28 +2278,6 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -2269,6 +2308,11 @@ diff-sequences@^26.6.2: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== +diff-sequences@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.1.tgz#9c9801d52ed5f576ff0a20e3022a13ee6e297e7c" + integrity sha512-XPLijkfJUh/PIBnfkcSHgvD6tlYixmcMAn3osTk6jt+H0v/mgURto1XUiD9DKuGX5NDoVS6dSlA23gd9FUaCFg== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -2326,23 +2370,20 @@ eazy-logger@3.1.0: dependencies: tfunk "^4.0.0" -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -emittery@^0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.1.tgz#c02375a927a40948c0345cc903072597f5270451" - integrity sha512-d34LN4L6h18Bzz9xpoku2nPwKxCPlPMr3EEKTkoEBi+1/+b0lcRkRJ1UVyyZaKNeqGR3swcGl6s390DNO4YVgQ== +electron-to-chromium@^1.3.723: + version "1.3.739" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.739.tgz#f07756aa92cabd5a6eec6f491525a64fe62f98b9" + integrity sha512-+LPJVRsN7hGZ9EIUUiWCpO7l4E3qBYHNadazlucBfsXBbccDFNKUBAgzE68FnkWGJPwD/AfKhSzL+G+Iqb8A4A== + +emittery@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" + integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== emoji-regex@^8.0.0: version "8.0.0" @@ -2354,7 +2395,7 @@ encodeurl@~1.0.1, encodeurl@~1.0.2: resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -end-of-stream@^1.0.0, end-of-stream@^1.1.0: +end-of-stream@^1.0.0: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -2435,13 +2476,13 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== -escodegen@^1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz#ba01d0c8278b5e95a9a45350142026659027a457" - integrity sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ== +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== dependencies: esprima "^4.0.1" - estraverse "^4.2.0" + estraverse "^5.2.0" esutils "^2.0.2" optionator "^0.8.1" optionalDependencies: @@ -2570,7 +2611,7 @@ esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" -estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: +estraverse@^4.1.0, estraverse@^4.1.1: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== @@ -2600,39 +2641,6 @@ eventemitter3@^4.0.0: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg== -exec-sh@^0.3.2: - version "0.3.4" - resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5" - integrity sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A== - -execa@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" - integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== - dependencies: - cross-spawn "^6.0.0" - get-stream "^4.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - -execa@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.0.tgz#7f37d6ec17f09e6b8fc53288611695b6d12b9daf" - integrity sha512-JbDUxwV3BoT5ZVXQrSVbAiaXhXUkIwvbhPIwZ0N13kX+5yCzOhUNdocxB/UQRuYOHRYYwAxKYwJYc0T4D12pDA== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - is-stream "^2.0.0" - merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" - strip-final-newline "^2.0.0" - execa@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" @@ -2653,30 +2661,17 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - extend-shallow "^2.0.1" - posix-character-classes "^0.1.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -expect@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" - integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== +expect@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.0.2.tgz#e66ca3a4c9592f1c019fa1d46459a9d2084f3422" + integrity sha512-YJFNJe2+P2DqH+ZrXy+ydRQYO87oxRUonZImpDodR1G7qo3NYd3pL+NQ9Keqpez3cehczYwZDBC3A7xk3n7M/w== dependencies: - "@jest/types" "^26.6.2" - ansi-styles "^4.0.0" - jest-get-type "^26.3.0" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-regex-util "^26.0.0" + "@jest/types" "^27.0.2" + ansi-styles "^5.0.0" + jest-get-type "^27.0.1" + jest-matcher-utils "^27.0.2" + jest-message-util "^27.0.2" + jest-regex-util "^27.0.1" express-graphql@^0.11.0: version "0.11.0" @@ -2724,50 +2719,6 @@ express@^4.14.0, express@^4.17.1: utils-merge "1.0.1" vary "~1.1.2" -extend-shallow@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= - dependencies: - is-extendable "^0.1.0" - -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== - -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - expand-brackets "^2.1.4" - extend-shallow "^2.0.1" - fragment-cache "^0.2.1" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - -extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= - fast-deep-equal@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" @@ -2840,16 +2791,6 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -2931,16 +2872,6 @@ follow-redirects@^1.10.0: resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.0.tgz#f5d260f95c5f8c105894491feee5dc8993b402fe" integrity sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg== -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - form-data@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" @@ -2950,15 +2881,6 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - formidable@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" @@ -2969,13 +2891,6 @@ forwarded@~0.1.2: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= - dependencies: - map-cache "^0.2.2" - fresh@0.5.2, fresh@^0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -3005,12 +2920,7 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz#4c0a1fb34bc68e543b4b82a9ec392bfbda840805" - integrity sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA== - -fsevents@~2.3.1: +fsevents@^2.3.2, fsevents@~2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -3030,6 +2940,11 @@ gensync@^1.0.0-beta.1: resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + get-caller-file@^2.0.1, get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -3050,37 +2965,11 @@ get-stdin@8.0.0: resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== -get-stream@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== - dependencies: - pump "^3.0.0" - -get-stream@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw== - dependencies: - pump "^3.0.0" - get-stream@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - git-raw-commits@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.3.tgz#f040e67b8445962d4d168903a9e84c4240c17655" @@ -3180,24 +3069,6 @@ graphql@^14.0.2: dependencies: iterall "^1.2.2" -growly@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" - integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= - -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g== - dependencies: - ajv "^6.5.5" - har-schema "^2.0.0" - has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" @@ -3227,37 +3098,6 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -3325,6 +3165,15 @@ http-errors@~1.6.2: setprototypeof "1.1.0" statuses ">= 1.4.0 < 2" +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + http-proxy@^1.18.1: version "1.18.1" resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" @@ -3334,15 +3183,6 @@ http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= - dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" - http2-wrapper@^1.0.0-beta.5.2: version "1.0.0-beta.5.2" resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" @@ -3351,10 +3191,13 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== +https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" human-signals@^2.1.0: version "2.1.0" @@ -3447,30 +3290,11 @@ ini@^1.3.4: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -ip-regex@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" - integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -3483,17 +3307,12 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== +is-ci@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz#c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994" + integrity sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ== dependencies: - ci-info "^2.0.0" + ci-info "^3.1.1" is-core-module@^2.2.0: version "2.2.0" @@ -3502,38 +3321,6 @@ is-core-module@^2.2.0: dependencies: has "^1.0.3" -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - is-docker@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" @@ -3544,18 +3331,6 @@ is-docker@^2.1.1: resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -is-extendable@^0.1.0, is-extendable@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= - -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -3585,13 +3360,6 @@ is-number-like@^1.0.3: dependencies: lodash.isfinite "^3.3.2" -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= - dependencies: - kind-of "^3.0.2" - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -3617,28 +3385,16 @@ is-plain-obj@^3.0.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== -is-plain-object@^2.0.3, is-plain-object@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== - dependencies: - isobject "^3.0.1" - -is-potential-custom-element-name@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" - integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== is-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= -is-stream@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" - integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= - is-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" @@ -3651,7 +3407,7 @@ is-text-path@^1.0.1: dependencies: text-extensions "^1.0.0" -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= @@ -3661,11 +3417,6 @@ is-unicode-supported@^0.1.0: resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" @@ -3678,38 +3429,21 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" -isarray@1.0.0, isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= - isarray@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= - -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - istanbul-lib-coverage@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" @@ -3769,59 +3503,86 @@ iterall@^1.2.1, iterall@^1.2.2: resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" - integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== +jest-changed-files@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.2.tgz#997253042b4a032950fc5f56abf3c5d1f8560801" + integrity sha512-eMeb1Pn7w7x3wue5/vF73LPCJ7DKQuC9wQUR5ebP9hDPpk5hzcT/3Hmz3Q5BOFpR3tgbmaWhJcMTVgC8Z1NuMw== dependencies: - "@jest/types" "^26.6.2" - execa "^4.0.0" - throat "^5.0.0" + "@jest/types" "^27.0.2" + execa "^5.0.0" + throat "^6.0.1" -jest-cli@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" - integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== +jest-circus@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.3.tgz#32006967de484e03589da944064d72e172ce3261" + integrity sha512-tdMfzs7SgD5l7jRcI1iB3vtQi5fHwCgo4RlO8bzZnYc05PZ+tlAOMZeS8eGYkZ2tPaRY/aRLMFWQp/8zXBrolQ== dependencies: - "@jest/core" "^26.6.3" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/environment" "^27.0.3" + "@jest/test-result" "^27.0.2" + "@jest/types" "^27.0.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + dedent "^0.7.0" + expect "^27.0.2" + is-generator-fn "^2.0.0" + jest-each "^27.0.2" + jest-matcher-utils "^27.0.2" + jest-message-util "^27.0.2" + jest-runtime "^27.0.3" + jest-snapshot "^27.0.2" + jest-util "^27.0.2" + pretty-format "^27.0.2" + slash "^3.0.0" + stack-utils "^2.0.3" + throat "^6.0.1" + +jest-cli@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.3.tgz#b733871acb526054a0f8c971d0466595c5f8316d" + integrity sha512-7bt9Sgv4nWH5pUnyJfdLf8CHWfo4+7lSPxeBwQx4r0vBj9jweJam/piE2U91SXtQI+ckm+TIN97OVnqIYpVhSg== + dependencies: + "@jest/core" "^27.0.3" + "@jest/test-result" "^27.0.2" + "@jest/types" "^27.0.2" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - is-ci "^2.0.0" - jest-config "^26.6.3" - jest-util "^26.6.2" - jest-validate "^26.6.2" + jest-config "^27.0.3" + jest-util "^27.0.2" + jest-validate "^27.0.2" prompts "^2.0.1" - yargs "^15.4.1" + yargs "^16.0.3" -jest-config@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" - integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== +jest-config@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.3.tgz#31871583573c6d669dcdb5bb2d1a8738f3b91c20" + integrity sha512-zgtI2YQo+ekKsmYNyDlXFY/7w7WWBSJFoj/WRe173WB88CDUrEYWr0sLdbLOQe+sRu6l1Y2S0MCS6BOJm5jkoA== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.6.3" - "@jest/types" "^26.6.2" - babel-jest "^26.6.3" + "@jest/test-sequencer" "^27.0.3" + "@jest/types" "^27.0.2" + babel-jest "^27.0.2" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-environment-jsdom "^26.6.2" - jest-environment-node "^26.6.2" - jest-get-type "^26.3.0" - jest-jasmine2 "^26.6.3" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" - micromatch "^4.0.2" - pretty-format "^26.6.2" + is-ci "^3.0.0" + jest-circus "^27.0.3" + jest-environment-jsdom "^27.0.3" + jest-environment-node "^27.0.3" + jest-get-type "^27.0.1" + jest-jasmine2 "^27.0.3" + jest-regex-util "^27.0.1" + jest-resolve "^27.0.2" + jest-runner "^27.0.3" + jest-util "^27.0.2" + jest-validate "^27.0.2" + micromatch "^4.0.4" + pretty-format "^27.0.2" -jest-diff@^26.0.0, jest-diff@^26.6.2: +jest-diff@^26.0.0: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== @@ -3831,138 +3592,152 @@ jest-diff@^26.0.0, jest-diff@^26.6.2: jest-get-type "^26.3.0" pretty-format "^26.6.2" -jest-docblock@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" - integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== - dependencies: - detect-newline "^3.0.0" - -jest-each@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" - integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== +jest-diff@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.2.tgz#f315b87cee5dc134cf42c2708ab27375cc3f5a7e" + integrity sha512-BFIdRb0LqfV1hBt8crQmw6gGQHVDhM87SpMIZ45FPYKReZYG5er1+5pIn2zKqvrJp6WNox0ylR8571Iwk2Dmgw== dependencies: - "@jest/types" "^26.6.2" chalk "^4.0.0" - jest-get-type "^26.3.0" - jest-util "^26.6.2" - pretty-format "^26.6.2" + diff-sequences "^27.0.1" + jest-get-type "^27.0.1" + pretty-format "^27.0.2" -jest-environment-jsdom@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" - integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== +jest-docblock@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.1.tgz#bd9752819b49fa4fab1a50b73eb58c653b962e8b" + integrity sha512-TA4+21s3oebURc7VgFV4r7ltdIJ5rtBH1E3Tbovcg7AV+oLfD5DcJ2V2vJ5zFA9sL5CFd/d2D6IpsAeSheEdrA== dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" - jsdom "^16.4.0" + detect-newline "^3.0.0" -jest-environment-node@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" - integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== +jest-each@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.2.tgz#865ddb4367476ced752167926b656fa0dcecd8c7" + integrity sha512-OLMBZBZ6JkoXgUenDtseFRWA43wVl2BwmZYIWQws7eS7pqsIvePqj/jJmEnfq91ALk3LNphgwNK/PRFBYi7ITQ== dependencies: - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" + chalk "^4.0.0" + jest-get-type "^27.0.1" + jest-util "^27.0.2" + pretty-format "^27.0.2" + +jest-environment-jsdom@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.3.tgz#ed73e913ddc03864eb9f934b5cbabf1b63504e2e" + integrity sha512-5KLmgv1bhiimpSA8oGTnZYk6g4fsNyZiA/6gI2tAZUgrufd7heRUSVh4gRokzZVEj8zlwAQYT0Zs6tuJSW/ECA== + dependencies: + "@jest/environment" "^27.0.3" + "@jest/fake-timers" "^27.0.3" + "@jest/types" "^27.0.2" + "@types/node" "*" + jest-mock "^27.0.3" + jest-util "^27.0.2" + jsdom "^16.6.0" + +jest-environment-node@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.3.tgz#b4acb3679d2552a4215732cab8b0ca7ec4398ee0" + integrity sha512-co2/IVnIFL3cItpFULCvXFg9us4gvWXgs7mutAMPCbFhcqh56QAOdKhNzC2+RycsC/k4mbMj1VF+9F/NzA0ROg== + dependencies: + "@jest/environment" "^27.0.3" + "@jest/fake-timers" "^27.0.3" + "@jest/types" "^27.0.2" "@types/node" "*" - jest-mock "^26.6.2" - jest-util "^26.6.2" + jest-mock "^27.0.3" + jest-util "^27.0.2" jest-get-type@^26.3.0: version "26.3.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-haste-map@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" - integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== +jest-get-type@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.1.tgz#34951e2b08c8801eb28559d7eb732b04bbcf7815" + integrity sha512-9Tggo9zZbu0sHKebiAijyt1NM77Z0uO4tuWOxUCujAiSeXv30Vb5D4xVF4UR4YWNapcftj+PbByU54lKD7/xMg== + +jest-haste-map@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.2.tgz#3f1819400c671237e48b4d4b76a80a0dbed7577f" + integrity sha512-37gYfrYjjhEfk37C4bCMWAC0oPBxDpG0qpl8lYg8BT//wf353YT/fzgA7+Dq0EtM7rPFS3JEcMsxdtDwNMi2cA== dependencies: - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-regex-util "^26.0.0" - jest-serializer "^26.6.2" - jest-util "^26.6.2" - jest-worker "^26.6.2" - micromatch "^4.0.2" - sane "^4.0.3" + jest-regex-util "^27.0.1" + jest-serializer "^27.0.1" + jest-util "^27.0.2" + jest-worker "^27.0.2" + micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: - fsevents "^2.1.2" + fsevents "^2.3.2" -jest-jasmine2@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" - integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== +jest-jasmine2@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.3.tgz#fa6f6499566ea1b01b68b3ad13f49d1592b02c85" + integrity sha512-odJ2ia8P5c+IsqOcWJPmku4AqbXIfTVLRjYTKHri3TEvbmTdLw0ghy13OAPIl/0v7cVH0TURK7+xFOHKDLvKIA== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/environment" "^27.0.3" + "@jest/source-map" "^27.0.1" + "@jest/test-result" "^27.0.2" + "@jest/types" "^27.0.2" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^26.6.2" + expect "^27.0.2" is-generator-fn "^2.0.0" - jest-each "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-runtime "^26.6.3" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - pretty-format "^26.6.2" - throat "^5.0.0" - -jest-leak-detector@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" - integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== - dependencies: - jest-get-type "^26.3.0" - pretty-format "^26.6.2" - -jest-matcher-utils@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" - integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + jest-each "^27.0.2" + jest-matcher-utils "^27.0.2" + jest-message-util "^27.0.2" + jest-runtime "^27.0.3" + jest-snapshot "^27.0.2" + jest-util "^27.0.2" + pretty-format "^27.0.2" + throat "^6.0.1" + +jest-leak-detector@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.2.tgz#ce19aa9dbcf7a72a9d58907a970427506f624e69" + integrity sha512-TZA3DmCOfe8YZFIMD1GxFqXUkQnIoOGQyy4hFCA2mlHtnAaf+FeOMxi0fZmfB41ZL+QbFG6BVaZF5IeFIVy53Q== + dependencies: + jest-get-type "^27.0.1" + pretty-format "^27.0.2" + +jest-matcher-utils@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.2.tgz#f14c060605a95a466cdc759acc546c6f4cbfc4f0" + integrity sha512-Qczi5xnTNjkhcIB0Yy75Txt+Ez51xdhOxsukN7awzq2auZQGPHcQrJ623PZj0ECDEMOk2soxWx05EXdXGd1CbA== dependencies: chalk "^4.0.0" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" + jest-diff "^27.0.2" + jest-get-type "^27.0.1" + pretty-format "^27.0.2" -jest-message-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" - integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== +jest-message-util@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.2.tgz#181c9b67dff504d8f4ad15cba10d8b80f272048c" + integrity sha512-rTqWUX42ec2LdMkoUPOzrEd1Tcm+R1KfLOmFK+OVNo4MnLsEaxO5zPDb2BbdSmthdM/IfXxOZU60P/WbWF8BTw== dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.6.2" + "@babel/code-frame" "^7.12.13" + "@jest/types" "^27.0.2" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.4" - micromatch "^4.0.2" - pretty-format "^26.6.2" + micromatch "^4.0.4" + pretty-format "^27.0.2" slash "^3.0.0" - stack-utils "^2.0.2" + stack-utils "^2.0.3" -jest-mock@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" - integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== +jest-mock@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.3.tgz#5591844f9192b3335c0dca38e8e45ed297d4d23d" + integrity sha512-O5FZn5XDzEp+Xg28mUz4ovVcdwBBPfAhW9+zJLO0Efn2qNbYcDaJvSlRiQ6BCZUCVOJjALicuJQI9mRFjv1o9Q== dependencies: - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3970,189 +3745,197 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" - integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== +jest-regex-util@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.1.tgz#69d4b1bf5b690faa3490113c47486ed85dd45b68" + integrity sha512-6nY6QVcpTgEKQy1L41P4pr3aOddneK17kn3HJw6SdwGiKfgCGTvH02hVXL0GU8GEKtPH83eD2DIDgxHXOxVohQ== -jest-resolve-dependencies@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" - integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== +jest-resolve-dependencies@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.3.tgz#7e258f7d0458bb910855f8a50f5c1e9d92c319dc" + integrity sha512-HdjWOvFAgT5CYChF2eiBN2rRKicjaTCCtA3EtH47REIdGzEHGUhYrWYgLahXsiOovvWN6edhcHL5WCa3gbc04A== dependencies: - "@jest/types" "^26.6.2" - jest-regex-util "^26.0.0" - jest-snapshot "^26.6.2" + "@jest/types" "^27.0.2" + jest-regex-util "^27.0.1" + jest-snapshot "^27.0.2" -jest-resolve@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" - integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== +jest-resolve@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.2.tgz#087a3ed17182722a3415f92bfacc99c49cf8a965" + integrity sha512-rmfLGyZhwAUR5z3EwPAW7LQTorWAuCYCcsQJoQxT2it+BOgX3zKxa67r1pfpK3ihy2k9TjYD3/lMp5rPm/CL1Q== dependencies: - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" chalk "^4.0.0" + escalade "^3.1.1" graceful-fs "^4.2.4" jest-pnp-resolver "^1.2.2" - jest-util "^26.6.2" - read-pkg-up "^7.0.1" - resolve "^1.18.1" + jest-util "^27.0.2" + jest-validate "^27.0.2" + resolve "^1.20.0" slash "^3.0.0" -jest-runner@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" - integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== +jest-runner@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.3.tgz#d9747af3bee5a6ffaeb9e10b653263b780258b54" + integrity sha512-zH23uIIh1ro1JCD7XX1bQ0bQwXEsBzLX2UJVE/AVLsk4YJRmTfyXIzzRzBWRdnMHHg1NWkJ4fGs7eFP15IqZpQ== dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/console" "^27.0.2" + "@jest/environment" "^27.0.3" + "@jest/test-result" "^27.0.2" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" "@types/node" "*" chalk "^4.0.0" - emittery "^0.7.1" + emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-docblock "^26.0.0" - jest-haste-map "^26.6.2" - jest-leak-detector "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" - jest-runtime "^26.6.3" - jest-util "^26.6.2" - jest-worker "^26.6.2" + jest-docblock "^27.0.1" + jest-haste-map "^27.0.2" + jest-leak-detector "^27.0.2" + jest-message-util "^27.0.2" + jest-resolve "^27.0.2" + jest-runtime "^27.0.3" + jest-util "^27.0.2" + jest-worker "^27.0.2" source-map-support "^0.5.6" - throat "^5.0.0" - -jest-runtime@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" - integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== - dependencies: - "@jest/console" "^26.6.2" - "@jest/environment" "^26.6.2" - "@jest/fake-timers" "^26.6.2" - "@jest/globals" "^26.6.2" - "@jest/source-map" "^26.6.2" - "@jest/test-result" "^26.6.2" - "@jest/transform" "^26.6.2" - "@jest/types" "^26.6.2" - "@types/yargs" "^15.0.0" + throat "^6.0.1" + +jest-runtime@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.3.tgz#32499c1047e5d953cfbb67fe790ab0167a614d28" + integrity sha512-k1Hl2pWWHBkSXdCggX2lyLRuDnnnmMlnJd+DPLb8LmmAeHW87WgGC6TplD377VxY3KQu73sklkhGUIdwFgsRVQ== + dependencies: + "@jest/console" "^27.0.2" + "@jest/environment" "^27.0.3" + "@jest/fake-timers" "^27.0.3" + "@jest/globals" "^27.0.3" + "@jest/source-map" "^27.0.1" + "@jest/test-result" "^27.0.2" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" + "@types/yargs" "^16.0.0" chalk "^4.0.0" - cjs-module-lexer "^0.6.0" + cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.6.3" - jest-haste-map "^26.6.2" - jest-message-util "^26.6.2" - jest-mock "^26.6.2" - jest-regex-util "^26.0.0" - jest-resolve "^26.6.2" - jest-snapshot "^26.6.2" - jest-util "^26.6.2" - jest-validate "^26.6.2" + jest-haste-map "^27.0.2" + jest-message-util "^27.0.2" + jest-mock "^27.0.3" + jest-regex-util "^27.0.1" + jest-resolve "^27.0.2" + jest-snapshot "^27.0.2" + jest-util "^27.0.2" + jest-validate "^27.0.2" slash "^3.0.0" strip-bom "^4.0.0" - yargs "^15.4.1" + yargs "^16.0.3" -jest-serializer@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" - integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== +jest-serializer@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.1.tgz#2464d04dcc33fb71dc80b7c82e3c5e8a08cb1020" + integrity sha512-svy//5IH6bfQvAbkAEg1s7xhhgHTtXu0li0I2fdKHDsLP2P2MOiscPQIENQep8oU2g2B3jqLyxKKzotZOz4CwQ== dependencies: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" - integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== +jest-snapshot@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.2.tgz#40c48dc6afd3cbc5d3d07c061f20fc10d94ca0cd" + integrity sha512-4RcgvZbPrrbEE/hT6XQ4hr+NVVLNrmsgUnYSnZRT6UAvW9Q2yzGMS+tfJh+xlQJAapnnkNJzsMn6vUa+yfiVHA== dependencies: + "@babel/core" "^7.7.2" + "@babel/generator" "^7.7.2" + "@babel/parser" "^7.7.2" + "@babel/plugin-syntax-typescript" "^7.7.2" + "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/types" "^26.6.2" + "@jest/transform" "^27.0.2" + "@jest/types" "^27.0.2" "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.0.0" + "@types/prettier" "^2.1.5" + babel-preset-current-node-syntax "^1.0.0" chalk "^4.0.0" - expect "^26.6.2" + expect "^27.0.2" graceful-fs "^4.2.4" - jest-diff "^26.6.2" - jest-get-type "^26.3.0" - jest-haste-map "^26.6.2" - jest-matcher-utils "^26.6.2" - jest-message-util "^26.6.2" - jest-resolve "^26.6.2" + jest-diff "^27.0.2" + jest-get-type "^27.0.1" + jest-haste-map "^27.0.2" + jest-matcher-utils "^27.0.2" + jest-message-util "^27.0.2" + jest-resolve "^27.0.2" + jest-util "^27.0.2" natural-compare "^1.4.0" - pretty-format "^26.6.2" + pretty-format "^27.0.2" semver "^7.3.2" -jest-util@^26.1.0: - version "26.5.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.5.2.tgz#8403f75677902cc52a1b2140f568e91f8ed4f4d7" - integrity sha512-WTL675bK+GSSAYgS8z9FWdCT2nccO1yTIplNLPlP0OD8tUk/H5IrWKMMRudIQQ0qp8bb4k+1Qa8CxGKq9qnYdg== +jest-util@^27.0.0: + version "27.0.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.1.tgz#324ed9879d129c1e64f9169a739d6d50d7928769" + integrity sha512-lEw3waSmEOO4ZkwkUlFSvg4es1+8+LIkSGxp/kF60K0+vMR3Dv3O2HMZhcln9NHqSQzpVbsDT6OeMzUPW7DfRg== dependencies: - "@jest/types" "^26.5.2" + "@jest/types" "^27.0.1" "@types/node" "*" chalk "^4.0.0" graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" + is-ci "^3.0.0" + picomatch "^2.2.3" -jest-util@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== +jest-util@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.2.tgz#fc2c7ace3c75ae561cf1e5fdb643bf685a5be7c7" + integrity sha512-1d9uH3a00OFGGWSibpNYr+jojZ6AckOMCXV2Z4K3YXDnzpkAaXQyIpY14FOJPiUmil7CD+A6Qs+lnnh6ctRbIA== dependencies: - "@jest/types" "^26.6.2" + "@jest/types" "^27.0.2" "@types/node" "*" chalk "^4.0.0" graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" + is-ci "^3.0.0" + picomatch "^2.2.3" -jest-validate@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" - integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== +jest-validate@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.2.tgz#7fe2c100089449cd5cbb47a5b0b6cb7cda5beee5" + integrity sha512-UgBF6/oVu1ofd1XbaSotXKihi8nZhg0Prm8twQ9uCuAfo59vlxCXMPI/RKmrZEVgi3Nd9dS0I8A0wzWU48pOvg== dependencies: - "@jest/types" "^26.6.2" - camelcase "^6.0.0" + "@jest/types" "^27.0.2" + camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^26.3.0" + jest-get-type "^27.0.1" leven "^3.1.0" - pretty-format "^26.6.2" + pretty-format "^27.0.2" -jest-watcher@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" - integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== +jest-watcher@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.2.tgz#dab5f9443e2d7f52597186480731a8c6335c5deb" + integrity sha512-8nuf0PGuTxWj/Ytfw5fyvNn/R80iXY8QhIT0ofyImUvdnoaBdT6kob0GmhXR+wO+ALYVnh8bQxN4Tjfez0JgkA== dependencies: - "@jest/test-result" "^26.6.2" - "@jest/types" "^26.6.2" + "@jest/test-result" "^27.0.2" + "@jest/types" "^27.0.2" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^26.6.2" + jest-util "^27.0.2" string-length "^4.0.1" -jest-worker@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" - integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== +jest-worker@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.2.tgz#4ebeb56cef48b3e7514552f80d0d80c0129f0b05" + integrity sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg== dependencies: "@types/node" "*" merge-stream "^2.0.0" - supports-color "^7.0.0" + supports-color "^8.0.0" -jest@^26.6.3: - version "26.6.3" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" - integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== +jest@^27.0.3: + version "27.0.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.3.tgz#0b4ac738c93612f778d58250aee026220487e5a4" + integrity sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg== dependencies: - "@jest/core" "^26.6.3" + "@jest/core" "^27.0.3" import-local "^3.0.2" - jest-cli "^26.6.3" + jest-cli "^27.0.3" js-tokens@^4.0.0: version "4.0.0" @@ -4167,41 +3950,37 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= - -jsdom@^16.4.0: - version "16.4.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.4.0.tgz#36005bde2d136f73eee1a830c6d45e55408edddb" - integrity sha512-lYMm3wYdgPhrl7pDcRmvzPhhrGVBeVhPIqeHjzeiHN3DFmD1RBpbExbi8vU7BJdH8VAZYovR8DMt0PNNDM7k8w== +jsdom@^16.6.0: + version "16.6.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.6.0.tgz#f79b3786682065492a3da6a60a4695da983805ac" + integrity sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg== dependencies: - abab "^2.0.3" - acorn "^7.1.1" + abab "^2.0.5" + acorn "^8.2.4" acorn-globals "^6.0.0" cssom "^0.4.4" - cssstyle "^2.2.0" + cssstyle "^2.3.0" data-urls "^2.0.0" - decimal.js "^10.2.0" + decimal.js "^10.2.1" domexception "^2.0.1" - escodegen "^1.14.1" + escodegen "^2.0.0" + form-data "^3.0.0" html-encoding-sniffer "^2.0.1" - is-potential-custom-element-name "^1.0.0" + 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 "5.1.1" - request "^2.88.2" - request-promise-native "^1.0.8" - saxes "^5.0.0" + parse5 "6.0.1" + saxes "^5.0.1" symbol-tree "^3.2.4" - tough-cookie "^3.0.1" + 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.0.0" - ws "^7.2.3" + whatwg-url "^8.5.0" + ws "^7.4.5" xml-name-validator "^3.0.0" jsesc@^2.5.1: @@ -4224,21 +4003,11 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= -json-stringify-safe@~5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= - json5@2.x, json5@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.2.tgz#43ef1f0af9835dd624751a6b7fa48874fb2d608e" @@ -4267,40 +4036,6 @@ jsonparse@^1.2.0: resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - -kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.3" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== - kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -4445,7 +4180,7 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash@4.x, lodash@^4.17.10, lodash@^4.17.20, lodash@^4.17.21: +lodash@4.x, lodash@^4.17.10, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -4519,11 +4254,6 @@ makeerror@1.0.x: dependencies: tmpl "1.0.x" -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= - map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -4534,13 +4264,6 @@ map-obj@^2.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= - dependencies: - object-visit "^1.0.0" - media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" @@ -4581,25 +4304,6 @@ methods@^1.1.2, methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -micromatch@^3.1.4: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - braces "^2.3.1" - define-property "^2.0.2" - extend-shallow "^3.0.2" - extglob "^2.0.4" - fragment-cache "^0.2.1" - kind-of "^6.0.2" - nanomatch "^1.2.9" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.2" - micromatch@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" @@ -4631,7 +4335,7 @@ mime-db@1.47.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== -mime-types@^2.1.12, mime-types@~2.1.19: +mime-types@^2.1.12: version "2.1.26" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06" integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ== @@ -4687,7 +4391,7 @@ minimist-options@^3.0.1: arrify "^1.0.1" is-plain-obj "^1.1.0" -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: +minimist@^1.2.5: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== @@ -4697,14 +4401,6 @@ mitt@^1.1.3: resolved "https://registry.yarnpkg.com/mitt/-/mitt-1.2.0.tgz#cb24e6569c806e31bd4e3995787fe38a04fdf90d" integrity sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw== -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - mkdirp@1.x: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" @@ -4771,23 +4467,6 @@ ms@2.1.2, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - define-property "^2.0.2" - extend-shallow "^3.0.2" - fragment-cache "^0.2.1" - is-windows "^1.0.2" - kind-of "^6.0.2" - object.pick "^1.3.0" - regex-not "^1.0.0" - snapdragon "^0.8.1" - to-regex "^3.0.1" - native-duplexpair@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/native-duplexpair/-/native-duplexpair-1.0.0.tgz#7899078e64bf3c8a3d732601b3d40ff05db58fa0" @@ -4803,11 +4482,6 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -nice-try@^1.0.4: - version "1.0.5" - resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" - integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== - no-case@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" @@ -4836,19 +4510,12 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-notifier@^8.0.0: - version "8.0.2" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" - integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== - dependencies: - growly "^1.3.0" - is-wsl "^2.2.0" - semver "^7.3.2" - shellwords "^0.1.1" - uuid "^8.3.0" - which "^2.0.2" +node-releases@^1.1.71: + version "1.1.72" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.72.tgz#14802ab6b1039a79a0c7d662b610a5bbd76eacbe" + integrity sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw== -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -4858,13 +4525,6 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-path@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= - dependencies: - remove-trailing-separator "^1.0.1" - normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -4880,14 +4540,7 @@ normalize-url@^1.9.1: query-string "^4.1.0" sort-keys "^1.0.0" -npm-run-path@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" - integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= - dependencies: - path-key "^2.0.0" - -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -4904,39 +4557,11 @@ nwsapi@^2.2.0: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== - object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= - dependencies: - isobject "^3.0.0" - -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= - dependencies: - isobject "^3.0.1" - on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -4944,7 +4569,7 @@ on-finished@~2.3.0: dependencies: ee-first "1.1.1" -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= @@ -5015,11 +4640,6 @@ p-each-series@^2.1.0: resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48" integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ== -p-finally@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" - integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= - p-limit@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" @@ -5104,10 +4724,10 @@ parse-json@^5.0.0: json-parse-better-errors "^1.0.1" lines-and-columns "^1.1.6" -parse5@5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" - integrity sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug== +parse5@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== parseqs@0.0.6: version "0.0.6" @@ -5132,11 +4752,6 @@ pascal-case@^3.1.1: no-case "^3.0.3" tslib "^1.10.0" -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= - path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -5152,11 +4767,6 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-key@^2.0.0, path-key@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" - integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= - path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" @@ -5242,11 +4852,6 @@ portscanner@2.1.1: async "1.5.2" is-number-like "^1.0.3" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= - prelude-ls@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" @@ -5284,6 +4889,16 @@ pretty-format@^26.0.0, pretty-format@^26.6.2: ansi-styles "^4.0.0" react-is "^17.0.1" +pretty-format@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.2.tgz#9283ff8c4f581b186b2d4da461617143dca478a4" + integrity sha512-mXKbbBPnYTG7Yra9qFBtqj+IXcsvxsvOBco3QHxtxTl+hHKq6QdzMZ+q0CtL4ORHZgwGImRr2XZUX2EWzORxig== + dependencies: + "@jest/types" "^27.0.2" + ansi-regex "^5.0.0" + ansi-styles "^5.0.0" + react-is "^17.0.1" + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -5310,19 +4925,11 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" -psl@^1.1.28: +psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== -pump@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" - punycode@^2.1.0, punycode@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" @@ -5348,11 +4955,6 @@ qs@^6.9.4: resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.4.tgz#9090b290d1f91728d3c22e54843ca44aea5ab687" integrity sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ== -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== - query-string@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" @@ -5414,15 +5016,6 @@ read-pkg-up@^3.0.0: find-up "^2.0.0" read-pkg "^3.0.0" -read-pkg-up@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" - integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== - dependencies: - find-up "^4.1.0" - read-pkg "^5.2.0" - type-fest "^0.8.1" - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -5432,16 +5025,6 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -read-pkg@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" - integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== - dependencies: - "@types/normalize-package-data" "^2.4.0" - normalize-package-data "^2.5.0" - parse-json "^5.0.0" - type-fest "^0.6.0" - "readable-stream@2 || 3", readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -5479,76 +5062,11 @@ redent@^2.0.0: indent-string "^3.0.0" strip-indent "^2.0.0" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexpp@^3.0.0, regexpp@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== -remove-trailing-separator@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= - -repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== - -repeat-string@^1.6.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= - -request-promise-core@1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz#e9a3c081b51380dfea677336061fea879a829ee9" - integrity sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ== - dependencies: - lodash "^4.17.15" - -request-promise-native@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz#a455b960b826e44e2bf8999af64dff2bfe58cb36" - integrity sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ== - dependencies: - request-promise-core "1.1.3" - stealthy-require "^1.1.1" - tough-cookie "^2.3.3" - -request@^2.88.2: - version "2.88.2" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -5598,11 +5116,6 @@ resolve-global@1.0.0, resolve-global@^1.0.0: dependencies: global-dirs "^0.1.1" -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= - resolve@^1.10.0, resolve@^1.3.2: version "1.15.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" @@ -5610,7 +5123,7 @@ resolve@^1.10.0, resolve@^1.3.2: dependencies: path-parse "^1.0.6" -resolve@^1.18.1: +resolve@^1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -5634,11 +5147,6 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - reusify@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -5651,11 +5159,6 @@ rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" -rsvp@^4.8.4: - version "4.8.5" - resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" - integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== - run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -5687,44 +5190,22 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.0.1, safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== - safe-buffer@^5.1.2: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= - dependencies: - ret "~0.1.10" +safe-buffer@~5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" + integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== -"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sane@^4.0.3: - version "4.1.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" - integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== - dependencies: - "@cnakazawa/watch" "^1.0.3" - anymatch "^2.0.0" - capture-exit "^2.0.0" - exec-sh "^0.3.2" - execa "^1.0.0" - fb-watchman "^2.0.0" - micromatch "^3.1.4" - minimist "^1.1.1" - walker "~1.0.5" - -saxes@^5.0.0: +saxes@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== @@ -5736,7 +5217,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0: +"semver@2 || 3 || 4 || 5", semver@^5.4.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -5834,16 +5315,6 @@ set-blocking@^2.0.0: resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - setprototypeof@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" @@ -5859,13 +5330,6 @@ setprototypeof@1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== -shebang-command@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" - integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= - dependencies: - shebang-regex "^1.0.0" - shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -5873,21 +5337,11 @@ shebang-command@^2.0.0: dependencies: shebang-regex "^3.0.0" -shebang-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" - integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= - shebang-regex@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shellwords@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" - integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== - signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" @@ -5921,36 +5375,6 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - define-property "^0.2.5" - extend-shallow "^2.0.1" - map-cache "^0.2.2" - source-map "^0.5.6" - source-map-resolve "^0.5.0" - use "^3.1.0" - socket.io-adapter@~1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" @@ -6010,17 +5434,6 @@ sort-keys@^1.0.0: dependencies: is-plain-obj "^1.0.0" -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - source-map-support@^0.5.6: version "0.5.16" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" @@ -6029,12 +5442,7 @@ source-map-support@^0.5.6: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= - -source-map@^0.5.0, source-map@^0.5.6: +source-map@^0.5.0: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -6075,13 +5483,6 @@ spdx-license-ids@^3.0.0: resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - split2@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" @@ -6094,36 +5495,13 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== - dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" - -stack-utils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.2.tgz#5cf48b4557becb4638d0bc4f21d23f5d19586593" - integrity sha512-0H7QK2ECz3fyZMzQ8rH0j2ykpfbnd20BFtfg/SqVC2+sCTtcw0aDTGB7dk+de4U4uUeuz6nOtJcrkFFLG1B0Rg== +stack-utils@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277" + integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== dependencies: escape-string-regexp "^2.0.0" -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - "statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2", statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" @@ -6139,11 +5517,6 @@ statuses@~1.4.0: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== -stealthy-require@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" - integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= - stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" @@ -6231,11 +5604,6 @@ strip-bom@^4.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== -strip-eof@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" - integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= - strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" @@ -6306,6 +5674,13 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-hyperlinks@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" @@ -6374,10 +5749,10 @@ tfunk@^4.0.0: chalk "^1.1.3" dlv "^1.1.3" -throat@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" - integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== +throat@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" + integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== through2@^2.0.2: version "2.0.5" @@ -6414,21 +5789,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -6436,37 +5796,19 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - toidentifier@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== -tough-cookie@^2.3.3, tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tough-cookie@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2" - integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg== +tough-cookie@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== dependencies: - ip-regex "^2.1.0" - psl "^1.1.28" + psl "^1.1.33" punycode "^2.1.1" + universalify "^0.1.2" tr46@^2.0.0: version "2.0.2" @@ -6475,6 +5817,13 @@ tr46@^2.0.0: dependencies: punycode "^2.1.1" +tr46@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + trim-newlines@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" @@ -6485,15 +5834,15 @@ trim-off-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= -ts-jest@^26.5.6: - version "26.5.6" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.6.tgz#c32e0746425274e1dfe333f43cd3c800e014ec35" - integrity sha512-rua+rCP8DxpA8b4DQD/6X2HQS8Zy/xzViVYfEs2OQu68tkCuKLV0Md8pmX55+W24uRIyAsf/BajRfxOs+R2MKA== +ts-jest@^27.0.1: + version "27.0.1" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.1.tgz#3cd174561c4bb311e0187a5837543fb858c60d16" + integrity sha512-03qAt77QjhxyM5Bt2KrrT1WbdumiwLz989sD3IUznSp3GIFQrx76kQqSMLF7ynnxrF3/1ipzABnHxMlU8PD4Vw== dependencies: bs-logger "0.x" buffer-from "1.x" fast-json-stable-stringify "2.x" - jest-util "^26.1.0" + jest-util "^27.0.0" json5 "2.x" lodash "4.x" make-error "1.x" @@ -6523,18 +5872,6 @@ tsutils@^3.17.1: dependencies: tslib "^1.8.1" -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -6564,11 +5901,6 @@ type-fest@^0.20.2: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -type-fest@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" - integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== - type-fest@^0.8.1: version "0.8.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" @@ -6609,16 +5941,6 @@ ultron@~1.1.0: resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - universal-websocket-client@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/universal-websocket-client/-/universal-websocket-client-1.0.2.tgz#9942307a9d418bb5defd33594048c7e367448b44" @@ -6626,7 +5948,7 @@ universal-websocket-client@^1.0.2: dependencies: ws "^3.3.3" -universalify@^0.1.0: +universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== @@ -6641,14 +5963,6 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - uri-js@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" @@ -6656,16 +5970,6 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= - -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -6676,16 +5980,11 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.1.0, uuid@^3.3.2: +uuid@^3.1.0: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^8.3.0: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - v8-compile-cache@^2.0.3: version "2.1.1" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" @@ -6713,15 +6012,6 @@ vary@^1, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" @@ -6736,7 +6026,7 @@ w3c-xmlserializer@^2.0.0: dependencies: xml-name-validator "^3.0.0" -walker@^1.0.7, walker@~1.0.5: +walker@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= @@ -6786,19 +6076,21 @@ whatwg-url@^8.0.0: tr46 "^2.0.0" webidl-conversions "^5.0.0" +whatwg-url@^8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.5.0.tgz#7752b8464fc0903fec89aa9846fc9efe07351fd3" + integrity sha512-fy+R77xWv0AiqfLl4nuGUlQ3/6b5uNfQ4WAbGQVMYshCTCCPK9psC1nWh3XHuxGVCtlcDDQPQW1csmmIQo+fwg== + dependencies: + lodash "^4.7.0" + tr46 "^2.0.2" + webidl-conversions "^6.1.0" + which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.9: - version "1.3.1" - resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" - integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== - dependencies: - isexe "^2.0.0" - -which@^2.0.1, which@^2.0.2: +which@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== @@ -6859,11 +6151,6 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -ws@^7.2.3: - version "7.2.5" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.2.5.tgz#abb1370d4626a5a9cd79d8de404aa18b3465d10d" - integrity sha512-C34cIU4+DB2vMyAbmEKossWq2ZQDr6QEyuuCzWrM9zfw1sGc0mYiJ0UnG9zzNykt49C2Fi34hvr2vssFQRS6EA== - ws@^7.3.1: version "7.3.1" resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8" @@ -6939,7 +6226,7 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== -yargs@16.2.0, yargs@^16.2.0: +yargs@16.2.0, yargs@^16.0.3, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== From 09c698ce2862b2b1e1a56b117481a657730ca1a8 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 2 Jun 2021 20:18:26 +0200 Subject: [PATCH 32/77] chore(package.json): update dev deps (#623) --- package.json | 24 +-- yarn.lock | 470 +++++++++++++++++++++++++++------------------------ 2 files changed, 257 insertions(+), 237 deletions(-) diff --git a/package.json b/package.json index a53a45dd..10daffed 100644 --- a/package.json +++ b/package.json @@ -51,21 +51,21 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^12.1.1", - "@commitlint/config-conventional": "^12.1.1", + "@commitlint/cli": "^12.1.4", + "@commitlint/config-conventional": "^12.1.4", "@types/express": "4.17.7", "@types/is-glob": "^4.0.1", "@types/jest": "^26.0.23", "@types/micromatch": "^4.0.1", - "@types/node": "^15.0.2", + "@types/node": "^15.6.2", "@types/supertest": "^2.0.11", - "@types/ws": "^7.4.2", - "@typescript-eslint/eslint-plugin": "^4.22.1", - "@typescript-eslint/parser": "^4.22.1", + "@types/ws": "^7.4.4", + "@typescript-eslint/eslint-plugin": "^4.26.0", + "@typescript-eslint/parser": "^4.26.0", "body-parser": "^1.19.0", "browser-sync": "^2.26.14", "connect": "^3.7.0", - "eslint": "^7.25.0", + "eslint": "^7.27.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", "express": "^4.17.1", @@ -74,12 +74,12 @@ "jest": "^27.0.3", "lint-staged": "^11.0.0", "mockttp": "^1.2.2", - "open": "^8.0.8", - "prettier": "^2.2.1", + "open": "^8.2.0", + "prettier": "^2.3.0", "supertest": "^6.1.3", - "ts-jest": "^27.0.1", - "typescript": "^4.2.4", - "ws": "^7.4.5" + "ts-jest": "^27.0.2", + "typescript": "^4.3.2", + "ws": "^7.4.6" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index c7df82ac..e1410390 100644 --- a/yarn.lock +++ b/yarn.lock @@ -519,148 +519,147 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.1.1.tgz#740370e557a8a17f415052821cdd5276ecb0ab98" - integrity sha512-SB67/s6VJ50seoPx/Sr2gj1fMzKrx+udgarecGdr8h43ah+M2e22gjQJ7xHv5KwyPQ+6ug1YOMCL34ubT4zupQ== - dependencies: - "@commitlint/format" "^12.1.1" - "@commitlint/lint" "^12.1.1" - "@commitlint/load" "^12.1.1" - "@commitlint/read" "^12.1.1" - "@commitlint/types" "^12.1.1" - get-stdin "8.0.0" +"@commitlint/cli@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.1.4.tgz#af4d9dd3c0122c7b39a61fa1cd2abbad0422dbe0" + integrity sha512-ZR1WjXLvqEffYyBPT0XdnSxtt3Ty1TMoujEtseW5o3vPnkA1UNashAMjQVg/oELqfaiAMnDw8SERPMN0e/0kLg== + dependencies: + "@commitlint/format" "^12.1.4" + "@commitlint/lint" "^12.1.4" + "@commitlint/load" "^12.1.4" + "@commitlint/read" "^12.1.4" + "@commitlint/types" "^12.1.4" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^16.2.0" -"@commitlint/config-conventional@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-12.1.1.tgz#73dd3b1a7912138420d248f334f15c94c250bc9e" - integrity sha512-15CqbXMsQiEb0qbzjEHe2OkzaXPYSp7RxaS6KoSVk/4W0QiigquavQ+M0huBZze92h0lMS6Pxoq4AJ5CQ3D+iQ== +"@commitlint/config-conventional@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-12.1.4.tgz#95bbab622f117a8a3e49f95917b08655040c66a8" + integrity sha512-ZIdzmdy4o4WyqywMEpprRCrehjCSQrHkaRTVZV411GyLigFQHlEBSJITAihLAWe88Qy/8SyoIe5uKvAsV5vRqQ== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-12.1.1.tgz#bcefc85f7f8a41bb31f67d7a8966e322b47a6e43" - integrity sha512-XEUQvUjzBVQM7Uv8vYz+c7PDukFvx0AvQEyX/V+PaTkCK/xPvexu7FLbFwvypjSt9BPMf+T/rhB1hVmldkd6lw== +"@commitlint/ensure@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-12.1.4.tgz#287ae2dcc5ccb086e749705b1bd9bdb99773056f" + integrity sha512-MxHIBuAG9M4xl33qUfIeMSasbv3ktK0W+iygldBxZOL4QSYC2Gn66pZAQMnV9o3V+sVFHoAK2XUKqBAYrgbEqw== dependencies: - "@commitlint/types" "^12.1.1" + "@commitlint/types" "^12.1.4" lodash "^4.17.19" -"@commitlint/execute-rule@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-12.1.1.tgz#8aad1d46fb78b3199e4ae36debdc93570bf765ea" - integrity sha512-6mplMGvLCKF5LieL7BRhydpg32tm6LICnWQADrWU4S5g9PKi2utNvhiaiuNPoHUXr29RdbNaGNcyyPv8DSjJsQ== +"@commitlint/execute-rule@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-12.1.4.tgz#9973b02e9779adbf1522ae9ac207a4815ec73de1" + integrity sha512-h2S1j8SXyNeABb27q2Ok2vD1WfxJiXvOttKuRA9Or7LN6OQoC/KtT3844CIhhWNteNMu/wE0gkTqGxDVAnJiHg== -"@commitlint/format@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-12.1.1.tgz#a6b14f8605171374eecc2c463098d63c127ab7df" - integrity sha512-bTAoOryTFLqls17JTaRwk2WDVOP0NwuG4F/JPK8RaF6DMZNVQTfajkgTxFENNZRnESfau1BvivvEXfUAW2ZsvA== +"@commitlint/format@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-12.1.4.tgz#db2d46418a6ae57c90e5f7f65dff46f0265d9f24" + integrity sha512-h28ucMaoRjVvvgS6Bdf85fa/+ZZ/iu1aeWGCpURnQV7/rrVjkhNSjZwGlCOUd5kDV1EnZ5XdI7L18SUpRjs26g== dependencies: - "@commitlint/types" "^12.1.1" + "@commitlint/types" "^12.1.4" chalk "^4.0.0" -"@commitlint/is-ignored@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-12.1.1.tgz#6075a5cd2dcda7b6ec93322f5dbe2142cfbb3248" - integrity sha512-Sn4fsnWX+wLAJOD/UZeoVruB98te1TyPYRiDEq0MhRJAQIrP+7jE/O3/ass68AAMq00HvH3OK9kt4UBXggcGjA== +"@commitlint/is-ignored@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-12.1.4.tgz#4c430bc3b361aa9be5cd4ddb252c1559870ea7bc" + integrity sha512-uTu2jQU2SKvtIRVLOzMQo3KxDtO+iJ1p0olmncwrqy4AfPLgwoyCP2CiULq5M7xpR3+dE3hBlZXbZTQbD7ycIw== dependencies: - "@commitlint/types" "^12.1.1" + "@commitlint/types" "^12.1.4" semver "7.3.5" -"@commitlint/lint@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-12.1.1.tgz#cdd898af6eadba8f9e71d7f1255b5a479a757078" - integrity sha512-FFFPpku/E0svL1jaUVqosuZJDDWiNWYBlUw5ZEljh3MwWRcoaWtMIX5bseX+IvHpFZsCTAiBs1kCgNulCi0UvA== +"@commitlint/lint@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-12.1.4.tgz#856b7fd2b2e6367b836cb84a12f1c1b3c0e40d22" + integrity sha512-1kZ8YDp4to47oIPFELUFGLiLumtPNKJigPFDuHt2+f3Q3IKdQ0uk53n3CPl4uoyso/Og/EZvb1mXjFR/Yce4cA== dependencies: - "@commitlint/is-ignored" "^12.1.1" - "@commitlint/parse" "^12.1.1" - "@commitlint/rules" "^12.1.1" - "@commitlint/types" "^12.1.1" + "@commitlint/is-ignored" "^12.1.4" + "@commitlint/parse" "^12.1.4" + "@commitlint/rules" "^12.1.4" + "@commitlint/types" "^12.1.4" -"@commitlint/load@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-12.1.1.tgz#5a7fb8be11e520931d1237c5e8dc401b7cc9c6c1" - integrity sha512-qOQtgNdJRULUQWP9jkpTwhj7aEtnqUtqeUpbQ9rjS+GIUST65HZbteNUX4S0mAEGPWqy2aK5xGd73cUfFSvuuw== +"@commitlint/load@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-12.1.4.tgz#e3c2dbc0e7d8d928f57a6878bd7219909fc0acab" + integrity sha512-Keszi0IOjRzKfxT+qES/n+KZyLrxy79RQz8wWgssCboYjKEp+wC+fLCgbiMCYjI5k31CIzIOq/16J7Ycr0C0EA== dependencies: - "@commitlint/execute-rule" "^12.1.1" - "@commitlint/resolve-extends" "^12.1.1" - "@commitlint/types" "^12.1.1" + "@commitlint/execute-rule" "^12.1.4" + "@commitlint/resolve-extends" "^12.1.4" + "@commitlint/types" "^12.1.4" chalk "^4.0.0" cosmiconfig "^7.0.0" lodash "^4.17.19" resolve-from "^5.0.0" -"@commitlint/message@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-12.1.1.tgz#56eb1dbb561e85e9295380a46ff3b09bc93cac65" - integrity sha512-RakDSLAiOligXjhbLahV8HowF4K75pZIcs0+Ii9Q8Gz5H3DWf1Ngit7alFTWfcbf/+DTjSzVPov5HiwQZPIBUg== +"@commitlint/message@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-12.1.4.tgz#3895edcc0709deca5945f3d55f5ea95a9f1f446d" + integrity sha512-6QhalEKsKQ/Y16/cTk5NH4iByz26fqws2ub+AinHPtM7Io0jy4e3rym9iE+TkEqiqWZlUigZnTwbPvRJeSUBaA== -"@commitlint/parse@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-12.1.1.tgz#3e49d6dc113d59cf266af0db99e320e933108c56" - integrity sha512-nuljIvAbBDr93DgL0wCArftEIhjSghawAwhvrKNV9FFcqAJqfVqitwMxJrNDCQ5pgUMCSKULLOEv+dA0bLlTEQ== +"@commitlint/parse@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-12.1.4.tgz#ba03d54d24ef84f6fd2ff31c5e9998b22d7d0aa1" + integrity sha512-yqKSAsK2V4X/HaLb/yYdrzs6oD/G48Ilt0EJ2Mp6RJeWYxG14w/Out6JrneWnr/cpzemyN5hExOg6+TB19H/Lw== dependencies: - "@commitlint/types" "^12.1.1" + "@commitlint/types" "^12.1.4" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.0.0" -"@commitlint/read@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-12.1.1.tgz#22a2d7fd1eab5e38b9b262311af28ac42f9a5097" - integrity sha512-1k0CQEoZIdixvmqZRKEcWdj2XiKS7SlizEOJ1SE99Qui5d5FlBey8eaooTGgmpR6zObpIHJehtEPzM3VzUT3qA== +"@commitlint/read@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-12.1.4.tgz#552fda42ef185d5b578beb6f626a5f8b282de3a6" + integrity sha512-TnPQSJgD8Aod5Xeo9W4SaYKRZmIahukjcCWJ2s5zb3ZYSmj6C85YD9cR5vlRyrZjj78ItLUV/X4FMWWVIS38Jg== dependencies: - "@commitlint/top-level" "^12.1.1" - "@commitlint/types" "^12.1.1" + "@commitlint/top-level" "^12.1.4" + "@commitlint/types" "^12.1.4" fs-extra "^9.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-12.1.1.tgz#80a78b0940775d17888dd2985b52f93d93e0a885" - integrity sha512-/DXRt0S0U3o9lq5cc8OL1Lkx0IjW0HcDWjUkUXshAajBIKBYSJB8x/loNCi1krNEJ8SwLXUEFt5OLxNO6wE9yQ== +"@commitlint/resolve-extends@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-12.1.4.tgz#e758ed7dcdf942618b9f603a7c28a640f6a0802a" + integrity sha512-R9CoUtsXLd6KSCfsZly04grsH6JVnWFmVtWgWs1KdDpdV+G3TSs37tColMFqglpkx3dsWu8dsPD56+D9YnJfqg== dependencies: import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-12.1.1.tgz#d59182a837d2addf301a3a4ef83316ae7e70248f" - integrity sha512-oCcLF/ykcJfhM2DeeaDyrgdaiuKsqIPNocugdPj2WEyhSYqmx1/u18CV96LAtW+WyyiOLCCeiZwiQutx3T5nXg== +"@commitlint/rules@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-12.1.4.tgz#0e141b08caa3d7bdc48aa784baa8baff3efd64db" + integrity sha512-W8m6ZSjg7RuIsIfzQiFHa48X5mcPXeKT9yjBxVmjHvYfS2FDBf1VxCQ7vO0JTVIdV4ohjZ0eKg/wxxUuZHJAZg== dependencies: - "@commitlint/ensure" "^12.1.1" - "@commitlint/message" "^12.1.1" - "@commitlint/to-lines" "^12.1.1" - "@commitlint/types" "^12.1.1" + "@commitlint/ensure" "^12.1.4" + "@commitlint/message" "^12.1.4" + "@commitlint/to-lines" "^12.1.4" + "@commitlint/types" "^12.1.4" -"@commitlint/to-lines@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-12.1.1.tgz#40fbed1767d637249ce49b311a51909d8361ecf8" - integrity sha512-W23AH2XF5rI27MOAPSSr0TUDoRe7ZbFoRtYhFnPu2MBmcuDA9Tmfd9N5sM2tBXtdE26uq3SazwKqGt1OoGAilQ== +"@commitlint/to-lines@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-12.1.4.tgz#caa582dbf121f377a0588bb64e25c4854843cd25" + integrity sha512-TParumvbi8bdx3EdLXz2MaX+e15ZgoCqNUgqHsRLwyqLUTRbqCVkzrfadG1UcMQk8/d5aMbb327ZKG3Q4BRorw== -"@commitlint/top-level@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-12.1.1.tgz#228df8fc36b6d7ea7ad149badfb6ef53dbc7001d" - integrity sha512-g7uRbr81QEIg+pbii0OkE17Zh/2C/f6dSmiMDVRn1S0+hNHR1bENCh18hVUKcV/qKTUsKkFlhhWXM9mQBfxQJw== +"@commitlint/top-level@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-12.1.4.tgz#96d5c715bfc1bdf86dfcf11b67fc2cf7658c7a6e" + integrity sha512-d4lTJrOT/dXlpY+NIt4CUl77ciEzYeNVc0VFgUQ6VA+b1rqYD2/VWFjBlWVOrklxtSDeKyuEhs36RGrppEFAvg== dependencies: find-up "^5.0.0" -"@commitlint/types@^12.1.1": - version "12.1.1" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-12.1.1.tgz#8e651f6af0171cd4f8d464c6c37a7cf63ee071bd" - integrity sha512-+qGH+s2Lo6qwacV2X3/ZypZwaAI84ift+1HBjXdXtI/q0F5NtmXucV3lcQOTviMTNiJhq4qWON2fjci2NItASw== +"@commitlint/types@^12.1.4": + version "12.1.4" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-12.1.4.tgz#9618a5dc8991fb58e6de6ed89d7bf712fa74ba7e" + integrity sha512-KRIjdnWNUx6ywz+SJvjmNCbQKcKP6KArhjZhY2l+CWKxak0d77SOjggkMwFTiSgLODOwmuLTbarR2ZfWPiPMlw== dependencies: chalk "^4.0.0" -"@eslint/eslintrc@^0.4.0": - version "0.4.0" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" - integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== +"@eslint/eslintrc@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz#442763b88cecbe3ee0ec7ca6d6dd6168550cbf14" + integrity sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ== dependencies: ajv "^6.12.4" debug "^4.1.1" @@ -1092,10 +1091,10 @@ jest-diff "^26.0.0" pretty-format "^26.0.0" -"@types/json-schema@^7.0.3": - version "7.0.5" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" - integrity sha512-7+2BITlgjgDhH0vvwZU/HZJVyk+2XUlvxXe8dFMedNX/aMkaOq++rMAFXc0tM7ij15QaWlbdQASBR9dihi+bDQ== +"@types/json-schema@^7.0.7": + version "7.0.7" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" + integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== "@types/micromatch@^4.0.1": version "4.0.1" @@ -1126,10 +1125,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e" integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw== -"@types/node@^15.0.2": - version "15.0.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-15.0.2.tgz#51e9c0920d1b45936ea04341aa3e2e58d339fb67" - integrity sha512-p68+a+KoxpoB47015IeYZYRrdqMUcpbK8re/zpFB8Ld46LHC1lPEbp3EXgkEhAYEcPvjJF6ZO+869SQ0aH1dcA== +"@types/node@^15.6.2": + version "15.6.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" + integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== "@types/parse-json@^4.0.0": version "4.0.0" @@ -1179,10 +1178,10 @@ dependencies: "@types/superagent" "*" -"@types/ws@^7.4.2": - version "7.4.2" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.2.tgz#bfe739b5f8b3a39742605fbe415ae7e88ee614c8" - integrity sha512-PbeN0Eydl7LQl4OIav29YmkO2LxbVuz3nZD/kb19lOS+wLgIkRbWMNmU/QQR7ABpOJ7D7xDOU8co7iohObewrw== +"@types/ws@^7.4.4": + version "7.4.4" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.4.tgz#93e1e00824c1de2608c30e6de4303ab3b4c0c9bc" + integrity sha512-d/7W23JAXPodQNbOZNXvl2K+bqAQrCMwlh/nuQsPSQk6Fq0opHoPrUw43aHsvSbIiQPr8Of2hkFbnz1XBFVyZQ== dependencies: "@types/node" "*" @@ -1205,74 +1204,74 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.22.1.tgz#6bcdbaa4548553ab861b4e5f34936ead1349a543" - integrity sha512-kVTAghWDDhsvQ602tHBc6WmQkdaYbkcTwZu+7l24jtJiYvm9l+/y/b2BZANEezxPDiX5MK2ZecE+9BFi/YJryw== +"@typescript-eslint/eslint-plugin@^4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.0.tgz#12bbd6ebd5e7fabd32e48e1e60efa1f3554a3242" + integrity sha512-yA7IWp+5Qqf+TLbd8b35ySFOFzUfL7i+4If50EqvjT6w35X8Lv0eBHb6rATeWmucks37w+zV+tWnOXI9JlG6Eg== dependencies: - "@typescript-eslint/experimental-utils" "4.22.1" - "@typescript-eslint/scope-manager" "4.22.1" - debug "^4.1.1" + "@typescript-eslint/experimental-utils" "4.26.0" + "@typescript-eslint/scope-manager" "4.26.0" + debug "^4.3.1" functional-red-black-tree "^1.0.1" - lodash "^4.17.15" - regexpp "^3.0.0" - semver "^7.3.2" - tsutils "^3.17.1" - -"@typescript-eslint/experimental-utils@4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.22.1.tgz#3938a5c89b27dc9a39b5de63a62ab1623ab27497" - integrity sha512-svYlHecSMCQGDO2qN1v477ax/IDQwWhc7PRBiwAdAMJE7GXk5stF4Z9R/8wbRkuX/5e9dHqbIWxjeOjckK3wLQ== - dependencies: - "@types/json-schema" "^7.0.3" - "@typescript-eslint/scope-manager" "4.22.1" - "@typescript-eslint/types" "4.22.1" - "@typescript-eslint/typescript-estree" "4.22.1" - eslint-scope "^5.0.0" - eslint-utils "^2.0.0" - -"@typescript-eslint/parser@^4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.22.1.tgz#a95bda0fd01d994a15fc3e99dc984294f25c19cc" - integrity sha512-l+sUJFInWhuMxA6rtirzjooh8cM/AATAe3amvIkqKFeMzkn85V+eLzb1RyuXkHak4dLfYzOmF6DXPyflJvjQnw== - dependencies: - "@typescript-eslint/scope-manager" "4.22.1" - "@typescript-eslint/types" "4.22.1" - "@typescript-eslint/typescript-estree" "4.22.1" - debug "^4.1.1" + lodash "^4.17.21" + regexpp "^3.1.0" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.0.tgz#ba7848b3f088659cdf71bce22454795fc55be99a" + integrity sha512-TH2FO2rdDm7AWfAVRB5RSlbUhWxGVuxPNzGT7W65zVfl8H/WeXTk1e69IrcEVsBslrQSTDKQSaJD89hwKrhdkw== + dependencies: + "@types/json-schema" "^7.0.7" + "@typescript-eslint/scope-manager" "4.26.0" + "@typescript-eslint/types" "4.26.0" + "@typescript-eslint/typescript-estree" "4.26.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" -"@typescript-eslint/scope-manager@4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.22.1.tgz#5bb357f94f9cd8b94e6be43dd637eb73b8f355b4" - integrity sha512-d5bAiPBiessSmNi8Amq/RuLslvcumxLmyhf1/Xa9IuaoFJ0YtshlJKxhlbY7l2JdEk3wS0EnmnfeJWSvADOe0g== +"@typescript-eslint/parser@^4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.26.0.tgz#31b6b732c9454f757b020dab9b6754112aa5eeaf" + integrity sha512-b4jekVJG9FfmjUfmM4VoOItQhPlnt6MPOBUL0AQbiTmm+SSpSdhHYlwayOm4IW9KLI/4/cRKtQCmDl1oE2OlPg== dependencies: - "@typescript-eslint/types" "4.22.1" - "@typescript-eslint/visitor-keys" "4.22.1" + "@typescript-eslint/scope-manager" "4.26.0" + "@typescript-eslint/types" "4.26.0" + "@typescript-eslint/typescript-estree" "4.26.0" + debug "^4.3.1" -"@typescript-eslint/types@4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.22.1.tgz#bf99c6cec0b4a23d53a61894816927f2adad856a" - integrity sha512-2HTkbkdAeI3OOcWbqA8hWf/7z9c6gkmnWNGz0dKSLYLWywUlkOAQ2XcjhlKLj5xBFDf8FgAOF5aQbnLRvgNbCw== +"@typescript-eslint/scope-manager@4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz#60d1a71df162404e954b9d1c6343ff3bee496194" + integrity sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg== + dependencies: + "@typescript-eslint/types" "4.26.0" + "@typescript-eslint/visitor-keys" "4.26.0" -"@typescript-eslint/typescript-estree@4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.22.1.tgz#dca379eead8cdfd4edc04805e83af6d148c164f9" - integrity sha512-p3We0pAPacT+onSGM+sPR+M9CblVqdA9F1JEdIqRVlxK5Qth4ochXQgIyb9daBomyQKAXbygxp1aXQRV0GC79A== +"@typescript-eslint/types@4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.26.0.tgz#7c6732c0414f0a69595f4f846ebe12616243d546" + integrity sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A== + +"@typescript-eslint/typescript-estree@4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz#aea17a40e62dc31c63d5b1bbe9a75783f2ce7109" + integrity sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg== dependencies: - "@typescript-eslint/types" "4.22.1" - "@typescript-eslint/visitor-keys" "4.22.1" - debug "^4.1.1" - globby "^11.0.1" + "@typescript-eslint/types" "4.26.0" + "@typescript-eslint/visitor-keys" "4.26.0" + debug "^4.3.1" + globby "^11.0.3" is-glob "^4.0.1" - semver "^7.3.2" - tsutils "^3.17.1" + semver "^7.3.5" + tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.22.1": - version "4.22.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.22.1.tgz#6045ae25a11662c671f90b3a403d682dfca0b7a6" - integrity sha512-WPkOrIRm+WCLZxXQHCi+WG8T2MMTUFR70rWjdWYddLT7cEfb2P4a3O/J2U1FBVsSFTocXLCoXWY6MZGejeStvQ== +"@typescript-eslint/visitor-keys@4.26.0": + version "4.26.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz#26d2583169222815be4dcd1da4fe5459bc3bcc23" + integrity sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg== dependencies: - "@typescript-eslint/types" "4.22.1" + "@typescript-eslint/types" "4.26.0" eslint-visitor-keys "^2.0.0" JSONStream@^1.0.4: @@ -1374,10 +1373,10 @@ ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^7.0.2: - version "7.2.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-7.2.4.tgz#8e239d4d56cf884bccca8cca362f508446dc160f" - integrity sha512-nBeQgg/ZZA3u3SYxyaDvpvDtgZ/EZPF547ARgZBrG9Bhu1vKDwAIjtIf+sDtJUKa2zOcEbmRLBRSyMraS/Oy1A== +ajv@^8.0.1: + version "8.5.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.5.0.tgz#695528274bcb5afc865446aa275484049a18ae4b" + integrity sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ== dependencies: fast-deep-equal "^3.1.1" json-schema-traverse "^1.0.0" @@ -2476,6 +2475,11 @@ escape-string-regexp@^2.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" @@ -2500,14 +2504,6 @@ eslint-plugin-prettier@^3.4.0: dependencies: prettier-linter-helpers "^1.0.0" -eslint-scope@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5" - integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w== - dependencies: - esrecurse "^4.1.0" - estraverse "^4.1.1" - eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" @@ -2516,13 +2512,20 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-utils@^2.0.0, eslint-utils@^2.1.0: +eslint-utils@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== dependencies: eslint-visitor-keys "^1.1.0" +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" @@ -2533,25 +2536,27 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@^7.25.0: - version "7.25.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.25.0.tgz#1309e4404d94e676e3e831b3a3ad2b050031eb67" - integrity sha512-TVpSovpvCNpLURIScDRB6g5CYu/ZFq9GfX2hLNIV4dSBKxIWojeDODvYl3t0k0VtMxYeR8OXPCFE5+oHMlGfhw== +eslint@^7.27.0: + version "7.27.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.27.0.tgz#665a1506d8f95655c9274d84bd78f7166b07e9c7" + integrity sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA== dependencies: "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.0" + "@eslint/eslintrc" "^0.4.1" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" debug "^4.0.1" doctrine "^3.0.0" enquirer "^2.3.5" + escape-string-regexp "^4.0.0" eslint-scope "^5.1.1" eslint-utils "^2.1.0" eslint-visitor-keys "^2.0.0" espree "^7.3.1" esquery "^1.4.0" esutils "^2.0.2" + fast-deep-equal "^3.1.3" file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" glob-parent "^5.0.0" @@ -2563,7 +2568,7 @@ eslint@^7.25.0: js-yaml "^3.13.1" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.4.1" - lodash "^4.17.21" + lodash.merge "^4.6.2" minimatch "^3.0.4" natural-compare "^1.4.0" optionator "^0.9.1" @@ -2572,7 +2577,7 @@ eslint@^7.25.0: semver "^7.2.1" strip-ansi "^6.0.0" strip-json-comments "^3.1.0" - table "^6.0.4" + table "^6.0.9" text-table "^0.2.0" v8-compile-cache "^2.0.3" @@ -2597,13 +2602,6 @@ esquery@^1.4.0: dependencies: estraverse "^5.1.0" -esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ== - dependencies: - estraverse "^4.1.0" - esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" @@ -2611,7 +2609,7 @@ esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" -estraverse@^4.1.0, estraverse@^4.1.1: +estraverse@^4.1.1: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== @@ -2724,6 +2722,11 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== +fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + fast-diff@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" @@ -2960,11 +2963,6 @@ get-port@^5.1.1: resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== -get-stdin@8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" - integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== - get-stream@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" @@ -3033,7 +3031,7 @@ globals@^13.6.0: dependencies: type-fest "^0.20.2" -globby@^11.0.1: +globby@^11.0.3: version "11.0.3" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== @@ -4155,11 +4153,21 @@ lodash._reinterpolate@^3.0.0: resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + lodash.isfinite@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" integrity sha1-+4m2WpqAKBgz8LdHizpRBPiY67M= +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" @@ -4180,7 +4188,12 @@ lodash.templatesettings@^4.0.0: dependencies: lodash._reinterpolate "^3.0.0" -lodash@4.x, lodash@^4.17.10, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +lodash@4.x, lodash@^4.17.10, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -4590,10 +4603,10 @@ onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.0.8: - version "8.0.8" - resolved "https://registry.yarnpkg.com/open/-/open-8.0.8.tgz#0e286bb2df3c72e00cb2a0203d604abee002dbdc" - integrity sha512-3XmKIU8+H/TVr8wB8C4vj0z748+yBydSvtpzZVS6vQ1dKNHB6AiPbhaoG+89zb80717GPk9y/7OvK0R6FXkNmQ== +open@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/open/-/open-8.2.0.tgz#d6a4788b00009a9d60df471ecb89842a15fdcfc1" + integrity sha512-O8uInONB4asyY3qUcEytpgwxQG3O0fJ/hlssoUHsBboOIRVZzT6Wq+Rwj5nffbeUhOdMjpXeISpDDzHCMRDuOQ== dependencies: define-lazy-prop "^2.0.0" is-docker "^2.1.1" @@ -4874,10 +4887,10 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" - integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== +prettier@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" + integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w== pretty-format@^26.0.0, pretty-format@^26.6.2: version "26.6.2" @@ -5062,7 +5075,7 @@ redent@^2.0.0: indent-string "^3.0.0" strip-indent "^2.0.0" -regexpp@^3.0.0, regexpp@^3.1.0: +regexpp@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== @@ -5222,7 +5235,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2: +semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -5704,15 +5717,17 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -table@^6.0.4: - version "6.0.7" - resolved "https://registry.yarnpkg.com/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" - integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== +table@^6.0.9: + version "6.7.1" + resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" + integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== dependencies: - ajv "^7.0.2" - lodash "^4.17.20" + ajv "^8.0.1" + lodash.clonedeep "^4.5.0" + lodash.truncate "^4.4.2" slice-ansi "^4.0.0" string-width "^4.2.0" + strip-ansi "^6.0.0" terminal-link@^2.0.0: version "2.1.1" @@ -5834,10 +5849,10 @@ trim-off-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= -ts-jest@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.1.tgz#3cd174561c4bb311e0187a5837543fb858c60d16" - integrity sha512-03qAt77QjhxyM5Bt2KrrT1WbdumiwLz989sD3IUznSp3GIFQrx76kQqSMLF7ynnxrF3/1ipzABnHxMlU8PD4Vw== +ts-jest@^27.0.2: + version "27.0.2" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.2.tgz#acc1525d5fd25c107c777c3b80a11365db579aa1" + integrity sha512-pozjHOOfm+sbv9kXCvTFVyDntWvuJztzkNFql/akD75hSMZ2jsbidVauOhBRImAopXohqcLtPK/NTTIS8Y49Ug== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -5865,10 +5880,10 @@ tslib@~2.0.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== -tsutils@^3.17.1: - version "3.17.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759" - integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g== +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== dependencies: tslib "^1.8.1" @@ -5926,10 +5941,10 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.2.4: - version "4.2.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.2.4.tgz#8610b59747de028fda898a8aef0e103f156d0961" - integrity sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg== +typescript@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.2.tgz#399ab18aac45802d6f2498de5054fcbbe716a805" + integrity sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw== ua-parser-js@^0.7.18: version "0.7.28" @@ -6161,6 +6176,11 @@ ws@^7.4.5, ws@~7.4.2: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.5.tgz#a484dd851e9beb6fdb420027e3885e8ce48986c1" integrity sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g== +ws@^7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" From cab280a114fc7df35579e5bb00301d68e23179eb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 2 Jun 2021 22:12:27 +0200 Subject: [PATCH 33/77] chore(yarn.lock): yarn-deduplicate (#624) --- yarn.lock | 557 +++++------------------------------------------------- 1 file changed, 50 insertions(+), 507 deletions(-) diff --git a/yarn.lock b/yarn.lock index e1410390..e058ff74 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14,14 +14,7 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz#33e25903d7481181534e12ec0a25f16b6fcf419e" - integrity sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g== - dependencies: - "@babel/highlight" "^7.8.3" - -"@babel/code-frame@^7.12.13": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== @@ -33,29 +26,7 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.0.tgz#a901128bce2ad02565df95e6ecbf195cf9465919" integrity sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q== -"@babel/core@^7.1.0", "@babel/core@^7.7.5": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e" - integrity sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w== - dependencies: - "@babel/code-frame" "^7.8.3" - "@babel/generator" "^7.9.0" - "@babel/helper-module-transforms" "^7.9.0" - "@babel/helpers" "^7.9.0" - "@babel/parser" "^7.9.0" - "@babel/template" "^7.8.6" - "@babel/traverse" "^7.9.0" - "@babel/types" "^7.9.0" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.7.2": +"@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5": version "7.14.3" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.3.tgz#5395e30405f0776067fbd9cf0884f15bfb770a38" integrity sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg== @@ -85,16 +56,6 @@ jsesc "^2.5.1" source-map "^0.5.0" -"@babel/generator@^7.9.0": - version "7.9.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.4.tgz#12441e90c3b3c4159cdecf312075bf1a8ce2dbce" - integrity sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA== - dependencies: - "@babel/types" "^7.9.0" - jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" - "@babel/helper-compilation-targets@^7.13.16": version "7.13.16" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz#6e91dccf15e3f43e5556dffe32d860109887563c" @@ -114,15 +75,6 @@ "@babel/template" "^7.12.13" "@babel/types" "^7.14.2" -"@babel/helper-function-name@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz#eeeb665a01b1f11068e9fb86ad56a1cb1a824cca" - integrity sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA== - dependencies: - "@babel/helper-get-function-arity" "^7.8.3" - "@babel/template" "^7.8.3" - "@babel/types" "^7.8.3" - "@babel/helper-get-function-arity@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" @@ -130,13 +82,6 @@ dependencies: "@babel/types" "^7.12.13" -"@babel/helper-get-function-arity@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz#b894b947bd004381ce63ea1db9f08547e920abd5" - integrity sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA== - dependencies: - "@babel/types" "^7.8.3" - "@babel/helper-member-expression-to-functions@^7.13.12": version "7.13.12" resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" @@ -144,13 +89,6 @@ dependencies: "@babel/types" "^7.13.12" -"@babel/helper-member-expression-to-functions@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz#659b710498ea6c1d9907e0c73f206eee7dadc24c" - integrity sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA== - dependencies: - "@babel/types" "^7.8.3" - "@babel/helper-module-imports@^7.13.12": version "7.13.12" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" @@ -158,13 +96,6 @@ dependencies: "@babel/types" "^7.13.12" -"@babel/helper-module-imports@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz#7fe39589b39c016331b6b8c3f441e8f0b1419498" - integrity sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg== - dependencies: - "@babel/types" "^7.8.3" - "@babel/helper-module-transforms@^7.14.2": version "7.14.2" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz#ac1cc30ee47b945e3e0c4db12fa0c5389509dfe5" @@ -179,19 +110,6 @@ "@babel/traverse" "^7.14.2" "@babel/types" "^7.14.2" -"@babel/helper-module-transforms@^7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz#43b34dfe15961918707d247327431388e9fe96e5" - integrity sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA== - dependencies: - "@babel/helper-module-imports" "^7.8.3" - "@babel/helper-replace-supers" "^7.8.6" - "@babel/helper-simple-access" "^7.8.3" - "@babel/helper-split-export-declaration" "^7.8.3" - "@babel/template" "^7.8.6" - "@babel/types" "^7.9.0" - lodash "^4.17.13" - "@babel/helper-optimise-call-expression@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" @@ -199,24 +117,7 @@ dependencies: "@babel/types" "^7.12.13" -"@babel/helper-optimise-call-expression@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz#7ed071813d09c75298ef4f208956006b6111ecb9" - integrity sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ== - dependencies: - "@babel/types" "^7.8.3" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670" - integrity sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ== - -"@babel/helper-plugin-utils@^7.10.4": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" - integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== - -"@babel/helper-plugin-utils@^7.12.13": +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": version "7.13.0" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== @@ -231,16 +132,6 @@ "@babel/traverse" "^7.14.2" "@babel/types" "^7.14.2" -"@babel/helper-replace-supers@^7.8.6": - version "7.8.6" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz#5ada744fd5ad73203bf1d67459a27dcba67effc8" - integrity sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.8.3" - "@babel/helper-optimise-call-expression" "^7.8.3" - "@babel/traverse" "^7.8.6" - "@babel/types" "^7.8.6" - "@babel/helper-simple-access@^7.13.12": version "7.13.12" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" @@ -248,14 +139,6 @@ dependencies: "@babel/types" "^7.13.12" -"@babel/helper-simple-access@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz#7f8109928b4dab4654076986af575231deb639ae" - integrity sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw== - dependencies: - "@babel/template" "^7.8.3" - "@babel/types" "^7.8.3" - "@babel/helper-split-export-declaration@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" @@ -263,33 +146,11 @@ dependencies: "@babel/types" "^7.12.13" -"@babel/helper-split-export-declaration@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz#31a9f30070f91368a7182cf05f831781065fc7a9" - integrity sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA== - dependencies: - "@babel/types" "^7.8.3" - -"@babel/helper-validator-identifier@^7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz#c9a1f021917dcb5ccf0d4e453e399022981fc9ed" - integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== - "@babel/helper-validator-identifier@^7.14.0": version "7.14.0" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288" integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== -"@babel/helper-validator-identifier@^7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz#ad53562a7fc29b3b9a91bbf7d10397fd146346ed" - integrity sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw== - -"@babel/helper-validator-identifier@^7.9.5": - version "7.9.5" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz#90977a8e6fbf6b431a7dc31752eee233bf052d80" - integrity sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g== - "@babel/helper-validator-option@^7.12.17": version "7.12.17" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" @@ -304,25 +165,7 @@ "@babel/traverse" "^7.14.0" "@babel/types" "^7.14.0" -"@babel/helpers@^7.9.0": - version "7.9.2" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.9.2.tgz#b42a81a811f1e7313b88cba8adc66b3d9ae6c09f" - integrity sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA== - dependencies: - "@babel/template" "^7.8.3" - "@babel/traverse" "^7.9.0" - "@babel/types" "^7.9.0" - -"@babel/highlight@^7.10.4": - version "7.13.10" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.13.10.tgz#a8b2a66148f5b27d666b15d81774347a731d52d1" - integrity sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg== - dependencies: - "@babel/helper-validator-identifier" "^7.12.11" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/highlight@^7.12.13": +"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": version "7.14.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf" integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== @@ -331,21 +174,7 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/highlight@^7.8.3": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.9.0.tgz#4e9b45ccb82b79607271b2979ad82c7b68163079" - integrity sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ== - dependencies: - "@babel/helper-validator-identifier" "^7.9.0" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/parser@^7.1.0", "@babel/parser@^7.7.5", "@babel/parser@^7.8.6", "@babel/parser@^7.9.0": - version "7.9.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.4.tgz#68a35e6b0319bbc014465be43828300113f2f2e8" - integrity sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA== - -"@babel/parser@^7.12.13", "@babel/parser@^7.14.2", "@babel/parser@^7.14.3", "@babel/parser@^7.7.2": +"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.14.2", "@babel/parser@^7.14.3", "@babel/parser@^7.7.2": version "7.14.3" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.3.tgz#9b530eecb071fd0c93519df25c5ff9f14759f298" integrity sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ== @@ -441,7 +270,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/template@^7.12.13": +"@babel/template@^7.12.13", "@babel/template@^7.3.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== @@ -450,31 +279,7 @@ "@babel/parser" "^7.12.13" "@babel/types" "^7.12.13" -"@babel/template@^7.3.3", "@babel/template@^7.7.4", "@babel/template@^7.8.3", "@babel/template@^7.8.6": - version "7.8.6" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.8.6.tgz#86b22af15f828dfb086474f964dcc3e39c43ce2b" - integrity sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg== - dependencies: - "@babel/code-frame" "^7.8.3" - "@babel/parser" "^7.8.6" - "@babel/types" "^7.8.6" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.7.4", "@babel/traverse@^7.8.6", "@babel/traverse@^7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.9.0.tgz#d3882c2830e513f4fe4cec9fe76ea1cc78747892" - integrity sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w== - dependencies: - "@babel/code-frame" "^7.8.3" - "@babel/generator" "^7.9.0" - "@babel/helper-function-name" "^7.8.3" - "@babel/helper-split-export-declaration" "^7.8.3" - "@babel/parser" "^7.9.0" - "@babel/types" "^7.9.0" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.14.0", "@babel/traverse@^7.14.2", "@babel/traverse@^7.7.2": +"@babel/traverse@^7.1.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.14.2", "@babel/traverse@^7.7.2": version "7.14.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.2.tgz#9201a8d912723a831c2679c7ebbf2fe1416d765b" integrity sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA== @@ -488,16 +293,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.0.tgz#00b064c3df83ad32b2dbf5ff07312b15c7f1efb5" - integrity sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng== - dependencies: - "@babel/helper-validator-identifier" "^7.9.0" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.12.13", "@babel/types@^7.13.12", "@babel/types@^7.14.0", "@babel/types@^7.14.2": +"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.13.12", "@babel/types@^7.14.0", "@babel/types@^7.14.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3": version "7.14.2" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.2.tgz#4208ae003107ef8a057ea8333e56eb64d2f6a2c3" integrity sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw== @@ -505,15 +301,6 @@ "@babel/helper-validator-identifier" "^7.14.0" to-fast-properties "^2.0.0" -"@babel/types@^7.3.3": - version "7.9.6" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz#2c5502b427251e9de1bd2dff95add646d95cc9f7" - integrity sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA== - dependencies: - "@babel/helper-validator-identifier" "^7.9.5" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" @@ -876,17 +663,6 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^27.0.1": - version "27.0.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.1.tgz#631738c942e70045ebbf42a3f9b433036d3845e4" - integrity sha512-8A25RRV4twZutsx2D+7WphnDsp7If9Yu6ko0Gxwrwv8BiWESFzka34+Aa2kC8w9xewt7SDuCUSZ6IiAFVj3PRg== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - "@jest/types@^27.0.2": version "27.0.2" resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz#e153d6c46bda0f2589f0702b071f9898c7bbd37e" @@ -938,18 +714,7 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@types/babel__core@^7.0.0": - version "7.1.9" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" - integrity sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__core@^7.1.14": +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": version "7.1.14" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g== @@ -975,14 +740,7 @@ "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.0.9" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.9.tgz#be82fab304b141c3eee81a4ce3b034d0eba1590a" - integrity sha512-jEFQ8L1tuvPjOI8lnpaf73oCJe+aoxL6ygqSy6c8LcW98zaC+4mzWuQIRCEvKeCOu+lbqdXcg4Uqmm1S8AP1tw== - dependencies: - "@babel/types" "^7.3.0" - -"@types/babel__traverse@^7.0.4": +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03" integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A== @@ -1115,21 +873,16 @@ dependencies: "@types/node" "*" -"@types/node@*": - version "14.0.27" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.27.tgz#a151873af5a5e851b51b3b065c9e63390a9e0eb1" - integrity sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g== +"@types/node@*", "@types/node@^15.6.2": + version "15.6.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" + integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== "@types/node@^14.14.37": version "14.14.37" resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e" integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw== -"@types/node@^15.6.2": - version "15.6.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" - integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== - "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" @@ -1282,12 +1035,7 @@ JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz#623e2075e02eb2d3f2475e49f99c91846467907a" - integrity sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg== - -abab@^2.0.5: +abab@^2.0.3, abab@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== @@ -1318,12 +1066,7 @@ acorn-walk@^7.1.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== -acorn@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.1.1.tgz#e35668de0b402f359de515c5482a1ab9f89a69bf" - integrity sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg== - -acorn@^7.4.0: +acorn@^7.1.1, acorn@^7.4.0: version "7.4.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== @@ -1353,17 +1096,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.10.0: - version "6.12.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.4.tgz#0614facc4522127fa713445c6bfd3ebd376e2234" - integrity sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ== - 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" - -ajv@^6.12.4: +ajv@^6.10.0, ajv@^6.12.4: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -1430,15 +1163,7 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== -anymatch@^3.0.3: - version "3.1.1" - resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -anymatch@~3.1.1: +anymatch@^3.0.3, anymatch@~3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== @@ -1846,23 +1571,7 @@ chalk@^2.0.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.0.0.tgz#6e98081ed2d17faab615eb52ac66ec1fe6209e72" - integrity sha512-N9oWFcegS0sFr9oh1oz2d7Npos6vNoWW9HvtCg5N1KRFpUhaAhvTv5Y58g880fZaEYSNm3qDz8SU1UrGvp+n7A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" - integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - -chalk@^4.1.1: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad" integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== @@ -2211,27 +1920,20 @@ debug@2.6.9, debug@^2.2.0: dependencies: ms "2.0.0" -debug@4, debug@4.3.1, debug@^4.3.1: +debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" -debug@^3.0.0, debug@^3.1.1: +debug@^3.1.1: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== dependencies: ms "^2.1.1" -debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@~4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - debug@~3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" @@ -2239,6 +1941,13 @@ debug@~3.1.0: dependencies: ms "2.0.0" +debug@~4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dependencies: + ms "^2.1.1" + decamelize-keys@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" @@ -2717,12 +2426,7 @@ express@^4.14.0, express@^4.17.1: utils-merge "1.0.1" vary "~1.1.2" -fast-deep-equal@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" - integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== - -fast-deep-equal@^3.1.3: +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== @@ -2863,14 +2567,7 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== -follow-redirects@^1.0.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.11.0.tgz#afa14f08ba12a52963140fe43212658897bc0ecb" - integrity sha512-KZm0V+ll8PfBrKwMzdo5D13b1bur9Iq9Zd/RMmAoQQcl2PxxFml8cxXPaaPYVbV0RjNjq1CU7zIzAOqtUPudmA== - dependencies: - debug "^3.0.0" - -follow-redirects@^1.10.0: +follow-redirects@^1.0.0, follow-redirects@^1.10.0: version "1.14.0" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.0.tgz#f5d260f95c5f8c105894491feee5dc8993b402fe" integrity sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg== @@ -2938,11 +2635,6 @@ functional-red-black-tree@^1.0.1: resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= -gensync@^1.0.0-beta.1: - version "1.0.0-beta.1" - resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" - integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== - gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -2979,14 +2671,7 @@ git-raw-commits@^2.0.0: split2 "^2.0.0" through2 "^3.0.0" -glob-parent@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" - integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== - dependencies: - is-glob "^4.0.1" - -glob-parent@^5.1.0, glob-parent@~5.1.0: +glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -3043,12 +2728,7 @@ globby@^11.0.3: merge2 "^1.3.0" slash "^3.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.2.3" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" - integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ== - -graceful-fs@^4.2.0, graceful-fs@^4.2.4: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== @@ -3319,12 +2999,7 @@ is-core-module@^2.2.0: dependencies: has "^1.0.3" -is-docker@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.1.1.tgz#4125a88e44e450d384e09047ede71adc2d144156" - integrity sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw== - -is-docker@^2.1.1: +is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== @@ -3447,20 +3122,7 @@ istanbul-lib-coverage@^3.0.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== -istanbul-lib-instrument@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz#61f13ac2c96cfefb076fe7131156cc05907874e6" - integrity sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg== - dependencies: - "@babel/core" "^7.7.5" - "@babel/parser" "^7.7.5" - "@babel/template" "^7.7.4" - "@babel/traverse" "^7.7.4" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-instrument@^4.0.3: +istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== @@ -3868,19 +3530,7 @@ jest-snapshot@^27.0.2: pretty-format "^27.0.2" semver "^7.3.2" -jest-util@^27.0.0: - version "27.0.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.1.tgz#324ed9879d129c1e64f9169a739d6d50d7928769" - integrity sha512-lEw3waSmEOO4ZkwkUlFSvg4es1+8+LIkSGxp/kF60K0+vMR3Dv3O2HMZhcln9NHqSQzpVbsDT6OeMzUPW7DfRg== - dependencies: - "@jest/types" "^27.0.1" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^3.0.0" - picomatch "^2.2.3" - -jest-util@^27.0.2: +jest-util@^27.0.0, jest-util@^27.0.2: version "27.0.2" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.2.tgz#fc2c7ace3c75ae561cf1e5fdb643bf685a5be7c7" integrity sha512-1d9uH3a00OFGGWSibpNYr+jojZ6AckOMCXV2Z4K3YXDnzpkAaXQyIpY14FOJPiUmil7CD+A6Qs+lnnh6ctRbIA== @@ -4168,11 +3818,6 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.sortby@^4.7.0: - version "4.7.0" - resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" - integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= - lodash.template@^4.0.2: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" @@ -4193,21 +3838,11 @@ lodash.truncate@^4.4.2: resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= -lodash@4.x, lodash@^4.17.10, lodash@^4.17.21, lodash@^4.7.0: +lodash@4.x, lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -lodash@^4.16.4, lodash@^4.17.14, lodash@^4.17.19: - version "4.17.19" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" - integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== - -lodash@^4.17.13, lodash@^4.17.15: - version "4.17.15" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== - log-symbols@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" @@ -4317,15 +3952,7 @@ methods@^1.1.2, methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - -micromatch@^4.0.4: +micromatch@^4.0.2, micromatch@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== @@ -4333,42 +3960,18 @@ micromatch@^4.0.4: braces "^3.0.1" picomatch "^2.2.3" -mime-db@1.43.0: - version "1.43.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58" - integrity sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ== - -mime-db@1.44.0: - version "1.44.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg== - mime-db@1.47.0: version "1.47.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== -mime-types@^2.1.12: - version "2.1.26" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06" - integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ== - dependencies: - mime-db "1.43.0" - -mime-types@~2.1.17: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.24: version "2.1.30" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.30.tgz#6e7be8b4c479825f85ed6326695db73f9305d62d" integrity sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg== dependencies: mime-db "1.47.0" -mime-types@~2.1.24: - version "2.1.27" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w== - dependencies: - mime-db "1.44.0" - mime@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" @@ -4589,14 +4192,7 @@ once@^1.3.0, once@^1.4.0: dependencies: wrappy "1" -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q== - dependencies: - mimic-fn "^2.1.0" - -onetime@^5.1.2: +onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== @@ -4812,12 +4408,7 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== - -picomatch@^2.2.3: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== @@ -5129,14 +4720,7 @@ resolve-global@1.0.0, resolve-global@^1.0.0: dependencies: global-dirs "^0.1.1" -resolve@^1.10.0, resolve@^1.3.2: - version "1.15.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" - integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== - dependencies: - path-parse "^1.0.6" - -resolve@^1.20.0: +resolve@^1.10.0, resolve@^1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -5203,16 +4787,11 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.1.2: +safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -safe-buffer@~5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519" - integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg== - "safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -5230,7 +4809,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -"semver@2 || 3 || 4 || 5", semver@^5.4.1: +"semver@2 || 3 || 4 || 5": version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -5825,13 +5404,6 @@ tough-cookie@^4.0.0: punycode "^2.1.1" universalify "^0.1.2" -tr46@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.0.2.tgz#03273586def1595ae08fedb38d7733cee91d2479" - integrity sha512-3n1qG+/5kg+jrbTzwAykB5yRYtQCTqOGKq5U5PE3b0a1/mzo6snDhjGS0zJVJunO0NrT3Dg1MLy5TjWP/UJppg== - dependencies: - punycode "^2.1.1" - tr46@^2.0.2: version "2.1.0" resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" @@ -5865,16 +5437,11 @@ ts-jest@^27.0.2: semver "7.x" yargs-parser "20.x" -tslib@^1.10.0: +tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== -tslib@^1.8.1, tslib@^1.9.0: - version "1.11.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35" - integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA== - tslib@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" @@ -6082,16 +5649,7 @@ whatwg-mimetype@^2.3.0: resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== -whatwg-url@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.0.0.tgz#37f256cb746398e19b107bd6ef820b4ae2d15871" - integrity sha512-41ou2Dugpij8/LPO5Pq64K5q++MnRCBpEHvQr26/mArEKTkCV5aoXIqyhuYtE0pkqScXwhf2JP57rkRTYM29lQ== - dependencies: - lodash.sortby "^4.7.0" - tr46 "^2.0.0" - webidl-conversions "^5.0.0" - -whatwg-url@^8.5.0: +whatwg-url@^8.0.0, whatwg-url@^8.5.0: version "8.5.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.5.0.tgz#7752b8464fc0903fec89aa9846fc9efe07351fd3" integrity sha512-fy+R77xWv0AiqfLl4nuGUlQ3/6b5uNfQ4WAbGQVMYshCTCCPK9psC1nWh3XHuxGVCtlcDDQPQW1csmmIQo+fwg== @@ -6166,17 +5724,7 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" -ws@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8" - integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA== - -ws@^7.4.5, ws@~7.4.2: - version "7.4.5" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.5.tgz#a484dd851e9beb6fdb420027e3885e8ce48986c1" - integrity sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g== - -ws@^7.4.6: +ws@^7.3.1, ws@^7.4.5, ws@^7.4.6, ws@~7.4.2: version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== @@ -6221,10 +5769,10 @@ yaml@^1.10.0: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== -yargs-parser@20.x: - version "20.2.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.1.tgz#28f3773c546cdd8a69ddae68116b48a5da328e77" - integrity sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA== +yargs-parser@20.x, yargs-parser@^20.2.2: + version "20.2.7" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" + integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== yargs-parser@^10.0.0: version "10.1.0" @@ -6241,11 +5789,6 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^20.2.2: - version "20.2.7" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" - integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== - yargs@16.2.0, yargs@^16.0.3, yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" From 13e495e513bf67d9aae61c2d004d2260d3f7ae82 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Mon, 28 Jun 2021 21:45:49 +0200 Subject: [PATCH 34/77] chore(github): use issue forms (#631) --- .github/ISSUE_TEMPLATE/bug.yml | 28 +++++++++--- .github/ISSUE_TEMPLATE/bug_report.md | 53 ----------------------- .github/ISSUE_TEMPLATE/feature.yml | 2 + .github/ISSUE_TEMPLATE/feature_request.md | 15 ------- 4 files changed, 24 insertions(+), 74 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index c89e3b8c..9158c3ed 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -1,4 +1,4 @@ -name: Bug report +name: Bug Report description: 'Create a report to help us improve' labels: bug body: @@ -15,6 +15,8 @@ body: attributes: description: Please verify that you've followed these steps. options: + - label: I understand project setup issues should be asked on [StackOverflow](https://stackoverflow.com/questions/tagged/http-proxy-middleware) or in [GitHub Discussions](https://github.com/chimurai/http-proxy-middleware/discussions). + required: true - label: I updated to latest `http-proxy-middleware`. required: true - type: textarea @@ -22,25 +24,39 @@ body: label: 'Describe the bug (be clear and concise)' validations: required: true + - type: markdown + attributes: + value: 'If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1' - type: textarea attributes: + label: 'Step-by-step reproduction instructions' + value: | + 1. ... + 2. ... render: shell - label: 'Server and `http-proxy-middleware` configuration' validations: required: true - - type: markdown + - type: textarea attributes: - value: 'If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1' + label: 'Expected behavior (be clear and concise)' + placeholder: Tell us in a clear and concise description of what you expected to happen. + validations: + required: true - type: textarea attributes: - label: 'Step-by-step reproduction instructions' + render: typescript + label: 'What http-proxy-middleware configuration are you using?' + placeholder: 'Paste your http-proxy configuration here...' validations: required: true - type: textarea attributes: - label: 'Expected behavior' + render: shell + label: 'What OS/version and node/version are you seeing the problem?' + placeholder: 'ie. MacOS 11.4 and Node 16.2.0' validations: required: true - type: textarea attributes: label: 'Additional context (optional)' + placeholder: 'Please add any addition information that might help the investigation' diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index ba26f269..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -name: Bug report -about: Create a report to help us improve -title: '[BUG]' -labels: '' -assignees: '' ---- - -Please note your issue will be closed without comment if do not fill out the issue checklist and provide ALL the requested information. - -**`yarn why http-proxy-middleware` OR `npm ls http-proxy-middleware` output (mask private folder names with \*\*\*\*\*)** - -```shell -# paste output here -``` - -**Please verify that you've followed these steps** - -[ ] - I've updated to latest `http-proxy-middleware`. - -**Describe the bug** - -A clear and concise description of what the bug is. - -**To Reproduce** - -If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1 - -**Step-by-step reproduction instructions** - -```text -1. ... -2. ... -``` - -**Expected behavior** - -A clear and concise description of what you expected to happen. - -**`http-proxy-middleware` configuration** - -```javascript -// paste code and configuration here -``` - -**Server (please complete the following information):** - -- OS: [e.g. MacOS, Windows] -- NodeJS version: [e.g. 12.4] - -**Additional context** - -Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml index e77f8224..4ea89268 100644 --- a/.github/ISSUE_TEMPLATE/feature.yml +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -5,8 +5,10 @@ body: - type: textarea attributes: label: "Describe the feature you'd love to see" + placeholder: 'A clear and concise description of the feature request' validations: required: true - type: textarea attributes: label: 'Additional context (optional)' + placeholder: 'Add any other context about the feature request here.' diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 83d5d457..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '[FEATURE]' -labels: '' -assignees: '' ---- - -**Describe the feature you'd love to see** - -A clear and concise description of the feature request - -**Additional context** - -Add any other context about the feature request here. From c9bec81e82664809c816250f15d30543c4447571 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Thu, 1 Jul 2021 22:36:59 +0200 Subject: [PATCH 35/77] chore(package): v2.0.1 --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bfbf5e1c..ba4ab3b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [v2.0.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.1) + +- fix(fixRequestBody): fix type error ([#615](https://github.com/chimurai/http-proxy-middleware/pull/615)) +- test(coverage): improve coverage config ([#609](https://github.com/chimurai/http-proxy-middleware/pull/609)) ([leonardobazico](https://github.com/leonardobazico)) +- test: add test coverage to fixRequestBody and responseInterceptor ([#608](https://github.com/chimurai/http-proxy-middleware/pull/608)) ([leonardobazico](https://github.com/leonardobazico)) +- chore(typescript): extract handlers types ([#603](https://github.com/chimurai/http-proxy-middleware/pull/603)) ([leonardobazico](https://github.com/leonardobazico)) + ## [v2.0.0](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.0) - chore(package): drop node 10 [BREAKING CHANGE] ([#577](https://github.com/chimurai/http-proxy-middleware/pull/577)) diff --git a/package.json b/package.json index 10daffed..20879476 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.0", + "version": "2.0.1", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 920a8890eb909e5e9bf129f93973cb33bbb6f87f Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 13 Aug 2021 23:33:50 +0200 Subject: [PATCH 36/77] chore(package): bump devDependencies (#651) --- package.json | 38 +- yarn.lock | 1724 +++++++++++++++++++++++++++----------------------- 2 files changed, 963 insertions(+), 799 deletions(-) diff --git a/package.json b/package.json index 20879476..6d20707e 100644 --- a/package.json +++ b/package.json @@ -51,34 +51,34 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^12.1.4", - "@commitlint/config-conventional": "^12.1.4", + "@commitlint/cli": "^13.1.0", + "@commitlint/config-conventional": "^13.1.0", "@types/express": "4.17.7", - "@types/is-glob": "^4.0.1", - "@types/jest": "^26.0.23", - "@types/micromatch": "^4.0.1", + "@types/is-glob": "^4.0.2", + "@types/jest": "^27.0.1", + "@types/micromatch": "^4.0.2", "@types/node": "^15.6.2", "@types/supertest": "^2.0.11", - "@types/ws": "^7.4.4", - "@typescript-eslint/eslint-plugin": "^4.26.0", - "@typescript-eslint/parser": "^4.26.0", + "@types/ws": "^7.4.7", + "@typescript-eslint/eslint-plugin": "^4.29.1", + "@typescript-eslint/parser": "^4.29.1", "body-parser": "^1.19.0", - "browser-sync": "^2.26.14", + "browser-sync": "^2.27.5", "connect": "^3.7.0", - "eslint": "^7.27.0", + "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^3.4.0", "express": "^4.17.1", "get-port": "^5.1.1", - "husky": "^6.0.0", - "jest": "^27.0.3", - "lint-staged": "^11.0.0", - "mockttp": "^1.2.2", - "open": "^8.2.0", - "prettier": "^2.3.0", - "supertest": "^6.1.3", - "ts-jest": "^27.0.2", - "typescript": "^4.3.2", + "husky": "^7.0.1", + "jest": "^27.0.6", + "lint-staged": "^11.1.2", + "mockttp": "^2.2.1", + "open": "^8.2.1", + "prettier": "^2.3.2", + "supertest": "^6.1.5", + "ts-jest": "^27.0.4", + "typescript": "^4.3.5", "ws": "^7.4.6" }, "dependencies": { diff --git a/yarn.lock b/yarn.lock index e058ff74..0a6f6576 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,10 +2,12 @@ # yarn lockfile v1 -"@ardatan/aggregate-error@0.0.1": - version "0.0.1" - resolved "https://registry.yarnpkg.com/@ardatan/aggregate-error/-/aggregate-error-0.0.1.tgz#1403ac5de10d8ca689fc1f65844c27179ae1d44f" - integrity sha512-UQ9BequOTIavs0pTHLMwQwKQF8tTV1oezY/H2O9chA+JNPFZSua55xpU5dPSjAU9/jLJ1VwU+HJuTVN8u7S6Fg== +"@ardatan/aggregate-error@0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/@ardatan/aggregate-error/-/aggregate-error-0.0.6.tgz#fe6924771ea40fc98dc7a7045c2e872dc8527609" + integrity sha512-vyrkEHG1jrukmzTPtyWB4NLPauUw5bQeg4uhn8f+1SSynmrOcyvlb1GKQjjgoBzElLdfXCRYX8UnBlhklOHYRQ== + dependencies: + tslib "~2.0.1" "@babel/code-frame@7.12.11": version "7.12.11" @@ -306,179 +308,207 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-12.1.4.tgz#af4d9dd3c0122c7b39a61fa1cd2abbad0422dbe0" - integrity sha512-ZR1WjXLvqEffYyBPT0XdnSxtt3Ty1TMoujEtseW5o3vPnkA1UNashAMjQVg/oELqfaiAMnDw8SERPMN0e/0kLg== +"@commitlint/cli@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.1.0.tgz#3608bb24dbef41aaa0729ffe65c7f9b57409626a" + integrity sha512-xN/uNYWtGTva5OMSd+xA6e6/c2jk8av7MUbdd6w2cw89u6z3fAWoyiH87X0ewdSMNYmW/6B3L/2dIVGHRDID5w== dependencies: - "@commitlint/format" "^12.1.4" - "@commitlint/lint" "^12.1.4" - "@commitlint/load" "^12.1.4" - "@commitlint/read" "^12.1.4" - "@commitlint/types" "^12.1.4" + "@commitlint/format" "^13.1.0" + "@commitlint/lint" "^13.1.0" + "@commitlint/load" "^13.1.0" + "@commitlint/read" "^13.1.0" + "@commitlint/types" "^13.1.0" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" - yargs "^16.2.0" + yargs "^17.0.0" -"@commitlint/config-conventional@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-12.1.4.tgz#95bbab622f117a8a3e49f95917b08655040c66a8" - integrity sha512-ZIdzmdy4o4WyqywMEpprRCrehjCSQrHkaRTVZV411GyLigFQHlEBSJITAihLAWe88Qy/8SyoIe5uKvAsV5vRqQ== +"@commitlint/config-conventional@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-13.1.0.tgz#f02871d50c73db0a31b777231f49203b964d9d59" + integrity sha512-zukJXqdr6jtMiVRy3tTHmwgKcUMGfqKDEskRigc5W3k2aYF4gBAtCEjMAJGZgSQE4DMcHeok0pEV2ANmTpb0cw== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-12.1.4.tgz#287ae2dcc5ccb086e749705b1bd9bdb99773056f" - integrity sha512-MxHIBuAG9M4xl33qUfIeMSasbv3ktK0W+iygldBxZOL4QSYC2Gn66pZAQMnV9o3V+sVFHoAK2XUKqBAYrgbEqw== +"@commitlint/ensure@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-13.1.0.tgz#057a325b54f104cbeed2a26bacb5eec29298e7d5" + integrity sha512-NRGyjOdZQnlYwm9it//BZJ2Vm+4x7G9rEnHpLCvNKYY0c6RA8Qf7hamLAB8dWO12RLuFt06JaOpHZoTt/gHutA== dependencies: - "@commitlint/types" "^12.1.4" + "@commitlint/types" "^13.1.0" lodash "^4.17.19" -"@commitlint/execute-rule@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-12.1.4.tgz#9973b02e9779adbf1522ae9ac207a4815ec73de1" - integrity sha512-h2S1j8SXyNeABb27q2Ok2vD1WfxJiXvOttKuRA9Or7LN6OQoC/KtT3844CIhhWNteNMu/wE0gkTqGxDVAnJiHg== +"@commitlint/execute-rule@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-13.0.0.tgz#7823303b82b5d86dac46e67cfa005f4433476981" + integrity sha512-lBz2bJhNAgkkU/rFMAw3XBNujbxhxlaFHY3lfKB/MxpAa+pIfmWB3ig9i1VKe0wCvujk02O0WiMleNaRn2KJqw== -"@commitlint/format@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-12.1.4.tgz#db2d46418a6ae57c90e5f7f65dff46f0265d9f24" - integrity sha512-h28ucMaoRjVvvgS6Bdf85fa/+ZZ/iu1aeWGCpURnQV7/rrVjkhNSjZwGlCOUd5kDV1EnZ5XdI7L18SUpRjs26g== +"@commitlint/format@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-13.1.0.tgz#915570d958d83bae5fa645de6b1e6c9dd1362ec0" + integrity sha512-n46rYvzf+6Sm99TJjTLjJBkjm6JVcklt31lDO5Q+pCIV0NnJ4qIUcwa6wIL9a9Vqb1XzlMgtp27E0zyYArkvSg== dependencies: - "@commitlint/types" "^12.1.4" + "@commitlint/types" "^13.1.0" chalk "^4.0.0" -"@commitlint/is-ignored@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-12.1.4.tgz#4c430bc3b361aa9be5cd4ddb252c1559870ea7bc" - integrity sha512-uTu2jQU2SKvtIRVLOzMQo3KxDtO+iJ1p0olmncwrqy4AfPLgwoyCP2CiULq5M7xpR3+dE3hBlZXbZTQbD7ycIw== +"@commitlint/is-ignored@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-13.1.0.tgz#88a5dfbc8f9ea91e860323af6681aa131322b0c4" + integrity sha512-P6zenLE5Tn3FTNjRzmL9+/KooTXEI0khA2TmUbuei9KiycemeO4q7Xk7w7aXwFPNAbN0O9oI7z3z7cFpzKJWmQ== dependencies: - "@commitlint/types" "^12.1.4" + "@commitlint/types" "^13.1.0" semver "7.3.5" -"@commitlint/lint@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-12.1.4.tgz#856b7fd2b2e6367b836cb84a12f1c1b3c0e40d22" - integrity sha512-1kZ8YDp4to47oIPFELUFGLiLumtPNKJigPFDuHt2+f3Q3IKdQ0uk53n3CPl4uoyso/Og/EZvb1mXjFR/Yce4cA== +"@commitlint/lint@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-13.1.0.tgz#ea56ce0970f9b75ffe7bd2c9968f4f1d4461ba3a" + integrity sha512-qH9AYSQDDTaSWSdtOvB3G1RdPpcYSgddAdFYqpFewlKQ1GJj/L+sM7vwqCG7/ip6AiM04Sry1sgmFzaEoFREUA== dependencies: - "@commitlint/is-ignored" "^12.1.4" - "@commitlint/parse" "^12.1.4" - "@commitlint/rules" "^12.1.4" - "@commitlint/types" "^12.1.4" + "@commitlint/is-ignored" "^13.1.0" + "@commitlint/parse" "^13.1.0" + "@commitlint/rules" "^13.1.0" + "@commitlint/types" "^13.1.0" -"@commitlint/load@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-12.1.4.tgz#e3c2dbc0e7d8d928f57a6878bd7219909fc0acab" - integrity sha512-Keszi0IOjRzKfxT+qES/n+KZyLrxy79RQz8wWgssCboYjKEp+wC+fLCgbiMCYjI5k31CIzIOq/16J7Ycr0C0EA== +"@commitlint/load@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.1.0.tgz#d6c9b547551f2216586d6c1964d93f92e7b04277" + integrity sha512-zlZbjJCWnWmBOSwTXis8H7I6pYk6JbDwOCuARA6B9Y/qt2PD+NCo0E/7EuaaFoxjHl+o56QR5QttuMBrf+BJzg== dependencies: - "@commitlint/execute-rule" "^12.1.4" - "@commitlint/resolve-extends" "^12.1.4" - "@commitlint/types" "^12.1.4" + "@commitlint/execute-rule" "^13.0.0" + "@commitlint/resolve-extends" "^13.0.0" + "@commitlint/types" "^13.1.0" chalk "^4.0.0" cosmiconfig "^7.0.0" lodash "^4.17.19" resolve-from "^5.0.0" -"@commitlint/message@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-12.1.4.tgz#3895edcc0709deca5945f3d55f5ea95a9f1f446d" - integrity sha512-6QhalEKsKQ/Y16/cTk5NH4iByz26fqws2ub+AinHPtM7Io0jy4e3rym9iE+TkEqiqWZlUigZnTwbPvRJeSUBaA== +"@commitlint/message@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-13.0.0.tgz#4f8d56b59e9cee8b37b8db6b48c26d7faf33762f" + integrity sha512-W/pxhesVEk8747BEWJ+VGQ9ILHmCV27/pEwJ0hGny1wqVquUR8SxvScRCbUjHCB1YtWX4dEnOPXOS9CLH/CX7A== -"@commitlint/parse@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-12.1.4.tgz#ba03d54d24ef84f6fd2ff31c5e9998b22d7d0aa1" - integrity sha512-yqKSAsK2V4X/HaLb/yYdrzs6oD/G48Ilt0EJ2Mp6RJeWYxG14w/Out6JrneWnr/cpzemyN5hExOg6+TB19H/Lw== +"@commitlint/parse@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-13.1.0.tgz#b88764be36527a468531e1b8dd2d95693ff9ba34" + integrity sha512-xFybZcqBiKVjt6vTStvQkySWEUYPI0AcO4QQELyy29o8EzYZqWkhUfrb7K61fWiHsplWL1iL6F3qCLoxSgTcrg== dependencies: - "@commitlint/types" "^12.1.4" + "@commitlint/types" "^13.1.0" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.0.0" -"@commitlint/read@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-12.1.4.tgz#552fda42ef185d5b578beb6f626a5f8b282de3a6" - integrity sha512-TnPQSJgD8Aod5Xeo9W4SaYKRZmIahukjcCWJ2s5zb3ZYSmj6C85YD9cR5vlRyrZjj78ItLUV/X4FMWWVIS38Jg== +"@commitlint/read@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-13.1.0.tgz#ccb65426b1228b8a598ed36966722d19756eea41" + integrity sha512-NrVe23GMKyL6i1yDJD8IpqCBzhzoS3wtLfDj8QBzc01Ov1cYBmDojzvBklypGb+MLJM1NbzmRM4PR5pNX0U/NQ== dependencies: - "@commitlint/top-level" "^12.1.4" - "@commitlint/types" "^12.1.4" - fs-extra "^9.0.0" + "@commitlint/top-level" "^13.0.0" + "@commitlint/types" "^13.1.0" + fs-extra "^10.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-12.1.4.tgz#e758ed7dcdf942618b9f603a7c28a640f6a0802a" - integrity sha512-R9CoUtsXLd6KSCfsZly04grsH6JVnWFmVtWgWs1KdDpdV+G3TSs37tColMFqglpkx3dsWu8dsPD56+D9YnJfqg== +"@commitlint/resolve-extends@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-13.0.0.tgz#a38fcd2474483bf9ec6e1e901b27b8a23abe7d73" + integrity sha512-1SyaE+UOsYTkQlTPUOoj4NwxQhGFtYildVS/d0TJuK8a9uAJLw7bhCLH2PEeH5cC2D1do4Eqhx/3bLDrSLH3hg== dependencies: import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-12.1.4.tgz#0e141b08caa3d7bdc48aa784baa8baff3efd64db" - integrity sha512-W8m6ZSjg7RuIsIfzQiFHa48X5mcPXeKT9yjBxVmjHvYfS2FDBf1VxCQ7vO0JTVIdV4ohjZ0eKg/wxxUuZHJAZg== +"@commitlint/rules@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-13.1.0.tgz#04f5aaf952884364ebf4e899ec440e3985f0e580" + integrity sha512-b6F+vBqEXsHVghrhomG0Y6YJimHZqkzZ0n5QEpk03dpBXH2OnsezpTw5e+GvbyYCc7PutGbYVQkytuv+7xCxYA== dependencies: - "@commitlint/ensure" "^12.1.4" - "@commitlint/message" "^12.1.4" - "@commitlint/to-lines" "^12.1.4" - "@commitlint/types" "^12.1.4" + "@commitlint/ensure" "^13.1.0" + "@commitlint/message" "^13.0.0" + "@commitlint/to-lines" "^13.0.0" + "@commitlint/types" "^13.1.0" + execa "^5.0.0" -"@commitlint/to-lines@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-12.1.4.tgz#caa582dbf121f377a0588bb64e25c4854843cd25" - integrity sha512-TParumvbi8bdx3EdLXz2MaX+e15ZgoCqNUgqHsRLwyqLUTRbqCVkzrfadG1UcMQk8/d5aMbb327ZKG3Q4BRorw== +"@commitlint/to-lines@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-13.0.0.tgz#5937dd287e3a4f984580ea94bdb994132169a780" + integrity sha512-mzxWwCio1M4/kG9/69TTYqrraQ66LmtJCYTzAZdZ2eJX3I5w52pSjyP/DJzAUVmmJCYf2Kw3s+RtNVShtnZ+Rw== -"@commitlint/top-level@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-12.1.4.tgz#96d5c715bfc1bdf86dfcf11b67fc2cf7658c7a6e" - integrity sha512-d4lTJrOT/dXlpY+NIt4CUl77ciEzYeNVc0VFgUQ6VA+b1rqYD2/VWFjBlWVOrklxtSDeKyuEhs36RGrppEFAvg== +"@commitlint/top-level@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-13.0.0.tgz#f8e1d1425240cd72c600e4da5716418c4ea0bda2" + integrity sha512-baBy3MZBF28sR93yFezd4a5TdHsbXaakeladfHK9dOcGdXo9oQe3GS5hP3BmlN680D6AiQSN7QPgEJgrNUWUCg== dependencies: find-up "^5.0.0" -"@commitlint/types@^12.1.4": - version "12.1.4" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-12.1.4.tgz#9618a5dc8991fb58e6de6ed89d7bf712fa74ba7e" - integrity sha512-KRIjdnWNUx6ywz+SJvjmNCbQKcKP6KArhjZhY2l+CWKxak0d77SOjggkMwFTiSgLODOwmuLTbarR2ZfWPiPMlw== +"@commitlint/types@^13.1.0": + version "13.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-13.1.0.tgz#12cfb6e932372b1816af8900e2d10694add28191" + integrity sha512-zcVjuT+OfKt8h91vhBxt05RMcTGEx6DM7Q9QZeuMbXFk6xgbsSEDMMapbJPA1bCZ81fa/1OQBijSYPrKvtt06g== dependencies: chalk "^4.0.0" -"@eslint/eslintrc@^0.4.1": - version "0.4.1" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz#442763b88cecbe3ee0ec7ca6d6dd6168550cbf14" - integrity sha512-5v7TDE9plVhvxQeWLXDTvFvJBdH6pEsdnl2g/dAptmuFEPedQ4Erq5rsDsX+mvAM610IhNaO2W5V1dOOnDKxkQ== +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== dependencies: ajv "^6.12.4" debug "^4.1.1" espree "^7.3.0" - globals "^12.1.0" + globals "^13.9.0" ignore "^4.0.6" import-fresh "^3.2.1" js-yaml "^3.13.1" minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@graphql-tools/schema@^6.0.18": - version "6.1.0" - resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-6.1.0.tgz#8176bf3b56dc1e78243a5f01646c7abbc9921d26" - integrity sha512-AZflTf9HU3Uy8UgUwxwFXN9Lf+9D36LBoDRIxPRhsj6EtawbwCqsd3UFwNek0OgiwNi3BL2b+D+6QEcw2IOsDA== +"@graphql-tools/schema@^7.1.5": + version "7.1.5" + resolved "https://registry.yarnpkg.com/@graphql-tools/schema/-/schema-7.1.5.tgz#07b24e52b182e736a6b77c829fc48b84d89aa711" + integrity sha512-uyn3HSNSckf4mvQSq0Q07CPaVZMNFCYEVxroApOaw802m9DcZPgf9XVPy/gda5GWj9AhbijfRYVTZQgHnJ4CXA== dependencies: - "@graphql-tools/utils" "6.1.0" - tslib "~2.0.1" + "@graphql-tools/utils" "^7.1.2" + tslib "~2.2.0" + value-or-promise "1.0.6" -"@graphql-tools/utils@6.1.0", "@graphql-tools/utils@^6.0.18": - version "6.1.0" - resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-6.1.0.tgz#a8ab67bb8d8a879f40d29b334f48de6e6be71c41" - integrity sha512-YcyslZ/8rk5nQOGnkEDp/xi6Xphu0mgjh5LTZ1qUio5P+d95/9MW44cPdmi3Feg4kO8u+1GcPC+685hFpJlZJw== +"@graphql-tools/utils@^7.1.2": + version "7.10.0" + resolved "https://registry.yarnpkg.com/@graphql-tools/utils/-/utils-7.10.0.tgz#07a4cb5d1bec1ff1dc1d47a935919ee6abd38699" + integrity sha512-d334r6bo9mxdSqZW6zWboEnnOOFRrAPVQJ7LkU8/6grglrbcu6WhwCLzHb90E94JI3TD3ricC3YGbUqIi9Xg0w== dependencies: - "@ardatan/aggregate-error" "0.0.1" - camel-case "4.1.1" + "@ardatan/aggregate-error" "0.0.6" + camel-case "4.1.2" + tslib "~2.2.0" "@httptoolkit/httpolyglot@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@httptoolkit/httpolyglot/-/httpolyglot-1.0.0.tgz#1b06642389303b71681b4c0c2caff8be53d58a10" integrity sha512-OoIbv7pk/xh3Sxqs2nZyi5ZjP9JFLMBXgPmG/911rPf77PJ3tsIHaf22x5zVYcHeu0P7x6jC7QwLYcbJdUbe7w== +"@httptoolkit/subscriptions-transport-ws@^0.9.19": + version "0.9.19" + resolved "https://registry.yarnpkg.com/@httptoolkit/subscriptions-transport-ws/-/subscriptions-transport-ws-0.9.19.tgz#ed40f4e31f03232338b628ff43f1e256e957bad6" + integrity sha512-Ted0uAgu3hGFuHo/gT47xdO4XtEQLhKYJJf1BNr2o1Muvn3uqz/Skt1HGvlni9eCiTSacWG6miBlg5Tr7RvvNw== + dependencies: + backo2 "^1.0.2" + eventemitter3 "^3.1.0" + iterall "^1.2.1" + symbol-observable "^1.0.4" + ws "^7.4.6" + +"@humanwhocodes/config-array@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" + integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== + "@istanbuljs/load-nyc-config@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b" @@ -494,94 +524,94 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.0.2.tgz#b8eeff8f21ac51d224c851e1729d2630c18631e6" - integrity sha512-/zYigssuHLImGeMAACkjI4VLAiiJznHgAl3xnFT19iWyct2LhrH3KXOjHRmxBGTkiPLZKKAJAgaPpiU9EZ9K+w== +"@jest/console@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.0.6.tgz#3eb72ea80897495c3d73dd97aab7f26770e2260f" + integrity sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.0.2" - jest-util "^27.0.2" + jest-message-util "^27.0.6" + jest-util "^27.0.6" slash "^3.0.0" -"@jest/core@^27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.0.3.tgz#b5a38675fa0466450a7fd465f4b226762cb592a2" - integrity sha512-rN8lr/OJ8iApcQUh4khnMaOCVX4oRnLwy2tPW3Vh70y62K8Da8fhkxMUq0xX9VPa4+yWUm0tGc/jUSJi+Jzuwg== +"@jest/core@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.0.6.tgz#c5f642727a0b3bf0f37c4b46c675372d0978d4a1" + integrity sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow== dependencies: - "@jest/console" "^27.0.2" - "@jest/reporters" "^27.0.2" - "@jest/test-result" "^27.0.2" - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/console" "^27.0.6" + "@jest/reporters" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^27.0.2" - jest-config "^27.0.3" - jest-haste-map "^27.0.2" - jest-message-util "^27.0.2" - jest-regex-util "^27.0.1" - jest-resolve "^27.0.2" - jest-resolve-dependencies "^27.0.3" - jest-runner "^27.0.3" - jest-runtime "^27.0.3" - jest-snapshot "^27.0.2" - jest-util "^27.0.2" - jest-validate "^27.0.2" - jest-watcher "^27.0.2" + jest-changed-files "^27.0.6" + jest-config "^27.0.6" + jest-haste-map "^27.0.6" + jest-message-util "^27.0.6" + jest-regex-util "^27.0.6" + jest-resolve "^27.0.6" + jest-resolve-dependencies "^27.0.6" + jest-runner "^27.0.6" + jest-runtime "^27.0.6" + jest-snapshot "^27.0.6" + jest-util "^27.0.6" + jest-validate "^27.0.6" + jest-watcher "^27.0.6" micromatch "^4.0.4" p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.3.tgz#68769b1dfdd213e3456169d64fbe9bd63a5fda92" - integrity sha512-pN9m7fbKsop5vc3FOfH8NF7CKKdRbEZzcxfIo1n2TT6ucKWLFq0P6gCJH0GpnQp036++yY9utHOxpeT1WnkWTA== +"@jest/environment@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.6.tgz#ee293fe996db01d7d663b8108fa0e1ff436219d2" + integrity sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg== dependencies: - "@jest/fake-timers" "^27.0.3" - "@jest/types" "^27.0.2" + "@jest/fake-timers" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" - jest-mock "^27.0.3" + jest-mock "^27.0.6" -"@jest/fake-timers@^27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.3.tgz#9899ba6304cc636734c74478df502e18136461dd" - integrity sha512-fQ+UCKRIYKvTCEOyKPnaPnomLATIhMnHC/xPZ7yT1Uldp7yMgMxoYIFidDbpSTgB79+/U+FgfoD30c6wg3IUjA== +"@jest/fake-timers@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.6.tgz#cbad52f3fe6abe30e7acb8cd5fa3466b9588e3df" + integrity sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" "@sinonjs/fake-timers" "^7.0.2" "@types/node" "*" - jest-message-util "^27.0.2" - jest-mock "^27.0.3" - jest-util "^27.0.2" + jest-message-util "^27.0.6" + jest-mock "^27.0.6" + jest-util "^27.0.6" -"@jest/globals@^27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.3.tgz#1cf8933b7791bba0b99305cbf39fd4d2e3fe4060" - integrity sha512-OzsIuf7uf+QalqAGbjClyezzEcLQkdZ+7PejUrZgDs+okdAK8GwRCGcYCirHvhMBBQh60Jr3NlIGbn/KBPQLEQ== +"@jest/globals@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.6.tgz#48e3903f99a4650673d8657334d13c9caf0e8f82" + integrity sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw== dependencies: - "@jest/environment" "^27.0.3" - "@jest/types" "^27.0.2" - expect "^27.0.2" + "@jest/environment" "^27.0.6" + "@jest/types" "^27.0.6" + expect "^27.0.6" -"@jest/reporters@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.2.tgz#ad73835d1cd54da08b0998a70b14446405e8e0d9" - integrity sha512-SVQjew/kafNxSN1my4praGQP+VPVGHsU8zqiEDppLvq6j1lryIjdNb9P+bZSsKeifU4bIoaPnf9Ui0tK9WOpFA== +"@jest/reporters@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.6.tgz#91e7f2d98c002ad5df94d5b5167c1eb0b9fd5b00" + integrity sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.0.2" - "@jest/test-result" "^27.0.2" - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/console" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -592,81 +622,81 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^27.0.2" - jest-resolve "^27.0.2" - jest-util "^27.0.2" - jest-worker "^27.0.2" + jest-haste-map "^27.0.6" + jest-resolve "^27.0.6" + jest-util "^27.0.6" + jest-worker "^27.0.6" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" - v8-to-istanbul "^7.0.0" + v8-to-istanbul "^8.0.0" -"@jest/source-map@^27.0.1": - version "27.0.1" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.1.tgz#2afbf73ddbaddcb920a8e62d0238a0a9e0a8d3e4" - integrity sha512-yMgkF0f+6WJtDMdDYNavmqvbHtiSpwRN2U/W+6uztgfqgkq/PXdKPqjBTUF1RD/feth4rH5N3NW0T5+wIuln1A== +"@jest/source-map@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.6.tgz#be9e9b93565d49b0548b86e232092491fb60551f" + integrity sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.2.tgz#0451049e32ceb609b636004ccc27c8fa22263f10" - integrity sha512-gcdWwL3yP5VaIadzwQtbZyZMgpmes8ryBAJp70tuxghiA8qL4imJyZex+i+USQH2H4jeLVVszhwntgdQ97fccA== +"@jest/test-result@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.6.tgz#3fa42015a14e4fdede6acd042ce98c7f36627051" + integrity sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w== dependencies: - "@jest/console" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/console" "^27.0.6" + "@jest/types" "^27.0.6" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.3.tgz#2a8632b86a9a6f8900e514917cdab6a062e71049" - integrity sha512-DcLTzraZ8xLr5fcIl+CF14vKeBBpBrn55wFxI9Ju+dhEBdjRdJQ/Z/pLkMehkPZWIQ+rR23J8e+wFDkfjree0Q== +"@jest/test-sequencer@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz#80a913ed7a1130545b1cd777ff2735dd3af5d34b" + integrity sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA== dependencies: - "@jest/test-result" "^27.0.2" + "@jest/test-result" "^27.0.6" graceful-fs "^4.2.4" - jest-haste-map "^27.0.2" - jest-runtime "^27.0.3" + jest-haste-map "^27.0.6" + jest-runtime "^27.0.6" -"@jest/transform@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.2.tgz#b073b7c589e3f4b842102468875def2bb722d6b5" - integrity sha512-H8sqKlgtDfVog/s9I4GG2XMbi4Ar7RBxjsKQDUhn2XHAi3NG+GoQwWMER+YfantzExbjNqQvqBHzo/G2pfTiPw== +"@jest/transform@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.6.tgz#189ad7107413208f7600f4719f81dd2f7278cc95" + integrity sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.0.2" - jest-regex-util "^27.0.1" - jest-util "^27.0.2" + jest-haste-map "^27.0.6" + jest-regex-util "^27.0.6" + jest-util "^27.0.6" micromatch "^4.0.4" pirates "^4.0.1" slash "^3.0.0" source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/types@^26.6.2": - version "26.6.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== +"@jest/types@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz#e153d6c46bda0f2589f0702b071f9898c7bbd37e" + integrity sha512-XpjCtJ/99HB4PmyJ2vgmN7vT+JLP7RW1FBT9RgnMFS4Dt7cvIyBee8O3/j98aUZ34ZpenPZFqmaaObWSeL65dg== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" "@types/node" "*" - "@types/yargs" "^15.0.0" + "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jest/types@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz#e153d6c46bda0f2589f0702b071f9898c7bbd37e" - integrity sha512-XpjCtJ/99HB4PmyJ2vgmN7vT+JLP7RW1FBT9RgnMFS4Dt7cvIyBee8O3/j98aUZ34ZpenPZFqmaaObWSeL65dg== +"@jest/types@^27.0.6": + version "27.0.6" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.6.tgz#9a992bc517e0c49f035938b8549719c2de40706b" + integrity sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" @@ -817,10 +847,10 @@ dependencies: "@types/node" "*" -"@types/is-glob@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@types/is-glob/-/is-glob-4.0.1.tgz#a93eec1714172c8eb3225a1cc5eb88c2477b7d00" - integrity sha512-k3RS5HyBPu4h+5hTmIEfPB2rl5P3LnGdQEZrV2b9OWTJVtsUQ2VBcedqYKGqxvZqle5UALUXdSfVA8nf3HfyWQ== +"@types/is-glob@^4.0.2": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/is-glob/-/is-glob-4.0.2.tgz#c243dd0d09eac2992130142419ff2308ffd988bf" + integrity sha512-4j5G9Y5jljDSICQ1R2f/Rcyoj6DZmYGneny+p/cDkjep0rkqNg0W73Ty0bVjMUTZgLXHf8oiMjg1XC3CDwCz+g== "@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.1" @@ -841,23 +871,23 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.23": - version "26.0.23" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.23.tgz#a1b7eab3c503b80451d019efb588ec63522ee4e7" - integrity sha512-ZHLmWMJ9jJ9PTiT58juykZpL7KjwJywFN3Rr2pTSkyQfydf/rk22yS7W8p5DaVUMQ2BQC7oYiU3FjbTM/mYrOA== +"@types/jest@^27.0.1": + version "27.0.1" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.1.tgz#fafcc997da0135865311bb1215ba16dba6bdf4ca" + integrity sha512-HTLpVXHrY69556ozYkcq47TtQJXpcWAWfkoqz+ZGz2JnmZhzlRjprCIyFnetSy8gpDWwTTGBcRVv1J1I1vBrHw== dependencies: - jest-diff "^26.0.0" - pretty-format "^26.0.0" + jest-diff "^27.0.0" + pretty-format "^27.0.0" "@types/json-schema@^7.0.7": version "7.0.7" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== -"@types/micromatch@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@types/micromatch/-/micromatch-4.0.1.tgz#9381449dd659fc3823fd2a4190ceacc985083bc7" - integrity sha512-my6fLBvpY70KattTNzYOK6KU1oR1+UCz9ug/JbcF5UrEmeCt9P7DV2t7L8+t18mMPINqGQCE4O8PLOPbI84gxw== +"@types/micromatch@^4.0.2": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/micromatch/-/micromatch-4.0.2.tgz#ce29c8b166a73bf980a5727b1e4a4d099965151d" + integrity sha512-oqXqVb0ci19GtH0vOA/U2TmHTcRY9kuZl4mqUxe0QmJAlIW13kzhuK5pi1i9+ngav8FjpSb9FVS/GE00GLX1VA== dependencies: "@types/braces" "*" @@ -931,10 +961,10 @@ dependencies: "@types/superagent" "*" -"@types/ws@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.4.tgz#93e1e00824c1de2608c30e6de4303ab3b4c0c9bc" - integrity sha512-d/7W23JAXPodQNbOZNXvl2K+bqAQrCMwlh/nuQsPSQk6Fq0opHoPrUw43aHsvSbIiQPr8Of2hkFbnz1XBFVyZQ== +"@types/ws@^7.4.7": + version "7.4.7" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.7.tgz#f7c390a36f7a0679aa69de2d501319f4f8d9b702" + integrity sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww== dependencies: "@types/node" "*" @@ -943,13 +973,6 @@ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== -"@types/yargs@^15.0.0": - version "15.0.4" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.4.tgz#7e5d0f8ca25e9d5849f2ea443cf7c402decd8299" - integrity sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg== - dependencies: - "@types/yargs-parser" "*" - "@types/yargs@^16.0.0": version "16.0.3" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz#4b6d35bb8e680510a7dc2308518a80ee1ef27e01" @@ -957,74 +980,73 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.26.0.tgz#12bbd6ebd5e7fabd32e48e1e60efa1f3554a3242" - integrity sha512-yA7IWp+5Qqf+TLbd8b35ySFOFzUfL7i+4If50EqvjT6w35X8Lv0eBHb6rATeWmucks37w+zV+tWnOXI9JlG6Eg== +"@typescript-eslint/eslint-plugin@^4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.1.tgz#808d206e2278e809292b5de752a91105da85860b" + integrity sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw== dependencies: - "@typescript-eslint/experimental-utils" "4.26.0" - "@typescript-eslint/scope-manager" "4.26.0" + "@typescript-eslint/experimental-utils" "4.29.1" + "@typescript-eslint/scope-manager" "4.29.1" debug "^4.3.1" functional-red-black-tree "^1.0.1" - lodash "^4.17.21" regexpp "^3.1.0" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.26.0.tgz#ba7848b3f088659cdf71bce22454795fc55be99a" - integrity sha512-TH2FO2rdDm7AWfAVRB5RSlbUhWxGVuxPNzGT7W65zVfl8H/WeXTk1e69IrcEVsBslrQSTDKQSaJD89hwKrhdkw== +"@typescript-eslint/experimental-utils@4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.1.tgz#0af2b17b0296b60c6b207f11062119fa9c5a8994" + integrity sha512-kl6QG6qpzZthfd2bzPNSJB2YcZpNOrP6r9jueXupcZHnL74WiuSjaft7WSu17J9+ae9zTlk0KJMXPUj0daBxMw== dependencies: "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.26.0" - "@typescript-eslint/types" "4.26.0" - "@typescript-eslint/typescript-estree" "4.26.0" + "@typescript-eslint/scope-manager" "4.29.1" + "@typescript-eslint/types" "4.29.1" + "@typescript-eslint/typescript-estree" "4.29.1" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.26.0.tgz#31b6b732c9454f757b020dab9b6754112aa5eeaf" - integrity sha512-b4jekVJG9FfmjUfmM4VoOItQhPlnt6MPOBUL0AQbiTmm+SSpSdhHYlwayOm4IW9KLI/4/cRKtQCmDl1oE2OlPg== +"@typescript-eslint/parser@^4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.29.1.tgz#17dfbb45c9032ffa0fe15881d20fbc2a4bdeb02d" + integrity sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg== dependencies: - "@typescript-eslint/scope-manager" "4.26.0" - "@typescript-eslint/types" "4.26.0" - "@typescript-eslint/typescript-estree" "4.26.0" + "@typescript-eslint/scope-manager" "4.29.1" + "@typescript-eslint/types" "4.29.1" + "@typescript-eslint/typescript-estree" "4.29.1" debug "^4.3.1" -"@typescript-eslint/scope-manager@4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.26.0.tgz#60d1a71df162404e954b9d1c6343ff3bee496194" - integrity sha512-G6xB6mMo4xVxwMt5lEsNTz3x4qGDt0NSGmTBNBPJxNsrTXJSm21c6raeYroS2OwQsOyIXqKZv266L/Gln1BWqg== +"@typescript-eslint/scope-manager@4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.29.1.tgz#f25da25bc6512812efa2ce5ebd36619d68e61358" + integrity sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A== dependencies: - "@typescript-eslint/types" "4.26.0" - "@typescript-eslint/visitor-keys" "4.26.0" + "@typescript-eslint/types" "4.29.1" + "@typescript-eslint/visitor-keys" "4.29.1" -"@typescript-eslint/types@4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.26.0.tgz#7c6732c0414f0a69595f4f846ebe12616243d546" - integrity sha512-rADNgXl1kS/EKnDr3G+m7fB9yeJNnR9kF7xMiXL6mSIWpr3Wg5MhxyfEXy/IlYthsqwBqHOr22boFbf/u6O88A== +"@typescript-eslint/types@4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.29.1.tgz#94cce6cf7cc83451df03339cda99d326be2feaf5" + integrity sha512-Jj2yu78IRfw4nlaLtKjVaGaxh/6FhofmQ/j8v3NXmAiKafbIqtAPnKYrf0sbGjKdj0hS316J8WhnGnErbJ4RCA== -"@typescript-eslint/typescript-estree@4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.26.0.tgz#aea17a40e62dc31c63d5b1bbe9a75783f2ce7109" - integrity sha512-GHUgahPcm9GfBuy3TzdsizCcPjKOAauG9xkz9TR8kOdssz2Iz9jRCSQm6+aVFa23d5NcSpo1GdHGSQKe0tlcbg== +"@typescript-eslint/typescript-estree@4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.1.tgz#7b32a25ff8e51f2671ccc6b26cdbee3b1e6c5e7f" + integrity sha512-lIkkrR9E4lwZkzPiRDNq0xdC3f2iVCUjw/7WPJ4S2Sl6C3nRWkeE1YXCQ0+KsiaQRbpY16jNaokdWnm9aUIsfw== dependencies: - "@typescript-eslint/types" "4.26.0" - "@typescript-eslint/visitor-keys" "4.26.0" + "@typescript-eslint/types" "4.29.1" + "@typescript-eslint/visitor-keys" "4.29.1" debug "^4.3.1" globby "^11.0.3" is-glob "^4.0.1" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.26.0": - version "4.26.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.26.0.tgz#26d2583169222815be4dcd1da4fe5459bc3bcc23" - integrity sha512-cw4j8lH38V1ycGBbF+aFiLUls9Z0Bw8QschP3mkth50BbWzgFS33ISIgBzUMuQ2IdahoEv/rXstr8Zhlz4B1Zg== +"@typescript-eslint/visitor-keys@4.29.1": + version "4.29.1" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz#0615be8b55721f5e854f3ee99f1a714f2d093e5d" + integrity sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag== dependencies: - "@typescript-eslint/types" "4.26.0" + "@typescript-eslint/types" "4.29.1" eslint-visitor-keys "^2.0.0" JSONStream@^1.0.4: @@ -1081,7 +1103,7 @@ after@0.8.2: resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= -agent-base@6: +agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== @@ -1208,6 +1230,13 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= +ast-types@^0.13.2: + version "0.13.4" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" + integrity sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w== + dependencies: + tslib "^2.0.1" + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -1240,11 +1269,6 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - axios@0.21.1: version "0.21.1" resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" @@ -1252,16 +1276,16 @@ axios@0.21.1: dependencies: follow-redirects "^1.10.0" -babel-jest@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.2.tgz#7dc18adb01322acce62c2af76ea2c7cd186ade37" - integrity sha512-9OThPl3/IQbo4Yul2vMz4FYwILPQak8XelX4YGowygfHaOl5R5gfjm4iVx4d8aUugkW683t8aq0A74E7b5DU1Q== +babel-jest@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.6.tgz#e99c6e0577da2655118e3608b68761a5a69bd0d8" + integrity sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA== dependencies: - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^27.0.1" + babel-preset-jest "^27.0.6" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1277,10 +1301,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.1.tgz#a6d10e484c93abff0f4e95f437dad26e5736ea11" - integrity sha512-sqBF0owAcCDBVEDtxqfYr2F36eSHdx7lAVGyYuOBRnKdD6gzcy0I0XrAYCZgOA3CRrLhmR+Uae9nogPzmAtOfQ== +babel-plugin-jest-hoist@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz#f7c6b3d764af21cb4a2a1ab6870117dbde15b456" + integrity sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -1305,12 +1329,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.1.tgz#7a50c75d16647c23a2cf5158d5bb9eb206b10e20" - integrity sha512-nIBIqCEpuiyhvjQs2mVNwTxQQa2xk70p9Dd/0obQGBf8FBzbnI8QhQKzLsWMN2i6q+5B0OcWDtrboBX5gmOLyA== +babel-preset-jest@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz#909ef08e9f24a4679768be2f60a3df0856843f9d" + integrity sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw== dependencies: - babel-plugin-jest-hoist "^27.0.1" + babel-plugin-jest-hoist "^27.0.6" babel-preset-current-node-syntax "^1.0.0" backo2@1.0.2, backo2@^1.0.2: @@ -1333,11 +1357,6 @@ base64-arraybuffer@^0.1.5: resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" integrity sha1-c5JncZI7Whl0etZmqlzUv5xunOg= -base64-js@^1.1.2: - version "1.3.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== - base64id@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" @@ -1389,32 +1408,30 @@ braces@^3.0.1, braces@~3.0.2: dependencies: fill-range "^7.0.1" -brotli@^1.3.2: - version "1.3.2" - resolved "https://registry.yarnpkg.com/brotli/-/brotli-1.3.2.tgz#525a9cad4fcba96475d7d388f6aecb13eed52f46" - integrity sha1-UlqcrU/LqWR119OI9q7LE+7VL0Y= - dependencies: - base64-js "^1.1.2" +brotli-wasm@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brotli-wasm/-/brotli-wasm-1.1.0.tgz#f6181d4831107294cbf74fcbf3c81469fd97ca36" + integrity sha512-p2tLxAMtT6a4jXSeDMDSey9sdwc6yds1AY7MKEsMqp9PbMl6n9ey8VUjrfSAvX+k7AW3R+pVKoo0P1i/+19upA== browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browser-sync-client@^2.26.14: - version "2.26.14" - resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.26.14.tgz#f2f0a8e5febc65b725fb38c8d648389214a38947" - integrity sha512-be0m1MchmKv/26r/yyyolxXcBi052aYrmaQep5nm8YNMjFcEyzv0ZoOKn/c3WEXNlEB/KeXWaw70fAOJ+/F1zQ== +browser-sync-client@^2.27.5: + version "2.27.5" + resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.5.tgz#acca1d8d3cf2a212e22e50119c97947772b79ef7" + integrity sha512-l2jtf60/exv0fQiZkhi3z8RgexYYLGS7DVDnyepkrp+oFAPlKW69daL6NrVSgrwu6lzSTCCTAiPXnUSrQ57e/Q== dependencies: etag "1.8.1" fresh "0.5.2" mitt "^1.1.3" rxjs "^5.5.6" -browser-sync-ui@^2.26.14: - version "2.26.14" - resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.26.14.tgz#96632c38dda72560a3be8e985716d7a735e94749" - integrity sha512-6oT1sboM4KVNnWCCJDMGbRIeTBw97toMFQ+srImvwQ6J5t9KMgizaIX8HcKLiemsUMSJkgGM9RVKIpq2UblgOA== +browser-sync-ui@^2.27.5: + version "2.27.5" + resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.27.5.tgz#fe016377edaff7d4a9cb1e8a449cc0807e814884" + integrity sha512-KxBJhQ6XNbQ8w8UlkPa9/J5R0nBHgHuJUtDpEXQx1jBapDy32WGzD0NENDozP4zGNvJUgZk3N80hqB7YCieC3g== dependencies: async-each-series "0.1.1" connect-history-api-fallback "^1" @@ -1423,13 +1440,13 @@ browser-sync-ui@^2.26.14: socket.io-client "^2.4.0" stream-throttle "^0.1.3" -browser-sync@^2.26.14: - version "2.26.14" - resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.26.14.tgz#716c13ef91e72dfe092ff84bec3ddf62ea9d81fd" - integrity sha512-3TtpsheGolJT6UFtM2CZWEcGJmI4ZEvoCKiKE2bvcDnPxRkhQT4nIGVtfiyPcoHKXGM0LwMOZmYJNWfiNfVXWA== +browser-sync@^2.27.5: + version "2.27.5" + resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.5.tgz#9e547645b045f8780d775dc2cc5409357bec6c08" + integrity sha512-0GMEPDqccbTxwYOUGCk5AZloDj9I/1eDZCLXUKXu7iBJPznGGOnMHs88mrhaFL0fTA0R23EmsXX9nLZP+k5YzA== dependencies: - browser-sync-client "^2.26.14" - browser-sync-ui "^2.26.14" + browser-sync-client "^2.27.5" + browser-sync-ui "^2.27.5" bs-recipes "1.3.4" bs-snippet-injector "^2.0.1" chokidar "^3.5.1" @@ -1456,7 +1473,7 @@ browser-sync@^2.26.14: serve-static "1.13.2" server-destroy "1.0.1" socket.io "2.4.0" - ua-parser-js "^0.7.18" + ua-parser-js "^0.7.28" yargs "^15.4.1" browserslist@^4.14.5: @@ -1514,13 +1531,13 @@ callsites@^3.0.0: resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== -camel-case@4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" - integrity sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q== +camel-case@4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: - pascal-case "^3.1.1" - tslib "^1.10.0" + pascal-case "^3.1.2" + tslib "^2.0.3" camelcase-keys@^4.0.0: version "4.2.0" @@ -1904,6 +1921,11 @@ dargs@^4.0.1: dependencies: number-is-nan "^1.0.0" +data-uri-to-buffer@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-3.0.1.tgz#594b8973938c5bc2c33046535785341abc4f3636" + integrity sha512-WboRycPNsVw3B3TL559F7kuBUM4d8CgMEvk6xEJlOp7OBPjt6G7z8WMWlD2rOFZLk6OYfFIUGsCOWzcQH9K2og== + data-urls@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" @@ -1986,6 +2008,15 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== +degenerator@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-2.2.0.tgz#49e98c11fa0293c5b26edfbb52f15729afcdb254" + integrity sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg== + dependencies: + ast-types "^0.13.2" + escodegen "^1.8.1" + esprima "^4.0.0" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -2011,15 +2042,10 @@ dev-ip@^1.0.1: resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" integrity sha1-p2o+0YVb56ASu4rBbLgPPADcKPA= -diff-sequences@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" - integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== - -diff-sequences@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.1.tgz#9c9801d52ed5f576ff0a20e3022a13ee6e297e7c" - integrity sha512-XPLijkfJUh/PIBnfkcSHgvD6tlYixmcMAn3osTk6jt+H0v/mgURto1XUiD9DKuGX5NDoVS6dSlA23gd9FUaCFg== +diff-sequences@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.6.tgz#3305cb2e55a033924054695cc66019fd7f8e5723" + integrity sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ== dir-glob@^3.0.1: version "3.0.1" @@ -2189,6 +2215,18 @@ escape-string-regexp@^4.0.0: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== +escodegen@^1.8.1: + version "1.14.3" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" + integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== + dependencies: + esprima "^4.0.1" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + escodegen@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" @@ -2245,13 +2283,14 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@^7.27.0: - version "7.27.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.27.0.tgz#665a1506d8f95655c9274d84bd78f7166b07e9c7" - integrity sha512-JZuR6La2ZF0UD384lcbnd0Cgg6QJjiCwhMD6eU4h/VGPcVGwawNNzKU41tgokGXnfjOOyI6QIffthhJTPzzuRA== +eslint@^7.32.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== dependencies: "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.1" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" @@ -2268,7 +2307,7 @@ eslint@^7.27.0: fast-deep-equal "^3.1.3" file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" + glob-parent "^5.1.2" globals "^13.6.0" ignore "^4.0.6" import-fresh "^3.0.0" @@ -2318,7 +2357,7 @@ esrecurse@^4.3.0: dependencies: estraverse "^5.2.0" -estraverse@^4.1.1: +estraverse@^4.1.1, estraverse@^4.2.0: version "4.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== @@ -2368,17 +2407,17 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.0.2.tgz#e66ca3a4c9592f1c019fa1d46459a9d2084f3422" - integrity sha512-YJFNJe2+P2DqH+ZrXy+ydRQYO87oxRUonZImpDodR1G7qo3NYd3pL+NQ9Keqpez3cehczYwZDBC3A7xk3n7M/w== +expect@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.0.6.tgz#a4d74fbe27222c718fff68ef49d78e26a8fd4c05" + integrity sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" ansi-styles "^5.0.0" - jest-get-type "^27.0.1" - jest-matcher-utils "^27.0.2" - jest-message-util "^27.0.2" - jest-regex-util "^27.0.1" + jest-get-type "^27.0.6" + jest-matcher-utils "^27.0.6" + jest-message-util "^27.0.6" + jest-regex-util "^27.0.6" express-graphql@^0.11.0: version "0.11.0" @@ -2498,6 +2537,11 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +file-uri-to-path@2: + version "2.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-2.0.0.tgz#7b415aeba227d575851e0a5b0c640d7656403fba" + integrity sha512-hjPFI8oE/2iQPVe4gbrJ73Pp+Xfub2+WI2LlXDbsaJBwT5wuMh35WNWVYYTpnz895shtwfyutMFLFywpQAFdLg== + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -2605,15 +2649,23 @@ fs-extra@3.0.1: jsonfile "^3.0.0" universalify "^0.1.0" -fs-extra@^9.0.0: - version "9.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" - integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== +fs-extra@^10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1" + integrity sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ== dependencies: - at-least-node "^1.0.0" graceful-fs "^4.2.0" jsonfile "^6.0.1" - universalify "^1.0.0" + universalify "^2.0.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" fs.realpath@^1.0.0: version "1.0.0" @@ -2625,6 +2677,14 @@ fsevents@^2.3.2, fsevents@~2.3.1: resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== +ftp@^0.3.10: + version "0.3.10" + resolved "https://registry.yarnpkg.com/ftp/-/ftp-0.3.10.tgz#9197d861ad8142f3e63d5a83bfe4c59f7330885d" + integrity sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0= + dependencies: + readable-stream "1.1.x" + xregexp "2.0.0" + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -2660,6 +2720,18 @@ get-stream@^6.0.0: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +get-uri@3: + version "3.0.2" + resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-3.0.2.tgz#f0ef1356faabc70e1f9404fa3b66b2ba9bfc725c" + integrity sha512-+5s0SJbGoyiJTZZ2JTpFPLMPSch72KEqGOTvQsBqg0RBWvwhWUSYZFAtz3TPW0GXJuLBJPts1E241iHg+VRfhg== + dependencies: + "@tootallnate/once" "1" + data-uri-to-buffer "3" + debug "4" + file-uri-to-path "2" + fs-extra "^8.1.0" + ftp "^0.3.10" + git-raw-commits@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.3.tgz#f040e67b8445962d4d168903a9e84c4240c17655" @@ -2671,7 +2743,7 @@ git-raw-commits@^2.0.0: split2 "^2.0.0" through2 "^3.0.0" -glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: +glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.0: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -2702,13 +2774,6 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^12.1.0: - version "12.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" - integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== - dependencies: - type-fest "^0.8.1" - globals@^13.6.0: version "13.7.0" resolved "https://registry.yarnpkg.com/globals/-/globals-13.7.0.tgz#aed3bcefd80ad3ec0f0be2cf0c895110c0591795" @@ -2716,6 +2781,13 @@ globals@^13.6.0: dependencies: type-fest "^0.20.2" +globals@^13.9.0: + version "13.11.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" + integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== + dependencies: + type-fest "^0.20.2" + globby@^11.0.3: version "11.0.3" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" @@ -2740,12 +2812,10 @@ graphql-subscriptions@^1.1.0: dependencies: iterall "^1.2.1" -graphql@^14.0.2: - version "14.7.0" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-14.7.0.tgz#7fa79a80a69be4a31c27dda824dc04dac2035a72" - integrity sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA== - dependencies: - iterall "^1.2.2" +"graphql@^14.0.2 || ^15.5": + version "15.5.1" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.1.tgz#f2f84415d8985e7b84731e7f3536f8bb9d383aad" + integrity sha512-FeTRX67T3LoE3LWAxxOlW2K3Bz+rMYAC18rRguK4wgXaTZMiJwSUwDmPFo3UadAKbzirKIg5Qy+sNJXbpPRnQw== has-ansi@^2.0.0: version "2.0.0" @@ -2800,6 +2870,14 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== +http-encoding@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/http-encoding/-/http-encoding-1.4.0.tgz#d4645dbb5963d8bb58643c47d27d2f565ebdfadc" + integrity sha512-/9OTWAsy31YMNpt7JRAZGsfUFFkkqdPR7TNXVSnrJ0UjrBHhx1CUa3veMjS6vSpCq3sU4wpIgVoK/snv80RTPQ== + dependencies: + brotli-wasm "^1.1.0" + zstd-codec "^0.1.2" + http-errors@1.7.2: version "1.7.2" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" @@ -2843,7 +2921,7 @@ http-errors@~1.6.2: setprototypeof "1.1.0" statuses ">= 1.4.0 < 2" -http-proxy-agent@^4.0.1: +http-proxy-agent@^4.0.0, http-proxy-agent@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== @@ -2861,15 +2939,15 @@ http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" -http2-wrapper@^1.0.0-beta.5.2: - version "1.0.0-beta.5.2" - resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3" - integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ== +http2-wrapper@2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.0.5.tgz#d4464509df69b6f82125b6cb337dbb80101f406c" + integrity sha512-W8+pfYl0iQ27NjvhDrbuQKaMBjBAWIZRHdKvmctV2c8a/naI7SsZgU3e04lCYrgxqnJ2sNPsBBrVI8kBeE/Pig== dependencies: quick-lru "^5.1.1" - resolve-alpn "^1.0.0" + resolve-alpn "^1.1.1" -https-proxy-agent@^5.0.0: +https-proxy-agent@5, https-proxy-agent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== @@ -2882,10 +2960,10 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -husky@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/husky/-/husky-6.0.0.tgz#810f11869adf51604c32ea577edbc377d7f9319e" - integrity sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ== +husky@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.1.tgz#579f4180b5da4520263e8713cc832942b48e1f1c" + integrity sha512-gceRaITVZ+cJH9sNHqx5tFwbzlLCVxtVZcusME8JYQ8Edy5mpGDOqD8QBCdMhpyo9a+JXddnujQ4rpY2Ff9SJA== iconv-lite@0.4.24: version "0.4.24" @@ -2953,7 +3031,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -2968,6 +3046,11 @@ ini@^1.3.4: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -3048,7 +3131,7 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== -is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: +is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= @@ -3102,6 +3185,11 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + isarray@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" @@ -3158,246 +3246,231 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -iterall@^1.2.1, iterall@^1.2.2: +iterall@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.2.tgz#997253042b4a032950fc5f56abf3c5d1f8560801" - integrity sha512-eMeb1Pn7w7x3wue5/vF73LPCJ7DKQuC9wQUR5ebP9hDPpk5hzcT/3Hmz3Q5BOFpR3tgbmaWhJcMTVgC8Z1NuMw== +jest-changed-files@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.6.tgz#bed6183fcdea8a285482e3b50a9a7712d49a7a8b" + integrity sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.3.tgz#32006967de484e03589da944064d72e172ce3261" - integrity sha512-tdMfzs7SgD5l7jRcI1iB3vtQi5fHwCgo4RlO8bzZnYc05PZ+tlAOMZeS8eGYkZ2tPaRY/aRLMFWQp/8zXBrolQ== +jest-circus@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.6.tgz#dd4df17c4697db6a2c232aaad4e9cec666926668" + integrity sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q== dependencies: - "@jest/environment" "^27.0.3" - "@jest/test-result" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/environment" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.0.2" + expect "^27.0.6" is-generator-fn "^2.0.0" - jest-each "^27.0.2" - jest-matcher-utils "^27.0.2" - jest-message-util "^27.0.2" - jest-runtime "^27.0.3" - jest-snapshot "^27.0.2" - jest-util "^27.0.2" - pretty-format "^27.0.2" + jest-each "^27.0.6" + jest-matcher-utils "^27.0.6" + jest-message-util "^27.0.6" + jest-runtime "^27.0.6" + jest-snapshot "^27.0.6" + jest-util "^27.0.6" + pretty-format "^27.0.6" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.3.tgz#b733871acb526054a0f8c971d0466595c5f8316d" - integrity sha512-7bt9Sgv4nWH5pUnyJfdLf8CHWfo4+7lSPxeBwQx4r0vBj9jweJam/piE2U91SXtQI+ckm+TIN97OVnqIYpVhSg== +jest-cli@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.6.tgz#d021e5f4d86d6a212450d4c7b86cb219f1e6864f" + integrity sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg== dependencies: - "@jest/core" "^27.0.3" - "@jest/test-result" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/core" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/types" "^27.0.6" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - jest-config "^27.0.3" - jest-util "^27.0.2" - jest-validate "^27.0.2" + jest-config "^27.0.6" + jest-util "^27.0.6" + jest-validate "^27.0.6" prompts "^2.0.1" yargs "^16.0.3" -jest-config@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.3.tgz#31871583573c6d669dcdb5bb2d1a8738f3b91c20" - integrity sha512-zgtI2YQo+ekKsmYNyDlXFY/7w7WWBSJFoj/WRe173WB88CDUrEYWr0sLdbLOQe+sRu6l1Y2S0MCS6BOJm5jkoA== +jest-config@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.6.tgz#119fb10f149ba63d9c50621baa4f1f179500277f" + integrity sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.0.3" - "@jest/types" "^27.0.2" - babel-jest "^27.0.2" + "@jest/test-sequencer" "^27.0.6" + "@jest/types" "^27.0.6" + babel-jest "^27.0.6" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" is-ci "^3.0.0" - jest-circus "^27.0.3" - jest-environment-jsdom "^27.0.3" - jest-environment-node "^27.0.3" - jest-get-type "^27.0.1" - jest-jasmine2 "^27.0.3" - jest-regex-util "^27.0.1" - jest-resolve "^27.0.2" - jest-runner "^27.0.3" - jest-util "^27.0.2" - jest-validate "^27.0.2" + jest-circus "^27.0.6" + jest-environment-jsdom "^27.0.6" + jest-environment-node "^27.0.6" + jest-get-type "^27.0.6" + jest-jasmine2 "^27.0.6" + jest-regex-util "^27.0.6" + jest-resolve "^27.0.6" + jest-runner "^27.0.6" + jest-util "^27.0.6" + jest-validate "^27.0.6" micromatch "^4.0.4" - pretty-format "^27.0.2" - -jest-diff@^26.0.0: - version "26.6.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" - integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== - dependencies: - chalk "^4.0.0" - diff-sequences "^26.6.2" - jest-get-type "^26.3.0" - pretty-format "^26.6.2" + pretty-format "^27.0.6" -jest-diff@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.2.tgz#f315b87cee5dc134cf42c2708ab27375cc3f5a7e" - integrity sha512-BFIdRb0LqfV1hBt8crQmw6gGQHVDhM87SpMIZ45FPYKReZYG5er1+5pIn2zKqvrJp6WNox0ylR8571Iwk2Dmgw== +jest-diff@^27.0.0, jest-diff@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.6.tgz#4a7a19ee6f04ad70e0e3388f35829394a44c7b5e" + integrity sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg== dependencies: chalk "^4.0.0" - diff-sequences "^27.0.1" - jest-get-type "^27.0.1" - pretty-format "^27.0.2" + diff-sequences "^27.0.6" + jest-get-type "^27.0.6" + pretty-format "^27.0.6" -jest-docblock@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.1.tgz#bd9752819b49fa4fab1a50b73eb58c653b962e8b" - integrity sha512-TA4+21s3oebURc7VgFV4r7ltdIJ5rtBH1E3Tbovcg7AV+oLfD5DcJ2V2vJ5zFA9sL5CFd/d2D6IpsAeSheEdrA== +jest-docblock@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.6.tgz#cc78266acf7fe693ca462cbbda0ea4e639e4e5f3" + integrity sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA== dependencies: detect-newline "^3.0.0" -jest-each@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.2.tgz#865ddb4367476ced752167926b656fa0dcecd8c7" - integrity sha512-OLMBZBZ6JkoXgUenDtseFRWA43wVl2BwmZYIWQws7eS7pqsIvePqj/jJmEnfq91ALk3LNphgwNK/PRFBYi7ITQ== +jest-each@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.6.tgz#cee117071b04060158dc8d9a66dc50ad40ef453b" + integrity sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" chalk "^4.0.0" - jest-get-type "^27.0.1" - jest-util "^27.0.2" - pretty-format "^27.0.2" - -jest-environment-jsdom@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.3.tgz#ed73e913ddc03864eb9f934b5cbabf1b63504e2e" - integrity sha512-5KLmgv1bhiimpSA8oGTnZYk6g4fsNyZiA/6gI2tAZUgrufd7heRUSVh4gRokzZVEj8zlwAQYT0Zs6tuJSW/ECA== - dependencies: - "@jest/environment" "^27.0.3" - "@jest/fake-timers" "^27.0.3" - "@jest/types" "^27.0.2" + jest-get-type "^27.0.6" + jest-util "^27.0.6" + pretty-format "^27.0.6" + +jest-environment-jsdom@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz#f66426c4c9950807d0a9f209c590ce544f73291f" + integrity sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw== + dependencies: + "@jest/environment" "^27.0.6" + "@jest/fake-timers" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" - jest-mock "^27.0.3" - jest-util "^27.0.2" + jest-mock "^27.0.6" + jest-util "^27.0.6" jsdom "^16.6.0" -jest-environment-node@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.3.tgz#b4acb3679d2552a4215732cab8b0ca7ec4398ee0" - integrity sha512-co2/IVnIFL3cItpFULCvXFg9us4gvWXgs7mutAMPCbFhcqh56QAOdKhNzC2+RycsC/k4mbMj1VF+9F/NzA0ROg== +jest-environment-node@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.6.tgz#a6699b7ceb52e8d68138b9808b0c404e505f3e07" + integrity sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w== dependencies: - "@jest/environment" "^27.0.3" - "@jest/fake-timers" "^27.0.3" - "@jest/types" "^27.0.2" + "@jest/environment" "^27.0.6" + "@jest/fake-timers" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" - jest-mock "^27.0.3" - jest-util "^27.0.2" - -jest-get-type@^26.3.0: - version "26.3.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" - integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + jest-mock "^27.0.6" + jest-util "^27.0.6" -jest-get-type@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.1.tgz#34951e2b08c8801eb28559d7eb732b04bbcf7815" - integrity sha512-9Tggo9zZbu0sHKebiAijyt1NM77Z0uO4tuWOxUCujAiSeXv30Vb5D4xVF4UR4YWNapcftj+PbByU54lKD7/xMg== +jest-get-type@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.6.tgz#0eb5c7f755854279ce9b68a9f1a4122f69047cfe" + integrity sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg== -jest-haste-map@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.2.tgz#3f1819400c671237e48b4d4b76a80a0dbed7577f" - integrity sha512-37gYfrYjjhEfk37C4bCMWAC0oPBxDpG0qpl8lYg8BT//wf353YT/fzgA7+Dq0EtM7rPFS3JEcMsxdtDwNMi2cA== +jest-haste-map@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.6.tgz#4683a4e68f6ecaa74231679dca237279562c8dc7" + integrity sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-regex-util "^27.0.1" - jest-serializer "^27.0.1" - jest-util "^27.0.2" - jest-worker "^27.0.2" + jest-regex-util "^27.0.6" + jest-serializer "^27.0.6" + jest-util "^27.0.6" + jest-worker "^27.0.6" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.3.tgz#fa6f6499566ea1b01b68b3ad13f49d1592b02c85" - integrity sha512-odJ2ia8P5c+IsqOcWJPmku4AqbXIfTVLRjYTKHri3TEvbmTdLw0ghy13OAPIl/0v7cVH0TURK7+xFOHKDLvKIA== +jest-jasmine2@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz#fd509a9ed3d92bd6edb68a779f4738b100655b37" + integrity sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.0.3" - "@jest/source-map" "^27.0.1" - "@jest/test-result" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/environment" "^27.0.6" + "@jest/source-map" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.0.2" + expect "^27.0.6" is-generator-fn "^2.0.0" - jest-each "^27.0.2" - jest-matcher-utils "^27.0.2" - jest-message-util "^27.0.2" - jest-runtime "^27.0.3" - jest-snapshot "^27.0.2" - jest-util "^27.0.2" - pretty-format "^27.0.2" + jest-each "^27.0.6" + jest-matcher-utils "^27.0.6" + jest-message-util "^27.0.6" + jest-runtime "^27.0.6" + jest-snapshot "^27.0.6" + jest-util "^27.0.6" + pretty-format "^27.0.6" throat "^6.0.1" -jest-leak-detector@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.2.tgz#ce19aa9dbcf7a72a9d58907a970427506f624e69" - integrity sha512-TZA3DmCOfe8YZFIMD1GxFqXUkQnIoOGQyy4hFCA2mlHtnAaf+FeOMxi0fZmfB41ZL+QbFG6BVaZF5IeFIVy53Q== +jest-leak-detector@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz#545854275f85450d4ef4b8fe305ca2a26450450f" + integrity sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ== dependencies: - jest-get-type "^27.0.1" - pretty-format "^27.0.2" + jest-get-type "^27.0.6" + pretty-format "^27.0.6" -jest-matcher-utils@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.2.tgz#f14c060605a95a466cdc759acc546c6f4cbfc4f0" - integrity sha512-Qczi5xnTNjkhcIB0Yy75Txt+Ez51xdhOxsukN7awzq2auZQGPHcQrJ623PZj0ECDEMOk2soxWx05EXdXGd1CbA== +jest-matcher-utils@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz#2a8da1e86c620b39459f4352eaa255f0d43e39a9" + integrity sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA== dependencies: chalk "^4.0.0" - jest-diff "^27.0.2" - jest-get-type "^27.0.1" - pretty-format "^27.0.2" + jest-diff "^27.0.6" + jest-get-type "^27.0.6" + pretty-format "^27.0.6" -jest-message-util@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.2.tgz#181c9b67dff504d8f4ad15cba10d8b80f272048c" - integrity sha512-rTqWUX42ec2LdMkoUPOzrEd1Tcm+R1KfLOmFK+OVNo4MnLsEaxO5zPDb2BbdSmthdM/IfXxOZU60P/WbWF8BTw== +jest-message-util@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.6.tgz#158bcdf4785706492d164a39abca6a14da5ab8b5" + integrity sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.4" micromatch "^4.0.4" - pretty-format "^27.0.2" + pretty-format "^27.0.6" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.3.tgz#5591844f9192b3335c0dca38e8e45ed297d4d23d" - integrity sha512-O5FZn5XDzEp+Xg28mUz4ovVcdwBBPfAhW9+zJLO0Efn2qNbYcDaJvSlRiQ6BCZUCVOJjALicuJQI9mRFjv1o9Q== +jest-mock@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.6.tgz#0efdd40851398307ba16778728f6d34d583e3467" + integrity sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3405,74 +3478,76 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.1.tgz#69d4b1bf5b690faa3490113c47486ed85dd45b68" - integrity sha512-6nY6QVcpTgEKQy1L41P4pr3aOddneK17kn3HJw6SdwGiKfgCGTvH02hVXL0GU8GEKtPH83eD2DIDgxHXOxVohQ== +jest-regex-util@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5" + integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== -jest-resolve-dependencies@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.3.tgz#7e258f7d0458bb910855f8a50f5c1e9d92c319dc" - integrity sha512-HdjWOvFAgT5CYChF2eiBN2rRKicjaTCCtA3EtH47REIdGzEHGUhYrWYgLahXsiOovvWN6edhcHL5WCa3gbc04A== +jest-resolve-dependencies@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz#3e619e0ef391c3ecfcf6ef4056207a3d2be3269f" + integrity sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA== dependencies: - "@jest/types" "^27.0.2" - jest-regex-util "^27.0.1" - jest-snapshot "^27.0.2" + "@jest/types" "^27.0.6" + jest-regex-util "^27.0.6" + jest-snapshot "^27.0.6" -jest-resolve@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.2.tgz#087a3ed17182722a3415f92bfacc99c49cf8a965" - integrity sha512-rmfLGyZhwAUR5z3EwPAW7LQTorWAuCYCcsQJoQxT2it+BOgX3zKxa67r1pfpK3ihy2k9TjYD3/lMp5rPm/CL1Q== +jest-resolve@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.6.tgz#e90f436dd4f8fbf53f58a91c42344864f8e55bff" + integrity sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" chalk "^4.0.0" escalade "^3.1.1" graceful-fs "^4.2.4" jest-pnp-resolver "^1.2.2" - jest-util "^27.0.2" - jest-validate "^27.0.2" + jest-util "^27.0.6" + jest-validate "^27.0.6" resolve "^1.20.0" slash "^3.0.0" -jest-runner@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.3.tgz#d9747af3bee5a6ffaeb9e10b653263b780258b54" - integrity sha512-zH23uIIh1ro1JCD7XX1bQ0bQwXEsBzLX2UJVE/AVLsk4YJRmTfyXIzzRzBWRdnMHHg1NWkJ4fGs7eFP15IqZpQ== +jest-runner@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.6.tgz#1325f45055539222bbc7256a6976e993ad2f9520" + integrity sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ== dependencies: - "@jest/console" "^27.0.2" - "@jest/environment" "^27.0.3" - "@jest/test-result" "^27.0.2" - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/console" "^27.0.6" + "@jest/environment" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-docblock "^27.0.1" - jest-haste-map "^27.0.2" - jest-leak-detector "^27.0.2" - jest-message-util "^27.0.2" - jest-resolve "^27.0.2" - jest-runtime "^27.0.3" - jest-util "^27.0.2" - jest-worker "^27.0.2" + jest-docblock "^27.0.6" + jest-environment-jsdom "^27.0.6" + jest-environment-node "^27.0.6" + jest-haste-map "^27.0.6" + jest-leak-detector "^27.0.6" + jest-message-util "^27.0.6" + jest-resolve "^27.0.6" + jest-runtime "^27.0.6" + jest-util "^27.0.6" + jest-worker "^27.0.6" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.3.tgz#32499c1047e5d953cfbb67fe790ab0167a614d28" - integrity sha512-k1Hl2pWWHBkSXdCggX2lyLRuDnnnmMlnJd+DPLb8LmmAeHW87WgGC6TplD377VxY3KQu73sklkhGUIdwFgsRVQ== - dependencies: - "@jest/console" "^27.0.2" - "@jest/environment" "^27.0.3" - "@jest/fake-timers" "^27.0.3" - "@jest/globals" "^27.0.3" - "@jest/source-map" "^27.0.1" - "@jest/test-result" "^27.0.2" - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" +jest-runtime@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.6.tgz#45877cfcd386afdd4f317def551fc369794c27c9" + integrity sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q== + dependencies: + "@jest/console" "^27.0.6" + "@jest/environment" "^27.0.6" + "@jest/fake-timers" "^27.0.6" + "@jest/globals" "^27.0.6" + "@jest/source-map" "^27.0.6" + "@jest/test-result" "^27.0.6" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" "@types/yargs" "^16.0.0" chalk "^4.0.0" cjs-module-lexer "^1.0.0" @@ -3480,30 +3555,30 @@ jest-runtime@^27.0.3: exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-haste-map "^27.0.2" - jest-message-util "^27.0.2" - jest-mock "^27.0.3" - jest-regex-util "^27.0.1" - jest-resolve "^27.0.2" - jest-snapshot "^27.0.2" - jest-util "^27.0.2" - jest-validate "^27.0.2" + jest-haste-map "^27.0.6" + jest-message-util "^27.0.6" + jest-mock "^27.0.6" + jest-regex-util "^27.0.6" + jest-resolve "^27.0.6" + jest-snapshot "^27.0.6" + jest-util "^27.0.6" + jest-validate "^27.0.6" slash "^3.0.0" strip-bom "^4.0.0" yargs "^16.0.3" -jest-serializer@^27.0.1: - version "27.0.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.1.tgz#2464d04dcc33fb71dc80b7c82e3c5e8a08cb1020" - integrity sha512-svy//5IH6bfQvAbkAEg1s7xhhgHTtXu0li0I2fdKHDsLP2P2MOiscPQIENQep8oU2g2B3jqLyxKKzotZOz4CwQ== +jest-serializer@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.6.tgz#93a6c74e0132b81a2d54623251c46c498bb5bec1" + integrity sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA== dependencies: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.2.tgz#40c48dc6afd3cbc5d3d07c061f20fc10d94ca0cd" - integrity sha512-4RcgvZbPrrbEE/hT6XQ4hr+NVVLNrmsgUnYSnZRT6UAvW9Q2yzGMS+tfJh+xlQJAapnnkNJzsMn6vUa+yfiVHA== +jest-snapshot@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.6.tgz#f4e6b208bd2e92e888344d78f0f650bcff05a4bf" + integrity sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" @@ -3511,26 +3586,26 @@ jest-snapshot@^27.0.2: "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/transform" "^27.0.6" + "@jest/types" "^27.0.6" "@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.0.2" + expect "^27.0.6" graceful-fs "^4.2.4" - jest-diff "^27.0.2" - jest-get-type "^27.0.1" - jest-haste-map "^27.0.2" - jest-matcher-utils "^27.0.2" - jest-message-util "^27.0.2" - jest-resolve "^27.0.2" - jest-util "^27.0.2" + jest-diff "^27.0.6" + jest-get-type "^27.0.6" + jest-haste-map "^27.0.6" + jest-matcher-utils "^27.0.6" + jest-message-util "^27.0.6" + jest-resolve "^27.0.6" + jest-util "^27.0.6" natural-compare "^1.4.0" - pretty-format "^27.0.2" + pretty-format "^27.0.6" semver "^7.3.2" -jest-util@^27.0.0, jest-util@^27.0.2: +jest-util@^27.0.0: version "27.0.2" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.2.tgz#fc2c7ace3c75ae561cf1e5fdb643bf685a5be7c7" integrity sha512-1d9uH3a00OFGGWSibpNYr+jojZ6AckOMCXV2Z4K3YXDnzpkAaXQyIpY14FOJPiUmil7CD+A6Qs+lnnh6ctRbIA== @@ -3542,48 +3617,60 @@ jest-util@^27.0.0, jest-util@^27.0.2: is-ci "^3.0.0" picomatch "^2.2.3" -jest-validate@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.2.tgz#7fe2c100089449cd5cbb47a5b0b6cb7cda5beee5" - integrity sha512-UgBF6/oVu1ofd1XbaSotXKihi8nZhg0Prm8twQ9uCuAfo59vlxCXMPI/RKmrZEVgi3Nd9dS0I8A0wzWU48pOvg== +jest-util@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.6.tgz#e8e04eec159de2f4d5f57f795df9cdc091e50297" + integrity sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^3.0.0" + picomatch "^2.2.3" + +jest-validate@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.6.tgz#930a527c7a951927df269f43b2dc23262457e2a6" + integrity sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA== + dependencies: + "@jest/types" "^27.0.6" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.0.1" + jest-get-type "^27.0.6" leven "^3.1.0" - pretty-format "^27.0.2" + pretty-format "^27.0.6" -jest-watcher@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.2.tgz#dab5f9443e2d7f52597186480731a8c6335c5deb" - integrity sha512-8nuf0PGuTxWj/Ytfw5fyvNn/R80iXY8QhIT0ofyImUvdnoaBdT6kob0GmhXR+wO+ALYVnh8bQxN4Tjfez0JgkA== +jest-watcher@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.6.tgz#89526f7f9edf1eac4e4be989bcb6dec6b8878d9c" + integrity sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ== dependencies: - "@jest/test-result" "^27.0.2" - "@jest/types" "^27.0.2" + "@jest/test-result" "^27.0.6" + "@jest/types" "^27.0.6" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.0.2" + jest-util "^27.0.6" string-length "^4.0.1" -jest-worker@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.2.tgz#4ebeb56cef48b3e7514552f80d0d80c0129f0b05" - integrity sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg== +jest-worker@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.6.tgz#a5fdb1e14ad34eb228cfe162d9f729cdbfa28aed" + integrity sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.0.3: - version "27.0.3" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.3.tgz#0b4ac738c93612f778d58250aee026220487e5a4" - integrity sha512-0G9+QqXFIZWgf5rs3yllpaA+13ZawVHfyuhuCV1EnoFbX++rVMRrYWCAnk+dfhwyv9/VTQvn+XG969u8aPRsBg== +jest@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.6.tgz#10517b2a628f0409087fbf473db44777d7a04505" + integrity sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA== dependencies: - "@jest/core" "^27.0.3" + "@jest/core" "^27.0.6" import-local "^3.0.2" - jest-cli "^27.0.3" + jest-cli "^27.0.6" js-tokens@^4.0.0: version "4.0.0" @@ -3670,6 +3757,13 @@ jsonfile@^3.0.0: optionalDependencies: graceful-fs "^4.1.6" +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + jsonfile@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" @@ -3720,17 +3814,16 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.0.0.tgz#24d0a95aa316ba28e257f5c4613369a75a10c712" - integrity sha512-3rsRIoyaE8IphSUtO1RVTFl1e0SLBtxxUOPBtHxQgBHS5/i6nqvjcUfNioMa4BU9yGnPzbO+xkfLtXtxBpCzjw== +lint-staged@^11.1.2: + version "11.1.2" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.1.2.tgz#4dd78782ae43ee6ebf2969cad9af67a46b33cd90" + integrity sha512-6lYpNoA9wGqkL6Hew/4n1H6lRqF3qCsujVT0Oq5Z4hiSAM7S6NksPJ3gnr7A7R52xCtiZMcEUNNQ6d6X5Bvh9w== dependencies: chalk "^4.1.1" cli-truncate "^2.1.0" commander "^7.2.0" cosmiconfig "^7.0.0" debug "^4.3.1" - dedent "^0.7.0" enquirer "^2.3.6" execa "^5.0.0" listr2 "^3.8.2" @@ -3838,7 +3931,7 @@ lodash.truncate@^4.4.2: resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= -lodash@4.x, lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.21, lodash@^4.7.0: +lodash@4.x, lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -3869,12 +3962,19 @@ loud-rejection@^1.0.0: currently-unhandled "^0.4.1" signal-exit "^3.0.0" -lower-case@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" - integrity sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ== +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== + dependencies: + tslib "^2.0.3" + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: - tslib "^1.10.0" + yallist "^3.0.2" lru-cache@^6.0.0: version "6.0.0" @@ -4029,21 +4129,20 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-1.2.2.tgz#8c91a66941982f84623482b5cfe2a833faf03e81" - integrity sha512-uYUFtsAYyfQrGIL+/qAzJCxDlKLImg7ziOVguUoNAyyYAc1L5DoDZSpmnAY8x1naIw5HJfiGu9ct7A/GGnvUKw== +mockttp@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.1.tgz#6e517b276c090c6825d9c42e95aead6832706df3" + integrity sha512-0Nhp7gDnPkKNKRaJtqfDQaSYEbfYQohmf7DUTJG/Q6vP0gNblSEjr/sFGHDX6XvBraoOpSw3ePV2XDzK21VAsQ== dependencies: - "@graphql-tools/schema" "^6.0.18" - "@graphql-tools/utils" "^6.0.18" + "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^1.0.0" + "@httptoolkit/subscriptions-transport-ws" "^0.9.19" "@types/cors" "^2.8.6" "@types/express" "^4.0.33" "@types/node" "^14.14.37" "@types/node-forge" "^0.9.1" base64-arraybuffer "^0.1.5" body-parser "^1.15.2" - brotli "^1.3.2" cacheable-lookup "^6.0.0" common-tags "^1.8.0" connect "^3.7.0" @@ -4052,16 +4151,16 @@ mockttp@^1.2.2: express "^4.14.0" express-graphql "^0.11.0" fetch-ponyfill "^7.1.0" - graphql "^14.0.2" + graphql "^14.0.2 || ^15.5" graphql-subscriptions "^1.1.0" - http2-wrapper "^1.0.0-beta.5.2" + http-encoding "^1.4.0" + http2-wrapper "2.0.5" lodash "^4.16.4" native-duplexpair "^1.0.0" node-forge "^0.10.0" - normalize-url "^1.9.1" performance-now "^2.1.0" portfinder "^1.0.23" - subscriptions-transport-ws "^0.9.4" + proxy-agent "^4.0.1" typed-error "^3.0.2" universal-websocket-client "^1.0.2" uuid "^3.1.0" @@ -4098,13 +4197,18 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== -no-case@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" - integrity sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw== +netmask@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" + integrity sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg== + +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: - lower-case "^2.0.1" - tslib "^1.10.0" + lower-case "^2.0.2" + tslib "^2.0.3" node-fetch@~2.6.1: version "2.6.1" @@ -4146,16 +4250,6 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-url@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= - dependencies: - object-assign "^4.0.1" - prepend-http "^1.0.0" - query-string "^4.1.0" - sort-keys "^1.0.0" - npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" @@ -4173,7 +4267,7 @@ nwsapi@^2.2.0: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== -object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: +object-assign@^4: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= @@ -4199,10 +4293,10 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/open/-/open-8.2.0.tgz#d6a4788b00009a9d60df471ecb89842a15fdcfc1" - integrity sha512-O8uInONB4asyY3qUcEytpgwxQG3O0fJ/hlssoUHsBboOIRVZzT6Wq+Rwj5nffbeUhOdMjpXeISpDDzHCMRDuOQ== +open@^8.2.1: + version "8.2.1" + resolved "https://registry.yarnpkg.com/open/-/open-8.2.1.tgz#82de42da0ccbf429bc12d099dad2e0975e14e8af" + integrity sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ== dependencies: define-lazy-prop "^2.0.0" is-docker "^2.1.1" @@ -4308,6 +4402,30 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== +pac-proxy-agent@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz#66883eeabadc915fc5e95457324cb0f0ac78defb" + integrity sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + get-uri "3" + http-proxy-agent "^4.0.1" + https-proxy-agent "5" + pac-resolver "^4.1.0" + raw-body "^2.2.0" + socks-proxy-agent "5" + +pac-resolver@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-4.2.0.tgz#b82bcb9992d48166920bc83c7542abb454bd9bdd" + integrity sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ== + dependencies: + degenerator "^2.2.0" + ip "^1.1.5" + netmask "^2.0.1" + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -4353,13 +4471,13 @@ parseurl@~1.3.2, parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -pascal-case@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" - integrity sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA== +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: - no-case "^3.0.3" - tslib "^1.10.0" + no-case "^3.0.4" + tslib "^2.0.3" path-exists@^3.0.0: version "3.0.0" @@ -4466,11 +4584,6 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -prepend-http@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - prettier-linter-helpers@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" @@ -4478,27 +4591,17 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.0.tgz#b6a5bf1284026ae640f17f7ff5658a7567fc0d18" - integrity sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w== - -pretty-format@^26.0.0, pretty-format@^26.6.2: - version "26.6.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" - integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== - dependencies: - "@jest/types" "^26.6.2" - ansi-regex "^5.0.0" - ansi-styles "^4.0.0" - react-is "^17.0.1" +prettier@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.2.tgz#ef280a05ec253712e486233db5c6f23441e7342d" + integrity sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ== -pretty-format@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.2.tgz#9283ff8c4f581b186b2d4da461617143dca478a4" - integrity sha512-mXKbbBPnYTG7Yra9qFBtqj+IXcsvxsvOBco3QHxtxTl+hHKq6QdzMZ+q0CtL4ORHZgwGImRr2XZUX2EWzORxig== +pretty-format@^27.0.0, pretty-format@^27.0.6: + version "27.0.6" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.6.tgz#ab770c47b2c6f893a21aefc57b75da63ef49a11f" + integrity sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ== dependencies: - "@jest/types" "^27.0.2" + "@jest/types" "^27.0.6" ansi-regex "^5.0.0" ansi-styles "^5.0.0" react-is "^17.0.1" @@ -4529,6 +4632,25 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" +proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-4.0.1.tgz#326c3250776c7044cd19655ccbfadf2e065a045c" + integrity sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA== + dependencies: + agent-base "^6.0.0" + debug "4" + http-proxy-agent "^4.0.0" + https-proxy-agent "^5.0.0" + lru-cache "^5.1.1" + pac-proxy-agent "^4.1.0" + proxy-from-env "^1.0.0" + socks-proxy-agent "^5.0.0" + +proxy-from-env@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -4559,14 +4681,6 @@ qs@^6.9.4: resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.4.tgz#9090b290d1f91728d3c22e54843ca44aea5ab687" integrity sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ== -query-string@^4.1.0: - version "4.3.4" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= - dependencies: - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -4597,7 +4711,7 @@ raw-body@2.4.0: iconv-lite "0.4.24" unpipe "1.0.0" -raw-body@^2.3.2, raw-body@^2.4.1: +raw-body@^2.2.0, raw-body@^2.3.2, raw-body@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.1.tgz#30ac82f98bb5ae8c152e67149dac8d55153b168c" integrity sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA== @@ -4629,6 +4743,16 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" +readable-stream@1.1.x: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + "readable-stream@2 || 3", readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" @@ -4691,10 +4815,10 @@ requires-port@^1.0.0: resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= -resolve-alpn@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c" - integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA== +resolve-alpn@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.0.tgz#058bb0888d1cd4d12474e9a4b6eb17bdd5addc44" + integrity sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA== resolve-cwd@^3.0.0: version "3.0.0" @@ -4967,6 +5091,11 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" +smart-buffer@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== + socket.io-adapter@~1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" @@ -5019,12 +5148,22 @@ socket.io@2.4.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" -sort-keys@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= +socks-proxy-agent@5, socks-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" + integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== + dependencies: + agent-base "^6.0.2" + debug "4" + socks "^2.3.3" + +socks@^2.3.3: + version "2.6.1" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" + integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== dependencies: - is-plain-obj "^1.0.0" + ip "^1.1.5" + smart-buffer "^4.1.0" source-map-support@^0.5.6: version "0.5.16" @@ -5122,11 +5261,6 @@ stream-throttle@^0.1.3: commander "^2.2.0" limiter "^1.0.5" -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= - string-argv@0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" @@ -5156,6 +5290,11 @@ string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -5211,17 +5350,6 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -subscriptions-transport-ws@^0.9.4: - version "0.9.17" - resolved "https://registry.yarnpkg.com/subscriptions-transport-ws/-/subscriptions-transport-ws-0.9.17.tgz#e30e40f0caae0d2781903c01a8cb51b6e2682098" - integrity sha512-hNHi2N80PBz4T0V0QhnnsMGvG3XDFDS9mS6BhZ3R12T6EBywC8d/uJscsga0cVO4DKtXCkCRrWm2sOYrbOdhEA== - dependencies: - backo2 "^1.0.2" - eventemitter3 "^3.1.0" - iterall "^1.2.1" - symbol-observable "^1.0.4" - ws "^5.2.0" - superagent@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/superagent/-/superagent-6.1.0.tgz#09f08807bc41108ef164cfb4be293cebd480f4a6" @@ -5239,10 +5367,10 @@ superagent@^6.1.0: readable-stream "^3.6.0" semver "^7.3.2" -supertest@^6.1.3: - version "6.1.3" - resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.3.tgz#3f49ea964514c206c334073e8dc4e70519c7403f" - integrity sha512-v2NVRyP73XDewKb65adz+yug1XMtmvij63qIWHZzSX8tp6wiq6xBLUy4SUAd2NII6wIipOmHT/FD9eicpJwdgQ== +supertest@^6.1.5: + version "6.1.5" + resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.5.tgz#b011c8465281b30c64e9d4be4cb3808b91cd1ec0" + integrity sha512-Is3pFB2TxSFPohDS2tIM8h2JOMvUQwbJ9TvTfsWAm89ZZv1CF4VTLAsQz+5+5S1wOgaMqFqSpFriU15L3e2AXQ== dependencies: methods "^1.1.2" superagent "^6.1.0" @@ -5421,10 +5549,10 @@ trim-off-newlines@^1.0.0: resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= -ts-jest@^27.0.2: - version "27.0.2" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.2.tgz#acc1525d5fd25c107c777c3b80a11365db579aa1" - integrity sha512-pozjHOOfm+sbv9kXCvTFVyDntWvuJztzkNFql/akD75hSMZ2jsbidVauOhBRImAopXohqcLtPK/NTTIS8Y49Ug== +ts-jest@^27.0.4: + version "27.0.4" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.4.tgz#df49683535831560ccb58f94c023d831b1b80df0" + integrity sha512-c4E1ECy9Xz2WGfTMyHbSaArlIva7Wi2p43QOMmCqjSSjHP06KXv+aT+eSY+yZMuqsMi3k7pyGsGj2q5oSl5WfQ== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -5437,16 +5565,26 @@ ts-jest@^27.0.2: semver "7.x" yargs-parser "20.x" -tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0: +tslib@^1.8.1, tslib@^1.9.0: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== +tslib@^2.0.1, tslib@^2.0.3: + version "2.3.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" + integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== + tslib@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== +tslib@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" + integrity sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w== + tsutils@^3.21.0: version "3.21.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" @@ -5483,11 +5621,6 @@ type-fest@^0.20.2: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -type-fest@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== - type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -5508,12 +5641,12 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.2.tgz#399ab18aac45802d6f2498de5054fcbbe716a805" - integrity sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw== +typescript@^4.3.5: + version "4.3.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.5.tgz#4d1c37cc16e893973c45a06886b7113234f119f4" + integrity sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA== -ua-parser-js@^0.7.18: +ua-parser-js@^0.7.28: version "0.7.28" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" integrity sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g== @@ -5540,6 +5673,11 @@ universalify@^1.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" @@ -5572,10 +5710,10 @@ v8-compile-cache@^2.0.3: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== -v8-to-istanbul@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.0.tgz#5b95cef45c0f83217ec79f8fc7ee1c8b486aee07" - integrity sha512-uXUVqNUCLa0AH1vuVxzi+MI4RfxEOKt9pBgKwHbgH7st8Kv2P1m+jvWNnektzBh5QShF3ODgKmUFCf38LnVz1g== +v8-to-istanbul@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" + integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" @@ -5589,6 +5727,11 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +value-or-promise@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/value-or-promise/-/value-or-promise-1.0.6.tgz#218aa4794aa2ee24dcf48a29aba4413ed584747f" + integrity sha512-9r0wQsWD8z/BxPOvnwbPf05ZvFngXyouE9EKB+5GbYix+BYnAwrIChCUyFIinfbf2FL/U71z+CPpbnmTdxrwBg== + vary@^1, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -5717,13 +5860,6 @@ ws@^3.2.0, ws@^3.3.3: safe-buffer "~5.1.0" ultron "~1.1.0" -ws@^5.2.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.2.tgz#dffef14866b8e8dc9133582514d1befaf96e980f" - integrity sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA== - dependencies: - async-limiter "~1.0.0" - ws@^7.3.1, ws@^7.4.5, ws@^7.4.6, ws@~7.4.2: version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" @@ -5744,6 +5880,11 @@ xmlhttprequest-ssl@~1.6.2: resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.2.tgz#dd6899bfbcf684b554e393c30b13b9f3b001a7ee" integrity sha512-tYOaldF/0BLfKuoA39QMwD4j2m8lq4DIncqj1yuNELX4vz9+z/ieG/vwmctjJce+boFHXstqhWnHSxc4W8f4qg== +xregexp@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" + integrity sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM= + xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -5759,6 +5900,11 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + yallist@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" @@ -5789,7 +5935,7 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs@16.2.0, yargs@^16.0.3, yargs@^16.2.0: +yargs@16.2.0, yargs@^16.0.3: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== @@ -5819,7 +5965,25 @@ yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" +yargs@^17.0.0: + version "17.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.0.tgz#0cd9827a0572c9a1795361c4d1530e53ada168cf" + integrity sha512-SQr7qqmQ2sNijjJGHL4u7t8vyDZdZ3Ahkmo4sc1w5xI9TBX0QDdG/g4SFnxtWOsGLjwHQue57eFALfwFCnixgg== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + yeast@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + +zstd-codec@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/zstd-codec/-/zstd-codec-0.1.2.tgz#6a13b7e666d9066d5236cbab760862a44f2660a0" + integrity sha512-t1gdk33h1wT7YcBPebyGWGJTWodKsJVfDeVN0q2x/htPGLEX3BAuBvOFsU4W3BplbmTXwvH8c/TUZ/DPTXOFfg== From d1c86328aad626ba37b222dea5a5b933fa15ef1e Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 13 Aug 2021 23:50:45 +0200 Subject: [PATCH 37/77] chore(package): bump @types/express (#652) --- package.json | 9 +++++++-- yarn.lock | 45 +++++++++++++++++++++++++-------------------- 2 files changed, 32 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index 6d20707e..bbf2e8b2 100644 --- a/package.json +++ b/package.json @@ -53,11 +53,11 @@ "devDependencies": { "@commitlint/cli": "^13.1.0", "@commitlint/config-conventional": "^13.1.0", - "@types/express": "4.17.7", + "@types/express": "^4.17.13", "@types/is-glob": "^4.0.2", "@types/jest": "^27.0.1", "@types/micromatch": "^4.0.2", - "@types/node": "^15.6.2", + "@types/node": "^16.6.1", "@types/supertest": "^2.0.11", "@types/ws": "^7.4.7", "@typescript-eslint/eslint-plugin": "^4.29.1", @@ -95,5 +95,10 @@ "extends": [ "@commitlint/config-conventional" ] + }, + "resolutions": { + "@types/express": "^4.17.13", + "@types/express-serve-static-core": "^4.17.24", + "@types/serve-static": "^1.13.10" } } diff --git a/yarn.lock b/yarn.lock index 0a6f6576..1ccf1e53 100644 --- a/yarn.lock +++ b/yarn.lock @@ -814,22 +814,22 @@ dependencies: "@types/express" "*" -"@types/express-serve-static-core@*": - version "4.17.9" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.9.tgz#2d7b34dcfd25ec663c25c85d76608f8b249667f1" - integrity sha512-DG0BYg6yO+ePW+XoDENYz8zhNGC3jDDEpComMYn7WJc4mY1Us8Rw9ax2YhJXxpyk2SF47PQAoQ0YyVT1a0bEkA== +"@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.24": + version "4.17.24" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz#ea41f93bf7e0d59cd5a76665068ed6aab6815c07" + integrity sha512-3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA== dependencies: "@types/node" "*" "@types/qs" "*" "@types/range-parser" "*" -"@types/express@*", "@types/express@4.17.7", "@types/express@^4.0.33": - version "4.17.7" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.7.tgz#42045be6475636d9801369cd4418ef65cdb0dd59" - integrity sha512-dCOT5lcmV/uC2J9k0rPafATeeyz+99xTt54ReX11/LObZgfzJqZNcW27zGhYyX+9iSEGXGt5qLPwRSvBZcLvtQ== +"@types/express@*", "@types/express@^4.0.33", "@types/express@^4.17.13": + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" + integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== dependencies: "@types/body-parser" "*" - "@types/express-serve-static-core" "*" + "@types/express-serve-static-core" "^4.17.18" "@types/qs" "*" "@types/serve-static" "*" @@ -891,10 +891,10 @@ dependencies: "@types/braces" "*" -"@types/mime@*": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/mime/-/mime-2.0.3.tgz#c893b73721db73699943bfc3653b1deb7faa4a3a" - integrity sha512-Jus9s4CDbqwocc5pOAnh8ShfrnMcPHuJYzVcSUU7lrh8Ni5HuIqX3oilL86p3dlTrk0LzHRCgA/GQ7uNCw6l2Q== +"@types/mime@^1": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" + integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== "@types/node-forge@^0.9.1": version "0.9.4" @@ -903,7 +903,7 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@^15.6.2": +"@types/node@*": version "15.6.2" resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== @@ -913,6 +913,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e" integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw== +"@types/node@^16.6.1": + version "16.6.1" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.6.1.tgz#aee62c7b966f55fc66c7b6dfa1d58db2a616da61" + integrity sha512-Sr7BhXEAer9xyGuCN3Ek9eg9xPviCF2gfu9kTfuU2HkTVAMYSDeX40fvpmo72n5nansg3nsBjuQBrsS28r+NUw== + "@types/parse-json@^4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" @@ -933,13 +938,13 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== -"@types/serve-static@*": - version "1.13.5" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.5.tgz#3d25d941a18415d3ab092def846e135a08bbcf53" - integrity sha512-6M64P58N+OXjU432WoLLBQxbA0LRGBCRm7aAGQJ+SMC1IMl0dgRVi9EFfoDcS2a7Xogygk/eGN94CfwU9UF7UQ== +"@types/serve-static@*", "@types/serve-static@^1.13.10": + version "1.13.10" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" + integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== dependencies: - "@types/express-serve-static-core" "*" - "@types/mime" "*" + "@types/mime" "^1" + "@types/node" "*" "@types/stack-utils@^2.0.0": version "2.0.0" From 57c8706c3a04c01912f9b97d5fdb5753bc7a63cb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 14 Aug 2021 00:10:20 +0200 Subject: [PATCH 38/77] chore(package): bump devDep ws (#653) --- package.json | 2 +- test/e2e/websocket.spec.ts | 15 ++++++++++----- yarn.lock | 5 +++++ 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index bbf2e8b2..189df85c 100644 --- a/package.json +++ b/package.json @@ -79,7 +79,7 @@ "supertest": "^6.1.5", "ts-jest": "^27.0.4", "typescript": "^4.3.5", - "ws": "^7.4.6" + "ws": "^8.1.0" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index d2e674ee..bb80b166 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -25,7 +25,8 @@ describe('E2E WebSocket proxy', () => { wss = new WebSocketServer({ port: WS_SERVER_PORT }); wss.on('connection', (websocket) => { - websocket.on('message', (message) => { + websocket.on('message', (data, isBinary) => { + const message = isBinary ? data : data.toString(); websocket.send(message); // echo received message }); }); @@ -66,7 +67,8 @@ describe('E2E WebSocket proxy', () => { }); it('should proxy to path', (done) => { - ws.on('message', (message) => { + ws.on('message', (data, isBinary) => { + const message = isBinary ? data : data.toString(); expect(message).toBe('foobar'); done(); }); @@ -84,7 +86,8 @@ describe('E2E WebSocket proxy', () => { }); it('should proxy to path', (done) => { - ws.on('message', (message) => { + ws.on('message', (data, isBinary) => { + const message = isBinary ? data : data.toString(); expect(message).toBe('foobar'); done(); }); @@ -109,7 +112,8 @@ describe('E2E WebSocket proxy', () => { }); it('should proxy to path', (done) => { - ws.on('message', (message) => { + ws.on('message', (data, isBinary) => { + const message = isBinary ? data : data.toString(); expect(message).toBe('foobar'); done(); }); @@ -136,7 +140,8 @@ describe('E2E WebSocket proxy', () => { }); it('should proxy to path', (done) => { - ws.on('message', (message) => { + ws.on('message', (data, isBinary) => { + const message = isBinary ? data : data.toString(); expect(message).toBe('foobar'); done(); }); diff --git a/yarn.lock b/yarn.lock index 1ccf1e53..16951883 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5870,6 +5870,11 @@ ws@^7.3.1, ws@^7.4.5, ws@^7.4.6, ws@~7.4.2: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== +ws@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.1.0.tgz#75e5ec608f66d3d3934ec6dbc4ebc8a34a68638c" + integrity sha512-0UWlCD2s3RSclw8FN+D0zDTUyMO+1kHwJQQJzkgUh16S8d3NYON0AKCEQPffE0ez4JyRFu76QDA9KR5bOG/7jw== + xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" From aca648f65d14fd764d20fa35163885d4913b5b59 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 15 Aug 2021 18:27:58 +0200 Subject: [PATCH 39/77] chore(package): bump devDep mockttp (#654) --- package.json | 7 +------ yarn.lock | 26 ++++++-------------------- 2 files changed, 7 insertions(+), 26 deletions(-) diff --git a/package.json b/package.json index 189df85c..1d06fe10 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,7 @@ "husky": "^7.0.1", "jest": "^27.0.6", "lint-staged": "^11.1.2", - "mockttp": "^2.2.1", + "mockttp": "^2.2.2", "open": "^8.2.1", "prettier": "^2.3.2", "supertest": "^6.1.5", @@ -95,10 +95,5 @@ "extends": [ "@commitlint/config-conventional" ] - }, - "resolutions": { - "@types/express": "^4.17.13", - "@types/express-serve-static-core": "^4.17.24", - "@types/serve-static": "^1.13.10" } } diff --git a/yarn.lock b/yarn.lock index 16951883..2b33bf37 100644 --- a/yarn.lock +++ b/yarn.lock @@ -823,7 +823,7 @@ "@types/qs" "*" "@types/range-parser" "*" -"@types/express@*", "@types/express@^4.0.33", "@types/express@^4.17.13": +"@types/express@*", "@types/express@^4.17.13": version "4.17.13" resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== @@ -896,23 +896,11 @@ resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== -"@types/node-forge@^0.9.1": - version "0.9.4" - resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-0.9.4.tgz#3a81edafed5022eba8e63338ef4b04def04c61f1" - integrity sha512-uFhaKXdhhrLNzfNhXbXJqDwF3jXMzN9qfkdW+IAMnAfwqNZhBcE/cciMITLT0Sg6ls6JYHo3xVWNXAG1g9tm8A== - dependencies: - "@types/node" "*" - "@types/node@*": version "15.6.2" resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== -"@types/node@^14.14.37": - version "14.14.37" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.37.tgz#a3dd8da4eb84a996c36e331df98d82abd76b516e" - integrity sha512-XYmBiy+ohOR4Lh5jE379fV2IU+6Jn4g5qASinhitfyO71b/sCo6MKsMLF5tc7Zf2CE8hViVQyYSobJNke8OvUw== - "@types/node@^16.6.1": version "16.6.1" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.6.1.tgz#aee62c7b966f55fc66c7b6dfa1d58db2a616da61" @@ -4134,18 +4122,16 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^2.2.1: - version "2.2.1" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.1.tgz#6e517b276c090c6825d9c42e95aead6832706df3" - integrity sha512-0Nhp7gDnPkKNKRaJtqfDQaSYEbfYQohmf7DUTJG/Q6vP0gNblSEjr/sFGHDX6XvBraoOpSw3ePV2XDzK21VAsQ== +mockttp@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.2.tgz#fcee10860341b70ec014886fb15ab587f9fb911f" + integrity sha512-f9sERZe+95sGBSzBt7nSXsPdTm+O2uPA/gy/Wlf544a4zKbe0fhBRfs62HCgoTYnJu3lMxlX4oxph7L+SHW/LA== dependencies: "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^1.0.0" "@httptoolkit/subscriptions-transport-ws" "^0.9.19" "@types/cors" "^2.8.6" - "@types/express" "^4.0.33" - "@types/node" "^14.14.37" - "@types/node-forge" "^0.9.1" + "@types/node" "*" base64-arraybuffer "^0.1.5" body-parser "^1.15.2" cacheable-lookup "^6.0.0" From f999d1ccd954d3c712e61fb64ecbe8e4a585bf2b Mon Sep 17 00:00:00 2001 From: maple Date: Wed, 18 Aug 2021 03:48:22 +0800 Subject: [PATCH 40/77] fix(_handlers.ts): typo (#655) * Fix a typo in _handlers.ts * Fix a typo in handlers.spec.ts --- src/_handlers.ts | 2 +- test/unit/handlers.spec.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/_handlers.ts b/src/_handlers.ts index e44e5dc7..6cdefd79 100644 --- a/src/_handlers.ts +++ b/src/_handlers.ts @@ -79,7 +79,7 @@ function defaultErrorHandler(err, req: express.Request, res: express.Response) { } } - res.end(`Error occured while trying to proxy: ${host}${req.url}`); + res.end(`Error occurred while trying to proxy: ${host}${req.url}`); } function logClose(req, socket, head) { diff --git a/test/unit/handlers.spec.ts b/test/unit/handlers.spec.ts index e8d5e195..22a8cfc1 100644 --- a/test/unit/handlers.spec.ts +++ b/test/unit/handlers.spec.ts @@ -119,7 +119,7 @@ describe('default proxy error handler', () => { it('should end the response and return error message', () => { proxyError(mockError, mockReq, mockRes, proxyOptions); - expect(errorMessage).toBe('Error occured while trying to proxy: localhost:3000/api'); + expect(errorMessage).toBe('Error occurred while trying to proxy: localhost:3000/api'); }); it('should not set the http status code to: 500 if headers have already been sent', () => { @@ -131,7 +131,7 @@ describe('default proxy error handler', () => { it('should end the response and return error message', () => { mockRes.headersSent = true; proxyError(mockError, mockReq, mockRes, proxyOptions); - expect(errorMessage).toBe('Error occured while trying to proxy: localhost:3000/api'); + expect(errorMessage).toBe('Error occurred while trying to proxy: localhost:3000/api'); }); it('should re-throw error from http-proxy when target is missing', () => { From ab6a178418b0387871c6ed40c53d47e5295f8ca1 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 1 Oct 2021 21:29:32 +0200 Subject: [PATCH 41/77] chore(package.json): bump dev dependencies (#671) * chore(package.json): fix dev dependency audit issues * chore(package.json): bump dev dependencies --- package.json | 30 +- yarn.lock | 2503 +++++++++++++++++++++++++++----------------------- 2 files changed, 1347 insertions(+), 1186 deletions(-) diff --git a/package.json b/package.json index 1d06fe10..f0ad43fd 100644 --- a/package.json +++ b/package.json @@ -51,35 +51,35 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^13.1.0", - "@commitlint/config-conventional": "^13.1.0", + "@commitlint/cli": "^13.2.0", + "@commitlint/config-conventional": "^13.2.0", "@types/express": "^4.17.13", "@types/is-glob": "^4.0.2", "@types/jest": "^27.0.1", "@types/micromatch": "^4.0.2", - "@types/node": "^16.6.1", + "@types/node": "^16.10.2", "@types/supertest": "^2.0.11", - "@types/ws": "^7.4.7", - "@typescript-eslint/eslint-plugin": "^4.29.1", - "@typescript-eslint/parser": "^4.29.1", + "@types/ws": "^8.2.0", + "@typescript-eslint/eslint-plugin": "^4.32.0", + "@typescript-eslint/parser": "^4.32.0", "body-parser": "^1.19.0", "browser-sync": "^2.27.5", "connect": "^3.7.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^3.4.0", + "eslint-plugin-prettier": "^4.0.0", "express": "^4.17.1", "get-port": "^5.1.1", - "husky": "^7.0.1", - "jest": "^27.0.6", + "husky": "^7.0.2", + "jest": "^27.2.4", "lint-staged": "^11.1.2", - "mockttp": "^2.2.2", + "mockttp": "^2.2.3", "open": "^8.2.1", - "prettier": "^2.3.2", - "supertest": "^6.1.5", - "ts-jest": "^27.0.4", - "typescript": "^4.3.5", - "ws": "^8.1.0" + "prettier": "^2.4.1", + "supertest": "^6.1.6", + "ts-jest": "^27.0.5", + "typescript": "^4.4.3", + "ws": "^8.2.2" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index 2b33bf37..e998a37c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,32 +16,39 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13": +"@babel/code-frame@^7.0.0": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== dependencies: "@babel/highlight" "^7.12.13" -"@babel/compat-data@^7.13.15": - version "7.14.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.14.0.tgz#a901128bce2ad02565df95e6ecbf195cf9465919" - integrity sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q== +"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" + integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== + dependencies: + "@babel/highlight" "^7.14.5" + +"@babel/compat-data@^7.15.0": + version "7.15.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.15.0.tgz#2dbaf8b85334796cafbb0f5793a90a2fc010b176" + integrity sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA== "@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5": - version "7.14.3" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.14.3.tgz#5395e30405f0776067fbd9cf0884f15bfb770a38" - integrity sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.14.3" - "@babel/helper-compilation-targets" "^7.13.16" - "@babel/helper-module-transforms" "^7.14.2" - "@babel/helpers" "^7.14.0" - "@babel/parser" "^7.14.3" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.14.2" - "@babel/types" "^7.14.2" + version "7.15.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.5.tgz#f8ed9ace730722544609f90c9bb49162dc3bf5b9" + integrity sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/generator" "^7.15.4" + "@babel/helper-compilation-targets" "^7.15.4" + "@babel/helper-module-transforms" "^7.15.4" + "@babel/helpers" "^7.15.4" + "@babel/parser" "^7.15.5" + "@babel/template" "^7.15.4" + "@babel/traverse" "^7.15.4" + "@babel/types" "^7.15.4" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -49,123 +56,135 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/generator@^7.14.2", "@babel/generator@^7.14.3", "@babel/generator@^7.7.2": - version "7.14.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.14.3.tgz#0c2652d91f7bddab7cccc6ba8157e4f40dcedb91" - integrity sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA== +"@babel/generator@^7.15.4", "@babel/generator@^7.7.2": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.4.tgz#85acb159a267ca6324f9793986991ee2022a05b0" + integrity sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw== dependencies: - "@babel/types" "^7.14.2" + "@babel/types" "^7.15.4" jsesc "^2.5.1" source-map "^0.5.0" -"@babel/helper-compilation-targets@^7.13.16": - version "7.13.16" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz#6e91dccf15e3f43e5556dffe32d860109887563c" - integrity sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA== +"@babel/helper-compilation-targets@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz#cf6d94f30fbefc139123e27dd6b02f65aeedb7b9" + integrity sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ== dependencies: - "@babel/compat-data" "^7.13.15" - "@babel/helper-validator-option" "^7.12.17" - browserslist "^4.14.5" + "@babel/compat-data" "^7.15.0" + "@babel/helper-validator-option" "^7.14.5" + browserslist "^4.16.6" semver "^6.3.0" -"@babel/helper-function-name@^7.14.2": - version "7.14.2" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz#397688b590760b6ef7725b5f0860c82427ebaac2" - integrity sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ== +"@babel/helper-function-name@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz#845744dafc4381a4a5fb6afa6c3d36f98a787ebc" + integrity sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw== dependencies: - "@babel/helper-get-function-arity" "^7.12.13" - "@babel/template" "^7.12.13" - "@babel/types" "^7.14.2" + "@babel/helper-get-function-arity" "^7.15.4" + "@babel/template" "^7.15.4" + "@babel/types" "^7.15.4" -"@babel/helper-get-function-arity@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz#bc63451d403a3b3082b97e1d8b3fe5bd4091e583" - integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== +"@babel/helper-get-function-arity@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz#098818934a137fce78b536a3e015864be1e2879b" + integrity sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA== dependencies: - "@babel/types" "^7.12.13" + "@babel/types" "^7.15.4" -"@babel/helper-member-expression-to-functions@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz#dfe368f26d426a07299d8d6513821768216e6d72" - integrity sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw== +"@babel/helper-hoist-variables@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz#09993a3259c0e918f99d104261dfdfc033f178df" + integrity sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA== dependencies: - "@babel/types" "^7.13.12" + "@babel/types" "^7.15.4" -"@babel/helper-module-imports@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz#c6a369a6f3621cb25da014078684da9196b61977" - integrity sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA== +"@babel/helper-member-expression-to-functions@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz#bfd34dc9bba9824a4658b0317ec2fd571a51e6ef" + integrity sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA== dependencies: - "@babel/types" "^7.13.12" + "@babel/types" "^7.15.4" -"@babel/helper-module-transforms@^7.14.2": - version "7.14.2" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz#ac1cc30ee47b945e3e0c4db12fa0c5389509dfe5" - integrity sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA== +"@babel/helper-module-imports@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz#e18007d230632dea19b47853b984476e7b4e103f" + integrity sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA== dependencies: - "@babel/helper-module-imports" "^7.13.12" - "@babel/helper-replace-supers" "^7.13.12" - "@babel/helper-simple-access" "^7.13.12" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/helper-validator-identifier" "^7.14.0" - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.14.2" - "@babel/types" "^7.14.2" + "@babel/types" "^7.15.4" -"@babel/helper-optimise-call-expression@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz#5c02d171b4c8615b1e7163f888c1c81c30a2aaea" - integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== +"@babel/helper-module-transforms@^7.15.4": + version "7.15.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz#7da80c8cbc1f02655d83f8b79d25866afe50d226" + integrity sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw== dependencies: - "@babel/types" "^7.12.13" + "@babel/helper-module-imports" "^7.15.4" + "@babel/helper-replace-supers" "^7.15.4" + "@babel/helper-simple-access" "^7.15.4" + "@babel/helper-split-export-declaration" "^7.15.4" + "@babel/helper-validator-identifier" "^7.15.7" + "@babel/template" "^7.15.4" + "@babel/traverse" "^7.15.4" + "@babel/types" "^7.15.6" -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz#806526ce125aed03373bc416a828321e3a6a33af" - integrity sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ== +"@babel/helper-optimise-call-expression@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz#f310a5121a3b9cc52d9ab19122bd729822dee171" + integrity sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw== + dependencies: + "@babel/types" "^7.15.4" -"@babel/helper-replace-supers@^7.13.12": - version "7.14.3" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz#ca17b318b859d107f0e9b722d58cf12d94436600" - integrity sha512-Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" + integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== + +"@babel/helper-replace-supers@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz#52a8ab26ba918c7f6dee28628b07071ac7b7347a" + integrity sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw== dependencies: - "@babel/helper-member-expression-to-functions" "^7.13.12" - "@babel/helper-optimise-call-expression" "^7.12.13" - "@babel/traverse" "^7.14.2" - "@babel/types" "^7.14.2" + "@babel/helper-member-expression-to-functions" "^7.15.4" + "@babel/helper-optimise-call-expression" "^7.15.4" + "@babel/traverse" "^7.15.4" + "@babel/types" "^7.15.4" -"@babel/helper-simple-access@^7.13.12": - version "7.13.12" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz#dd6c538afb61819d205a012c31792a39c7a5eaf6" - integrity sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA== +"@babel/helper-simple-access@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz#ac368905abf1de8e9781434b635d8f8674bcc13b" + integrity sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg== dependencies: - "@babel/types" "^7.13.12" + "@babel/types" "^7.15.4" -"@babel/helper-split-export-declaration@^7.12.13": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz#e9430be00baf3e88b0e13e6f9d4eaf2136372b05" - integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== +"@babel/helper-split-export-declaration@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz#aecab92dcdbef6a10aa3b62ab204b085f776e257" + integrity sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw== dependencies: - "@babel/types" "^7.12.13" + "@babel/types" "^7.15.4" "@babel/helper-validator-identifier@^7.14.0": version "7.14.0" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288" integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== -"@babel/helper-validator-option@^7.12.17": - version "7.12.17" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz#d1fbf012e1a79b7eebbfdc6d270baaf8d9eb9831" - integrity sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw== +"@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.15.7": + version "7.15.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" + integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== -"@babel/helpers@^7.14.0": - version "7.14.0" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.14.0.tgz#ea9b6be9478a13d6f961dbb5f36bf75e2f3b8f62" - integrity sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg== +"@babel/helper-validator-option@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" + integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== + +"@babel/helpers@^7.15.4": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.15.4.tgz#5f40f02050a3027121a3cf48d497c05c555eaf43" + integrity sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ== dependencies: - "@babel/template" "^7.12.13" - "@babel/traverse" "^7.14.0" - "@babel/types" "^7.14.0" + "@babel/template" "^7.15.4" + "@babel/traverse" "^7.15.4" + "@babel/types" "^7.15.4" "@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": version "7.14.0" @@ -176,10 +195,19 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.12.13", "@babel/parser@^7.14.2", "@babel/parser@^7.14.3", "@babel/parser@^7.7.2": - version "7.14.3" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.3.tgz#9b530eecb071fd0c93519df25c5ff9f14759f298" - integrity sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ== +"@babel/highlight@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" + integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== + dependencies: + "@babel/helper-validator-identifier" "^7.14.5" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.15.4", "@babel/parser@^7.15.5", "@babel/parser@^7.7.2": + version "7.15.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.7.tgz#0c3ed4a2eb07b165dfa85b3cc45c727334c4edae" + integrity sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -196,11 +224,11 @@ "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-class-properties@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.8.3.tgz#6cb933a8872c8d359bfde69bbeaae5162fd1e8f7" - integrity sha512-UcAyQWg2bAN647Q+O811tG9MrJ38Z10jjhQdKNAL8fsyPzE3cCN/uT+f55cFVY4aGO4jqJAvmqsuY3GQDwAoXg== + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: - "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-plugin-utils" "^7.12.13" "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" @@ -217,11 +245,11 @@ "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.8.3.tgz#3995d7d7ffff432f6ddc742b47e730c054599897" - integrity sha512-Zpg2Sgc++37kuFl6ppq2Q7Awc6E6AIW671x5PY8E/f7MCIyPPGK/EoeZXvvY3P42exZ3Q4/t3YOzP/HiN79jDg== + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: - "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" @@ -231,11 +259,11 @@ "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz#0e3fb63e09bea1b11e96467271c8308007e7c41f" - integrity sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw== + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: - "@babel/helper-plugin-utils" "^7.8.3" + "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" @@ -259,48 +287,49 @@ "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-top-level-await@^7.8.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz#c5f0fa6e249f5b739727f923540cf7a806130178" - integrity sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ== + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: - "@babel/helper-plugin-utils" "^7.12.13" + "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.12.13.tgz#9dff111ca64154cef0f4dc52cf843d9f12ce4474" - integrity sha512-cHP3u1JiUiG2LFDKbXnwVad81GvfyIOmCD6HIEId6ojrY0Drfy2q1jw7BwN7dE84+kTnBjLkXoL3IEy/3JPu2w== - dependencies: - "@babel/helper-plugin-utils" "^7.12.13" - -"@babel/template@^7.12.13", "@babel/template@^7.3.3": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.12.13.tgz#530265be8a2589dbb37523844c5bcb55947fb327" - integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/parser" "^7.12.13" - "@babel/types" "^7.12.13" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.14.0", "@babel/traverse@^7.14.2", "@babel/traverse@^7.7.2": - version "7.14.2" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.14.2.tgz#9201a8d912723a831c2679c7ebbf2fe1416d765b" - integrity sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA== - dependencies: - "@babel/code-frame" "^7.12.13" - "@babel/generator" "^7.14.2" - "@babel/helper-function-name" "^7.14.2" - "@babel/helper-split-export-declaration" "^7.12.13" - "@babel/parser" "^7.14.2" - "@babel/types" "^7.14.2" + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716" + integrity sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/template@^7.15.4", "@babel/template@^7.3.3": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.15.4.tgz#51898d35dcf3faa670c4ee6afcfd517ee139f194" + integrity sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/parser" "^7.15.4" + "@babel/types" "^7.15.4" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.15.4", "@babel/traverse@^7.7.2": + version "7.15.4" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.4.tgz#ff8510367a144bfbff552d9e18e28f3e2889c22d" + integrity sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA== + dependencies: + "@babel/code-frame" "^7.14.5" + "@babel/generator" "^7.15.4" + "@babel/helper-function-name" "^7.15.4" + "@babel/helper-hoist-variables" "^7.15.4" + "@babel/helper-split-export-declaration" "^7.15.4" + "@babel/parser" "^7.15.4" + "@babel/types" "^7.15.4" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.12.13", "@babel/types@^7.13.12", "@babel/types@^7.14.0", "@babel/types@^7.14.2", "@babel/types@^7.3.0", "@babel/types@^7.3.3": - version "7.14.2" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.14.2.tgz#4208ae003107ef8a057ea8333e56eb64d2f6a2c3" - integrity sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw== +"@babel/types@^7.0.0", "@babel/types@^7.15.4", "@babel/types@^7.15.6", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.15.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.6.tgz#99abdc48218b2881c058dd0a7ab05b99c9be758f" + integrity sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig== dependencies: - "@babel/helper-validator-identifier" "^7.14.0" + "@babel/helper-validator-identifier" "^7.14.9" to-fast-properties "^2.0.0" "@bcoe/v8-coverage@^0.2.3": @@ -308,144 +337,155 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.1.0.tgz#3608bb24dbef41aaa0729ffe65c7f9b57409626a" - integrity sha512-xN/uNYWtGTva5OMSd+xA6e6/c2jk8av7MUbdd6w2cw89u6z3fAWoyiH87X0ewdSMNYmW/6B3L/2dIVGHRDID5w== +"@commitlint/cli@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.2.0.tgz#9e85756b0d0ee06c34b5635d7ef42d7a6c72bd6f" + integrity sha512-RqG0cxxiwaL9OgQbA2ZEfZaVIRJmbtsZgnj5G07AjN7///s/40grSN4/kDl8YjUgvAZskPfJRoGGYNvHJ4zHWA== dependencies: - "@commitlint/format" "^13.1.0" - "@commitlint/lint" "^13.1.0" - "@commitlint/load" "^13.1.0" - "@commitlint/read" "^13.1.0" - "@commitlint/types" "^13.1.0" + "@commitlint/format" "^13.2.0" + "@commitlint/lint" "^13.2.0" + "@commitlint/load" "^13.2.0" + "@commitlint/read" "^13.2.0" + "@commitlint/types" "^13.2.0" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^17.0.0" -"@commitlint/config-conventional@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-13.1.0.tgz#f02871d50c73db0a31b777231f49203b964d9d59" - integrity sha512-zukJXqdr6jtMiVRy3tTHmwgKcUMGfqKDEskRigc5W3k2aYF4gBAtCEjMAJGZgSQE4DMcHeok0pEV2ANmTpb0cw== +"@commitlint/config-conventional@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-13.2.0.tgz#2ad24fecc56ae9619dbe0934b98a98b18ace0bec" + integrity sha512-7u7DdOiF+3qSdDlbQGfpvCH8DCQdLFvnI2+VucYmmV7E92iD6t9PBj+UjIoSQCaMAzYp27Vkall78AkcXBh6Xw== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-13.1.0.tgz#057a325b54f104cbeed2a26bacb5eec29298e7d5" - integrity sha512-NRGyjOdZQnlYwm9it//BZJ2Vm+4x7G9rEnHpLCvNKYY0c6RA8Qf7hamLAB8dWO12RLuFt06JaOpHZoTt/gHutA== +"@commitlint/ensure@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-13.2.0.tgz#990c24f753781d1f14c1647c52d34a5730892e3d" + integrity sha512-rqhT62RehdLTRBu8OrPHnRCCd/7RmHEE4TiTlT4BLlr5ls5jlZhecOQWJ8np872uCNirrJ5NFjnjYYdbkNoW9Q== dependencies: - "@commitlint/types" "^13.1.0" + "@commitlint/types" "^13.2.0" lodash "^4.17.19" -"@commitlint/execute-rule@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-13.0.0.tgz#7823303b82b5d86dac46e67cfa005f4433476981" - integrity sha512-lBz2bJhNAgkkU/rFMAw3XBNujbxhxlaFHY3lfKB/MxpAa+pIfmWB3ig9i1VKe0wCvujk02O0WiMleNaRn2KJqw== +"@commitlint/execute-rule@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-13.2.0.tgz#e112159d6647bc5afe2f77c2080ef0f615fd541f" + integrity sha512-6nPwpN0hwTYmsH3WM4hCdN+NrMopgRIuQ0aqZa+jnwMoS/g6ljliQNYfL+m5WO306BaIu1W3yYpbW5aI8gEr0g== -"@commitlint/format@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-13.1.0.tgz#915570d958d83bae5fa645de6b1e6c9dd1362ec0" - integrity sha512-n46rYvzf+6Sm99TJjTLjJBkjm6JVcklt31lDO5Q+pCIV0NnJ4qIUcwa6wIL9a9Vqb1XzlMgtp27E0zyYArkvSg== +"@commitlint/format@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-13.2.0.tgz#eccfff0a09ced8533afb21b2b3a1e28176b109d5" + integrity sha512-yNBQJe6YFhM1pJAta4LvzQxccSKof6axJH7ALYjuhQqfT8AKlad7Y/2SuJ07ioyreNIqwOTuF2UfU8yJ7JzEIQ== dependencies: - "@commitlint/types" "^13.1.0" + "@commitlint/types" "^13.2.0" chalk "^4.0.0" -"@commitlint/is-ignored@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-13.1.0.tgz#88a5dfbc8f9ea91e860323af6681aa131322b0c4" - integrity sha512-P6zenLE5Tn3FTNjRzmL9+/KooTXEI0khA2TmUbuei9KiycemeO4q7Xk7w7aXwFPNAbN0O9oI7z3z7cFpzKJWmQ== +"@commitlint/is-ignored@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-13.2.0.tgz#532ddfb5d62a489ff4d3ad88bcbee44e8c7d2c8f" + integrity sha512-onnx4WctHFPPkHGFFAZBIWRSaNwuhixIIfbwPhcZ6IewwQX5n4jpjwM1GokA7vhlOnQ57W7AavbKUGjzIVtnRQ== dependencies: - "@commitlint/types" "^13.1.0" + "@commitlint/types" "^13.2.0" semver "7.3.5" -"@commitlint/lint@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-13.1.0.tgz#ea56ce0970f9b75ffe7bd2c9968f4f1d4461ba3a" - integrity sha512-qH9AYSQDDTaSWSdtOvB3G1RdPpcYSgddAdFYqpFewlKQ1GJj/L+sM7vwqCG7/ip6AiM04Sry1sgmFzaEoFREUA== - dependencies: - "@commitlint/is-ignored" "^13.1.0" - "@commitlint/parse" "^13.1.0" - "@commitlint/rules" "^13.1.0" - "@commitlint/types" "^13.1.0" - -"@commitlint/load@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.1.0.tgz#d6c9b547551f2216586d6c1964d93f92e7b04277" - integrity sha512-zlZbjJCWnWmBOSwTXis8H7I6pYk6JbDwOCuARA6B9Y/qt2PD+NCo0E/7EuaaFoxjHl+o56QR5QttuMBrf+BJzg== - dependencies: - "@commitlint/execute-rule" "^13.0.0" - "@commitlint/resolve-extends" "^13.0.0" - "@commitlint/types" "^13.1.0" +"@commitlint/lint@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-13.2.0.tgz#b568c96bd21c8fa8eec359a5e21d22743206761f" + integrity sha512-5XYkh0e9ehHjA7BxAHFpjPgr1qqbFY8OFG1wpBiAhycbYBtJnQmculA2wcwqTM40YCUBqEvWFdq86jTG8fbkMw== + dependencies: + "@commitlint/is-ignored" "^13.2.0" + "@commitlint/parse" "^13.2.0" + "@commitlint/rules" "^13.2.0" + "@commitlint/types" "^13.2.0" + +"@commitlint/load@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.2.0.tgz#6bd90b803f7fd102766731dad207cca075b67a4a" + integrity sha512-Nhkv+hwWCCxWGjmE9jd1U8kfGGCkZVpwzlTtdKxpY+Aj2VCFg3BjY+qA81pMF3oAsIpxchSaZG5llb8kduVjYg== + dependencies: + "@commitlint/execute-rule" "^13.2.0" + "@commitlint/resolve-extends" "^13.2.0" + "@commitlint/types" "^13.2.0" + "@endemolshinegroup/cosmiconfig-typescript-loader" "^3.0.2" chalk "^4.0.0" cosmiconfig "^7.0.0" lodash "^4.17.19" resolve-from "^5.0.0" -"@commitlint/message@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-13.0.0.tgz#4f8d56b59e9cee8b37b8db6b48c26d7faf33762f" - integrity sha512-W/pxhesVEk8747BEWJ+VGQ9ILHmCV27/pEwJ0hGny1wqVquUR8SxvScRCbUjHCB1YtWX4dEnOPXOS9CLH/CX7A== +"@commitlint/message@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-13.2.0.tgz#1a60f578551750a8d6b533be8a40541fc2e928a8" + integrity sha512-+LlErJj2F2AC86xJb33VJIvSt25xqSF1I0b0GApSgoUtQBeJhx4SxIj1BLvGcLVmbRmbgTzAFq/QylwLId7EhA== -"@commitlint/parse@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-13.1.0.tgz#b88764be36527a468531e1b8dd2d95693ff9ba34" - integrity sha512-xFybZcqBiKVjt6vTStvQkySWEUYPI0AcO4QQELyy29o8EzYZqWkhUfrb7K61fWiHsplWL1iL6F3qCLoxSgTcrg== +"@commitlint/parse@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-13.2.0.tgz#48054602bd73dccbffee4f9ba8b2549c857ba0b7" + integrity sha512-AtfKSQJQADbDhW+kuC5PxOyBANsYCuuJlZRZ2PYslOz2rvWwZ93zt+nKjM4g7C9ETbz0uq4r7/EoOsTJ2nJqfQ== dependencies: - "@commitlint/types" "^13.1.0" + "@commitlint/types" "^13.2.0" conventional-changelog-angular "^5.0.11" - conventional-commits-parser "^3.0.0" + conventional-commits-parser "^3.2.2" -"@commitlint/read@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-13.1.0.tgz#ccb65426b1228b8a598ed36966722d19756eea41" - integrity sha512-NrVe23GMKyL6i1yDJD8IpqCBzhzoS3wtLfDj8QBzc01Ov1cYBmDojzvBklypGb+MLJM1NbzmRM4PR5pNX0U/NQ== +"@commitlint/read@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-13.2.0.tgz#2af580322ec6297478aba84fa8ec24fd27c35a54" + integrity sha512-7db5e1Bn3re6hQN0SqygTMF/QX6/MQauoJn3wJiUHE93lvwO6aFQxT3qAlYeyBPwfWsmDz/uSH454jtrSsv3Uw== dependencies: - "@commitlint/top-level" "^13.0.0" - "@commitlint/types" "^13.1.0" + "@commitlint/top-level" "^13.2.0" + "@commitlint/types" "^13.2.0" fs-extra "^10.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-13.0.0.tgz#a38fcd2474483bf9ec6e1e901b27b8a23abe7d73" - integrity sha512-1SyaE+UOsYTkQlTPUOoj4NwxQhGFtYildVS/d0TJuK8a9uAJLw7bhCLH2PEeH5cC2D1do4Eqhx/3bLDrSLH3hg== +"@commitlint/resolve-extends@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-13.2.0.tgz#74f48512eb1785abe07336a5208225fdf7fec327" + integrity sha512-HLCMkqMKtvl1yYLZ1Pm0UpFvd0kYjsm1meLOGZ7VkOd9G/XX+Fr1S2G5AT2zeiDw7WUVYK8lGVMNa319bnV+aw== dependencies: import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-13.1.0.tgz#04f5aaf952884364ebf4e899ec440e3985f0e580" - integrity sha512-b6F+vBqEXsHVghrhomG0Y6YJimHZqkzZ0n5QEpk03dpBXH2OnsezpTw5e+GvbyYCc7PutGbYVQkytuv+7xCxYA== +"@commitlint/rules@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-13.2.0.tgz#e272fbd4099c2fe98bca1277d7f8caa3578b8f43" + integrity sha512-O3A9S7blOzvHfzrJrUQe9JxdtGy154ol/GXHwvd8WfMJ10y5ryBB4b6+0YZ1XhItWzrEASOfOKbD++EdLV90dQ== dependencies: - "@commitlint/ensure" "^13.1.0" - "@commitlint/message" "^13.0.0" - "@commitlint/to-lines" "^13.0.0" - "@commitlint/types" "^13.1.0" + "@commitlint/ensure" "^13.2.0" + "@commitlint/message" "^13.2.0" + "@commitlint/to-lines" "^13.2.0" + "@commitlint/types" "^13.2.0" execa "^5.0.0" -"@commitlint/to-lines@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-13.0.0.tgz#5937dd287e3a4f984580ea94bdb994132169a780" - integrity sha512-mzxWwCio1M4/kG9/69TTYqrraQ66LmtJCYTzAZdZ2eJX3I5w52pSjyP/DJzAUVmmJCYf2Kw3s+RtNVShtnZ+Rw== +"@commitlint/to-lines@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-13.2.0.tgz#e65d16340f353b496e90609b452f23f4b0be0b6a" + integrity sha512-ZfWZix2y/CzewReCrj5g0nKOEfj5HW9eBMDrqjJJMPApve00CWv0tYrFCGXuGlv244lW4uvWJt6J/0HLRWsfyg== -"@commitlint/top-level@^13.0.0": - version "13.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-13.0.0.tgz#f8e1d1425240cd72c600e4da5716418c4ea0bda2" - integrity sha512-baBy3MZBF28sR93yFezd4a5TdHsbXaakeladfHK9dOcGdXo9oQe3GS5hP3BmlN680D6AiQSN7QPgEJgrNUWUCg== +"@commitlint/top-level@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-13.2.0.tgz#869814e8ac0fec6a6e1f2e9665a318e4dc979e1e" + integrity sha512-knBvWYbIq6VV6VPHrVeDsxDiJq4Zq6cv5NIYU3iesKAsmK2KlLfsZPa+Ig96Y4AqAPU3zNJwjHxYkz9qxdBbfA== dependencies: find-up "^5.0.0" -"@commitlint/types@^13.1.0": - version "13.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-13.1.0.tgz#12cfb6e932372b1816af8900e2d10694add28191" - integrity sha512-zcVjuT+OfKt8h91vhBxt05RMcTGEx6DM7Q9QZeuMbXFk6xgbsSEDMMapbJPA1bCZ81fa/1OQBijSYPrKvtt06g== +"@commitlint/types@^13.2.0": + version "13.2.0" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-13.2.0.tgz#ed8128f9e41383f8f0ee1b0370c724826821e581" + integrity sha512-RRVHEqmk1qn/dIaSQhvuca6k/6Z54G+r/KyimZ8gnAFielGiGUpsFRhIY3qhd5rXClVxDaa3nlcyTWckSccotQ== dependencies: chalk "^4.0.0" +"@endemolshinegroup/cosmiconfig-typescript-loader@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz#eea4635828dde372838b0909693ebd9aafeec22d" + integrity sha512-QRVtqJuS1mcT56oHpVegkKBlgtWjXw/gHNWO3eL9oyB5Sc7HBoc2OLG/nYpVfT/Jejvo3NUrD0Udk7XgoyDKkA== + dependencies: + lodash.get "^4" + make-error "^1" + ts-node "^9" + tslib "^2" + "@eslint/eslintrc@^0.4.3": version "0.4.3" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" @@ -480,9 +520,11 @@ tslib "~2.2.0" "@httptoolkit/httpolyglot@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@httptoolkit/httpolyglot/-/httpolyglot-1.0.0.tgz#1b06642389303b71681b4c0c2caff8be53d58a10" - integrity sha512-OoIbv7pk/xh3Sxqs2nZyi5ZjP9JFLMBXgPmG/911rPf77PJ3tsIHaf22x5zVYcHeu0P7x6jC7QwLYcbJdUbe7w== + version "1.0.1" + resolved "https://registry.yarnpkg.com/@httptoolkit/httpolyglot/-/httpolyglot-1.0.1.tgz#2ade7c70fecc8473f8f55d95defea99bf444a81b" + integrity sha512-wka8aO36+Ldb4d0V7fpKf4gd9netRa1odekK5BQnsJa3BwkKSIqOYlR51ZfoaGjifwx2WBTRQgHgtcc1wY1eEg== + dependencies: + "@types/node" "^16.7.10" "@httptoolkit/subscriptions-transport-ws@^0.9.19": version "0.9.19" @@ -510,108 +552,108 @@ integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== "@istanbuljs/load-nyc-config@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz#10602de5570baea82f8afbfa2630b24e7a8cfe5b" - integrity sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg== + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" find-up "^4.1.0" + get-package-type "^0.1.0" js-yaml "^3.13.1" resolve-from "^5.0.0" "@istanbuljs/schema@^0.1.2": - version "0.1.2" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" - integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.0.6.tgz#3eb72ea80897495c3d73dd97aab7f26770e2260f" - integrity sha512-fMlIBocSHPZ3JxgWiDNW/KPj6s+YRd0hicb33IrmelCcjXo/pXPwvuiKFmZz+XuqI/1u7nbUK10zSsWL/1aegg== +"@jest/console@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.2.4.tgz#2f1a4bf82b9940065d4818fac271def99ec55e5e" + integrity sha512-94znCKynPZpDpYHQ6esRJSc11AmONrVkBOBZiD7S+bSubHhrUfbS95EY5HIOxhm4PQO7cnvZkL3oJcY0oMA+Wg== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.0.6" - jest-util "^27.0.6" + jest-message-util "^27.2.4" + jest-util "^27.2.4" slash "^3.0.0" -"@jest/core@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.0.6.tgz#c5f642727a0b3bf0f37c4b46c675372d0978d4a1" - integrity sha512-SsYBm3yhqOn5ZLJCtccaBcvD/ccTLCeuDv8U41WJH/V1MW5eKUkeMHT9U+Pw/v1m1AIWlnIW/eM2XzQr0rEmow== +"@jest/core@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.2.4.tgz#0b932da787d64848eab720dbb88e5b7a3f86e539" + integrity sha512-UNQLyy+rXoojNm2MGlapgzWhZD1CT1zcHZQYeiD0xE7MtJfC19Q6J5D/Lm2l7i4V97T30usKDoEtjI8vKwWcLg== dependencies: - "@jest/console" "^27.0.6" - "@jest/reporters" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/console" "^27.2.4" + "@jest/reporters" "^27.2.4" + "@jest/test-result" "^27.2.4" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^27.0.6" - jest-config "^27.0.6" - jest-haste-map "^27.0.6" - jest-message-util "^27.0.6" + jest-changed-files "^27.2.4" + jest-config "^27.2.4" + jest-haste-map "^27.2.4" + jest-message-util "^27.2.4" jest-regex-util "^27.0.6" - jest-resolve "^27.0.6" - jest-resolve-dependencies "^27.0.6" - jest-runner "^27.0.6" - jest-runtime "^27.0.6" - jest-snapshot "^27.0.6" - jest-util "^27.0.6" - jest-validate "^27.0.6" - jest-watcher "^27.0.6" + jest-resolve "^27.2.4" + jest-resolve-dependencies "^27.2.4" + jest-runner "^27.2.4" + jest-runtime "^27.2.4" + jest-snapshot "^27.2.4" + jest-util "^27.2.4" + jest-validate "^27.2.4" + jest-watcher "^27.2.4" micromatch "^4.0.4" - p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.0.6.tgz#ee293fe996db01d7d663b8108fa0e1ff436219d2" - integrity sha512-4XywtdhwZwCpPJ/qfAkqExRsERW+UaoSRStSHCCiQTUpoYdLukj+YJbQSFrZjhlUDRZeNiU9SFH0u7iNimdiIg== +"@jest/environment@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.2.4.tgz#db3e60f7dd30ab950f6ce2d6d7293ed9a6b7cbcd" + integrity sha512-wkuui5yr3SSQW0XD0Qm3TATUbL/WE3LDEM3ulC+RCQhMf2yxhci8x7svGkZ4ivJ6Pc94oOzpZ6cdHBAMSYd1ew== dependencies: - "@jest/fake-timers" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/fake-timers" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" - jest-mock "^27.0.6" + jest-mock "^27.2.4" -"@jest/fake-timers@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.0.6.tgz#cbad52f3fe6abe30e7acb8cd5fa3466b9588e3df" - integrity sha512-sqd+xTWtZ94l3yWDKnRTdvTeZ+A/V7SSKrxsrOKSqdyddb9CeNRF8fbhAU0D7ZJBpTTW2nbp6MftmKJDZfW2LQ== +"@jest/fake-timers@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.2.4.tgz#00df08bd60332bd59503cb5b6db21e4903785f86" + integrity sha512-cs/TzvwWUM7kAA6Qm/890SK6JJ2pD5RfDNM3SSEom6BmdyV6OiWP1qf/pqo6ts6xwpcM36oN0wSEzcZWc6/B6w== dependencies: - "@jest/types" "^27.0.6" - "@sinonjs/fake-timers" "^7.0.2" + "@jest/types" "^27.2.4" + "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.0.6" - jest-mock "^27.0.6" - jest-util "^27.0.6" + jest-message-util "^27.2.4" + jest-mock "^27.2.4" + jest-util "^27.2.4" -"@jest/globals@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.0.6.tgz#48e3903f99a4650673d8657334d13c9caf0e8f82" - integrity sha512-DdTGCP606rh9bjkdQ7VvChV18iS7q0IMJVP1piwTWyWskol4iqcVwthZmoJEf7obE1nc34OpIyoVGPeqLC+ryw== +"@jest/globals@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.2.4.tgz#0aeb22b011f8c8c4b8ff3b4dbd1ee0392fe0dd8a" + integrity sha512-DRsRs5dh0i+fA9mGHylTU19+8fhzNJoEzrgsu+zgJoZth3x8/0juCQ8nVVdW1er4Cqifb/ET7/hACYVPD0dBEA== dependencies: - "@jest/environment" "^27.0.6" - "@jest/types" "^27.0.6" - expect "^27.0.6" + "@jest/environment" "^27.2.4" + "@jest/types" "^27.2.4" + expect "^27.2.4" -"@jest/reporters@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.0.6.tgz#91e7f2d98c002ad5df94d5b5167c1eb0b9fd5b00" - integrity sha512-TIkBt09Cb2gptji3yJXb3EE+eVltW6BjO7frO7NEfjI9vSIYoISi5R3aI3KpEDXlB1xwB+97NXIqz84qYeYsfA== +"@jest/reporters@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.2.4.tgz#1482ff007f2e919d85c54b1563abb8b2ea2d5198" + integrity sha512-LHeSdDnDZkDnJ8kvnjcqV8P1Yv/32yL4d4XfR5gBiy3xGO0onwll1QEbvtW96fIwhx2nejug0GTaEdNDoyr3fQ== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/console" "^27.2.4" + "@jest/test-result" "^27.2.4" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -622,15 +664,15 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^27.0.6" - jest-resolve "^27.0.6" - jest-util "^27.0.6" - jest-worker "^27.0.6" + jest-haste-map "^27.2.4" + jest-resolve "^27.2.4" + jest-util "^27.2.4" + jest-worker "^27.2.4" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" - v8-to-istanbul "^8.0.0" + v8-to-istanbul "^8.1.0" "@jest/source-map@^27.0.6": version "27.0.6" @@ -641,41 +683,41 @@ graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.0.6.tgz#3fa42015a14e4fdede6acd042ce98c7f36627051" - integrity sha512-ja/pBOMTufjX4JLEauLxE3LQBPaI2YjGFtXexRAjt1I/MbfNlMx0sytSX3tn5hSLzQsR3Qy2rd0hc1BWojtj9w== +"@jest/test-result@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.2.4.tgz#d1ca8298d168f1b0be834bfb543b1ac0294c05d7" + integrity sha512-eU+PRo0+lIS01b0dTmMdVZ0TtcRSxEaYquZTRFMQz6CvsehGhx9bRzi9Zdw6VROviJyv7rstU+qAMX5pNBmnfQ== dependencies: - "@jest/console" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/console" "^27.2.4" + "@jest/types" "^27.2.4" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.0.6.tgz#80a913ed7a1130545b1cd777ff2735dd3af5d34b" - integrity sha512-bISzNIApazYOlTHDum9PwW22NOyDa6VI31n6JucpjTVM0jD6JDgqEZ9+yn575nDdPF0+4csYDxNNW13NvFQGZA== +"@jest/test-sequencer@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.2.4.tgz#df66422a3e9e7440ce8b7498e255fa6b52c0bc03" + integrity sha512-fpk5eknU3/DXE2QCCG1wv/a468+cfPo3Asu6d6yUtM9LOPh709ubZqrhuUOYfM8hXMrIpIdrv1CdCrWWabX0rQ== dependencies: - "@jest/test-result" "^27.0.6" + "@jest/test-result" "^27.2.4" graceful-fs "^4.2.4" - jest-haste-map "^27.0.6" - jest-runtime "^27.0.6" + jest-haste-map "^27.2.4" + jest-runtime "^27.2.4" -"@jest/transform@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.0.6.tgz#189ad7107413208f7600f4719f81dd2f7278cc95" - integrity sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA== +"@jest/transform@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.2.4.tgz#2fe5b6836895f7a1b8bdec442c51e83943c62733" + integrity sha512-n5FlX2TH0oQGwyVDKPxdJ5nI2sO7TJBFe3u3KaAtt7TOiV4yL+Y+rSFDl+Ic5MpbiA/eqXmLAQxjnBmWgS2rEA== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.0.6" + jest-haste-map "^27.2.4" jest-regex-util "^27.0.6" - jest-util "^27.0.6" + jest-util "^27.2.4" micromatch "^4.0.4" pirates "^4.0.1" slash "^3.0.0" @@ -704,6 +746,17 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^27.2.4": + version "27.2.4" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.4.tgz#2430042a66e00dc5b140c3636f4474d464c21ee8" + integrity sha512-IDO2ezTxeMvQAHxzG/ZvEyA47q0aVfzT95rGFl7bZs/Go0aIucvfDbS2rmnoEdXxlLQhcolmoG/wvL/uKx4tKA== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + "@nodelib/fs.scandir@2.1.4": version "2.1.4" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69" @@ -726,16 +779,16 @@ fastq "^1.6.0" "@sinonjs/commons@^1.7.0": - version "1.7.1" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.7.1.tgz#da5fd19a5f71177a53778073978873964f49acf1" - integrity sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ== + version "1.8.3" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" + integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== dependencies: type-detect "4.0.8" -"@sinonjs/fake-timers@^7.0.2": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-7.1.0.tgz#8f13af27d842cbf51ad4502e05562fe9391d084e" - integrity sha512-hAEzXi6Wbvlb67NnGMGSNOeAflLVnMa4yliPU/ty1qjgW/vAletH15/v/esJwASSIA0YlIyjnloenFbEZc9q9A== +"@sinonjs/fake-timers@^8.0.1": + version "8.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.0.1.tgz#1c1c9a91419f804e59ae8df316a07dd1c3a76b94" + integrity sha512-AU7kwFxreVd6OAXcAFlKSmZquiRUU0FvYm44k1Y1QbK7Co4m0aqfGMhjykIeQp/H6rcl+nFmj0zfdUcGVs9Dew== dependencies: "@sinonjs/commons" "^1.7.0" @@ -745,9 +798,9 @@ integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.14" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.14.tgz#faaeefc4185ec71c389f4501ee5ec84b170cc402" - integrity sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g== + version "7.1.16" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.16.tgz#bc12c74b7d65e82d29876b5d0baf5c625ac58702" + integrity sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -756,24 +809,24 @@ "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.1" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" - integrity sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew== + version "7.6.3" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.3.tgz#f456b4b2ce79137f768aa130d2423d2f0ccfaba5" + integrity sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": - version "7.0.2" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" - integrity sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg== + version "7.4.1" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" "@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.0.15" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.15.tgz#db9e4238931eb69ef8aab0ad6523d4d4caa39d03" - integrity sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A== + version "7.14.2" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" + integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== dependencies: "@babel/types" "^7.3.0" @@ -808,13 +861,11 @@ integrity sha512-aRnpPa7ysx3aNW60hTiCtLHlQaIFsXFCgQlpakNgDNVFzbtusSY8PwjAQgRWfSk0ekNoBjO51eQRB6upA9uuyw== "@types/cors@^2.8.6": - version "2.8.7" - resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.7.tgz#ab2f47f1cba93bce27dfd3639b006cc0e5600889" - integrity sha512-sOdDRU3oRS7LBNTIqwDkPJyq0lpHYcbMTt0TrjzsXbk/e37hcLTH6eZX7CdbDeN0yJJvzw9hFBZkbtCSbk/jAQ== - dependencies: - "@types/express" "*" + version "2.8.12" + resolved "https://registry.yarnpkg.com/@types/cors/-/cors-2.8.12.tgz#6b2c510a7ad7039e98e7b8d3d6598f4359e5c080" + integrity sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw== -"@types/express-serve-static-core@^4.17.18", "@types/express-serve-static-core@^4.17.24": +"@types/express-serve-static-core@^4.17.18": version "4.17.24" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz#ea41f93bf7e0d59cd5a76665068ed6aab6815c07" integrity sha512-3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA== @@ -823,7 +874,7 @@ "@types/qs" "*" "@types/range-parser" "*" -"@types/express@*", "@types/express@^4.17.13": +"@types/express@^4.17.13": version "4.17.13" resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== @@ -834,9 +885,9 @@ "@types/serve-static" "*" "@types/graceful-fs@^4.1.2": - version "4.1.3" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.3.tgz#039af35fe26bec35003e8d86d2ee9c586354348f" - integrity sha512-AiHRaEB50LQg0pZmm659vNBb9f4SJ0qrAnteuzhSeAUcJKxoYgEnprg/83kppCnc2zvtCKbdZry1a5pVY3lOTQ== + version "4.1.5" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== dependencies: "@types/node" "*" @@ -852,11 +903,16 @@ resolved "https://registry.yarnpkg.com/@types/is-glob/-/is-glob-4.0.2.tgz#c243dd0d09eac2992130142419ff2308ffd988bf" integrity sha512-4j5G9Y5jljDSICQ1R2f/Rcyoj6DZmYGneny+p/cDkjep0rkqNg0W73Ty0bVjMUTZgLXHf8oiMjg1XC3CDwCz+g== -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== +"@types/istanbul-lib-coverage@^2.0.1": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + "@types/istanbul-lib-report@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" @@ -896,15 +952,25 @@ resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.2.tgz#93e25bf9ee75fe0fd80b594bc4feb0e862111b5a" integrity sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw== +"@types/minimist@^1.2.0": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== + "@types/node@*": version "15.6.2" resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== -"@types/node@^16.6.1": - version "16.6.1" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.6.1.tgz#aee62c7b966f55fc66c7b6dfa1d58db2a616da61" - integrity sha512-Sr7BhXEAer9xyGuCN3Ek9eg9xPviCF2gfu9kTfuU2HkTVAMYSDeX40fvpmo72n5nansg3nsBjuQBrsS28r+NUw== +"@types/node@^16.10.2", "@types/node@^16.7.10": + version "16.10.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.10.2.tgz#5764ca9aa94470adb4e1185fe2e9f19458992b2e" + integrity sha512-zCclL4/rx+W5SQTzFs9wyvvyCwoK9QtBpratqz2IYJ3O8Umrn0m3nsTv0wQBk9sRGpvUe9CwPDrQFB10f1FIjQ== + +"@types/normalize-package-data@^2.4.0": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== "@types/parse-json@^4.0.0": version "4.0.0" @@ -912,9 +978,9 @@ integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prettier@^2.1.5": - version "2.2.3" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.2.3.tgz#ef65165aea2924c9359205bf748865b8881753c0" - integrity sha512-PijRCG/K3s3w1We6ynUKdxEc5AcuuH3NBmMDP8uvKVp6X43UY7NQlTzczakXP3DJR0F4dfNQIGjU2cUeRYs2AA== + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.1.tgz#e1303048d5389563e130f5bdd89d37a99acb75eb" + integrity sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw== "@types/qs@*": version "6.9.4" @@ -926,7 +992,7 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c" integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA== -"@types/serve-static@*", "@types/serve-static@^1.13.10": +"@types/serve-static@*": version "1.13.10" resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9" integrity sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ== @@ -935,9 +1001,9 @@ "@types/node" "*" "@types/stack-utils@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.0.tgz#7036640b4e21cc2f259ae826ce843d277dad8cff" - integrity sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== "@types/superagent@*": version "4.1.7" @@ -954,10 +1020,10 @@ dependencies: "@types/superagent" "*" -"@types/ws@^7.4.7": - version "7.4.7" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-7.4.7.tgz#f7c390a36f7a0679aa69de2d501319f4f8d9b702" - integrity sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww== +"@types/ws@^8.2.0": + version "8.2.0" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.2.0.tgz#75faefbe2328f3b833cb8dc640658328990d04f3" + integrity sha512-cyeefcUCgJlEk+hk2h3N+MqKKsPViQgF5boi9TTHSK+PoR9KWBb/C5ccPcDyAqgsbAYHTwulch725DV84+pSpg== dependencies: "@types/node" "*" @@ -973,73 +1039,74 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.29.1.tgz#808d206e2278e809292b5de752a91105da85860b" - integrity sha512-AHqIU+SqZZgBEiWOrtN94ldR3ZUABV5dUG94j8Nms9rQnHFc8fvDOue/58K4CFz6r8OtDDc35Pw9NQPWo0Ayrw== +"@typescript-eslint/eslint-plugin@^4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.32.0.tgz#46d2370ae9311092f2a6f7246d28357daf2d4e89" + integrity sha512-+OWTuWRSbWI1KDK8iEyG/6uK2rTm3kpS38wuVifGUTDB6kjEuNrzBI1MUtxnkneuWG/23QehABe2zHHrj+4yuA== dependencies: - "@typescript-eslint/experimental-utils" "4.29.1" - "@typescript-eslint/scope-manager" "4.29.1" + "@typescript-eslint/experimental-utils" "4.32.0" + "@typescript-eslint/scope-manager" "4.32.0" debug "^4.3.1" functional-red-black-tree "^1.0.1" + ignore "^5.1.8" regexpp "^3.1.0" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.29.1.tgz#0af2b17b0296b60c6b207f11062119fa9c5a8994" - integrity sha512-kl6QG6qpzZthfd2bzPNSJB2YcZpNOrP6r9jueXupcZHnL74WiuSjaft7WSu17J9+ae9zTlk0KJMXPUj0daBxMw== +"@typescript-eslint/experimental-utils@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.32.0.tgz#53a8267d16ca5a79134739129871966c56a59dc4" + integrity sha512-WLoXcc+cQufxRYjTWr4kFt0DyEv6hDgSaFqYhIzQZ05cF+kXfqXdUh+//kgquPJVUBbL3oQGKQxwPbLxHRqm6A== dependencies: "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.29.1" - "@typescript-eslint/types" "4.29.1" - "@typescript-eslint/typescript-estree" "4.29.1" + "@typescript-eslint/scope-manager" "4.32.0" + "@typescript-eslint/types" "4.32.0" + "@typescript-eslint/typescript-estree" "4.32.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.29.1.tgz#17dfbb45c9032ffa0fe15881d20fbc2a4bdeb02d" - integrity sha512-3fL5iN20hzX3Q4OkG7QEPFjZV2qsVGiDhEwwh+EkmE/w7oteiOvUNzmpu5eSwGJX/anCryONltJ3WDmAzAoCMg== +"@typescript-eslint/parser@^4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.32.0.tgz#751ecca0e2fecd3d44484a9b3049ffc1871616e5" + integrity sha512-lhtYqQ2iEPV5JqV7K+uOVlPePjClj4dOw7K4/Z1F2yvjIUvyr13yJnDzkK6uon4BjHYuHy3EG0c2Z9jEhFk56w== dependencies: - "@typescript-eslint/scope-manager" "4.29.1" - "@typescript-eslint/types" "4.29.1" - "@typescript-eslint/typescript-estree" "4.29.1" + "@typescript-eslint/scope-manager" "4.32.0" + "@typescript-eslint/types" "4.32.0" + "@typescript-eslint/typescript-estree" "4.32.0" debug "^4.3.1" -"@typescript-eslint/scope-manager@4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.29.1.tgz#f25da25bc6512812efa2ce5ebd36619d68e61358" - integrity sha512-Hzv/uZOa9zrD/W5mftZa54Jd5Fed3tL6b4HeaOpwVSabJK8CJ+2MkDasnX/XK4rqP5ZTWngK1ZDeCi6EnxPQ7A== +"@typescript-eslint/scope-manager@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.32.0.tgz#e03c8668f8b954072b3f944d5b799c0c9225a7d5" + integrity sha512-DK+fMSHdM216C0OM/KR1lHXjP1CNtVIhJ54kQxfOE6x8UGFAjha8cXgDMBEIYS2XCYjjCtvTkjQYwL3uvGOo0w== dependencies: - "@typescript-eslint/types" "4.29.1" - "@typescript-eslint/visitor-keys" "4.29.1" + "@typescript-eslint/types" "4.32.0" + "@typescript-eslint/visitor-keys" "4.32.0" -"@typescript-eslint/types@4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.29.1.tgz#94cce6cf7cc83451df03339cda99d326be2feaf5" - integrity sha512-Jj2yu78IRfw4nlaLtKjVaGaxh/6FhofmQ/j8v3NXmAiKafbIqtAPnKYrf0sbGjKdj0hS316J8WhnGnErbJ4RCA== +"@typescript-eslint/types@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.32.0.tgz#52c633c18da47aee09449144bf59565ab36df00d" + integrity sha512-LE7Z7BAv0E2UvqzogssGf1x7GPpUalgG07nGCBYb1oK4mFsOiFC/VrSMKbZQzFJdN2JL5XYmsx7C7FX9p9ns0w== -"@typescript-eslint/typescript-estree@4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.29.1.tgz#7b32a25ff8e51f2671ccc6b26cdbee3b1e6c5e7f" - integrity sha512-lIkkrR9E4lwZkzPiRDNq0xdC3f2iVCUjw/7WPJ4S2Sl6C3nRWkeE1YXCQ0+KsiaQRbpY16jNaokdWnm9aUIsfw== +"@typescript-eslint/typescript-estree@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.32.0.tgz#db00ccc41ccedc8d7367ea3f50c6994b8efa9f3b" + integrity sha512-tRYCgJ3g1UjMw1cGG8Yn1KzOzNlQ6u1h9AmEtPhb5V5a1TmiHWcRyF/Ic+91M4f43QeChyYlVTcf3DvDTZR9vw== dependencies: - "@typescript-eslint/types" "4.29.1" - "@typescript-eslint/visitor-keys" "4.29.1" + "@typescript-eslint/types" "4.32.0" + "@typescript-eslint/visitor-keys" "4.32.0" debug "^4.3.1" globby "^11.0.3" is-glob "^4.0.1" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.29.1": - version "4.29.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.29.1.tgz#0615be8b55721f5e854f3ee99f1a714f2d093e5d" - integrity sha512-zLqtjMoXvgdZY/PG6gqA73V8BjqPs4af1v2kiiETBObp+uC6gRYnJLmJHxC0QyUrrHDLJPIWNYxoBV3wbcRlag== +"@typescript-eslint/visitor-keys@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.32.0.tgz#455ba8b51242f2722a497ffae29313f33b14cb7f" + integrity sha512-e7NE0qz8W+atzv3Cy9qaQ7BTLwWsm084Z0c4nIO2l3Bp6u9WIgdqCgyPyV5oSPDMIW3b20H59OOCmVk3jw3Ptw== dependencies: - "@typescript-eslint/types" "4.29.1" + "@typescript-eslint/types" "4.32.0" eslint-visitor-keys "^2.0.0" JSONStream@^1.0.4: @@ -1077,19 +1144,24 @@ acorn-jsx@^5.3.1: integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== acorn-walk@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.1.1.tgz#345f0dffad5c735e7373d2fec9a1023e6a44b83e" - integrity sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ== + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn@^7.1.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^7.1.1, acorn@^7.4.0: +acorn@^7.4.0: version "7.4.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== acorn@^8.2.4: - version "8.2.4" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.2.4.tgz#caba24b08185c3b56e3168e97d15ed17f4d31fd0" - integrity sha512-Ibt84YwBDDA890eDiDCEqcbwvHlBvzzDkU2cGBBDDI1QWT12jTiXIOn2CIw5KK4i6N5Z2HUxwYjzriDyqaqqZg== + version "8.5.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" + integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== after@0.8.2: version "0.8.2" @@ -1136,7 +1208,14 @@ ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-escapes@^4.3.0: version "4.3.1" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== @@ -1153,6 +1232,11 @@ ansi-regex@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" @@ -1178,7 +1262,7 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== -anymatch@^3.0.3, anymatch@~3.1.1: +anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== @@ -1186,6 +1270,11 @@ anymatch@^3.0.3, anymatch@~3.1.1: normalize-path "^3.0.0" picomatch "^2.0.4" +arg@^4.1.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089" + integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== + argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -1193,11 +1282,6 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" -array-find-index@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" - integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -1262,23 +1346,23 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -axios@0.21.1: - version "0.21.1" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.1.tgz#22563481962f4d6bde9a76d516ef0e5d3c09b2b8" - integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== dependencies: - follow-redirects "^1.10.0" + follow-redirects "^1.14.0" -babel-jest@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.0.6.tgz#e99c6e0577da2655118e3608b68761a5a69bd0d8" - integrity sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA== +babel-jest@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.2.4.tgz#21ed6729d51bdd75470bbbf3c8b08d86209fb0dc" + integrity sha512-f24OmxyWymk5jfgLdlCMu4fTs4ldxFBIdn5sJdhvGC1m08rSkJ5hYbWkNmfBSvE/DjhCVNSHXepxsI6THGfGsg== dependencies: - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^27.0.6" + babel-preset-jest "^27.2.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1294,10 +1378,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^4.0.0" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz#f7c6b3d764af21cb4a2a1ab6870117dbde15b456" - integrity sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw== +babel-plugin-jest-hoist@^27.2.0: + version "27.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.2.0.tgz#79f37d43f7e5c4fdc4b2ca3e10cc6cf545626277" + integrity sha512-TOux9khNKdi64mW+0OIhcmbAn75tTlzKhxmiNXevQaPbrBYK7YKjP1jl6NHTJ6XR5UgUrJbCnWlKVnJn29dfjw== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -1322,12 +1406,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz#909ef08e9f24a4679768be2f60a3df0856843f9d" - integrity sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw== +babel-preset-jest@^27.2.0: + version "27.2.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.2.0.tgz#556bbbf340608fed5670ab0ea0c8ef2449fba885" + integrity sha512-z7MgQ3peBwN5L5aCqBKnF6iqdlvZvFUQynEhu0J+X9nHLU72jO3iY331lcYrg+AssJ8q7xsv5/3AICzVmJ/wvg== dependencies: - babel-plugin-jest-hoist "^27.0.6" + babel-plugin-jest-hoist "^27.2.0" babel-preset-current-node-syntax "^1.0.0" backo2@1.0.2, backo2@^1.0.2: @@ -1469,16 +1553,16 @@ browser-sync@^2.27.5: ua-parser-js "^0.7.28" yargs "^15.4.1" -browserslist@^4.14.5: - version "4.16.6" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" - integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== +browserslist@^4.16.6: + version "4.17.2" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.2.tgz#aa15dbd2fab399a399fe4df601bb09363c5458a6" + integrity sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ== dependencies: - caniuse-lite "^1.0.30001219" - colorette "^1.2.2" - electron-to-chromium "^1.3.723" + caniuse-lite "^1.0.30001261" + electron-to-chromium "^1.3.854" escalade "^3.1.1" - node-releases "^1.1.71" + nanocolors "^0.2.12" + node-releases "^1.1.76" bs-logger@0.x: version "0.2.6" @@ -1504,10 +1588,10 @@ bser@2.1.1: dependencies: node-int64 "^0.4.0" -buffer-from@1.x, buffer-from@^1.0.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" - integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== bytes@3.1.0: version "3.1.0" @@ -1515,9 +1599,9 @@ bytes@3.1.0: integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== cacheable-lookup@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.0.tgz#6fd7e364a0929ee50af00843aaf6e31b9b9f200e" - integrity sha512-5qeyMn8/BERrUPdIfcOLkdMrwltVbxIpgnYM61OLWOg3BuSSh9HrkUtTTRxYthQpBrocvYqD0tJ7vU0y6T7OWw== + version "6.0.1" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.1.tgz#f32ab50c3212302d9f49aa094c8a7593c162af7c" + integrity sha512-vaccXt7hUfa5UzrtbdzHTWnL6V6ir39QtLuvGZys32j4HboAeiWVhrcdAm8ecTz1rLubxPhec2n22BBb5/dgVA== callsites@^3.0.0: version "3.1.0" @@ -1532,19 +1616,14 @@ camel-case@4.1.2: pascal-case "^3.1.2" tslib "^2.0.3" -camelcase-keys@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" - integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= +camelcase-keys@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== dependencies: - camelcase "^4.1.0" - map-obj "^2.0.0" - quick-lru "^1.0.0" - -camelcase@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" - integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= + camelcase "^5.3.1" + map-obj "^4.0.0" + quick-lru "^4.0.1" camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" @@ -1556,10 +1635,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== -caniuse-lite@^1.0.30001219: - version "1.0.30001230" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz#8135c57459854b2240b57a4a6786044bdc5a9f71" - integrity sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ== +caniuse-lite@^1.0.30001261: + version "1.0.30001263" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz#7ce7a6fb482a137585cbc908aaf38e90c53a16a4" + integrity sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw== chalk@^1.1.3: version "1.1.3" @@ -1595,19 +1674,19 @@ char-regex@^1.0.2: integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== chokidar@^3.5.1: - version "3.5.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" - integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + version "3.5.2" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75" + integrity sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ== dependencies: - anymatch "~3.1.1" + anymatch "~3.1.2" braces "~3.0.2" - glob-parent "~5.1.0" + glob-parent "~5.1.2" is-binary-path "~2.1.0" is-glob "~4.0.1" normalize-path "~3.0.0" - readdirp "~3.5.0" + readdirp "~3.6.0" optionalDependencies: - fsevents "~2.3.1" + fsevents "~2.3.2" ci-info@^3.1.1: version "3.2.0" @@ -1615,9 +1694,9 @@ ci-info@^3.1.1: integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== cjs-module-lexer@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.1.tgz#2fd46d9906a126965aa541345c499aaa18e8cd73" - integrity sha512-jVamGdJPDeuQilKhvVn1h3knuMOZzr8QDnpk+M9aMlCaMkTDd6fBWPhiDqFvFZ07pL0liqabAiuy8SY4jGHeaw== + version "1.2.2" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" + integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== clean-stack@^2.0.0: version "2.2.0" @@ -1663,9 +1742,9 @@ co@^4.6.0: integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= collect-v8-coverage@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz#150ee634ac3650b71d9c985eb7f608942334feb1" - integrity sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ== + version "1.0.1" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== color-convert@^1.9.0: version "1.9.3" @@ -1691,11 +1770,6 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -colorette@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" - integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== - combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -1789,39 +1863,38 @@ content-type@^1.0.4, content-type@~1.0.4: integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== conventional-changelog-angular@^5.0.11: - version "5.0.12" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.12.tgz#c979b8b921cbfe26402eb3da5bbfda02d865a2b9" - integrity sha512-5GLsbnkR/7A89RyHLvvoExbiGbd9xKdKqDTrArnPbOqBqG/2wIosu0fHwpeIRI8Tl94MhVNBXcLJZl92ZQ5USw== + version "5.0.13" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" + integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== dependencies: compare-func "^2.0.0" q "^1.5.1" conventional-changelog-conventionalcommits@^4.3.1: - version "4.4.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.4.0.tgz#8d96687141c9bbd725a89b95c04966d364194cd4" - integrity sha512-ybvx76jTh08tpaYrYn/yd0uJNLt5yMrb1BphDe4WBredMlvPisvMghfpnJb6RmRNcqXeuhR6LfGZGewbkRm9yA== + version "4.6.1" + resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.6.1.tgz#f4c0921937050674e578dc7875f908351ccf4014" + integrity sha512-lzWJpPZhbM1R0PIzkwzGBCnAkH5RKJzJfFQZcl/D+2lsJxAwGnDKBqn/F4C1RD31GJNn8NuKWQzAZDAVXPp2Mw== dependencies: compare-func "^2.0.0" lodash "^4.17.15" q "^1.5.1" -conventional-commits-parser@^3.0.0: - version "3.0.8" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.0.8.tgz#23310a9bda6c93c874224375e72b09fb275fe710" - integrity sha512-YcBSGkZbYp7d+Cr3NWUeXbPDFUN6g3SaSIzOybi8bjHL5IJ5225OSCxJJ4LgziyEJ7AaJtE9L2/EU6H7Nt/DDQ== +conventional-commits-parser@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.2.tgz#190fb9900c6e02be0c0bca9b03d57e24982639fd" + integrity sha512-Jr9KAKgqAkwXMRHjxDwO/zOCDKod1XdAESHAGuJX38iZ7ZzVti/tvVoysO0suMsdAObp9NQ2rHSsSbnAqZ5f5g== dependencies: JSONStream "^1.0.4" is-text-path "^1.0.1" lodash "^4.17.15" - meow "^5.0.0" - split2 "^2.0.0" - through2 "^3.0.0" - trim-off-newlines "^1.0.0" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + version "1.8.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== dependencies: safe-buffer "~5.1.1" @@ -1846,9 +1919,9 @@ cookiejar@^2.1.2: integrity sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA== core-util-is@~1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== cors-gate@^1.1.3: version "1.1.3" @@ -1874,6 +1947,11 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" +create-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== + cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -1900,19 +1978,10 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -currently-unhandled@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" - integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= - dependencies: - array-find-index "^1.0.1" - -dargs@^4.0.1: - version "4.1.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" - integrity sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc= - dependencies: - number-is-nan "^1.0.0" +dargs@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" + integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== data-uri-to-buffer@3: version "3.0.1" @@ -1935,17 +2004,24 @@ debug@2.6.9, debug@^2.2.0: dependencies: ms "2.0.0" -debug@4, debug@4.3.1, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: +debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" +debug@4.3.2, debug@^4.1.0: + version "4.3.2" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + debug@^3.1.1: - version "3.2.6" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" - integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ== + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" @@ -1963,7 +2039,7 @@ debug@~4.1.0: dependencies: ms "^2.1.1" -decamelize-keys@^1.0.0: +decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= @@ -1977,9 +2053,9 @@ decamelize@^1.1.0, decamelize@^1.2.0: integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= decimal.js@^10.2.1: - version "10.2.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.2.1.tgz#238ae7b0f0c793d3e3cea410108b35a2c01426a3" - integrity sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw== + version "10.3.1" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" + integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== dedent@^0.7.0: version "0.7.0" @@ -2001,14 +2077,15 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== -degenerator@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-2.2.0.tgz#49e98c11fa0293c5b26edfbb52f15729afcdb254" - integrity sha512-aiQcQowF01RxFI4ZLFMpzyotbQonhNpBao6dkI8JPk5a+hmSjR5ErHp2CQySmQe8os3VBqLCIh87nDBgZXvsmg== +degenerator@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-3.0.1.tgz#7ef78ec0c8577a544477308ddf1d2d6e88d51f5b" + integrity sha512-LFsIFEeLPlKvAKXu7j3ssIG6RT0TbI7/GhsqrI0DnHASEQjXQ0LUSYcjJteGgRGmZbl1TnMSxpNQIAiJ7Du5TQ== dependencies: ast-types "^0.13.2" escodegen "^1.8.1" esprima "^4.0.0" + vm2 "^3.9.3" delayed-stream@~1.0.0: version "1.0.0" @@ -2040,6 +2117,11 @@ diff-sequences@^27.0.6: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.6.tgz#3305cb2e55a033924054695cc66019fd7f8e5723" integrity sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ== +diff@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" + integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -2102,10 +2184,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.723: - version "1.3.739" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.739.tgz#f07756aa92cabd5a6eec6f491525a64fe62f98b9" - integrity sha512-+LPJVRsN7hGZ9EIUUiWCpO7l4E3qBYHNadazlucBfsXBbccDFNKUBAgzE68FnkWGJPwD/AfKhSzL+G+Iqb8A4A== +electron-to-chromium@^1.3.854: + version "1.3.856" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.856.tgz#75dee0eef9702bffabbf4c1293c989cd3cacb7ba" + integrity sha512-lSezYIe1/p5qkEswAfaQUseOBiwGwuCvRl/MKzOEVe++DcmQ92+43dznDl4rFJ4Zpu+kevhwyIf7KjJevyDA/A== emittery@^0.8.1: version "0.8.1" @@ -2237,10 +2319,10 @@ eslint-config-prettier@^8.3.0: resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== -eslint-plugin-prettier@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.0.tgz#cdbad3bf1dbd2b177e9825737fe63b476a08f0c7" - integrity sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw== +eslint-plugin-prettier@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz#8b99d1e4b8b24a762472b4567992023619cb98e0" + integrity sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ== dependencies: prettier-linter-helpers "^1.0.0" @@ -2400,16 +2482,16 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.0.6.tgz#a4d74fbe27222c718fff68ef49d78e26a8fd4c05" - integrity sha512-psNLt8j2kwg42jGBDSfAlU49CEZxejN1f1PlANWDZqIhBOVU/c2Pm888FcjWJzFewhIsNWfZJeLjUjtKGiPuSw== +expect@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.2.4.tgz#4debf546050bcdad8914a8c95fec7662e02bf67c" + integrity sha512-gOtuonQ8TCnbNNCSw2fhVzRf8EFYDII4nB5NmG4IEV0rbUnW1I5zXvoTntU4iicB/Uh0oZr20NGlOLdJiwsOZA== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" ansi-styles "^5.0.0" jest-get-type "^27.0.6" - jest-matcher-utils "^27.0.6" - jest-message-util "^27.0.6" + jest-matcher-utils "^27.2.4" + jest-message-util "^27.2.4" jest-regex-util "^27.0.6" express-graphql@^0.11.0: @@ -2568,13 +2650,6 @@ finalhandler@1.1.2, finalhandler@~1.1.2: statuses "~1.5.0" unpipe "~1.0.0" -find-up@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" - integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= - dependencies: - locate-path "^2.0.0" - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -2604,11 +2679,16 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== -follow-redirects@^1.0.0, follow-redirects@^1.10.0: +follow-redirects@^1.0.0: version "1.14.0" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.0.tgz#f5d260f95c5f8c105894491feee5dc8993b402fe" integrity sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg== +follow-redirects@^1.14.0: + version "1.14.4" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.4.tgz#838fdf48a8bbdd79e52ee51fb1c94e3ed98b9379" + integrity sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g== + form-data@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" @@ -2665,7 +2745,7 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -fsevents@^2.3.2, fsevents@~2.3.1: +fsevents@^2.3.2, fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -2703,6 +2783,11 @@ get-own-enumerable-property-symbols@^3.0.0: resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + get-port@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" @@ -2726,24 +2811,36 @@ get-uri@3: ftp "^0.3.10" git-raw-commits@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.3.tgz#f040e67b8445962d4d168903a9e84c4240c17655" - integrity sha512-SoSsFL5lnixVzctGEi2uykjA7B5I0AhO9x6kdzvGRHbxsa6JSEgrgy1esRKsfOKE1cgyOJ/KDR2Trxu157sb8w== + version "2.0.10" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" + integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== dependencies: - dargs "^4.0.1" - lodash.template "^4.0.2" - meow "^5.0.0" - split2 "^2.0.0" - through2 "^3.0.0" + dargs "^7.0.0" + lodash "^4.17.15" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" -glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.0: +glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" -glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.4: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.1.3: version "7.1.6" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== @@ -2793,22 +2890,32 @@ globby@^11.0.3: merge2 "^1.3.0" slash "^3.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: +graceful-fs@^4.1.2: + version "4.2.8" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== graphql-subscriptions@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.1.0.tgz#5f2fa4233eda44cf7570526adfcf3c16937aef11" - integrity sha512-6WzlBFC0lWmXJbIVE8OgFgXIP4RJi3OQgTPa0DVMsDXdpRDjTsM1K9wfl5HSYX7R87QAGlvcv2Y4BIZa/ItonA== + version "1.2.1" + resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.2.1.tgz#2142b2d729661ddf967b7388f7cf1dd4cf2e061d" + integrity sha512-95yD/tKi24q8xYa7Q9rhQN16AYj5wPbrb8tmHGM3WRc9EBmWrG/0kkMl+tQG8wcEuE9ibR4zyOM31p5Sdr2v4g== dependencies: - iterall "^1.2.1" + iterall "^1.3.0" "graphql@^14.0.2 || ^15.5": - version "15.5.1" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.1.tgz#f2f84415d8985e7b84731e7f3536f8bb9d383aad" - integrity sha512-FeTRX67T3LoE3LWAxxOlW2K3Bz+rMYAC18rRguK4wgXaTZMiJwSUwDmPFo3UadAKbzirKIg5Qy+sNJXbpPRnQw== + version "15.6.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.6.0.tgz#e69323c6a9780a1a4b9ddf7e35ca8904bb04df02" + integrity sha512-WJR872Zlc9hckiEPhXgyUftXH48jp2EjO5tgBBOyNMRJZ9fviL2mJBD6CAysk6N5S0r9BTs09Qk39nnJBkvOXQ== + +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== has-ansi@^2.0.0: version "2.0.0" @@ -2847,9 +2954,16 @@ has@^1.0.3: function-bind "^1.1.1" hosted-git-info@^2.1.4: - version "2.8.8" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" - integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +hosted-git-info@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" + integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== + dependencies: + lru-cache "^6.0.0" html-encoding-sniffer@^2.0.1: version "2.0.1" @@ -2953,10 +3067,10 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -husky@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.1.tgz#579f4180b5da4520263e8713cc832942b48e1f1c" - integrity sha512-gceRaITVZ+cJH9sNHqx5tFwbzlLCVxtVZcusME8JYQ8Edy5mpGDOqD8QBCdMhpyo9a+JXddnujQ4rpY2Ff9SJA== +husky@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.2.tgz#21900da0f30199acca43a46c043c4ad84ae88dff" + integrity sha512-8yKEWNX4z2YsofXAMT7KvA1g8p+GxtB1ffV8XtpAEGuXNAbCV5wdNKH+qTpw8SM9fh4aMPDR+yQuKfgnreyZlg== iconv-lite@0.4.24: version "0.4.24" @@ -2970,7 +3084,7 @@ ignore@^4.0.6: resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== -ignore@^5.1.4: +ignore@^5.1.4, ignore@^5.1.8: version "5.1.8" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== @@ -3001,11 +3115,6 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= -indent-string@^3.0.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" - integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= - indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" @@ -3075,6 +3184,13 @@ is-core-module@^2.2.0: dependencies: has "^1.0.3" +is-core-module@^2.5.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.7.0.tgz#3c0ef7d31b4acfc574f80c58409d568a836848e3" + integrity sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ== + dependencies: + has "^1.0.3" + is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" @@ -3095,13 +3211,20 @@ is-generator-fn@^2.0.0: resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== dependencies: is-extglob "^2.1.1" +is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + is-number-like@^1.0.3: version "1.0.8" resolved "https://registry.yarnpkg.com/is-number-like/-/is-number-like-1.0.8.tgz#2e129620b50891042e44e9bbbb30593e75cfbbe3" @@ -3199,9 +3322,9 @@ isexe@^2.0.0: integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg== + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz#e8900b3ed6069759229cf30f7067388d148aeb5e" + integrity sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ== istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: version "4.0.3" @@ -3239,91 +3362,91 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -iterall@^1.2.1: +iterall@^1.2.1, iterall@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.0.6.tgz#bed6183fcdea8a285482e3b50a9a7712d49a7a8b" - integrity sha512-BuL/ZDauaq5dumYh5y20sn4IISnf1P9A0TDswTxUi84ORGtVa86ApuBHqICL0vepqAnZiY6a7xeSPWv2/yy4eA== +jest-changed-files@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.2.4.tgz#d7de46e90e5a599c47e260760f5ab53516e835e6" + integrity sha512-eeO1C1u4ex7pdTroYXezr+rbr957myyVoKGjcY4R1TJi3A+9v+4fu1Iv9J4eLq1bgFyT3O3iRWU9lZsEE7J72Q== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.0.6.tgz#dd4df17c4697db6a2c232aaad4e9cec666926668" - integrity sha512-OJlsz6BBeX9qR+7O9lXefWoc2m9ZqcZ5Ohlzz0pTEAG4xMiZUJoacY8f4YDHxgk0oKYxj277AfOk9w6hZYvi1Q== +jest-circus@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.2.4.tgz#3bd898a29dcaf6a506f3f1b780dff5f67ca83c23" + integrity sha512-TtheheTElrGjlsY9VxkzUU1qwIx05ItIusMVKnvNkMt4o/PeegLRcjq3Db2Jz0GGdBalJdbzLZBgeulZAJxJWA== dependencies: - "@jest/environment" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/environment" "^27.2.4" + "@jest/test-result" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.0.6" + expect "^27.2.4" is-generator-fn "^2.0.0" - jest-each "^27.0.6" - jest-matcher-utils "^27.0.6" - jest-message-util "^27.0.6" - jest-runtime "^27.0.6" - jest-snapshot "^27.0.6" - jest-util "^27.0.6" - pretty-format "^27.0.6" + jest-each "^27.2.4" + jest-matcher-utils "^27.2.4" + jest-message-util "^27.2.4" + jest-runtime "^27.2.4" + jest-snapshot "^27.2.4" + jest-util "^27.2.4" + pretty-format "^27.2.4" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.0.6.tgz#d021e5f4d86d6a212450d4c7b86cb219f1e6864f" - integrity sha512-qUUVlGb9fdKir3RDE+B10ULI+LQrz+MCflEH2UJyoUjoHHCbxDrMxSzjQAPUMsic4SncI62ofYCcAvW6+6rhhg== +jest-cli@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.2.4.tgz#acda7f367aa6e674723fc1a7334e0ae1799448d2" + integrity sha512-4kpQQkg74HYLaXo3nzwtg4PYxSLgL7puz1LXHj5Tu85KmlIpxQFjRkXlx4V47CYFFIDoyl3rHA/cXOxUWyMpNg== dependencies: - "@jest/core" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/core" "^27.2.4" + "@jest/test-result" "^27.2.4" + "@jest/types" "^27.2.4" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - jest-config "^27.0.6" - jest-util "^27.0.6" - jest-validate "^27.0.6" + jest-config "^27.2.4" + jest-util "^27.2.4" + jest-validate "^27.2.4" prompts "^2.0.1" - yargs "^16.0.3" + yargs "^16.2.0" -jest-config@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.0.6.tgz#119fb10f149ba63d9c50621baa4f1f179500277f" - integrity sha512-JZRR3I1Plr2YxPBhgqRspDE2S5zprbga3swYNrvY3HfQGu7p/GjyLOqwrYad97tX3U3mzT53TPHVmozacfP/3w== +jest-config@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.2.4.tgz#0204969f5ae2e5190d47be2c14c04d631b7836e2" + integrity sha512-tWy0UxhdzqiKyp4l5Vq4HxLyD+gH5td+GCF3c22/DJ0bYAOsMo+qi2XtbJI6oYMH5JOJQs9nLW/r34nvFCehjA== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.0.6" - "@jest/types" "^27.0.6" - babel-jest "^27.0.6" + "@jest/test-sequencer" "^27.2.4" + "@jest/types" "^27.2.4" + babel-jest "^27.2.4" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" is-ci "^3.0.0" - jest-circus "^27.0.6" - jest-environment-jsdom "^27.0.6" - jest-environment-node "^27.0.6" + jest-circus "^27.2.4" + jest-environment-jsdom "^27.2.4" + jest-environment-node "^27.2.4" jest-get-type "^27.0.6" - jest-jasmine2 "^27.0.6" + jest-jasmine2 "^27.2.4" jest-regex-util "^27.0.6" - jest-resolve "^27.0.6" - jest-runner "^27.0.6" - jest-util "^27.0.6" - jest-validate "^27.0.6" + jest-resolve "^27.2.4" + jest-runner "^27.2.4" + jest-util "^27.2.4" + jest-validate "^27.2.4" micromatch "^4.0.4" - pretty-format "^27.0.6" + pretty-format "^27.2.4" -jest-diff@^27.0.0, jest-diff@^27.0.6: +jest-diff@^27.0.0: version "27.0.6" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.6.tgz#4a7a19ee6f04ad70e0e3388f35829394a44c7b5e" integrity sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg== @@ -3333,6 +3456,16 @@ jest-diff@^27.0.0, jest-diff@^27.0.6: jest-get-type "^27.0.6" pretty-format "^27.0.6" +jest-diff@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.2.4.tgz#171c51d3d2c105c457100fee6e7bf7cee51c8d8c" + integrity sha512-bLAVlDSCR3gqUPGv+4nzVpEXGsHh98HjUL7Vb2hVyyuBDoQmja8eJb0imUABsuxBeUVmf47taJSAd9nDrwWKEg== + dependencies: + chalk "^4.0.0" + diff-sequences "^27.0.6" + jest-get-type "^27.0.6" + pretty-format "^27.2.4" + jest-docblock@^27.0.6: version "27.0.6" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.6.tgz#cc78266acf7fe693ca462cbbda0ea4e639e4e5f3" @@ -3340,53 +3473,53 @@ jest-docblock@^27.0.6: dependencies: detect-newline "^3.0.0" -jest-each@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.0.6.tgz#cee117071b04060158dc8d9a66dc50ad40ef453b" - integrity sha512-m6yKcV3bkSWrUIjxkE9OC0mhBZZdhovIW5ergBYirqnkLXkyEn3oUUF/QZgyecA1cF1QFyTE8bRRl8Tfg1pfLA== +jest-each@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.2.4.tgz#b4f280aafd63129ba82e345f0e74c5a10200aeef" + integrity sha512-w9XVc+0EDBUTJS4xBNJ7N2JCcWItFd006lFjz77OarAQcQ10eFDBMrfDv2GBJMKlXe9aq0HrIIF51AXcZrRJyg== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" chalk "^4.0.0" jest-get-type "^27.0.6" - jest-util "^27.0.6" - pretty-format "^27.0.6" + jest-util "^27.2.4" + pretty-format "^27.2.4" -jest-environment-jsdom@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.0.6.tgz#f66426c4c9950807d0a9f209c590ce544f73291f" - integrity sha512-FvetXg7lnXL9+78H+xUAsra3IeZRTiegA3An01cWeXBspKXUhAwMM9ycIJ4yBaR0L7HkoMPaZsozCLHh4T8fuw== +jest-environment-jsdom@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.2.4.tgz#39ae80bbb8675306bfaf0440be1e5f877554539a" + integrity sha512-X70pTXFSypD7AIzKT1mLnDi5hP9w9mdTRcOGOmoDoBrNyNEg4rYm6d4LQWFLc9ps1VnMuDOkFSG0wjSNYGjkng== dependencies: - "@jest/environment" "^27.0.6" - "@jest/fake-timers" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/environment" "^27.2.4" + "@jest/fake-timers" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" - jest-mock "^27.0.6" - jest-util "^27.0.6" + jest-mock "^27.2.4" + jest-util "^27.2.4" jsdom "^16.6.0" -jest-environment-node@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.0.6.tgz#a6699b7ceb52e8d68138b9808b0c404e505f3e07" - integrity sha512-+Vi6yLrPg/qC81jfXx3IBlVnDTI6kmRr08iVa2hFCWmJt4zha0XW7ucQltCAPhSR0FEKEoJ3i+W4E6T0s9is0w== +jest-environment-node@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.2.4.tgz#b79f98cb36e0c9111aac859c9c99f04eb2f74ff6" + integrity sha512-ZbVbFSnbzTvhLOIkqh5lcLuGCCFvtG4xTXIRPK99rV2KzQT3kNg16KZwfTnLNlIiWCE8do960eToeDfcqmpSAw== dependencies: - "@jest/environment" "^27.0.6" - "@jest/fake-timers" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/environment" "^27.2.4" + "@jest/fake-timers" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" - jest-mock "^27.0.6" - jest-util "^27.0.6" + jest-mock "^27.2.4" + jest-util "^27.2.4" jest-get-type@^27.0.6: version "27.0.6" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.6.tgz#0eb5c7f755854279ce9b68a9f1a4122f69047cfe" integrity sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg== -jest-haste-map@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.0.6.tgz#4683a4e68f6ecaa74231679dca237279562c8dc7" - integrity sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w== +jest-haste-map@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.2.4.tgz#f8974807bedf07348ca9fd24e5861ab7c8e61aba" + integrity sha512-bkJ4bT00T2K+1NZXbRcyKnbJ42I6QBvoDNMTAQQDBhaGNnZreiQKUNqax0e6hLTx7E75pKDeltVu3V1HAdu+YA== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" @@ -3394,76 +3527,76 @@ jest-haste-map@^27.0.6: graceful-fs "^4.2.4" jest-regex-util "^27.0.6" jest-serializer "^27.0.6" - jest-util "^27.0.6" - jest-worker "^27.0.6" + jest-util "^27.2.4" + jest-worker "^27.2.4" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.0.6.tgz#fd509a9ed3d92bd6edb68a779f4738b100655b37" - integrity sha512-cjpH2sBy+t6dvCeKBsHpW41mjHzXgsavaFMp+VWRf0eR4EW8xASk1acqmljFtK2DgyIECMv2yCdY41r2l1+4iA== +jest-jasmine2@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.2.4.tgz#4a1608133dbdb4d68b5929bfd785503ed9c9ba51" + integrity sha512-fcffjO/xLWLVnW2ct3No4EksxM5RyPwHDYu9QU+90cC+/eSMLkFAxS55vkqsxexOO5zSsZ3foVpMQcg/amSeIQ== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.0.6" + "@jest/environment" "^27.2.4" "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/test-result" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.0.6" + expect "^27.2.4" is-generator-fn "^2.0.0" - jest-each "^27.0.6" - jest-matcher-utils "^27.0.6" - jest-message-util "^27.0.6" - jest-runtime "^27.0.6" - jest-snapshot "^27.0.6" - jest-util "^27.0.6" - pretty-format "^27.0.6" + jest-each "^27.2.4" + jest-matcher-utils "^27.2.4" + jest-message-util "^27.2.4" + jest-runtime "^27.2.4" + jest-snapshot "^27.2.4" + jest-util "^27.2.4" + pretty-format "^27.2.4" throat "^6.0.1" -jest-leak-detector@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.0.6.tgz#545854275f85450d4ef4b8fe305ca2a26450450f" - integrity sha512-2/d6n2wlH5zEcdctX4zdbgX8oM61tb67PQt4Xh8JFAIy6LRKUnX528HulkaG6nD5qDl5vRV1NXejCe1XRCH5gQ== +jest-leak-detector@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.2.4.tgz#9bb7eab26a73bb280e9298be8d80f389288ec8f1" + integrity sha512-SrcHWbe0EHg/bw2uBjVoHacTo5xosl068x2Q0aWsjr2yYuW2XwqrSkZV4lurUop0jhv1709ymG4or+8E4sH27Q== dependencies: jest-get-type "^27.0.6" - pretty-format "^27.0.6" + pretty-format "^27.2.4" -jest-matcher-utils@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.0.6.tgz#2a8da1e86c620b39459f4352eaa255f0d43e39a9" - integrity sha512-OFgF2VCQx9vdPSYTHWJ9MzFCehs20TsyFi6bIHbk5V1u52zJOnvF0Y/65z3GLZHKRuTgVPY4Z6LVePNahaQ+tA== +jest-matcher-utils@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.2.4.tgz#008fff018151415ad1b6cfc083fd70fe1e012525" + integrity sha512-nQeLfFAIPPkyhkDfifAPfP/U5wm1x0fLtAzqXZSSKckXDNuk2aaOfQiDYv1Mgf5GY6yOsxfUnvNm3dDjXM+BXw== dependencies: chalk "^4.0.0" - jest-diff "^27.0.6" + jest-diff "^27.2.4" jest-get-type "^27.0.6" - pretty-format "^27.0.6" + pretty-format "^27.2.4" -jest-message-util@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.0.6.tgz#158bcdf4785706492d164a39abca6a14da5ab8b5" - integrity sha512-rBxIs2XK7rGy+zGxgi+UJKP6WqQ+KrBbD1YMj517HYN3v2BG66t3Xan3FWqYHKZwjdB700KiAJ+iES9a0M+ixw== +jest-message-util@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.2.4.tgz#667e8c0f2b973156d1bac7398a7f677705cafaca" + integrity sha512-wbKT/BNGnBVB9nzi+IoaLkXt6fbSvqUxx+IYY66YFh96J3goY33BAaNG3uPqaw/Sh/FR9YpXGVDfd5DJdbh4nA== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.4" micromatch "^4.0.4" - pretty-format "^27.0.6" + pretty-format "^27.2.4" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.0.6.tgz#0efdd40851398307ba16778728f6d34d583e3467" - integrity sha512-lzBETUoK8cSxts2NYXSBWT+EJNzmUVtVVwS1sU9GwE1DLCfGsngg+ZVSIe0yd0ZSm+y791esiuo+WSwpXJQ5Bw== +jest-mock@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.2.4.tgz#c8f0ef33f73d8ff53e3f60b16d59f1128f4072ae" + integrity sha512-iVRU905rutaAoUcrt5Tm1JoHHWi24YabqEGXjPJI4tAyA6wZ7mzDi3GrZ+M7ebgWBqUkZE93GAx1STk7yCMIQA== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3476,89 +3609,91 @@ jest-regex-util@^27.0.6: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5" integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== -jest-resolve-dependencies@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.0.6.tgz#3e619e0ef391c3ecfcf6ef4056207a3d2be3269f" - integrity sha512-mg9x9DS3BPAREWKCAoyg3QucCr0n6S8HEEsqRCKSPjPcu9HzRILzhdzY3imsLoZWeosEbJZz6TKasveczzpJZA== +jest-resolve-dependencies@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.2.4.tgz#20c41cc02b66aa45169b282356ec73b133013089" + integrity sha512-i5s7Uh9B3Q6uwxLpMhNKlgBf6pcemvWaORxsW1zNF/YCY3jd5EftvnGBI+fxVwJ1CBxkVfxqCvm1lpZkbaoGmg== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" jest-regex-util "^27.0.6" - jest-snapshot "^27.0.6" + jest-snapshot "^27.2.4" -jest-resolve@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.0.6.tgz#e90f436dd4f8fbf53f58a91c42344864f8e55bff" - integrity sha512-yKmIgw2LgTh7uAJtzv8UFHGF7Dm7XfvOe/LQ3Txv101fLM8cx2h1QVwtSJ51Q/SCxpIiKfVn6G2jYYMDNHZteA== +jest-resolve@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.2.4.tgz#d3b999f073ff84a8ae109ce99ff7f3223048701a" + integrity sha512-IsAO/3+3BZnKjI2I4f3835TBK/90dxR7Otgufn3mnrDFTByOSXclDi3G2XJsawGV4/18IMLARJ+V7Wm7t+J89Q== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" chalk "^4.0.0" escalade "^3.1.1" graceful-fs "^4.2.4" + jest-haste-map "^27.2.4" jest-pnp-resolver "^1.2.2" - jest-util "^27.0.6" - jest-validate "^27.0.6" + jest-util "^27.2.4" + jest-validate "^27.2.4" resolve "^1.20.0" slash "^3.0.0" -jest-runner@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.0.6.tgz#1325f45055539222bbc7256a6976e993ad2f9520" - integrity sha512-W3Bz5qAgaSChuivLn+nKOgjqNxM7O/9JOJoKDCqThPIg2sH/d4A/lzyiaFgnb9V1/w29Le11NpzTJSzga1vyYQ== +jest-runner@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.2.4.tgz#d816f4cb4af04f3cba703afcf5a35a335b77cad4" + integrity sha512-hIo5PPuNUyVDidZS8EetntuuJbQ+4IHWxmHgYZz9FIDbG2wcZjrP6b52uMDjAEQiHAn8yn8ynNe+TL8UuGFYKg== dependencies: - "@jest/console" "^27.0.6" - "@jest/environment" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/console" "^27.2.4" + "@jest/environment" "^27.2.4" + "@jest/test-result" "^27.2.4" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" jest-docblock "^27.0.6" - jest-environment-jsdom "^27.0.6" - jest-environment-node "^27.0.6" - jest-haste-map "^27.0.6" - jest-leak-detector "^27.0.6" - jest-message-util "^27.0.6" - jest-resolve "^27.0.6" - jest-runtime "^27.0.6" - jest-util "^27.0.6" - jest-worker "^27.0.6" + jest-environment-jsdom "^27.2.4" + jest-environment-node "^27.2.4" + jest-haste-map "^27.2.4" + jest-leak-detector "^27.2.4" + jest-message-util "^27.2.4" + jest-resolve "^27.2.4" + jest-runtime "^27.2.4" + jest-util "^27.2.4" + jest-worker "^27.2.4" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.0.6.tgz#45877cfcd386afdd4f317def551fc369794c27c9" - integrity sha512-BhvHLRVfKibYyqqEFkybsznKwhrsu7AWx2F3y9G9L95VSIN3/ZZ9vBpm/XCS2bS+BWz3sSeNGLzI3TVQ0uL85Q== +jest-runtime@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.2.4.tgz#170044041e5d30625ab8d753516bbe503f213a5c" + integrity sha512-ICKzzYdjIi70P17MZsLLIgIQFCQmIjMFf+xYww3aUySiUA/QBPUTdUqo5B2eg4HOn9/KkUsV0z6GVgaqAPBJvg== dependencies: - "@jest/console" "^27.0.6" - "@jest/environment" "^27.0.6" - "@jest/fake-timers" "^27.0.6" - "@jest/globals" "^27.0.6" + "@jest/console" "^27.2.4" + "@jest/environment" "^27.2.4" + "@jest/fake-timers" "^27.2.4" + "@jest/globals" "^27.2.4" "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.0.6" - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/test-result" "^27.2.4" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" "@types/yargs" "^16.0.0" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" + execa "^5.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-haste-map "^27.0.6" - jest-message-util "^27.0.6" - jest-mock "^27.0.6" + jest-haste-map "^27.2.4" + jest-message-util "^27.2.4" + jest-mock "^27.2.4" jest-regex-util "^27.0.6" - jest-resolve "^27.0.6" - jest-snapshot "^27.0.6" - jest-util "^27.0.6" - jest-validate "^27.0.6" + jest-resolve "^27.2.4" + jest-snapshot "^27.2.4" + jest-util "^27.2.4" + jest-validate "^27.2.4" slash "^3.0.0" strip-bom "^4.0.0" - yargs "^16.0.3" + yargs "^16.2.0" jest-serializer@^27.0.6: version "27.0.6" @@ -3568,10 +3703,10 @@ jest-serializer@^27.0.6: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.0.6.tgz#f4e6b208bd2e92e888344d78f0f650bcff05a4bf" - integrity sha512-NTHaz8He+ATUagUgE7C/UtFcRoHqR2Gc+KDfhQIyx+VFgwbeEMjeP+ILpUTLosZn/ZtbNdCF5LkVnN/l+V751A== +jest-snapshot@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.2.4.tgz#277b2269437e3ffcb91d95a73b24becf33c5a871" + integrity sha512-5DFxK31rYS8X8C6WXsFx8XxrxW3PGa6+9IrUcZdTLg1aEyXDGIeiBh4jbwvh655bg/9vTETbEj/njfZicHTZZw== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" @@ -3579,23 +3714,23 @@ jest-snapshot@^27.0.6: "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/transform" "^27.2.4" + "@jest/types" "^27.2.4" "@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.0.6" + expect "^27.2.4" graceful-fs "^4.2.4" - jest-diff "^27.0.6" + jest-diff "^27.2.4" jest-get-type "^27.0.6" - jest-haste-map "^27.0.6" - jest-matcher-utils "^27.0.6" - jest-message-util "^27.0.6" - jest-resolve "^27.0.6" - jest-util "^27.0.6" + jest-haste-map "^27.2.4" + jest-matcher-utils "^27.2.4" + jest-message-util "^27.2.4" + jest-resolve "^27.2.4" + jest-util "^27.2.4" natural-compare "^1.4.0" - pretty-format "^27.0.6" + pretty-format "^27.2.4" semver "^7.3.2" jest-util@^27.0.0: @@ -3610,60 +3745,60 @@ jest-util@^27.0.0: is-ci "^3.0.0" picomatch "^2.2.3" -jest-util@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.6.tgz#e8e04eec159de2f4d5f57f795df9cdc091e50297" - integrity sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ== +jest-util@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.2.4.tgz#3d7ce081b2e7f4cfe0156452ac01f3cb456cc656" + integrity sha512-mW++4u+fSvAt3YBWm5IpbmRAceUqa2B++JlUZTiuEt2AmNYn0Yw5oay4cP17TGsMINRNPSGiJ2zNnX60g+VbFg== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" "@types/node" "*" chalk "^4.0.0" graceful-fs "^4.2.4" is-ci "^3.0.0" picomatch "^2.2.3" -jest-validate@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.0.6.tgz#930a527c7a951927df269f43b2dc23262457e2a6" - integrity sha512-yhZZOaMH3Zg6DC83n60pLmdU1DQE46DW+KLozPiPbSbPhlXXaiUTDlhHQhHFpaqIFRrInko1FHXjTRpjWRuWfA== +jest-validate@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.2.4.tgz#b66d462b2fb93d7e16a47d1aa8763d5600bf2cfa" + integrity sha512-VMtbxbkd7LHnIH7PChdDtrluCFRJ4b1YV2YJzNwwsASMWftq/HgqiqjvptBOWyWOtevgO3f14wPxkPcLlVBRog== dependencies: - "@jest/types" "^27.0.6" + "@jest/types" "^27.2.4" camelcase "^6.2.0" chalk "^4.0.0" jest-get-type "^27.0.6" leven "^3.1.0" - pretty-format "^27.0.6" + pretty-format "^27.2.4" -jest-watcher@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.0.6.tgz#89526f7f9edf1eac4e4be989bcb6dec6b8878d9c" - integrity sha512-/jIoKBhAP00/iMGnTwUBLgvxkn7vsOweDrOTSPzc7X9uOyUtJIDthQBTI1EXz90bdkrxorUZVhJwiB69gcHtYQ== +jest-watcher@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.2.4.tgz#b1d5c39ab94f59f4f35f66cc96f7761a10e0cfc4" + integrity sha512-LXC/0+dKxhK7cfF7reflRYlzDIaQE+fL4ynhKhzg8IMILNMuI4xcjXXfUJady7OR4/TZeMg7X8eHx8uan9vqaQ== dependencies: - "@jest/test-result" "^27.0.6" - "@jest/types" "^27.0.6" + "@jest/test-result" "^27.2.4" + "@jest/types" "^27.2.4" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.0.6" + jest-util "^27.2.4" string-length "^4.0.1" -jest-worker@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.0.6.tgz#a5fdb1e14ad34eb228cfe162d9f729cdbfa28aed" - integrity sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA== +jest-worker@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.2.4.tgz#881455df75e22e7726a53f43703ab74d6b36f82d" + integrity sha512-Zq9A2Pw59KkVjBBKD1i3iE2e22oSjXhUKKuAK1HGX8flGwkm6NMozyEYzKd41hXc64dbd/0eWFeEEuxqXyhM+g== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.0.6.tgz#10517b2a628f0409087fbf473db44777d7a04505" - integrity sha512-EjV8aETrsD0wHl7CKMibKwQNQc3gIRBXlTikBmmHUeVMKaPFxdcUIBfoDqTSXDoGJIivAYGqCWVlzCSaVjPQsA== +jest@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.2.4.tgz#70e27bef873138afc123aa4769f7124c50ad3efb" + integrity sha512-h4uqb1EQLfPulWyUFFWv9e9Nn8sCqsJ/j3wk/KCY0p4s4s0ICCfP3iMf6hRf5hEhsDyvyrCgKiZXma63gMz16A== dependencies: - "@jest/core" "^27.0.6" + "@jest/core" "^27.2.4" import-local "^3.0.2" - jest-cli "^27.0.6" + jest-cli "^27.2.4" js-tokens@^4.0.0: version "4.0.0" @@ -3679,9 +3814,9 @@ js-yaml@^3.13.1: esprima "^4.0.0" jsdom@^16.6.0: - version "16.6.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.6.0.tgz#f79b3786682065492a3da6a60a4695da983805ac" - integrity sha512-Ty1vmF4NHJkolaEmdjtxTfSfkdb8Ywarwf63f+F8/mDD1uLSSWDxDuMiZxiPhwunLrn9LOSVItWj4bLYsLN3Dg== + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== dependencies: abab "^2.0.5" acorn "^8.2.4" @@ -3708,7 +3843,7 @@ jsdom@^16.6.0: whatwg-encoding "^1.0.5" whatwg-mimetype "^2.3.0" whatwg-url "^8.5.0" - ws "^7.4.5" + ws "^7.4.6" xml-name-validator "^3.0.0" jsesc@^2.5.1: @@ -3736,13 +3871,20 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= -json5@2.x, json5@^2.1.2: +json5@2.x: version "2.1.2" resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.2.tgz#43ef1f0af9835dd624751a6b7fa48874fb2d608e" integrity sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ== dependencies: minimist "^1.2.5" +json5@^2.1.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + jsonfile@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" @@ -3758,11 +3900,11 @@ jsonfile@^4.0.0: graceful-fs "^4.1.6" jsonfile@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" - integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: - universalify "^1.0.0" + universalify "^2.0.0" optionalDependencies: graceful-fs "^4.1.6" @@ -3771,6 +3913,11 @@ jsonparse@^1.2.0: resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= +kind-of@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" @@ -3842,33 +3989,15 @@ listr2@^3.8.2: through "^2.3.8" wrap-ansi "^7.0.0" -load-json-file@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" - integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= - dependencies: - graceful-fs "^4.1.2" - parse-json "^4.0.0" - pify "^3.0.0" - strip-bom "^3.0.0" - localtunnel@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-2.0.1.tgz#8f7c593f3005647f7675e6e69af9bf746571a631" - integrity sha512-LiaI5wZdz0xFkIQpXbNI62ZnNn8IMsVhwxHmhA+h4vj8R9JG/07bQHWwQlyy7b95/5fVOCHJfIHv+a5XnkvaJA== + version "2.0.2" + resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-2.0.2.tgz#528d50087151c4790f89c2db374fe7b0a48501f0" + integrity sha512-n418Cn5ynvJd7m/N1d9WVJISLJF/ellZnfsLnx8WBWGzxv/ntNcFkJ1o6se5quUhCplfLGBNL5tYHiq5WF3Nug== dependencies: - axios "0.21.1" - debug "4.3.1" + axios "0.21.4" + debug "4.3.2" openurl "1.1.1" - yargs "16.2.0" - -locate-path@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" - integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= - dependencies: - p-locate "^2.0.0" - path-exists "^3.0.0" + yargs "17.1.1" locate-path@^5.0.0: version "5.0.0" @@ -3884,16 +4013,16 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash._reinterpolate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= - lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= +lodash.get@^4: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + lodash.isfinite@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" @@ -3904,21 +4033,6 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.template@^4.0.2: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.templatesettings "^4.0.0" - -lodash.templatesettings@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== - dependencies: - lodash._reinterpolate "^3.0.0" - lodash.truncate@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" @@ -3947,14 +4061,6 @@ log-update@^4.0.0: slice-ansi "^4.0.0" wrap-ansi "^6.2.0" -loud-rejection@^1.0.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" - integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= - dependencies: - currently-unhandled "^0.4.1" - signal-exit "^3.0.0" - lower-case@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" @@ -3977,13 +4083,13 @@ lru-cache@^6.0.0: yallist "^4.0.0" make-dir@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.2.tgz#04a1acbf22221e1d6ef43559f43e05a90dbb4392" - integrity sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w== + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" -make-error@1.x: +make-error@1.x, make-error@^1, make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== @@ -4000,30 +4106,32 @@ map-obj@^1.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= -map-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" - integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= +map-obj@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= -meow@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-5.0.0.tgz#dfc73d63a9afc714a5e371760eb5c88b91078aa4" - integrity sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig== - dependencies: - camelcase-keys "^4.0.0" - decamelize-keys "^1.0.0" - loud-rejection "^1.0.0" - minimist-options "^3.0.1" - normalize-package-data "^2.3.4" - read-pkg-up "^3.0.0" - redent "^2.0.0" - trim-newlines "^2.0.0" - yargs-parser "^10.0.0" +meow@^8.0.0: + version "8.1.2" + resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" + integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== + dependencies: + "@types/minimist" "^1.2.0" + camelcase-keys "^6.2.2" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^3.0.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.18.0" + yargs-parser "^20.2.3" merge-descriptors@1.0.1: version "1.0.1" @@ -4058,13 +4166,25 @@ mime-db@1.47.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.24: +mime-db@1.50.0: + version "1.50.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.50.0.tgz#abd4ac94e98d3c0e185016c67ab45d5fde40c11f" + integrity sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A== + +mime-types@^2.1.12, mime-types@~2.1.24: version "2.1.30" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.30.tgz#6e7be8b4c479825f85ed6326695db73f9305d62d" integrity sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg== dependencies: mime-db "1.47.0" +mime-types@~2.1.17: + version "2.1.33" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.33.tgz#1fa12a904472fafd068e48d9e8401f74d3f70edb" + integrity sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g== + dependencies: + mime-db "1.50.0" + mime@1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" @@ -4085,6 +4205,11 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== +min-indent@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + minimatch@^3.0.2, minimatch@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" @@ -4092,13 +4217,14 @@ minimatch@^3.0.2, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist-options@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" - integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== +minimist-options@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== dependencies: arrify "^1.0.1" is-plain-obj "^1.1.0" + kind-of "^6.0.3" minimist@^1.2.5: version "1.2.5" @@ -4110,11 +4236,6 @@ mitt@^1.1.3: resolved "https://registry.yarnpkg.com/mitt/-/mitt-1.2.0.tgz#cb24e6569c806e31bd4e3995787fe38a04fdf90d" integrity sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw== -mkdirp@1.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== - mkdirp@^0.5.5: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" @@ -4122,10 +4243,10 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.2.tgz#fcee10860341b70ec014886fb15ab587f9fb911f" - integrity sha512-f9sERZe+95sGBSzBt7nSXsPdTm+O2uPA/gy/Wlf544a4zKbe0fhBRfs62HCgoTYnJu3lMxlX4oxph7L+SHW/LA== +mockttp@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.3.tgz#f9e87426bc1f628fc007db1095b4f6e10d946450" + integrity sha512-/mC8yh7B9cceu4brvJc8NpsZxIsxrTe+HpysvGIwUXb09dDMnDA+XaXig/zWjiR+okUpTS6yyejyxhZl4Hikgw== dependencies: "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^1.0.0" @@ -4151,7 +4272,7 @@ mockttp@^2.2.2: node-forge "^0.10.0" performance-now "^2.1.0" portfinder "^1.0.23" - proxy-agent "^4.0.1" + proxy-agent "^5.0.0" typed-error "^3.0.2" universal-websocket-client "^1.0.2" uuid "^3.1.0" @@ -4173,6 +4294,11 @@ ms@2.1.2, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +nanocolors@^0.2.12: + version "0.2.12" + resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.2.12.tgz#4d05932e70116078673ea4cc6699a1c56cc77777" + integrity sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug== + native-duplexpair@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/native-duplexpair/-/native-duplexpair-1.0.0.tgz#7899078e64bf3c8a3d732601b3d40ff05db58fa0" @@ -4202,9 +4328,11 @@ no-case@^3.0.4: tslib "^2.0.3" node-fetch@~2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" - integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + version "2.6.5" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.5.tgz#42735537d7f080a7e5f78b6c549b7146be1742fd" + integrity sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ== + dependencies: + whatwg-url "^5.0.0" node-forge@^0.10.0: version "0.10.0" @@ -4221,12 +4349,12 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-releases@^1.1.71: - version "1.1.72" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.72.tgz#14802ab6b1039a79a0c7d662b610a5bbd76eacbe" - integrity sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw== +node-releases@^1.1.76: + version "1.1.76" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.76.tgz#df245b062b0cafbd5282ab6792f7dccc2d97f36e" + integrity sha512-9/IECtNr8dXNmPWmFXepT0/7o5eolGesHUa3mtr0KlgnCvnZxwh2qensKL42JJY2vQKC3nIBXetFAqR+PW1CmA== -normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: +normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -4236,6 +4364,16 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" +normalize-package-data@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== + dependencies: + hosted-git-info "^4.0.1" + is-core-module "^2.5.0" + semver "^7.3.4" + validate-npm-package-license "^3.0.1" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -4248,11 +4386,6 @@ npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - nwsapi@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" @@ -4329,18 +4462,6 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" -p-each-series@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.1.0.tgz#961c8dd3f195ea96c747e636b262b800a6b1af48" - integrity sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ== - -p-limit@^1.1.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" - integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== - dependencies: - p-try "^1.0.0" - p-limit@^2.2.0: version "2.2.2" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" @@ -4349,18 +4470,11 @@ p-limit@^2.2.0: p-try "^2.0.0" p-limit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.0.2.tgz#1664e010af3cadc681baafd3e2a437be7b0fb5fe" - integrity sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg== - dependencies: - p-try "^2.0.0" - -p-locate@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" - integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: - p-limit "^1.1.0" + yocto-queue "^0.1.0" p-locate@^4.1.0: version "4.1.0" @@ -4383,20 +4497,15 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" -p-try@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" - integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= - p-try@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -pac-proxy-agent@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-4.1.0.tgz#66883eeabadc915fc5e95457324cb0f0ac78defb" - integrity sha512-ejNgYm2HTXSIYX9eFlkvqFp8hyJ374uDf0Zq5YUAifiSh1D6fo+iBivQZirGvVv8dCYUsLhmLBRhlAYvBKI5+Q== +pac-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-5.0.0.tgz#b718f76475a6a5415c2efbe256c1c971c84f635e" + integrity sha512-CcFG3ZtnxO8McDigozwE3AqAw15zDvGH+OjXO4kzf7IkEKkQ4gxQ+3sdF50WmhQ4P/bVusXcqNE2S3XrNURwzQ== dependencies: "@tootallnate/once" "1" agent-base "6" @@ -4404,16 +4513,16 @@ pac-proxy-agent@^4.1.0: get-uri "3" http-proxy-agent "^4.0.1" https-proxy-agent "5" - pac-resolver "^4.1.0" + pac-resolver "^5.0.0" raw-body "^2.2.0" socks-proxy-agent "5" -pac-resolver@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-4.2.0.tgz#b82bcb9992d48166920bc83c7542abb454bd9bdd" - integrity sha512-rPACZdUyuxT5Io/gFKUeeZFfE5T7ve7cAkE5TUZRRfuKP0u5Hocwe48X7ZEm6mYB+bTB0Qf+xlVlA/RM/i6RCQ== +pac-resolver@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-5.0.0.tgz#1d717a127b3d7a9407a16d6e1b012b13b9ba8dc0" + integrity sha512-H+/A6KitiHNNW+bxBKREk2MCGSxljfqRX76NjummWEYIat7ldVXRU3dhRIE3iXZ0nvGBk6smv3nntxKkzRL8NA== dependencies: - degenerator "^2.2.0" + degenerator "^3.0.1" ip "^1.1.5" netmask "^2.0.1" @@ -4424,14 +4533,6 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-json@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= - dependencies: - error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" - parse-json@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" @@ -4470,11 +4571,6 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -4491,22 +4587,15 @@ path-key@^3.0.0, path-key@^3.1.0: integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== path-parse@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" - integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= -path-type@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" - integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== - dependencies: - pify "^3.0.0" - path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -4522,11 +4611,6 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== -pify@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= - pirates@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" @@ -4582,10 +4666,10 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.3.2.tgz#ef280a05ec253712e486233db5c6f23441e7342d" - integrity sha512-lnJzDfJ66zkMy58OL5/NY5zp70S7Nz6KqcKkXYzn2tMVrNxvbqaBpg7H3qHaLxCJ5lNMsGuM8+ohS7cZrthdLQ== +prettier@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" + integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== pretty-format@^27.0.0, pretty-format@^27.0.6: version "27.0.6" @@ -4597,6 +4681,16 @@ pretty-format@^27.0.0, pretty-format@^27.0.6: ansi-styles "^5.0.0" react-is "^17.0.1" +pretty-format@^27.2.4: + version "27.2.4" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.2.4.tgz#08ea39c5eab41b082852d7093059a091f6ddc748" + integrity sha512-NUjw22WJHldzxyps2YjLZkUj6q1HvjqFezkB9Y2cklN8NtVZN/kZEXGZdFw4uny3oENzV5EEMESrkI0YDUH8vg== + dependencies: + "@jest/types" "^27.2.4" + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -4608,12 +4702,12 @@ progress@^2.0.0: integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== prompts@^2.0.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.3.2.tgz#480572d89ecf39566d2bd3fe2c9fccb7c4c0b068" - integrity sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA== + version "2.4.1" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.1.tgz#befd3b1195ba052f9fd2fde8a486c4e82ee77f61" + integrity sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ== dependencies: kleur "^3.0.3" - sisteransi "^1.0.4" + sisteransi "^1.0.5" proxy-addr@~2.0.5: version "2.0.6" @@ -4623,17 +4717,17 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" -proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-4.0.1.tgz#326c3250776c7044cd19655ccbfadf2e065a045c" - integrity sha512-ODnQnW2jc/FUVwHHuaZEfN5otg/fMbvMxz9nMSUQfJ9JU7q2SZvSULSsjLloVgJOiv9yhc8GlNMKc4GkFmcVEA== +proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-5.0.0.tgz#d31405c10d6e8431fde96cba7a0c027ce01d633b" + integrity sha512-gkH7BkvLVkSfX9Dk27W6TyNOWWZWRilRfk1XxGNWOYJ2TuedAv1yFpCaU9QSBmBe716XOTNpYNOzhysyw8xn7g== dependencies: agent-base "^6.0.0" debug "4" http-proxy-agent "^4.0.0" https-proxy-agent "^5.0.0" lru-cache "^5.1.1" - pac-proxy-agent "^4.1.0" + pac-proxy-agent "^5.0.0" proxy-from-env "^1.0.0" socks-proxy-agent "^5.0.0" @@ -4677,10 +4771,10 @@ queue-microtask@^1.2.2: resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== -quick-lru@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" - integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= +quick-lru@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== quick-lru@^5.1.1: version "5.1.1" @@ -4717,22 +4811,24 @@ react-is@^17.0.1: resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== -read-pkg-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" - integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== dependencies: - find-up "^2.0.0" - read-pkg "^3.0.0" + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" -read-pkg@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" - integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== dependencies: - load-json-file "^4.0.0" - normalize-package-data "^2.3.2" - path-type "^3.0.0" + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" readable-stream@1.1.x: version "1.1.14" @@ -4744,7 +4840,7 @@ readable-stream@1.1.x: isarray "0.0.1" string_decoder "~0.10.x" -"readable-stream@2 || 3", readable-stream@^3.6.0: +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -4753,7 +4849,7 @@ readable-stream@1.1.x: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readable-stream@^2.0.0, readable-stream@^2.3.3, readable-stream@~2.3.6: +readable-stream@^2.0.0, readable-stream@^2.3.3: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -4766,20 +4862,20 @@ readable-stream@^2.0.0, readable-stream@^2.3.3, readable-stream@~2.3.6: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readdirp@~3.5.0: - version "3.5.0" - resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" - integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" -redent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" - integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= +redent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== dependencies: - indent-string "^3.0.0" - strip-indent "^2.0.0" + indent-string "^4.0.0" + strip-indent "^3.0.0" regexpp@^3.1.0: version "3.1.0" @@ -4807,9 +4903,9 @@ requires-port@^1.0.0: integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= resolve-alpn@^1.1.1: - version "1.2.0" - resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.0.tgz#058bb0888d1cd4d12474e9a4b6eb17bdd5addc44" - integrity sha512-e4FNQs+9cINYMO5NMFc6kOUCdohjqFPSgMuwuZAOUWqrfWsen+Yjy5qZFkV5K7VO7tFSLKcUL97olkED7sCBHA== + version "1.2.1" + resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9" + integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g== resolve-cwd@^3.0.0: version "3.0.0" @@ -4929,7 +5025,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.5: +semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -5049,12 +5145,12 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== -sisteransi@^1.0.4: +sisteransi@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== @@ -5156,10 +5252,10 @@ socks@^2.3.3: ip "^1.1.5" smart-buffer "^4.1.0" -source-map-support@^0.5.6: - version "0.5.16" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz#0ae069e7fe3ba7538c64c98515e35339eac5a042" - integrity sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ== +source-map-support@^0.5.17, source-map-support@^0.5.6: + version "0.5.20" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9" + integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -5180,37 +5276,37 @@ source-map@^0.7.3: integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== spdx-correct@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" - integrity sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q== + version "3.1.1" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz#2ea450aee74f2a89bfb94519c07fcd6f41322977" - integrity sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA== + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== spdx-expression-parse@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz#99e119b7a5da00e05491c9fa338b7904823b41d0" - integrity sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg== + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q== + version "3.0.10" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== -split2@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" - integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== +split2@^3.0.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== dependencies: - through2 "^2.0.2" + readable-stream "^3.0.0" sprintf-js@~1.0.2: version "1.0.3" @@ -5218,9 +5314,9 @@ sprintf-js@~1.0.2: integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= stack-utils@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.3.tgz#cd5f030126ff116b78ccb3c027fe302713b61277" - integrity sha512-gL//fkxfWUsIlFL2Tl42Cl6+HFALEaB1FU76I/Fy+oZjRreP7OPMXFlGbxM7NQsI0ZpUfw76sHnv0WNYuTb7Iw== + version "2.0.5" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" + integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== dependencies: escape-string-regexp "^2.0.0" @@ -5258,9 +5354,9 @@ string-argv@0.3.1: integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== string-length@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.1.tgz#4a973bf31ef77c4edbceadd6af2611996985f8a1" - integrity sha512-PKyXUd0LK0ePjSOnWn34V2uD6acUWev9uy0Ft05k0E8xRW+SKcA0F7eMr7h5xlzfn+4O3N+55rduYyet3Jk+jw== + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" strip-ansi "^6.0.0" @@ -5316,11 +5412,6 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" -strip-bom@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= - strip-bom@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" @@ -5331,10 +5422,12 @@ strip-final-newline@^2.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== -strip-indent@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" - integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: version "3.1.1" @@ -5358,10 +5451,10 @@ superagent@^6.1.0: readable-stream "^3.6.0" semver "^7.3.2" -supertest@^6.1.5: - version "6.1.5" - resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.5.tgz#b011c8465281b30c64e9d4be4cb3808b91cd1ec0" - integrity sha512-Is3pFB2TxSFPohDS2tIM8h2JOMvUQwbJ9TvTfsWAm89ZZv1CF4VTLAsQz+5+5S1wOgaMqFqSpFriU15L3e2AXQ== +supertest@^6.1.6: + version "6.1.6" + resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.6.tgz#6151c518f4c5ced2ac2aadb9f96f1bf8198174c8" + integrity sha512-0hACYGNJ8OHRg8CRITeZOdbjur7NLuNs0mBjVhdpxi7hP6t3QIbOzLON5RTUmZcy2I9riuII3+Pr2C7yztrIIg== dependencies: methods "^1.1.2" superagent "^6.1.0" @@ -5378,7 +5471,14 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0, supports-color@^7.1.0: +supports-color@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== @@ -5393,9 +5493,9 @@ supports-color@^8.0.0: has-flag "^4.0.0" supports-hyperlinks@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz#f663df252af5f37c5d49bbd7eeefa9e0b9e59e47" - integrity sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA== + version "2.2.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" @@ -5467,20 +5567,12 @@ throat@^6.0.1: resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== -through2@^2.0.2: - version "2.0.5" - resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== - dependencies: - readable-stream "~2.3.6" - xtend "~4.0.1" - -through2@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.1.tgz#39276e713c3302edf9e388dd9c812dd3b825bd5a" - integrity sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww== +through2@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== dependencies: - readable-stream "2 || 3" + readable-stream "3" "through@>=2.2.7 <3", through@^2.3.8: version "2.3.8" @@ -5488,9 +5580,9 @@ through2@^3.0.0: integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= tmpl@1.0.x: - version "1.0.4" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" - integrity sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE= + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-array@0.1.4: version "0.1.4" @@ -5523,53 +5615,63 @@ tough-cookie@^4.0.0: punycode "^2.1.1" universalify "^0.1.2" -tr46@^2.0.2: +tr46@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== dependencies: punycode "^2.1.1" -trim-newlines@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" - integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= -trim-off-newlines@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-off-newlines/-/trim-off-newlines-1.0.1.tgz#9f9ba9d9efa8764c387698bcbfeb2c848f11adb3" - integrity sha1-n5up2e+odkw4dpi8v+sshI8RrbM= +trim-newlines@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" + integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -ts-jest@^27.0.4: - version "27.0.4" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.4.tgz#df49683535831560ccb58f94c023d831b1b80df0" - integrity sha512-c4E1ECy9Xz2WGfTMyHbSaArlIva7Wi2p43QOMmCqjSSjHP06KXv+aT+eSY+yZMuqsMi3k7pyGsGj2q5oSl5WfQ== +ts-jest@^27.0.5: + version "27.0.5" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.5.tgz#0b0604e2271167ec43c12a69770f0bb65ad1b750" + integrity sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w== dependencies: bs-logger "0.x" - buffer-from "1.x" fast-json-stable-stringify "2.x" jest-util "^27.0.0" json5 "2.x" lodash "4.x" make-error "1.x" - mkdirp "1.x" semver "7.x" yargs-parser "20.x" +ts-node@^9: + version "9.1.1" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-9.1.1.tgz#51a9a450a3e959401bda5f004a72d54b936d376d" + integrity sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg== + dependencies: + arg "^4.1.0" + create-require "^1.1.0" + diff "^4.0.1" + make-error "^1.1.1" + source-map-support "^0.5.17" + yn "3.1.1" + tslib@^1.8.1, tslib@^1.9.0: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== -tslib@^2.0.1, tslib@^2.0.3: +tslib@^2, tslib@^2.0.1, tslib@^2.0.3: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== tslib@~2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" - integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== + version "2.0.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" + integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== tslib@~2.2.0: version "2.2.0" @@ -5607,11 +5709,31 @@ type-fest@^0.11.0: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== +type-fest@^0.18.0: + version "0.18.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" + integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== + type-fest@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + type-is@~1.6.17, type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -5621,9 +5743,9 @@ type-is@~1.6.17, type-is@~1.6.18: mime-types "~2.1.24" typed-error@^3.0.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/typed-error/-/typed-error-3.2.0.tgz#ffa498688c458b7437e83c3c972d2b7b5b0e21ae" - integrity sha512-n0NojMTp7jD2MMgJxtjzS1it/sKIlDfQwqOECSPAGwsIU2jns3G0R6alnakRelQzxz7t8PhjYrlqYoQKUVGOsQ== + version "3.2.1" + resolved "https://registry.yarnpkg.com/typed-error/-/typed-error-3.2.1.tgz#08529590f9704a4491331568a03aa4456b7a65e9" + integrity sha512-XlUv4JMrT2dpN0c4Vm3lOm88ga21Z6pNJUmjejRz/mkh6sdBtkMwyRf4fF+yhRGZgfgWam31Lkxu11GINKiBTQ== typedarray-to-buffer@^3.1.5: version "3.1.5" @@ -5632,10 +5754,10 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.3.5: - version "4.3.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.3.5.tgz#4d1c37cc16e893973c45a06886b7113234f119f4" - integrity sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA== +typescript@^4.4.3: + version "4.4.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.3.tgz#bdc5407caa2b109efd4f82fe130656f977a29324" + integrity sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA== ua-parser-js@^0.7.28: version "0.7.28" @@ -5659,11 +5781,6 @@ universalify@^0.1.0, universalify@^0.1.2: resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== -universalify@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" - integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== - universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -5701,10 +5818,10 @@ v8-compile-cache@^2.0.3: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== -v8-to-istanbul@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.0.0.tgz#4229f2a99e367f3f018fa1d5c2b8ec684667c69c" - integrity sha512-LkmXi8UUNxnCC+JlH7/fsfsKr5AU110l+SYGJimWNkWhxbN5EyeOtm1MJ0hhvqMMOhGwBj1Fp70Yv9i+hX0QAg== +v8-to-istanbul@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.0.tgz#0aeb763894f1a0a1676adf8a8b7612a38902446c" + integrity sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" @@ -5728,6 +5845,11 @@ vary@^1, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= +vm2@^3.9.3: + version "3.9.3" + resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.3.tgz#29917f6cc081cc43a3f580c26c5b553fd3c91f40" + integrity sha512-smLS+18RjXYMl9joyJxMNI9l4w7biW8ilSDaVRvFBDwOH8P0BK1ognFQTpg0wyQ6wIKLTblHJvROW692L/E53Q== + w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" @@ -5749,6 +5871,11 @@ walker@^1.0.7: dependencies: makeerror "1.0.x" +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + webidl-conversions@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" @@ -5783,13 +5910,21 @@ whatwg-mimetype@^2.3.0: resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.5.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.5.0.tgz#7752b8464fc0903fec89aa9846fc9efe07351fd3" - integrity sha512-fy+R77xWv0AiqfLl4nuGUlQ3/6b5uNfQ4WAbGQVMYshCTCCPK9psC1nWh3XHuxGVCtlcDDQPQW1csmmIQo+fwg== + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== dependencies: lodash "^4.7.0" - tr46 "^2.0.2" + tr46 "^2.1.0" webidl-conversions "^6.1.0" which-module@^2.0.0: @@ -5851,15 +5986,20 @@ ws@^3.2.0, ws@^3.3.3: safe-buffer "~5.1.0" ultron "~1.1.0" -ws@^7.3.1, ws@^7.4.5, ws@^7.4.6, ws@~7.4.2: +ws@^7.3.1: + version "7.5.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" + integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== + +ws@^7.4.6, ws@~7.4.2: version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== -ws@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.1.0.tgz#75e5ec608f66d3d3934ec6dbc4ebc8a34a68638c" - integrity sha512-0UWlCD2s3RSclw8FN+D0zDTUyMO+1kHwJQQJzkgUh16S8d3NYON0AKCEQPffE0ez4JyRFu76QDA9KR5bOG/7jw== +ws@^8.2.2: + version "8.2.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.2.tgz#ca684330c6dd6076a737250ed81ac1606cb0a63e" + integrity sha512-Q6B6H2oc8QY3llc3cB8kVmQ6pnJWVQbP7Q5algTcIxx7YEpc0oU4NBVHlztA7Ekzfhw2r0rPducMUiCGWKQRzw== xml-name-validator@^3.0.0: version "3.0.0" @@ -5872,24 +6012,24 @@ xmlchars@^2.2.0: integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== xmlhttprequest-ssl@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.2.tgz#dd6899bfbcf684b554e393c30b13b9f3b001a7ee" - integrity sha512-tYOaldF/0BLfKuoA39QMwD4j2m8lq4DIncqj1yuNELX4vz9+z/ieG/vwmctjJce+boFHXstqhWnHSxc4W8f4qg== + version "1.6.3" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz#03b713873b01659dfa2c1c5d056065b27ddc2de6" + integrity sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q== xregexp@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" integrity sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM= -xtend@^4.0.0, xtend@~4.0.1: +xtend@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" - integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== y18n@^5.0.5: version "5.0.5" @@ -5916,13 +6056,6 @@ yargs-parser@20.x, yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== -yargs-parser@^10.0.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - yargs-parser@^18.1.2: version "18.1.3" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" @@ -5931,10 +6064,15 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs@16.2.0, yargs@^16.0.3: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== +yargs-parser@^20.2.3: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@17.1.1: + version "17.1.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.1.tgz#c2a8091564bdb196f7c0a67c1d12e5b85b8067ba" + integrity sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ== dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -5961,10 +6099,23 @@ yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + yargs@^17.0.0: - version "17.1.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.0.tgz#0cd9827a0572c9a1795361c4d1530e53ada168cf" - integrity sha512-SQr7qqmQ2sNijjJGHL4u7t8vyDZdZ3Ahkmo4sc1w5xI9TBX0QDdG/g4SFnxtWOsGLjwHQue57eFALfwFCnixgg== + version "17.2.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.2.1.tgz#e2c95b9796a0e1f7f3bf4427863b42e0418191ea" + integrity sha512-XfR8du6ua4K6uLGm5S6fA+FIJom/MdJcFNVY8geLlp2v8GYbOXD4EB1tPNZsRn4vBzKGMgb5DRZMeWuFc2GO8Q== dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -5979,6 +6130,16 @@ yeast@0.1.2: resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== + zstd-codec@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/zstd-codec/-/zstd-codec-0.1.2.tgz#6a13b7e666d9066d5236cbab760862a44f2660a0" From a5691220111ac97aeea2183428c868ff0e23b93f Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 13 Oct 2021 21:22:21 +0200 Subject: [PATCH 42/77] ci(package.json): husky install (#672) --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index f0ad43fd..6f1c8404 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,8 @@ "test": "jest", "precoverage": "yarn build", "coverage": "jest --coverage --coverageReporters=lcov", - "prepare": "husky install && yarn build && rm dist/tsconfig.tsbuildinfo" + "prepare": "husky install", + "prepack": "yarn build && rm dist/tsconfig.tsbuildinfo" }, "repository": { "type": "git", From 625ba89413ca54accaa4c19a277b8ab7ddf0586e Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Tue, 26 Oct 2021 22:54:16 +0200 Subject: [PATCH 43/77] chore(package): bump eslint dependencies (#676) --- package.json | 6 +- yarn.lock | 292 ++++++++++++++++++++++----------------------------- 2 files changed, 131 insertions(+), 167 deletions(-) diff --git a/package.json b/package.json index 6f1c8404..589bd19f 100644 --- a/package.json +++ b/package.json @@ -61,12 +61,12 @@ "@types/node": "^16.10.2", "@types/supertest": "^2.0.11", "@types/ws": "^8.2.0", - "@typescript-eslint/eslint-plugin": "^4.32.0", - "@typescript-eslint/parser": "^4.32.0", + "@typescript-eslint/eslint-plugin": "^5.2.0", + "@typescript-eslint/parser": "^5.2.0", "body-parser": "^1.19.0", "browser-sync": "^2.27.5", "connect": "^3.7.0", - "eslint": "^7.32.0", + "eslint": "^8.1.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", "express": "^4.17.1", diff --git a/yarn.lock b/yarn.lock index e998a37c..5ef2740a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9,13 +9,6 @@ dependencies: tslib "~2.0.1" -"@babel/code-frame@7.12.11": - version "7.12.11" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" - integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== - dependencies: - "@babel/highlight" "^7.10.4" - "@babel/code-frame@^7.0.0": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" @@ -186,7 +179,7 @@ "@babel/traverse" "^7.15.4" "@babel/types" "^7.15.4" -"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": +"@babel/highlight@^7.12.13": version "7.14.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf" integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== @@ -486,14 +479,14 @@ ts-node "^9" tslib "^2" -"@eslint/eslintrc@^0.4.3": - version "0.4.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" - integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== +"@eslint/eslintrc@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.3.tgz#41f08c597025605f672251dcc4e8be66b5ed7366" + integrity sha512-DHI1wDPoKCBPoLZA3qDR91+3te/wDSc1YhKg3jR8NxKKRJq2hwHwcWv31cSwSYvIBrmbENoYMWcenW8uproQqg== dependencies: ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" + debug "^4.3.2" + espree "^9.0.0" globals "^13.9.0" ignore "^4.0.6" import-fresh "^3.2.1" @@ -537,10 +530,10 @@ symbol-observable "^1.0.4" ws "^7.4.6" -"@humanwhocodes/config-array@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" - integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== +"@humanwhocodes/config-array@^0.6.0": + version "0.6.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.6.0.tgz#b5621fdb3b32309d2d16575456cbc277fa8f021a" + integrity sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A== dependencies: "@humanwhocodes/object-schema" "^1.2.0" debug "^4.1.1" @@ -935,10 +928,10 @@ jest-diff "^27.0.0" pretty-format "^27.0.0" -"@types/json-schema@^7.0.7": - version "7.0.7" - resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.7.tgz#98a993516c859eb0d5c4c8f098317a9ea68db9ad" - integrity sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA== +"@types/json-schema@^7.0.9": + version "7.0.9" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" + integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== "@types/micromatch@^4.0.2": version "4.0.2" @@ -1039,75 +1032,75 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.32.0.tgz#46d2370ae9311092f2a6f7246d28357daf2d4e89" - integrity sha512-+OWTuWRSbWI1KDK8iEyG/6uK2rTm3kpS38wuVifGUTDB6kjEuNrzBI1MUtxnkneuWG/23QehABe2zHHrj+4yuA== +"@typescript-eslint/eslint-plugin@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.2.0.tgz#2bdb247cc2e2afce7efbce09afb9a6f0a8a08434" + integrity sha512-qQwg7sqYkBF4CIQSyRQyqsYvP+g/J0To9ZPVNJpfxfekl5RmdvQnFFTVVwpRtaUDFNvjfe/34TgY/dpc3MgNTw== dependencies: - "@typescript-eslint/experimental-utils" "4.32.0" - "@typescript-eslint/scope-manager" "4.32.0" - debug "^4.3.1" + "@typescript-eslint/experimental-utils" "5.2.0" + "@typescript-eslint/scope-manager" "5.2.0" + debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" - regexpp "^3.1.0" + regexpp "^3.2.0" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.32.0.tgz#53a8267d16ca5a79134739129871966c56a59dc4" - integrity sha512-WLoXcc+cQufxRYjTWr4kFt0DyEv6hDgSaFqYhIzQZ05cF+kXfqXdUh+//kgquPJVUBbL3oQGKQxwPbLxHRqm6A== +"@typescript-eslint/experimental-utils@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.2.0.tgz#e3b2cb9cd0aff9b50f68d9a414c299fd26b067e6" + integrity sha512-fWyT3Agf7n7HuZZRpvUYdFYbPk3iDCq6fgu3ulia4c7yxmPnwVBovdSOX7RL+k8u6hLbrXcdAehlWUVpGh6IEw== dependencies: - "@types/json-schema" "^7.0.7" - "@typescript-eslint/scope-manager" "4.32.0" - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/typescript-estree" "4.32.0" + "@types/json-schema" "^7.0.9" + "@typescript-eslint/scope-manager" "5.2.0" + "@typescript-eslint/types" "5.2.0" + "@typescript-eslint/typescript-estree" "5.2.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.32.0.tgz#751ecca0e2fecd3d44484a9b3049ffc1871616e5" - integrity sha512-lhtYqQ2iEPV5JqV7K+uOVlPePjClj4dOw7K4/Z1F2yvjIUvyr13yJnDzkK6uon4BjHYuHy3EG0c2Z9jEhFk56w== +"@typescript-eslint/parser@^5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.2.0.tgz#dc081aa89de16b5676b10215519af3aa7b58fb72" + integrity sha512-Uyy4TjJBlh3NuA8/4yIQptyJb95Qz5PX//6p8n7zG0QnN4o3NF9Je3JHbVU7fxf5ncSXTmnvMtd/LDQWDk0YqA== dependencies: - "@typescript-eslint/scope-manager" "4.32.0" - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/typescript-estree" "4.32.0" - debug "^4.3.1" + "@typescript-eslint/scope-manager" "5.2.0" + "@typescript-eslint/types" "5.2.0" + "@typescript-eslint/typescript-estree" "5.2.0" + debug "^4.3.2" -"@typescript-eslint/scope-manager@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.32.0.tgz#e03c8668f8b954072b3f944d5b799c0c9225a7d5" - integrity sha512-DK+fMSHdM216C0OM/KR1lHXjP1CNtVIhJ54kQxfOE6x8UGFAjha8cXgDMBEIYS2XCYjjCtvTkjQYwL3uvGOo0w== +"@typescript-eslint/scope-manager@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.2.0.tgz#7ce8e4ab2baaa0ad5282913ea8e13ce03ec6a12a" + integrity sha512-RW+wowZqPzQw8MUFltfKYZfKXqA2qgyi6oi/31J1zfXJRpOn6tCaZtd9b5u9ubnDG2n/EMvQLeZrsLNPpaUiFQ== dependencies: - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/visitor-keys" "4.32.0" + "@typescript-eslint/types" "5.2.0" + "@typescript-eslint/visitor-keys" "5.2.0" -"@typescript-eslint/types@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.32.0.tgz#52c633c18da47aee09449144bf59565ab36df00d" - integrity sha512-LE7Z7BAv0E2UvqzogssGf1x7GPpUalgG07nGCBYb1oK4mFsOiFC/VrSMKbZQzFJdN2JL5XYmsx7C7FX9p9ns0w== +"@typescript-eslint/types@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.2.0.tgz#7ad32d15abddb0ee968a330f0ea182ea544ef7cf" + integrity sha512-cTk6x08qqosps6sPyP2j7NxyFPlCNsJwSDasqPNjEQ8JMD5xxj2NHxcLin5AJQ8pAVwpQ8BMI3bTxR0zxmK9qQ== -"@typescript-eslint/typescript-estree@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.32.0.tgz#db00ccc41ccedc8d7367ea3f50c6994b8efa9f3b" - integrity sha512-tRYCgJ3g1UjMw1cGG8Yn1KzOzNlQ6u1h9AmEtPhb5V5a1TmiHWcRyF/Ic+91M4f43QeChyYlVTcf3DvDTZR9vw== - dependencies: - "@typescript-eslint/types" "4.32.0" - "@typescript-eslint/visitor-keys" "4.32.0" - debug "^4.3.1" - globby "^11.0.3" - is-glob "^4.0.1" +"@typescript-eslint/typescript-estree@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.2.0.tgz#c22e0ff6f8a4a3f78504a80ebd686fe2870a68ae" + integrity sha512-RsdXq2XmVgKbm9nLsE3mjNUM7BTr/K4DYR9WfFVMUuozHWtH5gMpiNZmtrMG8GR385EOSQ3kC9HiEMJWimxd/g== + dependencies: + "@typescript-eslint/types" "5.2.0" + "@typescript-eslint/visitor-keys" "5.2.0" + debug "^4.3.2" + globby "^11.0.4" + is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@4.32.0": - version "4.32.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.32.0.tgz#455ba8b51242f2722a497ffae29313f33b14cb7f" - integrity sha512-e7NE0qz8W+atzv3Cy9qaQ7BTLwWsm084Z0c4nIO2l3Bp6u9WIgdqCgyPyV5oSPDMIW3b20H59OOCmVk3jw3Ptw== +"@typescript-eslint/visitor-keys@5.2.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.2.0.tgz#03522d35df98474f08e0357171a7d1b259a88f55" + integrity sha512-Nk7HizaXWWCUBfLA/rPNKMzXzWS8Wg9qHMuGtT+v2/YpPij4nVXrVJc24N/r5WrrmqK31jCrZxeHqIgqRzs0Xg== dependencies: - "@typescript-eslint/types" "4.32.0" - eslint-visitor-keys "^2.0.0" + "@typescript-eslint/types" "5.2.0" + eslint-visitor-keys "^3.0.0" JSONStream@^1.0.4: version "1.3.5" @@ -1153,12 +1146,7 @@ acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^7.4.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.0.tgz#e1ad486e6c54501634c6c397c5c121daa383607c" - integrity sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w== - -acorn@^8.2.4: +acorn@^8.2.4, acorn@^8.5.0: version "8.5.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== @@ -1193,16 +1181,6 @@ ajv@^6.10.0, ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.1: - version "8.5.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.5.0.tgz#695528274bcb5afc865446aa275484049a18ae4b" - integrity sha512-Y2l399Tt1AguU3BPRP9Fn4eN+Or+StUGWCUpbnFyXSo8NZ9S4uj+AG2pjs5apK+ZMOwYOz1+a+VKvKH7CudXgQ== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - ansi-colors@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" @@ -1282,6 +1260,11 @@ argparse@^1.0.7: dependencies: sprintf-js "~1.0.2" +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -2004,14 +1987,14 @@ debug@2.6.9, debug@^2.2.0: dependencies: ms "2.0.0" -debug@4, debug@^4.0.1, debug@^4.1.1, debug@^4.3.1: +debug@4, debug@^4.1.1, debug@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" -debug@4.3.2, debug@^4.1.0: +debug@4.3.2, debug@^4.1.0, debug@^4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== @@ -2334,12 +2317,13 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" - integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== +eslint-scope@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-6.0.0.tgz#9cf45b13c5ac8f3d4c50f46a5121f61b3e318978" + integrity sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA== dependencies: - eslint-visitor-keys "^1.1.0" + esrecurse "^4.3.0" + estraverse "^5.2.0" eslint-utils@^3.0.0: version "3.0.0" @@ -2348,47 +2332,46 @@ eslint-utils@^3.0.0: dependencies: eslint-visitor-keys "^2.0.0" -eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" - integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== - eslint-visitor-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== -eslint@^7.32.0: - version "7.32.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" - integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== +eslint-visitor-keys@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz#e32e99c6cdc2eb063f204eda5db67bfe58bb4186" + integrity sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q== + +eslint@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.1.0.tgz#00f1f7dbf4134f26588e6c9f2efe970760f64664" + integrity sha512-JZvNneArGSUsluHWJ8g8MMs3CfIEzwaLx9KyH4tZ2i+R2/rPWzL8c0zg3rHdwYVpN/1sB9gqnjHwz9HoeJpGHw== dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.3" - "@humanwhocodes/config-array" "^0.5.0" + "@eslint/eslintrc" "^1.0.3" + "@humanwhocodes/config-array" "^0.6.0" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" - debug "^4.0.1" + debug "^4.3.2" doctrine "^3.0.0" enquirer "^2.3.5" escape-string-regexp "^4.0.0" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" + eslint-scope "^6.0.0" + eslint-utils "^3.0.0" + eslint-visitor-keys "^3.0.0" + espree "^9.0.0" esquery "^1.4.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" file-entry-cache "^6.0.1" functional-red-black-tree "^1.0.1" - glob-parent "^5.1.2" + glob-parent "^6.0.1" globals "^13.6.0" ignore "^4.0.6" import-fresh "^3.0.0" imurmurhash "^0.1.4" is-glob "^4.0.0" - js-yaml "^3.13.1" + js-yaml "^4.1.0" json-stable-stringify-without-jsonify "^1.0.1" levn "^0.4.1" lodash.merge "^4.6.2" @@ -2396,22 +2379,21 @@ eslint@^7.32.0: natural-compare "^1.4.0" optionator "^0.9.1" progress "^2.0.0" - regexpp "^3.1.0" + regexpp "^3.2.0" semver "^7.2.1" strip-ansi "^6.0.0" strip-json-comments "^3.1.0" - table "^6.0.9" text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^7.3.0, espree@^7.3.1: - version "7.3.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" - integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== +espree@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.0.0.tgz#e90a2965698228502e771c7a58489b1a9d107090" + integrity sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ== dependencies: - acorn "^7.4.0" + acorn "^8.5.0" acorn-jsx "^5.3.1" - eslint-visitor-keys "^1.3.0" + eslint-visitor-keys "^3.0.0" esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" @@ -2821,13 +2803,20 @@ git-raw-commits@^2.0.0: split2 "^3.0.0" through2 "^4.0.0" -glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@^5.1.0, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" +glob-parent@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" + integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== + dependencies: + is-glob "^4.0.3" + glob@^7.1.1, glob@^7.1.2, glob@^7.1.4: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" @@ -2878,10 +2867,10 @@ globals@^13.9.0: dependencies: type-fest "^0.20.2" -globby@^11.0.3: - version "11.0.3" - resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.3.tgz#9b1f0cb523e171dd1ad8c7b2a9fb4b644b9593cb" - integrity sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg== +globby@^11.0.4: + version "11.0.4" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" + integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== dependencies: array-union "^2.1.0" dir-glob "^3.0.1" @@ -3218,7 +3207,7 @@ is-glob@^4.0.0, is-glob@^4.0.1: dependencies: is-extglob "^2.1.1" -is-glob@~4.0.1: +is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -3813,6 +3802,13 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + jsdom@^16.6.0: version "16.7.0" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" @@ -3861,11 +3857,6 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== -json-schema-traverse@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" - integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== - json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -4013,11 +4004,6 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash.clonedeep@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" - integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= - lodash.get@^4: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" @@ -4033,11 +4019,6 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.truncate@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" - integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= - lodash@4.x, lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" @@ -4877,21 +4858,16 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -regexpp@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" - integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== +regexpp@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= -require-from-string@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" - integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== - require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" @@ -5515,18 +5491,6 @@ symbol-tree@^3.2.4: resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -table@^6.0.9: - version "6.7.1" - resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" - integrity sha512-ZGum47Yi6KOOFDE8m223td53ath2enHcYLgOCjGr5ngu8bdIARQk6mN/wRMv4yMRcHnCSnHbCEha4sobQx5yWg== - dependencies: - ajv "^8.0.1" - lodash.clonedeep "^4.5.0" - lodash.truncate "^4.4.2" - slice-ansi "^4.0.0" - string-width "^4.2.0" - strip-ansi "^6.0.0" - terminal-link@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" From 232e0ed38994a1f3b6234e6c433790efc45aa637 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Tue, 26 Oct 2021 23:51:10 +0200 Subject: [PATCH 44/77] chore(package): bump dev dependencies (#677) --- package.json | 24 +- yarn.lock | 1211 +++++++++++++++++++++++++------------------------- 2 files changed, 610 insertions(+), 625 deletions(-) diff --git a/package.json b/package.json index 589bd19f..97f28319 100644 --- a/package.json +++ b/package.json @@ -52,35 +52,35 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^13.2.0", + "@commitlint/cli": "^13.2.1", "@commitlint/config-conventional": "^13.2.0", "@types/express": "^4.17.13", "@types/is-glob": "^4.0.2", - "@types/jest": "^27.0.1", + "@types/jest": "^27.0.2", "@types/micromatch": "^4.0.2", - "@types/node": "^16.10.2", + "@types/node": "^16.11.6", "@types/supertest": "^2.0.11", "@types/ws": "^8.2.0", "@typescript-eslint/eslint-plugin": "^5.2.0", "@typescript-eslint/parser": "^5.2.0", "body-parser": "^1.19.0", - "browser-sync": "^2.27.5", + "browser-sync": "^2.27.6", "connect": "^3.7.0", "eslint": "^8.1.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", "express": "^4.17.1", "get-port": "^5.1.1", - "husky": "^7.0.2", - "jest": "^27.2.4", - "lint-staged": "^11.1.2", - "mockttp": "^2.2.3", - "open": "^8.2.1", + "husky": "^7.0.4", + "jest": "^27.3.1", + "lint-staged": "^11.2.6", + "mockttp": "^2.3.1", + "open": "^8.4.0", "prettier": "^2.4.1", "supertest": "^6.1.6", - "ts-jest": "^27.0.5", - "typescript": "^4.4.3", - "ws": "^8.2.2" + "ts-jest": "^27.0.7", + "typescript": "^4.4.4", + "ws": "^8.2.3" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index 5ef2740a..ecf4423a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,10 +16,10 @@ dependencies: "@babel/highlight" "^7.12.13" -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.14.5.tgz#23b08d740e83f49c5e59945fbf1b43e80bbf4edb" - integrity sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw== +"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.15.8": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.15.8.tgz#45990c47adadb00c03677baa89221f7cc23d2503" + integrity sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg== dependencies: "@babel/highlight" "^7.14.5" @@ -28,20 +28,20 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.15.0.tgz#2dbaf8b85334796cafbb0f5793a90a2fc010b176" integrity sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA== -"@babel/core@^7.1.0", "@babel/core@^7.7.2", "@babel/core@^7.7.5": - version "7.15.5" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.5.tgz#f8ed9ace730722544609f90c9bb49162dc3bf5b9" - integrity sha512-pYgXxiwAgQpgM1bNkZsDEq85f0ggXMA5L7c+o3tskGMh2BunCI9QUwB9Z4jpvXUOuMdyGKiGKQiRe11VS6Jzvg== +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.7.5": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.8.tgz#195b9f2bffe995d2c6c159e72fe525b4114e8c10" + integrity sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og== dependencies: - "@babel/code-frame" "^7.14.5" - "@babel/generator" "^7.15.4" + "@babel/code-frame" "^7.15.8" + "@babel/generator" "^7.15.8" "@babel/helper-compilation-targets" "^7.15.4" - "@babel/helper-module-transforms" "^7.15.4" + "@babel/helper-module-transforms" "^7.15.8" "@babel/helpers" "^7.15.4" - "@babel/parser" "^7.15.5" + "@babel/parser" "^7.15.8" "@babel/template" "^7.15.4" "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.4" + "@babel/types" "^7.15.6" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -49,12 +49,12 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/generator@^7.15.4", "@babel/generator@^7.7.2": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.4.tgz#85acb159a267ca6324f9793986991ee2022a05b0" - integrity sha512-d3itta0tu+UayjEORPNz6e1T3FtvWlP5N4V5M+lhp/CxT4oAA7/NcScnpRyspUMLK6tu9MNHmQHxRykuN2R7hw== +"@babel/generator@^7.15.4", "@babel/generator@^7.15.8", "@babel/generator@^7.7.2": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.8.tgz#fa56be6b596952ceb231048cf84ee499a19c0cd1" + integrity sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.15.6" jsesc "^2.5.1" source-map "^0.5.0" @@ -105,10 +105,10 @@ dependencies: "@babel/types" "^7.15.4" -"@babel/helper-module-transforms@^7.15.4": - version "7.15.7" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.7.tgz#7da80c8cbc1f02655d83f8b79d25866afe50d226" - integrity sha512-ZNqjjQG/AuFfekFTY+7nY4RgBSklgTu970c7Rj3m/JOhIu5KPBUuTA9AY6zaKcUvk4g6EbDXdBnhi35FAssdSw== +"@babel/helper-module-transforms@^7.15.8": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz#d8c0e75a87a52e374a8f25f855174786a09498b2" + integrity sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg== dependencies: "@babel/helper-module-imports" "^7.15.4" "@babel/helper-replace-supers" "^7.15.4" @@ -197,10 +197,10 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.15.4", "@babel/parser@^7.15.5", "@babel/parser@^7.7.2": - version "7.15.7" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.7.tgz#0c3ed4a2eb07b165dfa85b3cc45c727334c4edae" - integrity sha512-rycZXvQ+xS9QyIcJ9HXeDWf1uxqlbVFAUq0Rq0dbc50Zb/+wUe/ehyfzGfm9KZZF0kBejYgxltBXocP+gKdL2g== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.15.4", "@babel/parser@^7.15.8", "@babel/parser@^7.7.2": + version "7.15.8" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.8.tgz#7bacdcbe71bdc3ff936d510c15dcea7cf0b99016" + integrity sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -330,14 +330,14 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.2.0.tgz#9e85756b0d0ee06c34b5635d7ef42d7a6c72bd6f" - integrity sha512-RqG0cxxiwaL9OgQbA2ZEfZaVIRJmbtsZgnj5G07AjN7///s/40grSN4/kDl8YjUgvAZskPfJRoGGYNvHJ4zHWA== +"@commitlint/cli@^13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.2.1.tgz#80ebd46beef6ceed3bb0c0842bcda8d02a3c91de" + integrity sha512-JGzYk2ay5JkRS5w+FLQzr0u/Kih52ds4HPpa3vnwVOQN8Q+S1VYr8Nk/6kRm6uNYsAcC1nejtuDxRdLcLh/9TA== dependencies: "@commitlint/format" "^13.2.0" "@commitlint/lint" "^13.2.0" - "@commitlint/load" "^13.2.0" + "@commitlint/load" "^13.2.1" "@commitlint/read" "^13.2.0" "@commitlint/types" "^13.2.0" lodash "^4.17.19" @@ -391,10 +391,10 @@ "@commitlint/rules" "^13.2.0" "@commitlint/types" "^13.2.0" -"@commitlint/load@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.2.0.tgz#6bd90b803f7fd102766731dad207cca075b67a4a" - integrity sha512-Nhkv+hwWCCxWGjmE9jd1U8kfGGCkZVpwzlTtdKxpY+Aj2VCFg3BjY+qA81pMF3oAsIpxchSaZG5llb8kduVjYg== +"@commitlint/load@^13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.2.1.tgz#d5d926dbd05021c02837c438ff1057025b28b745" + integrity sha512-qlaJkj0hfa9gtWRfCfbgFBTK3GYQRmjZhba4l9mUu4wV9lEZ4ICFlrLtd/8kaLXf/8xbrPhkAPkVFOAqM0YwUQ== dependencies: "@commitlint/execute-rule" "^13.2.0" "@commitlint/resolve-extends" "^13.2.0" @@ -404,6 +404,7 @@ cosmiconfig "^7.0.0" lodash "^4.17.19" resolve-from "^5.0.0" + typescript "^4.4.3" "@commitlint/message@^13.2.0": version "13.2.0" @@ -530,6 +531,20 @@ symbol-observable "^1.0.4" ws "^7.4.6" +"@httptoolkit/websocket-stream@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@httptoolkit/websocket-stream/-/websocket-stream-6.0.0.tgz#72d00c06944057951d7ab8a8f8336033c7b52e90" + integrity sha512-EC8m9JbhpGX2okfvLakqrmy4Le0VyNKR7b3IdvFZR/BfFO4ruh/XceBvXhCFHkykchnFxuOSlRwFiqNSXlwcGA== + dependencies: + "@types/ws" "*" + duplexify "^3.5.1" + inherits "^2.0.1" + isomorphic-ws "^4.0.1" + readable-stream "^2.3.3" + safe-buffer "^5.1.2" + ws "*" + xtend "^4.0.0" + "@humanwhocodes/config-array@^0.6.0": version "0.6.0" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.6.0.tgz#b5621fdb3b32309d2d16575456cbc277fa8f021a" @@ -560,93 +575,94 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.2.4.tgz#2f1a4bf82b9940065d4818fac271def99ec55e5e" - integrity sha512-94znCKynPZpDpYHQ6esRJSc11AmONrVkBOBZiD7S+bSubHhrUfbS95EY5HIOxhm4PQO7cnvZkL3oJcY0oMA+Wg== +"@jest/console@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.3.1.tgz#e8ea3a475d3f8162f23d69efbfaa9cbe486bee93" + integrity sha512-RkFNWmv0iui+qsOr/29q9dyfKTTT5DCuP31kUwg7rmOKPT/ozLeGLKJKVIiOfbiKyleUZKIrHwhmiZWVe8IMdw== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.2.4" - jest-util "^27.2.4" + jest-message-util "^27.3.1" + jest-util "^27.3.1" slash "^3.0.0" -"@jest/core@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.2.4.tgz#0b932da787d64848eab720dbb88e5b7a3f86e539" - integrity sha512-UNQLyy+rXoojNm2MGlapgzWhZD1CT1zcHZQYeiD0xE7MtJfC19Q6J5D/Lm2l7i4V97T30usKDoEtjI8vKwWcLg== +"@jest/core@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.3.1.tgz#04992ef1b58b17c459afb87ab56d81e63d386925" + integrity sha512-DMNE90RR5QKx0EA+wqe3/TNEwiRpOkhshKNxtLxd4rt3IZpCt+RSL+FoJsGeblRZmqdK4upHA/mKKGPPRAifhg== dependencies: - "@jest/console" "^27.2.4" - "@jest/reporters" "^27.2.4" - "@jest/test-result" "^27.2.4" - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/console" "^27.3.1" + "@jest/reporters" "^27.3.1" + "@jest/test-result" "^27.3.1" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^27.2.4" - jest-config "^27.2.4" - jest-haste-map "^27.2.4" - jest-message-util "^27.2.4" + jest-changed-files "^27.3.0" + jest-config "^27.3.1" + jest-haste-map "^27.3.1" + jest-message-util "^27.3.1" jest-regex-util "^27.0.6" - jest-resolve "^27.2.4" - jest-resolve-dependencies "^27.2.4" - jest-runner "^27.2.4" - jest-runtime "^27.2.4" - jest-snapshot "^27.2.4" - jest-util "^27.2.4" - jest-validate "^27.2.4" - jest-watcher "^27.2.4" + jest-resolve "^27.3.1" + jest-resolve-dependencies "^27.3.1" + jest-runner "^27.3.1" + jest-runtime "^27.3.1" + jest-snapshot "^27.3.1" + jest-util "^27.3.1" + jest-validate "^27.3.1" + jest-watcher "^27.3.1" micromatch "^4.0.4" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.2.4.tgz#db3e60f7dd30ab950f6ce2d6d7293ed9a6b7cbcd" - integrity sha512-wkuui5yr3SSQW0XD0Qm3TATUbL/WE3LDEM3ulC+RCQhMf2yxhci8x7svGkZ4ivJ6Pc94oOzpZ6cdHBAMSYd1ew== +"@jest/environment@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.3.1.tgz#2182defbce8d385fd51c5e7c7050f510bd4c86b1" + integrity sha512-BCKCj4mOVLme6Tanoyc9k0ultp3pnmuyHw73UHRPeeZxirsU/7E3HC4le/VDb/SMzE1JcPnto+XBKFOcoiJzVw== dependencies: - "@jest/fake-timers" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/fake-timers" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" - jest-mock "^27.2.4" + jest-mock "^27.3.0" -"@jest/fake-timers@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.2.4.tgz#00df08bd60332bd59503cb5b6db21e4903785f86" - integrity sha512-cs/TzvwWUM7kAA6Qm/890SK6JJ2pD5RfDNM3SSEom6BmdyV6OiWP1qf/pqo6ts6xwpcM36oN0wSEzcZWc6/B6w== +"@jest/fake-timers@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.3.1.tgz#1fad860ee9b13034762cdb94266e95609dfce641" + integrity sha512-M3ZFgwwlqJtWZ+QkBG5NmC23A9w+A6ZxNsO5nJxJsKYt4yguBd3i8TpjQz5NfCX91nEve1KqD9RA2Q+Q1uWqoA== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.2.4" - jest-mock "^27.2.4" - jest-util "^27.2.4" + jest-message-util "^27.3.1" + jest-mock "^27.3.0" + jest-util "^27.3.1" -"@jest/globals@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.2.4.tgz#0aeb22b011f8c8c4b8ff3b4dbd1ee0392fe0dd8a" - integrity sha512-DRsRs5dh0i+fA9mGHylTU19+8fhzNJoEzrgsu+zgJoZth3x8/0juCQ8nVVdW1er4Cqifb/ET7/hACYVPD0dBEA== +"@jest/globals@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.3.1.tgz#ce1dfb03d379237a9da6c1b99ecfaca1922a5f9e" + integrity sha512-Q651FWiWQAIFiN+zS51xqhdZ8g9b88nGCobC87argAxA7nMfNQq0Q0i9zTfQYgLa6qFXk2cGANEqfK051CZ8Pg== dependencies: - "@jest/environment" "^27.2.4" - "@jest/types" "^27.2.4" - expect "^27.2.4" + "@jest/environment" "^27.3.1" + "@jest/types" "^27.2.5" + expect "^27.3.1" -"@jest/reporters@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.2.4.tgz#1482ff007f2e919d85c54b1563abb8b2ea2d5198" - integrity sha512-LHeSdDnDZkDnJ8kvnjcqV8P1Yv/32yL4d4XfR5gBiy3xGO0onwll1QEbvtW96fIwhx2nejug0GTaEdNDoyr3fQ== +"@jest/reporters@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.3.1.tgz#28b5c1f5789481e23788048fa822ed15486430b9" + integrity sha512-m2YxPmL9Qn1emFVgZGEiMwDntDxRRQ2D58tiDQlwYTg5GvbFOKseYCcHtn0WsI8CG4vzPglo3nqbOiT8ySBT/w== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.2.4" - "@jest/test-result" "^27.2.4" - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/console" "^27.3.1" + "@jest/test-result" "^27.3.1" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" + "@types/node" "*" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -657,10 +673,10 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^27.2.4" - jest-resolve "^27.2.4" - jest-util "^27.2.4" - jest-worker "^27.2.4" + jest-haste-map "^27.3.1" + jest-resolve "^27.3.1" + jest-util "^27.3.1" + jest-worker "^27.3.1" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" @@ -676,41 +692,41 @@ graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.2.4.tgz#d1ca8298d168f1b0be834bfb543b1ac0294c05d7" - integrity sha512-eU+PRo0+lIS01b0dTmMdVZ0TtcRSxEaYquZTRFMQz6CvsehGhx9bRzi9Zdw6VROviJyv7rstU+qAMX5pNBmnfQ== +"@jest/test-result@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.3.1.tgz#89adee8b771877c69b3b8d59f52f29dccc300194" + integrity sha512-mLn6Thm+w2yl0opM8J/QnPTqrfS4FoXsXF2WIWJb2O/GBSyResL71BRuMYbYRsGt7ELwS5JGcEcGb52BNrumgg== dependencies: - "@jest/console" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/console" "^27.3.1" + "@jest/types" "^27.2.5" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.2.4.tgz#df66422a3e9e7440ce8b7498e255fa6b52c0bc03" - integrity sha512-fpk5eknU3/DXE2QCCG1wv/a468+cfPo3Asu6d6yUtM9LOPh709ubZqrhuUOYfM8hXMrIpIdrv1CdCrWWabX0rQ== +"@jest/test-sequencer@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.3.1.tgz#4b3bde2dbb05ee74afdae608cf0768e3354683b1" + integrity sha512-siySLo07IMEdSjA4fqEnxfIX8lB/lWYsBPwNFtkOvsFQvmBrL3yj3k3uFNZv/JDyApTakRpxbKLJ3CT8UGVCrA== dependencies: - "@jest/test-result" "^27.2.4" + "@jest/test-result" "^27.3.1" graceful-fs "^4.2.4" - jest-haste-map "^27.2.4" - jest-runtime "^27.2.4" + jest-haste-map "^27.3.1" + jest-runtime "^27.3.1" -"@jest/transform@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.2.4.tgz#2fe5b6836895f7a1b8bdec442c51e83943c62733" - integrity sha512-n5FlX2TH0oQGwyVDKPxdJ5nI2sO7TJBFe3u3KaAtt7TOiV4yL+Y+rSFDl+Ic5MpbiA/eqXmLAQxjnBmWgS2rEA== +"@jest/transform@^27.3.1": + version "27.3.1" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.3.1.tgz#ff80eafbeabe811e9025e4b6f452126718455220" + integrity sha512-3fSvQ02kuvjOI1C1ssqMVBKJpZf6nwoCiSu00zAKh5nrp3SptNtZy/8s5deayHnqxhjD9CWDJ+yqQwuQ0ZafXQ== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.2.4" + jest-haste-map "^27.3.1" jest-regex-util "^27.0.6" - jest-util "^27.2.4" + jest-util "^27.3.1" micromatch "^4.0.4" pirates "^4.0.1" slash "^3.0.0" @@ -728,21 +744,10 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jest/types@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.6.tgz#9a992bc517e0c49f035938b8549719c2de40706b" - integrity sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - -"@jest/types@^27.2.4": - version "27.2.4" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.4.tgz#2430042a66e00dc5b140c3636f4474d464c21ee8" - integrity sha512-IDO2ezTxeMvQAHxzG/ZvEyA47q0aVfzT95rGFl7bZs/Go0aIucvfDbS2rmnoEdXxlLQhcolmoG/wvL/uKx4tKA== +"@jest/types@^27.2.5": + version "27.2.5" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132" + integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" @@ -920,10 +925,10 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^27.0.1": - version "27.0.1" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.1.tgz#fafcc997da0135865311bb1215ba16dba6bdf4ca" - integrity sha512-HTLpVXHrY69556ozYkcq47TtQJXpcWAWfkoqz+ZGz2JnmZhzlRjprCIyFnetSy8gpDWwTTGBcRVv1J1I1vBrHw== +"@types/jest@^27.0.2": + version "27.0.2" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.2.tgz#ac383c4d4aaddd29bbf2b916d8d105c304a5fcd7" + integrity sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA== dependencies: jest-diff "^27.0.0" pretty-format "^27.0.0" @@ -955,10 +960,10 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== -"@types/node@^16.10.2", "@types/node@^16.7.10": - version "16.10.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.10.2.tgz#5764ca9aa94470adb4e1185fe2e9f19458992b2e" - integrity sha512-zCclL4/rx+W5SQTzFs9wyvvyCwoK9QtBpratqz2IYJ3O8Umrn0m3nsTv0wQBk9sRGpvUe9CwPDrQFB10f1FIjQ== +"@types/node@^16.11.6", "@types/node@^16.7.10": + version "16.11.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae" + integrity sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w== "@types/normalize-package-data@^2.4.0": version "2.4.1" @@ -1013,7 +1018,7 @@ dependencies: "@types/superagent" "*" -"@types/ws@^8.2.0": +"@types/ws@*", "@types/ws@^8.2.0": version "8.2.0" resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.2.0.tgz#75faefbe2328f3b833cb8dc640658328990d04f3" integrity sha512-cyeefcUCgJlEk+hk2h3N+MqKKsPViQgF5boi9TTHSK+PoR9KWBb/C5ccPcDyAqgsbAYHTwulch725DV84+pSpg== @@ -1205,12 +1210,7 @@ ansi-regex@^2.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== - -ansi-regex@^5.0.1: +ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== @@ -1307,11 +1307,6 @@ async-each-series@0.1.1: resolved "https://registry.yarnpkg.com/async-each-series/-/async-each-series-0.1.1.tgz#7617c1917401fd8ca4a28aadce3dbae98afeb432" integrity sha1-dhfBkXQB/Yykooqtzj266Yr+tDI= -async-limiter@~1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" - integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== - async@1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" @@ -1336,13 +1331,13 @@ axios@0.21.4: dependencies: follow-redirects "^1.14.0" -babel-jest@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.2.4.tgz#21ed6729d51bdd75470bbbf3c8b08d86209fb0dc" - integrity sha512-f24OmxyWymk5jfgLdlCMu4fTs4ldxFBIdn5sJdhvGC1m08rSkJ5hYbWkNmfBSvE/DjhCVNSHXepxsI6THGfGsg== +babel-jest@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.3.1.tgz#0636a3404c68e07001e434ac4956d82da8a80022" + integrity sha512-SjIF8hh/ir0peae2D6S6ZKRhUy7q/DnpH7k/V6fT4Bgs/LXXUztOpX4G2tCgq8mLo5HA9mN6NmlFMeYtKmIsTQ== dependencies: - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.0.0" babel-preset-jest "^27.2.0" @@ -1351,14 +1346,14 @@ babel-jest@^27.2.4: slash "^3.0.0" babel-plugin-istanbul@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz#e159ccdc9af95e0b570c75b4573b7c34d671d765" - integrity sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ== + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" "@istanbuljs/load-nyc-config" "^1.0.0" "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^4.0.0" + istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" babel-plugin-jest-hoist@^27.2.0: @@ -1478,20 +1473,20 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browser-sync-client@^2.27.5: - version "2.27.5" - resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.5.tgz#acca1d8d3cf2a212e22e50119c97947772b79ef7" - integrity sha512-l2jtf60/exv0fQiZkhi3z8RgexYYLGS7DVDnyepkrp+oFAPlKW69daL6NrVSgrwu6lzSTCCTAiPXnUSrQ57e/Q== +browser-sync-client@^2.27.6: + version "2.27.6" + resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.6.tgz#23a3bd339d352bec6ce1870e9d49ce6ea357b0e8" + integrity sha512-hqTThp4/nE0Rxu6kn2UXVH9f8WhoHDls+bfhkZjhzCJfDdnGN9VyuwcgfD6gofaxvbzaDK00FiSCACFdmILDdg== dependencies: etag "1.8.1" fresh "0.5.2" mitt "^1.1.3" rxjs "^5.5.6" -browser-sync-ui@^2.27.5: - version "2.27.5" - resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.27.5.tgz#fe016377edaff7d4a9cb1e8a449cc0807e814884" - integrity sha512-KxBJhQ6XNbQ8w8UlkPa9/J5R0nBHgHuJUtDpEXQx1jBapDy32WGzD0NENDozP4zGNvJUgZk3N80hqB7YCieC3g== +browser-sync-ui@^2.27.6: + version "2.27.6" + resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.27.6.tgz#c54dd7133ac96dc65824d341afc400504cb63a04" + integrity sha512-0nKvGG39z5cGIyPWhNgJBF4p6n6X6JjQj99EpilHEkUOnagbVRtJaWOXlOrkPNxsz5IZ3zx4pk0wYEO4IX7J8w== dependencies: async-each-series "0.1.1" connect-history-api-fallback "^1" @@ -1500,13 +1495,13 @@ browser-sync-ui@^2.27.5: socket.io-client "^2.4.0" stream-throttle "^0.1.3" -browser-sync@^2.27.5: - version "2.27.5" - resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.5.tgz#9e547645b045f8780d775dc2cc5409357bec6c08" - integrity sha512-0GMEPDqccbTxwYOUGCk5AZloDj9I/1eDZCLXUKXu7iBJPznGGOnMHs88mrhaFL0fTA0R23EmsXX9nLZP+k5YzA== +browser-sync@^2.27.6: + version "2.27.6" + resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.6.tgz#2c9e80e5e459df849eba3a12373c488c6ff667fd" + integrity sha512-lknOs7RmALVC8iLvQuNv0vhe6lChaT+GTP8qVw7s4+fZAhNvFn6jWedX94HMRs4iJOrwrm7kdg52G9mf1oHmAA== dependencies: - browser-sync-client "^2.27.5" - browser-sync-ui "^2.27.5" + browser-sync-client "^2.27.6" + browser-sync-ui "^2.27.6" bs-recipes "1.3.4" bs-snippet-injector "^2.0.1" chokidar "^3.5.1" @@ -1533,19 +1528,19 @@ browser-sync@^2.27.5: serve-static "1.13.2" server-destroy "1.0.1" socket.io "2.4.0" - ua-parser-js "^0.7.28" + ua-parser-js "1.0.1" yargs "^15.4.1" browserslist@^4.16.6: - version "4.17.2" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.2.tgz#aa15dbd2fab399a399fe4df601bb09363c5458a6" - integrity sha512-jSDZyqJmkKMEMi7SZAgX5UltFdR5NAO43vY0AwTpu4X3sGH7GLLQ83KiUomgrnvZRCeW0yPPnKqnxPqQOER9zQ== + version "4.17.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.5.tgz#c827bbe172a4c22b123f5e337533ceebadfdd559" + integrity sha512-I3ekeB92mmpctWBoLXe0d5wPS2cBuRvvW0JyyJHMrk9/HmP2ZjrTboNAZ8iuGqaEIlKguljbQY32OkOJIRrgoA== dependencies: - caniuse-lite "^1.0.30001261" - electron-to-chromium "^1.3.854" + caniuse-lite "^1.0.30001271" + electron-to-chromium "^1.3.878" escalade "^3.1.1" - nanocolors "^0.2.12" - node-releases "^1.1.76" + node-releases "^2.0.1" + picocolors "^1.0.0" bs-logger@0.x: version "0.2.6" @@ -1582,9 +1577,9 @@ bytes@3.1.0: integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== cacheable-lookup@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.1.tgz#f32ab50c3212302d9f49aa094c8a7593c162af7c" - integrity sha512-vaccXt7hUfa5UzrtbdzHTWnL6V6ir39QtLuvGZys32j4HboAeiWVhrcdAm8ecTz1rLubxPhec2n22BBb5/dgVA== + version "6.0.4" + resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.4.tgz#65c0e51721bb7f9f2cb513aed6da4a1b93ad7dc8" + integrity sha512-mbcDEZCkv2CZF4G01kr8eBd/5agkt9oCqz75tJMSIsquvRZ2sL6Hi5zGVKi/0OSC9oO1GHfJ2AV0ZIOY9vye0A== callsites@^3.0.0: version "3.1.0" @@ -1618,10 +1613,10 @@ camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== -caniuse-lite@^1.0.30001261: - version "1.0.30001263" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001263.tgz#7ce7a6fb482a137585cbc908aaf38e90c53a16a4" - integrity sha512-doiV5dft6yzWO1WwU19kt8Qz8R0/8DgEziz6/9n2FxUasteZNwNNYSmJO3GLBH8lCVE73AB1RPDPAeYbcO5Cvw== +caniuse-lite@^1.0.30001271: + version "1.0.30001271" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001271.tgz#0dda0c9bcae2cf5407cd34cac304186616cc83e8" + integrity sha512-BBruZFWmt3HFdVPS8kceTBIguKxu4f99n5JNp06OlPD/luoAMIaIK5ieV5YjnBLH3Nysai9sxj9rpJj4ZisXOA== chalk@^1.1.3: version "1.1.3" @@ -1643,7 +1638,7 @@ chalk@^2.0.0: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1: +chalk@^4.0.0: version "4.1.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad" integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== @@ -1671,7 +1666,7 @@ chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.2" -ci-info@^3.1.1: +ci-info@^3.1.1, ci-info@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6" integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== @@ -1693,7 +1688,7 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-truncate@^2.1.0: +cli-truncate@2.1.0, cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== @@ -1753,6 +1748,16 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +colorette@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" + integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== + +colorette@^2.0.16: + version "2.0.16" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" + integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== + combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -1765,10 +1770,10 @@ commander@^2.2.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== +commander@^8.2.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== common-tags@^1.8.0: version "1.8.0" @@ -1930,6 +1935,17 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" +cosmiconfig@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" + integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== + 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" + create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" @@ -1987,7 +2003,7 @@ debug@2.6.9, debug@^2.2.0: dependencies: ms "2.0.0" -debug@4, debug@^4.1.1, debug@^4.3.1: +debug@4, debug@^4.1.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== @@ -2167,10 +2183,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.854: - version "1.3.856" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.856.tgz#75dee0eef9702bffabbf4c1293c989cd3cacb7ba" - integrity sha512-lSezYIe1/p5qkEswAfaQUseOBiwGwuCvRl/MKzOEVe++DcmQ92+43dznDl4rFJ4Zpu+kevhwyIf7KjJevyDA/A== +electron-to-chromium@^1.3.878: + version "1.3.879" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.879.tgz#4aba9700cfb241fb95c6ed69e31785e3d1605a43" + integrity sha512-zJo+D9GwbJvM31IdFmwcGvychhk4KKbKYo2GWlsn+C/dxz2NwmbhGJjWwTfFSF2+eFH7VvfA8MCZ8SOqTrlnpw== emittery@^0.8.1: version "0.8.1" @@ -2459,21 +2475,36 @@ execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" +execa@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + 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" + exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.2.4.tgz#4debf546050bcdad8914a8c95fec7662e02bf67c" - integrity sha512-gOtuonQ8TCnbNNCSw2fhVzRf8EFYDII4nB5NmG4IEV0rbUnW1I5zXvoTntU4iicB/Uh0oZr20NGlOLdJiwsOZA== +expect@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.3.1.tgz#d0f170b1f5c8a2009bab0beffd4bb94f043e38e7" + integrity sha512-MrNXV2sL9iDRebWPGOGFdPQRl2eDQNu/uhxIMShjjx74T6kC6jFIkmQ6OqXDtevjGUkyB2IT56RzDBqXf/QPCg== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" ansi-styles "^5.0.0" - jest-get-type "^27.0.6" - jest-matcher-utils "^27.2.4" - jest-message-util "^27.2.4" + jest-get-type "^27.3.1" + jest-matcher-utils "^27.3.1" + jest-message-util "^27.3.1" jest-regex-util "^27.0.6" express-graphql@^0.11.0: @@ -2580,13 +2611,6 @@ fetch-ponyfill@^7.1.0: dependencies: node-fetch "~2.6.1" -figures@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -2897,9 +2921,9 @@ graphql-subscriptions@^1.1.0: iterall "^1.3.0" "graphql@^14.0.2 || ^15.5": - version "15.6.0" - resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.6.0.tgz#e69323c6a9780a1a4b9ddf7e35ca8904bb04df02" - integrity sha512-WJR872Zlc9hckiEPhXgyUftXH48jp2EjO5tgBBOyNMRJZ9fviL2mJBD6CAysk6N5S0r9BTs09Qk39nnJBkvOXQ== + version "15.7.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.7.0.tgz#caace26caf9b875b80982c45db58765d8a060e3e" + integrity sha512-1jvUsS5mSzcgXLTQNQyrP7eKkBZW+HUnmx2LYSnfvkyseVpij8wwO/sFBGgxbkZ+zzFwYQxrHsOana5oMXmMxg== hard-rejection@^2.1.0: version "2.1.0" @@ -3056,10 +3080,10 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -husky@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.2.tgz#21900da0f30199acca43a46c043c4ad84ae88dff" - integrity sha512-8yKEWNX4z2YsofXAMT7KvA1g8p+GxtB1ffV8XtpAEGuXNAbCV5wdNKH+qTpw8SM9fh4aMPDR+yQuKfgnreyZlg== +husky@^7.0.4: + version "7.0.4" + resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.4.tgz#242048245dc49c8fb1bf0cc7cfb98dd722531535" + integrity sha512-vbaCKN2QLtP/vD4yvs6iz6hBEo6wkSzs8HpRah1Z6aGmF2KW5PdYuAd7uX5a+OyBZHBhd+TFLqgjUgytQr4RvQ== iconv-lite@0.4.24: version "0.4.24" @@ -3092,9 +3116,9 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: resolve-from "^4.0.0" import-local@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" - integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + version "3.0.3" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" + integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== dependencies: pkg-dir "^4.2.0" resolve-cwd "^3.0.0" @@ -3273,11 +3297,6 @@ is-typedarray@^1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= -is-unicode-supported@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" - integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== - is-wsl@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" @@ -3310,12 +3329,17 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= +isomorphic-ws@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" + integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== + istanbul-lib-coverage@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.1.tgz#e8900b3ed6069759229cf30f7067388d148aeb5e" - integrity sha512-GvCYYTxaCPqwMjobtVcVKvSHtAGe48MNhGjpK8LtVF8K0ISX7hCKl85LgtuaSneWVyQmaGcW3iXVV3GaZSLpmQ== + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: +istanbul-lib-instrument@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== @@ -3325,6 +3349,17 @@ istanbul-lib-instrument@^4.0.0, istanbul-lib-instrument@^4.0.3: istanbul-lib-coverage "^3.0.0" semver "^6.3.0" +istanbul-lib-instrument@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.0.4.tgz#e976f2aa66ebc6737f236d3ab05b76e36f885c80" + integrity sha512-W6jJF9rLGEISGoCyXRqa/JCGQGmmxPO10TMu7izaUTynxvBvTjqzAIIGCK9USBmIbQAaSWD6XJPrM9Pv5INknw== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + istanbul-lib-report@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" @@ -3335,18 +3370,18 @@ istanbul-lib-report@^3.0.0: supports-color "^7.1.0" istanbul-lib-source-maps@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz#75743ce6d96bb86dc7ee4352cf6366a23f0b1ad9" - integrity sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg== + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" istanbul-reports@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.2.tgz#d593210e5000683750cb09fc0644e4b6e27fd53b" - integrity sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw== + version "3.0.5" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.5.tgz#a2580107e71279ea6d661ddede929ffc6d693384" + integrity sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -3356,104 +3391,94 @@ iterall@^1.2.1, iterall@^1.3.0: resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.2.4.tgz#d7de46e90e5a599c47e260760f5ab53516e835e6" - integrity sha512-eeO1C1u4ex7pdTroYXezr+rbr957myyVoKGjcY4R1TJi3A+9v+4fu1Iv9J4eLq1bgFyT3O3iRWU9lZsEE7J72Q== +jest-changed-files@^27.3.0: + version "27.3.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.3.0.tgz#22a02cc2b34583fc66e443171dc271c0529d263c" + integrity sha512-9DJs9garMHv4RhylUMZgbdCJ3+jHSkpL9aaVKp13xtXAD80qLTLrqcDZL1PHA9dYA0bCI86Nv2BhkLpLhrBcPg== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.2.4.tgz#3bd898a29dcaf6a506f3f1b780dff5f67ca83c23" - integrity sha512-TtheheTElrGjlsY9VxkzUU1qwIx05ItIusMVKnvNkMt4o/PeegLRcjq3Db2Jz0GGdBalJdbzLZBgeulZAJxJWA== +jest-circus@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.3.1.tgz#1679e74387cbbf0c6a8b42de963250a6469e0797" + integrity sha512-v1dsM9II6gvXokgqq6Yh2jHCpfg7ZqV4jWY66u7npz24JnhP3NHxI0sKT7+ZMQ7IrOWHYAaeEllOySbDbWsiXw== dependencies: - "@jest/environment" "^27.2.4" - "@jest/test-result" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/environment" "^27.3.1" + "@jest/test-result" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.2.4" + expect "^27.3.1" is-generator-fn "^2.0.0" - jest-each "^27.2.4" - jest-matcher-utils "^27.2.4" - jest-message-util "^27.2.4" - jest-runtime "^27.2.4" - jest-snapshot "^27.2.4" - jest-util "^27.2.4" - pretty-format "^27.2.4" + jest-each "^27.3.1" + jest-matcher-utils "^27.3.1" + jest-message-util "^27.3.1" + jest-runtime "^27.3.1" + jest-snapshot "^27.3.1" + jest-util "^27.3.1" + pretty-format "^27.3.1" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.2.4.tgz#acda7f367aa6e674723fc1a7334e0ae1799448d2" - integrity sha512-4kpQQkg74HYLaXo3nzwtg4PYxSLgL7puz1LXHj5Tu85KmlIpxQFjRkXlx4V47CYFFIDoyl3rHA/cXOxUWyMpNg== +jest-cli@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.3.1.tgz#b576f9d146ba6643ce0a162d782b40152b6b1d16" + integrity sha512-WHnCqpfK+6EvT62me6WVs8NhtbjAS4/6vZJnk7/2+oOr50cwAzG4Wxt6RXX0hu6m1169ZGMlhYYUNeKBXCph/Q== dependencies: - "@jest/core" "^27.2.4" - "@jest/test-result" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/core" "^27.3.1" + "@jest/test-result" "^27.3.1" + "@jest/types" "^27.2.5" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - jest-config "^27.2.4" - jest-util "^27.2.4" - jest-validate "^27.2.4" + jest-config "^27.3.1" + jest-util "^27.3.1" + jest-validate "^27.3.1" prompts "^2.0.1" yargs "^16.2.0" -jest-config@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.2.4.tgz#0204969f5ae2e5190d47be2c14c04d631b7836e2" - integrity sha512-tWy0UxhdzqiKyp4l5Vq4HxLyD+gH5td+GCF3c22/DJ0bYAOsMo+qi2XtbJI6oYMH5JOJQs9nLW/r34nvFCehjA== +jest-config@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.3.1.tgz#cb3b7f6aaa8c0a7daad4f2b9573899ca7e09bbad" + integrity sha512-KY8xOIbIACZ/vdYCKSopL44I0xboxC751IX+DXL2+Wx6DKNycyEfV3rryC3BPm5Uq/BBqDoMrKuqLEUNJmMKKg== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.2.4" - "@jest/types" "^27.2.4" - babel-jest "^27.2.4" + "@jest/test-sequencer" "^27.3.1" + "@jest/types" "^27.2.5" + babel-jest "^27.3.1" chalk "^4.0.0" + ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - is-ci "^3.0.0" - jest-circus "^27.2.4" - jest-environment-jsdom "^27.2.4" - jest-environment-node "^27.2.4" - jest-get-type "^27.0.6" - jest-jasmine2 "^27.2.4" + jest-circus "^27.3.1" + jest-environment-jsdom "^27.3.1" + jest-environment-node "^27.3.1" + jest-get-type "^27.3.1" + jest-jasmine2 "^27.3.1" jest-regex-util "^27.0.6" - jest-resolve "^27.2.4" - jest-runner "^27.2.4" - jest-util "^27.2.4" - jest-validate "^27.2.4" + jest-resolve "^27.3.1" + jest-runner "^27.3.1" + jest-util "^27.3.1" + jest-validate "^27.3.1" micromatch "^4.0.4" - pretty-format "^27.2.4" + pretty-format "^27.3.1" -jest-diff@^27.0.0: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.0.6.tgz#4a7a19ee6f04ad70e0e3388f35829394a44c7b5e" - integrity sha512-Z1mqgkTCSYaFgwTlP/NUiRzdqgxmmhzHY1Tq17zL94morOHfHu3K4bgSgl+CR4GLhpV8VxkuOYuIWnQ9LnFqmg== +jest-diff@^27.0.0, jest-diff@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.3.1.tgz#d2775fea15411f5f5aeda2a5e02c2f36440f6d55" + integrity sha512-PCeuAH4AWUo2O5+ksW4pL9v5xJAcIKPUPfIhZBcG1RKv/0+dvaWTQK1Nrau8d67dp65fOqbeMdoil+6PedyEPQ== dependencies: chalk "^4.0.0" diff-sequences "^27.0.6" - jest-get-type "^27.0.6" - pretty-format "^27.0.6" - -jest-diff@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.2.4.tgz#171c51d3d2c105c457100fee6e7bf7cee51c8d8c" - integrity sha512-bLAVlDSCR3gqUPGv+4nzVpEXGsHh98HjUL7Vb2hVyyuBDoQmja8eJb0imUABsuxBeUVmf47taJSAd9nDrwWKEg== - dependencies: - chalk "^4.0.0" - diff-sequences "^27.0.6" - jest-get-type "^27.0.6" - pretty-format "^27.2.4" + jest-get-type "^27.3.1" + pretty-format "^27.3.1" jest-docblock@^27.0.6: version "27.0.6" @@ -3462,53 +3487,53 @@ jest-docblock@^27.0.6: dependencies: detect-newline "^3.0.0" -jest-each@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.2.4.tgz#b4f280aafd63129ba82e345f0e74c5a10200aeef" - integrity sha512-w9XVc+0EDBUTJS4xBNJ7N2JCcWItFd006lFjz77OarAQcQ10eFDBMrfDv2GBJMKlXe9aq0HrIIF51AXcZrRJyg== +jest-each@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.3.1.tgz#14c56bb4f18dd18dc6bdd853919b5f16a17761ff" + integrity sha512-E4SwfzKJWYcvOYCjOxhZcxwL+AY0uFMvdCOwvzgutJiaiodFjkxQQDxHm8FQBeTqDnSmKsQWn7ldMRzTn2zJaQ== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" chalk "^4.0.0" - jest-get-type "^27.0.6" - jest-util "^27.2.4" - pretty-format "^27.2.4" - -jest-environment-jsdom@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.2.4.tgz#39ae80bbb8675306bfaf0440be1e5f877554539a" - integrity sha512-X70pTXFSypD7AIzKT1mLnDi5hP9w9mdTRcOGOmoDoBrNyNEg4rYm6d4LQWFLc9ps1VnMuDOkFSG0wjSNYGjkng== - dependencies: - "@jest/environment" "^27.2.4" - "@jest/fake-timers" "^27.2.4" - "@jest/types" "^27.2.4" + jest-get-type "^27.3.1" + jest-util "^27.3.1" + pretty-format "^27.3.1" + +jest-environment-jsdom@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.3.1.tgz#63ac36d68f7a9303494df783494856222b57f73e" + integrity sha512-3MOy8qMzIkQlfb3W1TfrD7uZHj+xx8Olix5vMENkj5djPmRqndMaXtpnaZkxmxM+Qc3lo+yVzJjzuXbCcZjAlg== + dependencies: + "@jest/environment" "^27.3.1" + "@jest/fake-timers" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" - jest-mock "^27.2.4" - jest-util "^27.2.4" + jest-mock "^27.3.0" + jest-util "^27.3.1" jsdom "^16.6.0" -jest-environment-node@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.2.4.tgz#b79f98cb36e0c9111aac859c9c99f04eb2f74ff6" - integrity sha512-ZbVbFSnbzTvhLOIkqh5lcLuGCCFvtG4xTXIRPK99rV2KzQT3kNg16KZwfTnLNlIiWCE8do960eToeDfcqmpSAw== +jest-environment-node@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.3.1.tgz#af7d0eed04edafb740311b303f3fe7c8c27014bb" + integrity sha512-T89F/FgkE8waqrTSA7/ydMkcc52uYPgZZ6q8OaZgyiZkJb5QNNCF6oPZjH9IfPFfcc9uBWh1574N0kY0pSvTXw== dependencies: - "@jest/environment" "^27.2.4" - "@jest/fake-timers" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/environment" "^27.3.1" + "@jest/fake-timers" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" - jest-mock "^27.2.4" - jest-util "^27.2.4" + jest-mock "^27.3.0" + jest-util "^27.3.1" -jest-get-type@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.0.6.tgz#0eb5c7f755854279ce9b68a9f1a4122f69047cfe" - integrity sha512-XTkK5exIeUbbveehcSR8w0bhH+c0yloW/Wpl+9vZrjzztCPWrxhHwkIFpZzCt71oRBsgxmuUfxEqOYoZI2macg== +jest-get-type@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.3.1.tgz#a8a2b0a12b50169773099eee60a0e6dd11423eff" + integrity sha512-+Ilqi8hgHSAdhlQ3s12CAVNd8H96ZkQBfYoXmArzZnOfAtVAJEiPDBirjByEblvG/4LPJmkL+nBqPO3A1YJAEg== -jest-haste-map@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.2.4.tgz#f8974807bedf07348ca9fd24e5861ab7c8e61aba" - integrity sha512-bkJ4bT00T2K+1NZXbRcyKnbJ42I6QBvoDNMTAQQDBhaGNnZreiQKUNqax0e6hLTx7E75pKDeltVu3V1HAdu+YA== +jest-haste-map@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.3.1.tgz#7656fbd64bf48bda904e759fc9d93e2c807353ee" + integrity sha512-lYfNZIzwPccDJZIyk9Iz5iQMM/MH56NIIcGj7AFU1YyA4ewWFBl8z+YPJuSCRML/ee2cCt2y3W4K3VXPT6Nhzg== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" @@ -3516,76 +3541,76 @@ jest-haste-map@^27.2.4: graceful-fs "^4.2.4" jest-regex-util "^27.0.6" jest-serializer "^27.0.6" - jest-util "^27.2.4" - jest-worker "^27.2.4" + jest-util "^27.3.1" + jest-worker "^27.3.1" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.2.4.tgz#4a1608133dbdb4d68b5929bfd785503ed9c9ba51" - integrity sha512-fcffjO/xLWLVnW2ct3No4EksxM5RyPwHDYu9QU+90cC+/eSMLkFAxS55vkqsxexOO5zSsZ3foVpMQcg/amSeIQ== +jest-jasmine2@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.3.1.tgz#df6d3d07c7dafc344feb43a0072a6f09458d32b0" + integrity sha512-WK11ZUetDQaC09w4/j7o4FZDUIp+4iYWH/Lik34Pv7ukL+DuXFGdnmmi7dT58J2ZYKFB5r13GyE0z3NPeyJmsg== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.2.4" + "@jest/environment" "^27.3.1" "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/test-result" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.2.4" + expect "^27.3.1" is-generator-fn "^2.0.0" - jest-each "^27.2.4" - jest-matcher-utils "^27.2.4" - jest-message-util "^27.2.4" - jest-runtime "^27.2.4" - jest-snapshot "^27.2.4" - jest-util "^27.2.4" - pretty-format "^27.2.4" + jest-each "^27.3.1" + jest-matcher-utils "^27.3.1" + jest-message-util "^27.3.1" + jest-runtime "^27.3.1" + jest-snapshot "^27.3.1" + jest-util "^27.3.1" + pretty-format "^27.3.1" throat "^6.0.1" -jest-leak-detector@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.2.4.tgz#9bb7eab26a73bb280e9298be8d80f389288ec8f1" - integrity sha512-SrcHWbe0EHg/bw2uBjVoHacTo5xosl068x2Q0aWsjr2yYuW2XwqrSkZV4lurUop0jhv1709ymG4or+8E4sH27Q== +jest-leak-detector@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.3.1.tgz#7fb632c2992ef707a1e73286e1e704f9cc1772b2" + integrity sha512-78QstU9tXbaHzwlRlKmTpjP9k4Pvre5l0r8Spo4SbFFVy/4Abg9I6ZjHwjg2QyKEAMg020XcjP+UgLZIY50yEg== dependencies: - jest-get-type "^27.0.6" - pretty-format "^27.2.4" + jest-get-type "^27.3.1" + pretty-format "^27.3.1" -jest-matcher-utils@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.2.4.tgz#008fff018151415ad1b6cfc083fd70fe1e012525" - integrity sha512-nQeLfFAIPPkyhkDfifAPfP/U5wm1x0fLtAzqXZSSKckXDNuk2aaOfQiDYv1Mgf5GY6yOsxfUnvNm3dDjXM+BXw== +jest-matcher-utils@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.3.1.tgz#257ad61e54a6d4044e080d85dbdc4a08811e9c1c" + integrity sha512-hX8N7zXS4k+8bC1Aj0OWpGb7D3gIXxYvPNK1inP5xvE4ztbz3rc4AkI6jGVaerepBnfWB17FL5lWFJT3s7qo8w== dependencies: chalk "^4.0.0" - jest-diff "^27.2.4" - jest-get-type "^27.0.6" - pretty-format "^27.2.4" + jest-diff "^27.3.1" + jest-get-type "^27.3.1" + pretty-format "^27.3.1" -jest-message-util@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.2.4.tgz#667e8c0f2b973156d1bac7398a7f677705cafaca" - integrity sha512-wbKT/BNGnBVB9nzi+IoaLkXt6fbSvqUxx+IYY66YFh96J3goY33BAaNG3uPqaw/Sh/FR9YpXGVDfd5DJdbh4nA== +jest-message-util@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.3.1.tgz#f7c25688ad3410ab10bcb862bcfe3152345c6436" + integrity sha512-bh3JEmxsTZ/9rTm0jQrPElbY2+y48Rw2t47uMfByNyUVR+OfPh4anuyKsGqsNkXk/TI4JbLRZx+7p7Hdt6q1yg== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.4" micromatch "^4.0.4" - pretty-format "^27.2.4" + pretty-format "^27.3.1" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.2.4.tgz#c8f0ef33f73d8ff53e3f60b16d59f1128f4072ae" - integrity sha512-iVRU905rutaAoUcrt5Tm1JoHHWi24YabqEGXjPJI4tAyA6wZ7mzDi3GrZ+M7ebgWBqUkZE93GAx1STk7yCMIQA== +jest-mock@^27.3.0: + version "27.3.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.3.0.tgz#ddf0ec3cc3e68c8ccd489bef4d1f525571a1b867" + integrity sha512-ziZiLk0elZOQjD08bLkegBzv5hCABu/c8Ytx45nJKkysQwGaonvmTxwjLqEA4qGdasq9o2I8/HtdGMNnVsMTGw== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3598,72 +3623,71 @@ jest-regex-util@^27.0.6: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5" integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== -jest-resolve-dependencies@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.2.4.tgz#20c41cc02b66aa45169b282356ec73b133013089" - integrity sha512-i5s7Uh9B3Q6uwxLpMhNKlgBf6pcemvWaORxsW1zNF/YCY3jd5EftvnGBI+fxVwJ1CBxkVfxqCvm1lpZkbaoGmg== +jest-resolve-dependencies@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.3.1.tgz#85b99bdbdfa46e2c81c6228fc4c91076f624f6e2" + integrity sha512-X7iLzY8pCiYOnvYo2YrK3P9oSE8/3N2f4pUZMJ8IUcZnT81vlSonya1KTO9ZfKGuC+svE6FHK/XOb8SsoRUV1A== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" jest-regex-util "^27.0.6" - jest-snapshot "^27.2.4" + jest-snapshot "^27.3.1" -jest-resolve@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.2.4.tgz#d3b999f073ff84a8ae109ce99ff7f3223048701a" - integrity sha512-IsAO/3+3BZnKjI2I4f3835TBK/90dxR7Otgufn3mnrDFTByOSXclDi3G2XJsawGV4/18IMLARJ+V7Wm7t+J89Q== +jest-resolve@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.3.1.tgz#0e5542172a1aa0270be6f66a65888647bdd74a3e" + integrity sha512-Dfzt25CFSPo3Y3GCbxynRBZzxq9AdyNN+x/v2IqYx6KVT5Z6me2Z/PsSGFSv3cOSUZqJ9pHxilao/I/m9FouLw== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" chalk "^4.0.0" - escalade "^3.1.1" graceful-fs "^4.2.4" - jest-haste-map "^27.2.4" + jest-haste-map "^27.3.1" jest-pnp-resolver "^1.2.2" - jest-util "^27.2.4" - jest-validate "^27.2.4" + jest-util "^27.3.1" + jest-validate "^27.3.1" resolve "^1.20.0" + resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.2.4.tgz#d816f4cb4af04f3cba703afcf5a35a335b77cad4" - integrity sha512-hIo5PPuNUyVDidZS8EetntuuJbQ+4IHWxmHgYZz9FIDbG2wcZjrP6b52uMDjAEQiHAn8yn8ynNe+TL8UuGFYKg== +jest-runner@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.3.1.tgz#1d594dcbf3bd8600a7e839e790384559eaf96e3e" + integrity sha512-r4W6kBn6sPr3TBwQNmqE94mPlYVn7fLBseeJfo4E2uCTmAyDFm2O5DYAQAFP7Q3YfiA/bMwg8TVsciP7k0xOww== dependencies: - "@jest/console" "^27.2.4" - "@jest/environment" "^27.2.4" - "@jest/test-result" "^27.2.4" - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/console" "^27.3.1" + "@jest/environment" "^27.3.1" + "@jest/test-result" "^27.3.1" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" jest-docblock "^27.0.6" - jest-environment-jsdom "^27.2.4" - jest-environment-node "^27.2.4" - jest-haste-map "^27.2.4" - jest-leak-detector "^27.2.4" - jest-message-util "^27.2.4" - jest-resolve "^27.2.4" - jest-runtime "^27.2.4" - jest-util "^27.2.4" - jest-worker "^27.2.4" + jest-environment-jsdom "^27.3.1" + jest-environment-node "^27.3.1" + jest-haste-map "^27.3.1" + jest-leak-detector "^27.3.1" + jest-message-util "^27.3.1" + jest-resolve "^27.3.1" + jest-runtime "^27.3.1" + jest-util "^27.3.1" + jest-worker "^27.3.1" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.2.4.tgz#170044041e5d30625ab8d753516bbe503f213a5c" - integrity sha512-ICKzzYdjIi70P17MZsLLIgIQFCQmIjMFf+xYww3aUySiUA/QBPUTdUqo5B2eg4HOn9/KkUsV0z6GVgaqAPBJvg== +jest-runtime@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.3.1.tgz#80fa32eb85fe5af575865ddf379874777ee993d7" + integrity sha512-qtO6VxPbS8umqhEDpjA4pqTkKQ1Hy4ZSi9mDVeE9Za7LKBo2LdW2jmT+Iod3XFaJqINikZQsn2wEi0j9wPRbLg== dependencies: - "@jest/console" "^27.2.4" - "@jest/environment" "^27.2.4" - "@jest/fake-timers" "^27.2.4" - "@jest/globals" "^27.2.4" + "@jest/console" "^27.3.1" + "@jest/environment" "^27.3.1" + "@jest/globals" "^27.3.1" "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.2.4" - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/test-result" "^27.3.1" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" "@types/yargs" "^16.0.0" chalk "^4.0.0" cjs-module-lexer "^1.0.0" @@ -3672,14 +3696,14 @@ jest-runtime@^27.2.4: exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-haste-map "^27.2.4" - jest-message-util "^27.2.4" - jest-mock "^27.2.4" + jest-haste-map "^27.3.1" + jest-message-util "^27.3.1" + jest-mock "^27.3.0" jest-regex-util "^27.0.6" - jest-resolve "^27.2.4" - jest-snapshot "^27.2.4" - jest-util "^27.2.4" - jest-validate "^27.2.4" + jest-resolve "^27.3.1" + jest-snapshot "^27.3.1" + jest-util "^27.3.1" + jest-validate "^27.3.1" slash "^3.0.0" strip-bom "^4.0.0" yargs "^16.2.0" @@ -3692,10 +3716,10 @@ jest-serializer@^27.0.6: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.2.4.tgz#277b2269437e3ffcb91d95a73b24becf33c5a871" - integrity sha512-5DFxK31rYS8X8C6WXsFx8XxrxW3PGa6+9IrUcZdTLg1aEyXDGIeiBh4jbwvh655bg/9vTETbEj/njfZicHTZZw== +jest-snapshot@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.3.1.tgz#1da5c0712a252d70917d46c037054f5918c49ee4" + integrity sha512-APZyBvSgQgOT0XumwfFu7X3G5elj6TGhCBLbBdn3R1IzYustPGPE38F51dBWMQ8hRXa9je0vAdeVDtqHLvB6lg== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" @@ -3703,23 +3727,23 @@ jest-snapshot@^27.2.4: "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/transform" "^27.3.1" + "@jest/types" "^27.2.5" "@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.2.4" + expect "^27.3.1" graceful-fs "^4.2.4" - jest-diff "^27.2.4" - jest-get-type "^27.0.6" - jest-haste-map "^27.2.4" - jest-matcher-utils "^27.2.4" - jest-message-util "^27.2.4" - jest-resolve "^27.2.4" - jest-util "^27.2.4" + jest-diff "^27.3.1" + jest-get-type "^27.3.1" + jest-haste-map "^27.3.1" + jest-matcher-utils "^27.3.1" + jest-message-util "^27.3.1" + jest-resolve "^27.3.1" + jest-util "^27.3.1" natural-compare "^1.4.0" - pretty-format "^27.2.4" + pretty-format "^27.3.1" semver "^7.3.2" jest-util@^27.0.0: @@ -3734,60 +3758,60 @@ jest-util@^27.0.0: is-ci "^3.0.0" picomatch "^2.2.3" -jest-util@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.2.4.tgz#3d7ce081b2e7f4cfe0156452ac01f3cb456cc656" - integrity sha512-mW++4u+fSvAt3YBWm5IpbmRAceUqa2B++JlUZTiuEt2AmNYn0Yw5oay4cP17TGsMINRNPSGiJ2zNnX60g+VbFg== +jest-util@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.3.1.tgz#a58cdc7b6c8a560caac9ed6bdfc4e4ff23f80429" + integrity sha512-8fg+ifEH3GDryLQf/eKZck1DEs2YuVPBCMOaHQxVVLmQwl/CDhWzrvChTX4efLZxGrw+AA0mSXv78cyytBt/uw== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" "@types/node" "*" chalk "^4.0.0" + ci-info "^3.2.0" graceful-fs "^4.2.4" - is-ci "^3.0.0" picomatch "^2.2.3" -jest-validate@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.2.4.tgz#b66d462b2fb93d7e16a47d1aa8763d5600bf2cfa" - integrity sha512-VMtbxbkd7LHnIH7PChdDtrluCFRJ4b1YV2YJzNwwsASMWftq/HgqiqjvptBOWyWOtevgO3f14wPxkPcLlVBRog== +jest-validate@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.3.1.tgz#3a395d61a19cd13ae9054af8cdaf299116ef8a24" + integrity sha512-3H0XCHDFLA9uDII67Bwi1Vy7AqwA5HqEEjyy934lgVhtJ3eisw6ShOF1MDmRPspyikef5MyExvIm0/TuLzZ86Q== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.0.6" + jest-get-type "^27.3.1" leven "^3.1.0" - pretty-format "^27.2.4" + pretty-format "^27.3.1" -jest-watcher@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.2.4.tgz#b1d5c39ab94f59f4f35f66cc96f7761a10e0cfc4" - integrity sha512-LXC/0+dKxhK7cfF7reflRYlzDIaQE+fL4ynhKhzg8IMILNMuI4xcjXXfUJady7OR4/TZeMg7X8eHx8uan9vqaQ== +jest-watcher@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.3.1.tgz#ba5e0bc6aa843612b54ddb7f009d1cbff7e05f3e" + integrity sha512-9/xbV6chABsGHWh9yPaAGYVVKurWoP3ZMCv6h+O1v9/+pkOroigs6WzZ0e9gLP/njokUwM7yQhr01LKJVMkaZA== dependencies: - "@jest/test-result" "^27.2.4" - "@jest/types" "^27.2.4" + "@jest/test-result" "^27.3.1" + "@jest/types" "^27.2.5" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.2.4" + jest-util "^27.3.1" string-length "^4.0.1" -jest-worker@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.2.4.tgz#881455df75e22e7726a53f43703ab74d6b36f82d" - integrity sha512-Zq9A2Pw59KkVjBBKD1i3iE2e22oSjXhUKKuAK1HGX8flGwkm6NMozyEYzKd41hXc64dbd/0eWFeEEuxqXyhM+g== +jest-worker@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.3.1.tgz#0def7feae5b8042be38479799aeb7b5facac24b2" + integrity sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.2.4.tgz#70e27bef873138afc123aa4769f7124c50ad3efb" - integrity sha512-h4uqb1EQLfPulWyUFFWv9e9Nn8sCqsJ/j3wk/KCY0p4s4s0ICCfP3iMf6hRf5hEhsDyvyrCgKiZXma63gMz16A== +jest@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.3.1.tgz#b5bab64e8f56b6f7e275ba1836898b0d9f1e5c8a" + integrity sha512-U2AX0AgQGd5EzMsiZpYt8HyZ+nSVIh5ujQ9CPp9EQZJMjXIiSZpJNweZl0swatKRoqHWgGKM3zaSwm4Zaz87ng== dependencies: - "@jest/core" "^27.2.4" + "@jest/core" "^27.3.1" import-local "^3.0.2" - jest-cli "^27.2.4" + jest-cli "^27.3.1" js-tokens@^4.0.0: version "4.0.0" @@ -3945,35 +3969,33 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@^11.1.2: - version "11.1.2" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.1.2.tgz#4dd78782ae43ee6ebf2969cad9af67a46b33cd90" - integrity sha512-6lYpNoA9wGqkL6Hew/4n1H6lRqF3qCsujVT0Oq5Z4hiSAM7S6NksPJ3gnr7A7R52xCtiZMcEUNNQ6d6X5Bvh9w== +lint-staged@^11.2.6: + version "11.2.6" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.2.6.tgz#f477b1af0294db054e5937f171679df63baa4c43" + integrity sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg== dependencies: - chalk "^4.1.1" - cli-truncate "^2.1.0" - commander "^7.2.0" - cosmiconfig "^7.0.0" - debug "^4.3.1" + cli-truncate "2.1.0" + colorette "^1.4.0" + commander "^8.2.0" + cosmiconfig "^7.0.1" + debug "^4.3.2" enquirer "^2.3.6" - execa "^5.0.0" - listr2 "^3.8.2" - log-symbols "^4.1.0" + execa "^5.1.1" + listr2 "^3.12.2" micromatch "^4.0.4" normalize-path "^3.0.0" please-upgrade-node "^3.2.0" string-argv "0.3.1" - stringify-object "^3.3.0" + stringify-object "3.3.0" + supports-color "8.1.1" -listr2@^3.8.2: - version "3.8.2" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.8.2.tgz#99b138ad1cfb08f1b0aacd422972e49b2d814b99" - integrity sha512-E28Fw7Zd3HQlCJKzb9a8C8M0HtFWQeucE+S8YrSrqZObuCLPRHMRrR8gNmYt65cU9orXYHwvN5agXC36lYt7VQ== +listr2@^3.12.2: + version "3.13.1" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.1.tgz#816e8c1728d50f223795f530d72d248c7fa14602" + integrity sha512-pk4YBDA2cxtpM8iLHbz6oEsfZieJKHf6Pt19NlKaHZZVpqHyVs/Wqr7RfBBCeAFCJchGO7WQHVkUPZTvJMHk8w== dependencies: - chalk "^4.1.1" cli-truncate "^2.1.0" - figures "^3.2.0" - indent-string "^4.0.0" + colorette "^2.0.16" log-update "^4.0.0" p-map "^4.0.0" rxjs "^6.6.7" @@ -4014,24 +4036,21 @@ lodash.isfinite@^3.3.2: resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" integrity sha1-+4m2WpqAKBgz8LdHizpRBPiY67M= +lodash.memoize@4.x: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash@4.x, lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: +lodash@^4.16.4, lodash@^4.17.10, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -log-symbols@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" - integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== - dependencies: - chalk "^4.1.0" - is-unicode-supported "^0.1.0" - log-update@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" @@ -4075,12 +4094,12 @@ make-error@1.x, make-error@^1, make-error@^1.1.1: resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: - tmpl "1.0.x" + tmpl "1.0.5" map-obj@^1.0.0: version "1.0.1" @@ -4224,14 +4243,15 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.2.3.tgz#f9e87426bc1f628fc007db1095b4f6e10d946450" - integrity sha512-/mC8yh7B9cceu4brvJc8NpsZxIsxrTe+HpysvGIwUXb09dDMnDA+XaXig/zWjiR+okUpTS6yyejyxhZl4Hikgw== +mockttp@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.3.1.tgz#e39efd3f1ffb5a5c5e206a65bbd8f21723ddd345" + integrity sha512-GKMqL9h65JokWK6LK/+raUzVa44fE58PGLi4a8nUn7C2YSenBX6jDPdMDC84ckCwJPUOuOMjsqkjWSjUJCe/OA== dependencies: "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^1.0.0" "@httptoolkit/subscriptions-transport-ws" "^0.9.19" + "@httptoolkit/websocket-stream" "^6.0.0" "@types/cors" "^2.8.6" "@types/node" "*" base64-arraybuffer "^0.1.5" @@ -4255,9 +4275,7 @@ mockttp@^2.2.3: portfinder "^1.0.23" proxy-agent "^5.0.0" typed-error "^3.0.2" - universal-websocket-client "^1.0.2" uuid "^3.1.0" - websocket-stream "^5.5.2" ws "^7.3.1" ms@2.0.0: @@ -4275,11 +4293,6 @@ ms@2.1.2, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -nanocolors@^0.2.12: - version "0.2.12" - resolved "https://registry.yarnpkg.com/nanocolors/-/nanocolors-0.2.12.tgz#4d05932e70116078673ea4cc6699a1c56cc77777" - integrity sha512-SFNdALvzW+rVlzqexid6epYdt8H9Zol7xDoQarioEFcFN0JHo4CYNztAxmtfgGTVRCmFlEOqqhBpoFGKqSAMug== - native-duplexpair@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/native-duplexpair/-/native-duplexpair-1.0.0.tgz#7899078e64bf3c8a3d732601b3d40ff05db58fa0" @@ -4330,10 +4343,10 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-releases@^1.1.76: - version "1.1.76" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.76.tgz#df245b062b0cafbd5282ab6792f7dccc2d97f36e" - integrity sha512-9/IECtNr8dXNmPWmFXepT0/7o5eolGesHUa3mtr0KlgnCvnZxwh2qensKL42JJY2vQKC3nIBXetFAqR+PW1CmA== +node-releases@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" + integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== normalize-package-data@^2.5.0: version "2.5.0" @@ -4398,10 +4411,10 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.2.1: - version "8.2.1" - resolved "https://registry.yarnpkg.com/open/-/open-8.2.1.tgz#82de42da0ccbf429bc12d099dad2e0975e14e8af" - integrity sha512-rXILpcQlkF/QuFez2BJDf3GsqpjGKbkUUToAIGo9A0Q6ZkoSGogZJulrUdwRkrAsoQvoZsrjCYt8+zblOk7JQQ== +open@^8.4.0: + version "8.4.0" + resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" + integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== dependencies: define-lazy-prop "^2.0.0" is-docker "^2.1.1" @@ -4587,6 +4600,11 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" @@ -4652,22 +4670,12 @@ prettier@^2.4.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== -pretty-format@^27.0.0, pretty-format@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.0.6.tgz#ab770c47b2c6f893a21aefc57b75da63ef49a11f" - integrity sha512-8tGD7gBIENgzqA+UBzObyWqQ5B778VIFZA/S66cclyd5YkFLYs2Js7gxDKf0MXtTc9zcS7t1xhdfcElJ3YIvkQ== - dependencies: - "@jest/types" "^27.0.6" - ansi-regex "^5.0.0" - ansi-styles "^5.0.0" - react-is "^17.0.1" - -pretty-format@^27.2.4: - version "27.2.4" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.2.4.tgz#08ea39c5eab41b082852d7093059a091f6ddc748" - integrity sha512-NUjw22WJHldzxyps2YjLZkUj6q1HvjqFezkB9Y2cklN8NtVZN/kZEXGZdFw4uny3oENzV5EEMESrkI0YDUH8vg== +pretty-format@^27.0.0, pretty-format@^27.3.1: + version "27.3.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5" + integrity sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA== dependencies: - "@jest/types" "^27.2.4" + "@jest/types" "^27.2.5" ansi-regex "^5.0.1" ansi-styles "^5.0.0" react-is "^17.0.1" @@ -4683,9 +4691,9 @@ progress@^2.0.0: integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== prompts@^2.0.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.1.tgz#befd3b1195ba052f9fd2fde8a486c4e82ee77f61" - integrity sha512-EQyfIuO2hPDsX1L/blblV+H7I0knhgAd82cVneCwcdND9B8AuCDuRcBH6yIcG4dFzlOUqbazQqwGjx5xmsNLuQ== + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" sisteransi "^1.0.5" @@ -4907,6 +4915,11 @@ resolve-global@1.0.0, resolve-global@^1.0.0: dependencies: global-dirs "^0.1.1" +resolve.exports@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" + integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== + resolve@^1.10.0, resolve@^1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" @@ -5365,7 +5378,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-object@^3.3.0: +stringify-object@3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== @@ -5435,6 +5448,13 @@ supertest@^6.1.6: methods "^1.1.2" superagent "^6.1.0" +supports-color@8.1.1, supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -5461,13 +5481,6 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== - dependencies: - has-flag "^4.0.0" - supports-hyperlinks@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" @@ -5543,7 +5556,7 @@ through2@^4.0.0: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= -tmpl@1.0.x: +tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== @@ -5596,16 +5609,16 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -ts-jest@^27.0.5: - version "27.0.5" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.5.tgz#0b0604e2271167ec43c12a69770f0bb65ad1b750" - integrity sha512-lIJApzfTaSSbtlksfFNHkWOzLJuuSm4faFAfo5kvzOiRAuoN4/eKxVJ2zEAho8aecE04qX6K1pAzfH5QHL1/8w== +ts-jest@^27.0.7: + version "27.0.7" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.7.tgz#fb7c8c8cb5526ab371bc1b23d06e745652cca2d0" + integrity sha512-O41shibMqzdafpuP+CkrOL7ykbmLh+FqQrXEmV9CydQ5JBk0Sj0uAEF5TNNe94fZWKm3yYvWa/IbyV4Yg1zK2Q== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" jest-util "^27.0.0" json5 "2.x" - lodash "4.x" + lodash.memoize "4.x" make-error "1.x" semver "7.x" yargs-parser "20.x" @@ -5723,22 +5736,15 @@ typescript@^4.4.3: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.3.tgz#bdc5407caa2b109efd4f82fe130656f977a29324" integrity sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA== -ua-parser-js@^0.7.28: - version "0.7.28" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.28.tgz#8ba04e653f35ce210239c64661685bf9121dec31" - integrity sha512-6Gurc1n//gjp9eQNXjD9O3M/sMwVtN5S8Lv9bvOYBfKfDNiIIhqiyi01vMBO45u4zkDE420w/e0se7Vs+sIg+g== - -ultron@~1.1.0: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" - integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og== +typescript@^4.4.4: + version "4.4.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" + integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== -universal-websocket-client@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/universal-websocket-client/-/universal-websocket-client-1.0.2.tgz#9942307a9d418bb5defd33594048c7e367448b44" - integrity sha512-Pi6BdJtEAISb77GTbOLBLIWdYGezXgnJejrVBYKXxzNTsLcjJS+mWIJ2BRZElSlOG/wc7+yfOe5y30bzTu3Qqg== - dependencies: - ws "^3.3.3" +ua-parser-js@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.1.tgz#268408f4d60375e67aa919fa7d117bdc66d5cd77" + integrity sha512-ZMu7XRN3M3R+g/YaFQKiVW0J42bzciF0+xAxP5uuO6VibE30MQvRRBctHuh22uS3yAe5jkru/i8QVOwRDJazIw== universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" @@ -5810,9 +5816,9 @@ vary@^1, vary@~1.1.2: integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= vm2@^3.9.3: - version "3.9.3" - resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.3.tgz#29917f6cc081cc43a3f580c26c5b553fd3c91f40" - integrity sha512-smLS+18RjXYMl9joyJxMNI9l4w7biW8ilSDaVRvFBDwOH8P0BK1ognFQTpg0wyQ6wIKLTblHJvROW692L/E53Q== + version "3.9.5" + resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.5.tgz#5288044860b4bbace443101fcd3bddb2a0aa2496" + integrity sha512-LuCAHZN75H9tdrAiLFf030oW7nJV5xwNMuk1ymOZwopmuK3d2H4L1Kv4+GFHgarKiLfXXLFU+7LDABHnwOkWng== w3c-hr-time@^1.0.2: version "1.0.2" @@ -5829,11 +5835,11 @@ w3c-xmlserializer@^2.0.0: xml-name-validator "^3.0.0" walker@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: - makeerror "1.0.x" + makeerror "1.0.12" webidl-conversions@^3.0.0: version "3.0.1" @@ -5850,18 +5856,6 @@ webidl-conversions@^6.1.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== -websocket-stream@^5.5.2: - version "5.5.2" - resolved "https://registry.yarnpkg.com/websocket-stream/-/websocket-stream-5.5.2.tgz#49d87083d96839f0648f5513bbddd581f496b8a2" - integrity sha512-8z49MKIHbGk3C4HtuHWDtYX8mYej1wWabjthC/RupM9ngeukU4IWoM46dgth1UOS/T4/IqgEdCDJuMe2039OQQ== - dependencies: - duplexify "^3.5.1" - inherits "^2.0.1" - readable-stream "^2.3.3" - safe-buffer "^5.1.2" - ws "^3.2.0" - xtend "^4.0.0" - whatwg-encoding@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" @@ -5941,14 +5935,10 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@^3.2.0, ws@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" - integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA== - dependencies: - async-limiter "~1.0.0" - safe-buffer "~5.1.0" - ultron "~1.1.0" +ws@*, ws@^8.2.3: + version "8.2.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" + integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA== ws@^7.3.1: version "7.5.5" @@ -5960,11 +5950,6 @@ ws@^7.4.6, ws@~7.4.2: resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== -ws@^8.2.2: - version "8.2.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.2.tgz#ca684330c6dd6076a737250ed81ac1606cb0a63e" - integrity sha512-Q6B6H2oc8QY3llc3cB8kVmQ6pnJWVQbP7Q5algTcIxx7YEpc0oU4NBVHlztA7Ekzfhw2r0rPducMUiCGWKQRzw== - xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" From e81a93dea54a83caaac2da65a0bdd4e03457a6a3 Mon Sep 17 00:00:00 2001 From: mariuspopaadrian <73498773+mariuspopaadrian@users.noreply.github.com> Date: Mon, 15 Nov 2021 12:42:06 +0200 Subject: [PATCH 45/77] docs: remove david-dm.org badge (#680) https://github.com/alanshaw/david/issues/179 --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index e214f656..9fd7a146 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,6 @@ [![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/CI/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) [![Coveralls](https://img.shields.io/coveralls/chimurai/http-proxy-middleware.svg?style=flat-square)](https://coveralls.io/r/chimurai/http-proxy-middleware) -[![dependency Status](https://img.shields.io/david/chimurai/http-proxy-middleware.svg?style=flat-square)](https://david-dm.org/chimurai/http-proxy-middleware#info=dependencies) [![dependency Status](https://snyk.io/test/npm/http-proxy-middleware/badge.svg?style=flat-square)](https://snyk.io/test/npm/http-proxy-middleware) [![npm](https://img.shields.io/npm/v/http-proxy-middleware?color=%23CC3534&style=flat-square)](https://www.npmjs.com/package/http-proxy-middleware) From 9986a6fe970e22cf754fded41953a7701021aa2c Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 17 Nov 2021 23:10:20 +0100 Subject: [PATCH 46/77] chore(package): bump dev dependencies (#681) --- package.json | 20 +- yarn.lock | 572 ++++++++++++++++++++++++++++----------------------- 2 files changed, 325 insertions(+), 267 deletions(-) diff --git a/package.json b/package.json index 97f28319..46b25545 100644 --- a/package.json +++ b/package.json @@ -52,34 +52,34 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^13.2.1", - "@commitlint/config-conventional": "^13.2.0", + "@commitlint/cli": "^15.0.0", + "@commitlint/config-conventional": "^15.0.0", "@types/express": "^4.17.13", "@types/is-glob": "^4.0.2", "@types/jest": "^27.0.2", "@types/micromatch": "^4.0.2", - "@types/node": "^16.11.6", + "@types/node": "^16.11.7", "@types/supertest": "^2.0.11", "@types/ws": "^8.2.0", - "@typescript-eslint/eslint-plugin": "^5.2.0", - "@typescript-eslint/parser": "^5.2.0", + "@typescript-eslint/eslint-plugin": "^5.4.0", + "@typescript-eslint/parser": "^5.4.0", "body-parser": "^1.19.0", - "browser-sync": "^2.27.6", + "browser-sync": "^2.27.7", "connect": "^3.7.0", - "eslint": "^8.1.0", + "eslint": "^8.2.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", "express": "^4.17.1", "get-port": "^5.1.1", "husky": "^7.0.4", "jest": "^27.3.1", - "lint-staged": "^11.2.6", - "mockttp": "^2.3.1", + "lint-staged": "^12.0.2", + "mockttp": "^2.4.0", "open": "^8.4.0", "prettier": "^2.4.1", "supertest": "^6.1.6", "ts-jest": "^27.0.7", - "typescript": "^4.4.4", + "typescript": "^4.5.2", "ws": "^8.2.3" }, "dependencies": { diff --git a/yarn.lock b/yarn.lock index ecf4423a..77e82051 100644 --- a/yarn.lock +++ b/yarn.lock @@ -330,75 +330,75 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^13.2.1": - version "13.2.1" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-13.2.1.tgz#80ebd46beef6ceed3bb0c0842bcda8d02a3c91de" - integrity sha512-JGzYk2ay5JkRS5w+FLQzr0u/Kih52ds4HPpa3vnwVOQN8Q+S1VYr8Nk/6kRm6uNYsAcC1nejtuDxRdLcLh/9TA== - dependencies: - "@commitlint/format" "^13.2.0" - "@commitlint/lint" "^13.2.0" - "@commitlint/load" "^13.2.1" - "@commitlint/read" "^13.2.0" - "@commitlint/types" "^13.2.0" +"@commitlint/cli@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-15.0.0.tgz#8e78e86ee2b6955c1a5d140e734a6c171ce367ee" + integrity sha512-Y5xmDCweytqzo4N4lOI2YRiuX35xTjcs8n5hUceBH8eyK0YbwtgWX50BJOH2XbkwEmII9blNhlBog6AdQsqicg== + dependencies: + "@commitlint/format" "^15.0.0" + "@commitlint/lint" "^15.0.0" + "@commitlint/load" "^15.0.0" + "@commitlint/read" "^15.0.0" + "@commitlint/types" "^15.0.0" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^17.0.0" -"@commitlint/config-conventional@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-13.2.0.tgz#2ad24fecc56ae9619dbe0934b98a98b18ace0bec" - integrity sha512-7u7DdOiF+3qSdDlbQGfpvCH8DCQdLFvnI2+VucYmmV7E92iD6t9PBj+UjIoSQCaMAzYp27Vkall78AkcXBh6Xw== +"@commitlint/config-conventional@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-15.0.0.tgz#3bf1adf319e3b431de12ba82dc399524038b2d8f" + integrity sha512-eZBRL8Lk3hMNHp1wUMYj0qrZQEsST1ai7KHR8J1IDD9aHgT7L2giciibuQ+Og7vxVhR5WtYDvh9xirXFVPaSkQ== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-13.2.0.tgz#990c24f753781d1f14c1647c52d34a5730892e3d" - integrity sha512-rqhT62RehdLTRBu8OrPHnRCCd/7RmHEE4TiTlT4BLlr5ls5jlZhecOQWJ8np872uCNirrJ5NFjnjYYdbkNoW9Q== +"@commitlint/ensure@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-15.0.0.tgz#06a63738e2393970a085b428e6cf80fa1fe76f48" + integrity sha512-7DV4iNIald3vycwaWBNGk5FbonaNzOlU8nBe5m5AgU2dIeNKuXwLm+zzJzG27j0Ho56rgz//3F6RIvmsoxY9ZA== dependencies: - "@commitlint/types" "^13.2.0" + "@commitlint/types" "^15.0.0" lodash "^4.17.19" -"@commitlint/execute-rule@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-13.2.0.tgz#e112159d6647bc5afe2f77c2080ef0f615fd541f" - integrity sha512-6nPwpN0hwTYmsH3WM4hCdN+NrMopgRIuQ0aqZa+jnwMoS/g6ljliQNYfL+m5WO306BaIu1W3yYpbW5aI8gEr0g== +"@commitlint/execute-rule@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-15.0.0.tgz#6bff7962df38e89ff9fdbc00abd79b8849c7e9f9" + integrity sha512-pyE4ApxjbWhb1TXz5vRiGwI2ssdMMgZbaaheZq1/7WC0xRnqnIhE1yUC1D2q20qPtvkZPstTYvMiRVtF+DvjUg== -"@commitlint/format@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-13.2.0.tgz#eccfff0a09ced8533afb21b2b3a1e28176b109d5" - integrity sha512-yNBQJe6YFhM1pJAta4LvzQxccSKof6axJH7ALYjuhQqfT8AKlad7Y/2SuJ07ioyreNIqwOTuF2UfU8yJ7JzEIQ== +"@commitlint/format@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-15.0.0.tgz#10935180913de9384bea4c9217f4c6c5ee100ab3" + integrity sha512-bPhAfqwRhPk92WiuY0ktEJNpRRHSCd+Eg1MdhGyL9Bl3U25E5zvuInA+dNctnzZiOBSH/37ZaD0eOKCpQE6acg== dependencies: - "@commitlint/types" "^13.2.0" + "@commitlint/types" "^15.0.0" chalk "^4.0.0" -"@commitlint/is-ignored@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-13.2.0.tgz#532ddfb5d62a489ff4d3ad88bcbee44e8c7d2c8f" - integrity sha512-onnx4WctHFPPkHGFFAZBIWRSaNwuhixIIfbwPhcZ6IewwQX5n4jpjwM1GokA7vhlOnQ57W7AavbKUGjzIVtnRQ== +"@commitlint/is-ignored@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-15.0.0.tgz#382bf9f6f8d810f2ffc59ccc527f4389eadd7949" + integrity sha512-edtnkf2QZ/7e/YCJDgn1WDw9wfF1WfOitW5YEoSOb4SxjJEb/oE87kxNPZ2j8mnDMuunspcMfGHeg6fRlwaEWg== dependencies: - "@commitlint/types" "^13.2.0" + "@commitlint/types" "^15.0.0" semver "7.3.5" -"@commitlint/lint@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-13.2.0.tgz#b568c96bd21c8fa8eec359a5e21d22743206761f" - integrity sha512-5XYkh0e9ehHjA7BxAHFpjPgr1qqbFY8OFG1wpBiAhycbYBtJnQmculA2wcwqTM40YCUBqEvWFdq86jTG8fbkMw== +"@commitlint/lint@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-15.0.0.tgz#a93b8896fb25b05ab2ed0246d365f4908654588d" + integrity sha512-hUi2+Im/2dJ5FBvWnodypTkg+5haCgsDzB0fyMApWLUA1IucYUAqRCQCW5em1Mhk9Crw1pd5YzFNikhIclkqCw== dependencies: - "@commitlint/is-ignored" "^13.2.0" - "@commitlint/parse" "^13.2.0" - "@commitlint/rules" "^13.2.0" - "@commitlint/types" "^13.2.0" + "@commitlint/is-ignored" "^15.0.0" + "@commitlint/parse" "^15.0.0" + "@commitlint/rules" "^15.0.0" + "@commitlint/types" "^15.0.0" -"@commitlint/load@^13.2.1": - version "13.2.1" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-13.2.1.tgz#d5d926dbd05021c02837c438ff1057025b28b745" - integrity sha512-qlaJkj0hfa9gtWRfCfbgFBTK3GYQRmjZhba4l9mUu4wV9lEZ4ICFlrLtd/8kaLXf/8xbrPhkAPkVFOAqM0YwUQ== +"@commitlint/load@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-15.0.0.tgz#5bd391c1387aafe92b54cf2a86b76a5228fcf4ef" + integrity sha512-Ak1YPeOhvxmY3ioe0o6m1yLGvUAYb4BdfGgShU8jiTCmU3Mnmms0Xh/kfQz8AybhezCC3AmVTyBLaBZxOHR8kg== dependencies: - "@commitlint/execute-rule" "^13.2.0" - "@commitlint/resolve-extends" "^13.2.0" - "@commitlint/types" "^13.2.0" + "@commitlint/execute-rule" "^15.0.0" + "@commitlint/resolve-extends" "^15.0.0" + "@commitlint/types" "^15.0.0" "@endemolshinegroup/cosmiconfig-typescript-loader" "^3.0.2" chalk "^4.0.0" cosmiconfig "^7.0.0" @@ -406,67 +406,67 @@ resolve-from "^5.0.0" typescript "^4.4.3" -"@commitlint/message@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-13.2.0.tgz#1a60f578551750a8d6b533be8a40541fc2e928a8" - integrity sha512-+LlErJj2F2AC86xJb33VJIvSt25xqSF1I0b0GApSgoUtQBeJhx4SxIj1BLvGcLVmbRmbgTzAFq/QylwLId7EhA== +"@commitlint/message@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-15.0.0.tgz#98a38aca1b3cd996a0fcdbd9ad67e9039df60b0a" + integrity sha512-L8euabzboKavPuDJsdIYAY2wx97LbiGEYsckMo6NmV8pOun50c8hQx6ouXFSAx4pp+mX9yUGmMiVqfrk2LKDJQ== -"@commitlint/parse@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-13.2.0.tgz#48054602bd73dccbffee4f9ba8b2549c857ba0b7" - integrity sha512-AtfKSQJQADbDhW+kuC5PxOyBANsYCuuJlZRZ2PYslOz2rvWwZ93zt+nKjM4g7C9ETbz0uq4r7/EoOsTJ2nJqfQ== +"@commitlint/parse@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-15.0.0.tgz#cac77b7514748b8d01d00c0e67d5e54c695c302c" + integrity sha512-7fweM67tZfBNS7zw1KTuuT5K2u9nGytUJqFqT/1Ln3Na9cBCsoAqR47mfsNOTlRCgGwakm4xiQ7BpS2gN0OGuw== dependencies: - "@commitlint/types" "^13.2.0" + "@commitlint/types" "^15.0.0" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.2.2" -"@commitlint/read@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-13.2.0.tgz#2af580322ec6297478aba84fa8ec24fd27c35a54" - integrity sha512-7db5e1Bn3re6hQN0SqygTMF/QX6/MQauoJn3wJiUHE93lvwO6aFQxT3qAlYeyBPwfWsmDz/uSH454jtrSsv3Uw== +"@commitlint/read@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-15.0.0.tgz#da839f3b4d49b05586a9cd2666cc8c4a36b9ec91" + integrity sha512-5yI1o2HKZFVe7RTjL7IhuhHMKar/MDNY34vEHqqz9gMI7BK/rdP8uVb4Di1efl2V0UPnwID0nPKWESjQ8Ti0gw== dependencies: - "@commitlint/top-level" "^13.2.0" - "@commitlint/types" "^13.2.0" + "@commitlint/top-level" "^15.0.0" + "@commitlint/types" "^15.0.0" fs-extra "^10.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-13.2.0.tgz#74f48512eb1785abe07336a5208225fdf7fec327" - integrity sha512-HLCMkqMKtvl1yYLZ1Pm0UpFvd0kYjsm1meLOGZ7VkOd9G/XX+Fr1S2G5AT2zeiDw7WUVYK8lGVMNa319bnV+aw== +"@commitlint/resolve-extends@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-15.0.0.tgz#baf21227e2ac52cef546ec35dd6732e9b0b6e57c" + integrity sha512-7apfRJjgJsKja7lHsPfEFixKjA/fk/UeD3owkOw1174yYu4u8xBDLSeU3IinGPdMuF9m245eX8wo7vLUy+EBSg== dependencies: import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-13.2.0.tgz#e272fbd4099c2fe98bca1277d7f8caa3578b8f43" - integrity sha512-O3A9S7blOzvHfzrJrUQe9JxdtGy154ol/GXHwvd8WfMJ10y5ryBB4b6+0YZ1XhItWzrEASOfOKbD++EdLV90dQ== +"@commitlint/rules@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-15.0.0.tgz#326370abc004492fcb5543198d1d55b14e25e3c8" + integrity sha512-SqXfp6QUlwBS+0IZm4FEA/NmmAwcFQIkG3B05BtemOVWXQdZ8j1vV6hDwvA9oMPCmUSrrGpHOtZK7HaHhng2yA== dependencies: - "@commitlint/ensure" "^13.2.0" - "@commitlint/message" "^13.2.0" - "@commitlint/to-lines" "^13.2.0" - "@commitlint/types" "^13.2.0" + "@commitlint/ensure" "^15.0.0" + "@commitlint/message" "^15.0.0" + "@commitlint/to-lines" "^15.0.0" + "@commitlint/types" "^15.0.0" execa "^5.0.0" -"@commitlint/to-lines@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-13.2.0.tgz#e65d16340f353b496e90609b452f23f4b0be0b6a" - integrity sha512-ZfWZix2y/CzewReCrj5g0nKOEfj5HW9eBMDrqjJJMPApve00CWv0tYrFCGXuGlv244lW4uvWJt6J/0HLRWsfyg== +"@commitlint/to-lines@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-15.0.0.tgz#b86ac98f319688990ecc2e09227fadf591b65c92" + integrity sha512-mY3MNA9ujPqVpiJjTYG9MDsYCobue5PJFO0MfcIzS1mCVvngH8ZFTPAh1fT5t+t1h876boS88+9WgqjRvbYItw== -"@commitlint/top-level@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-13.2.0.tgz#869814e8ac0fec6a6e1f2e9665a318e4dc979e1e" - integrity sha512-knBvWYbIq6VV6VPHrVeDsxDiJq4Zq6cv5NIYU3iesKAsmK2KlLfsZPa+Ig96Y4AqAPU3zNJwjHxYkz9qxdBbfA== +"@commitlint/top-level@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-15.0.0.tgz#467ec8377e81dfc916e1a20a27558862be1a4254" + integrity sha512-7Gz3t7xcuuUw1d1Nou6YLaztzp2Em+qZ6YdCzrqYc+aquca3Vt0O696nuiBDU/oE+tls4Hx2CNpAbWhTgEwB5A== dependencies: find-up "^5.0.0" -"@commitlint/types@^13.2.0": - version "13.2.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-13.2.0.tgz#ed8128f9e41383f8f0ee1b0370c724826821e581" - integrity sha512-RRVHEqmk1qn/dIaSQhvuca6k/6Z54G+r/KyimZ8gnAFielGiGUpsFRhIY3qhd5rXClVxDaa3nlcyTWckSccotQ== +"@commitlint/types@^15.0.0": + version "15.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-15.0.0.tgz#46fa7bda3e6340caf3e3a2e415bcb78ff0195eed" + integrity sha512-OMSLX+QJnyNoTwws54ULv9sOvuw9GdVezln76oyUd4YbMMJyaav62aSXDuCdWyL2sm9hTkSzyEi52PNaIj/vqw== dependencies: chalk "^4.0.0" @@ -480,10 +480,10 @@ ts-node "^9" tslib "^2" -"@eslint/eslintrc@^1.0.3": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.3.tgz#41f08c597025605f672251dcc4e8be66b5ed7366" - integrity sha512-DHI1wDPoKCBPoLZA3qDR91+3te/wDSc1YhKg3jR8NxKKRJq2hwHwcWv31cSwSYvIBrmbENoYMWcenW8uproQqg== +"@eslint/eslintrc@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.4.tgz#dfe0ff7ba270848d10c5add0715e04964c034b31" + integrity sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q== dependencies: ajv "^6.12.4" debug "^4.3.2" @@ -491,7 +491,7 @@ globals "^13.9.0" ignore "^4.0.6" import-fresh "^3.2.1" - js-yaml "^3.13.1" + js-yaml "^4.1.0" minimatch "^3.0.4" strip-json-comments "^3.1.1" @@ -520,6 +520,29 @@ dependencies: "@types/node" "^16.7.10" +"@httptoolkit/proxy-agent@^5.0.1-socks-lookup-fix.0": + version "5.0.1-socks-lookup-fix.0" + resolved "https://registry.yarnpkg.com/@httptoolkit/proxy-agent/-/proxy-agent-5.0.1-socks-lookup-fix.0.tgz#d213477b5cd7285fde2089d4800c01d6cedda7af" + integrity sha512-AJvEMWzhrnVFZtfiJszkQI+ktxjcUK5lcqNnbOOhjw1JEbE3GE47LyflkVIVgB4SMZkbB53gtjiXcIEfXuPuvA== + dependencies: + "@httptoolkit/socks-proxy-agent" "^6.1.1-use-request-lookup-fix.0" + agent-base "^6.0.0" + debug "4" + http-proxy-agent "^4.0.0" + https-proxy-agent "^5.0.0" + lru-cache "^5.1.1" + pac-proxy-agent "^5.0.0" + proxy-from-env "^1.0.0" + +"@httptoolkit/socks-proxy-agent@^6.1.1-use-request-lookup-fix.0": + version "6.1.1-use-request-lookup-fix.0" + resolved "https://registry.yarnpkg.com/@httptoolkit/socks-proxy-agent/-/socks-proxy-agent-6.1.1-use-request-lookup-fix.0.tgz#bb5c8e76b0e7ce72f8dc58d61c94b727f27768a5" + integrity sha512-zak6oWsq1olZJ3BZh/lyMtr8tmRUg0DmPyYOT7A/44K/X7XZCwP+QyCDQoUnqsRdsEJsxiKdpqGA93i+o3cSrg== + dependencies: + agent-base "^6.0.2" + debug "^4.3.1" + socks "^2.6.1" + "@httptoolkit/subscriptions-transport-ws@^0.9.19": version "0.9.19" resolved "https://registry.yarnpkg.com/@httptoolkit/subscriptions-transport-ws/-/subscriptions-transport-ws-0.9.19.tgz#ed40f4e31f03232338b628ff43f1e256e957bad6" @@ -960,7 +983,12 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== -"@types/node@^16.11.6", "@types/node@^16.7.10": +"@types/node@^16.11.7": + version "16.11.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42" + integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw== + +"@types/node@^16.7.10": version "16.11.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae" integrity sha512-ua7PgUoeQFjmWPcoo9khiPum3Pd60k4/2ZGXt18sm2Slk0W0xZTqt5Y0Ny1NyBiN1EVQ/+FaF9NcY4Qe6rwk5w== @@ -1037,13 +1065,13 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.2.0.tgz#2bdb247cc2e2afce7efbce09afb9a6f0a8a08434" - integrity sha512-qQwg7sqYkBF4CIQSyRQyqsYvP+g/J0To9ZPVNJpfxfekl5RmdvQnFFTVVwpRtaUDFNvjfe/34TgY/dpc3MgNTw== +"@typescript-eslint/eslint-plugin@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.4.0.tgz#05e711a2e7b68342661fde61bccbd1531c19521a" + integrity sha512-9/yPSBlwzsetCsGEn9j24D8vGQgJkOTr4oMLas/w886ZtzKIs1iyoqFrwsX2fqYEeUwsdBpC21gcjRGo57u0eg== dependencies: - "@typescript-eslint/experimental-utils" "5.2.0" - "@typescript-eslint/scope-manager" "5.2.0" + "@typescript-eslint/experimental-utils" "5.4.0" + "@typescript-eslint/scope-manager" "5.4.0" debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -1051,60 +1079,60 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.2.0.tgz#e3b2cb9cd0aff9b50f68d9a414c299fd26b067e6" - integrity sha512-fWyT3Agf7n7HuZZRpvUYdFYbPk3iDCq6fgu3ulia4c7yxmPnwVBovdSOX7RL+k8u6hLbrXcdAehlWUVpGh6IEw== +"@typescript-eslint/experimental-utils@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.4.0.tgz#238a7418d2da3b24874ba35385eb21cc61d2a65e" + integrity sha512-Nz2JDIQUdmIGd6p33A+naQmwfkU5KVTLb/5lTk+tLVTDacZKoGQisj8UCxk7onJcrgjIvr8xWqkYI+DbI3TfXg== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.2.0" - "@typescript-eslint/types" "5.2.0" - "@typescript-eslint/typescript-estree" "5.2.0" + "@typescript-eslint/scope-manager" "5.4.0" + "@typescript-eslint/types" "5.4.0" + "@typescript-eslint/typescript-estree" "5.4.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.2.0.tgz#dc081aa89de16b5676b10215519af3aa7b58fb72" - integrity sha512-Uyy4TjJBlh3NuA8/4yIQptyJb95Qz5PX//6p8n7zG0QnN4o3NF9Je3JHbVU7fxf5ncSXTmnvMtd/LDQWDk0YqA== +"@typescript-eslint/parser@^5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.4.0.tgz#3aa83ce349d66e39b84151f6d5464928044ca9e3" + integrity sha512-JoB41EmxiYpaEsRwpZEYAJ9XQURPFer8hpkIW9GiaspVLX8oqbqNM8P4EP8HOZg96yaALiLEVWllA2E8vwsIKw== dependencies: - "@typescript-eslint/scope-manager" "5.2.0" - "@typescript-eslint/types" "5.2.0" - "@typescript-eslint/typescript-estree" "5.2.0" + "@typescript-eslint/scope-manager" "5.4.0" + "@typescript-eslint/types" "5.4.0" + "@typescript-eslint/typescript-estree" "5.4.0" debug "^4.3.2" -"@typescript-eslint/scope-manager@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.2.0.tgz#7ce8e4ab2baaa0ad5282913ea8e13ce03ec6a12a" - integrity sha512-RW+wowZqPzQw8MUFltfKYZfKXqA2qgyi6oi/31J1zfXJRpOn6tCaZtd9b5u9ubnDG2n/EMvQLeZrsLNPpaUiFQ== +"@typescript-eslint/scope-manager@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.4.0.tgz#aaab08415f4a9cf32b870c7750ae8ba4607126a1" + integrity sha512-pRxFjYwoi8R+n+sibjgF9iUiAELU9ihPBtHzocyW8v8D8G8KeQvXTsW7+CBYIyTYsmhtNk50QPGLE3vrvhM5KA== dependencies: - "@typescript-eslint/types" "5.2.0" - "@typescript-eslint/visitor-keys" "5.2.0" + "@typescript-eslint/types" "5.4.0" + "@typescript-eslint/visitor-keys" "5.4.0" -"@typescript-eslint/types@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.2.0.tgz#7ad32d15abddb0ee968a330f0ea182ea544ef7cf" - integrity sha512-cTk6x08qqosps6sPyP2j7NxyFPlCNsJwSDasqPNjEQ8JMD5xxj2NHxcLin5AJQ8pAVwpQ8BMI3bTxR0zxmK9qQ== +"@typescript-eslint/types@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.4.0.tgz#b1c130f4b381b77bec19696c6e3366f9781ce8f2" + integrity sha512-GjXNpmn+n1LvnttarX+sPD6+S7giO+9LxDIGlRl4wK3a7qMWALOHYuVSZpPTfEIklYjaWuMtfKdeByx0AcaThA== -"@typescript-eslint/typescript-estree@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.2.0.tgz#c22e0ff6f8a4a3f78504a80ebd686fe2870a68ae" - integrity sha512-RsdXq2XmVgKbm9nLsE3mjNUM7BTr/K4DYR9WfFVMUuozHWtH5gMpiNZmtrMG8GR385EOSQ3kC9HiEMJWimxd/g== +"@typescript-eslint/typescript-estree@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.4.0.tgz#fe524fb308973c68ebeb7428f3b64499a6ba5fc0" + integrity sha512-nhlNoBdhKuwiLMx6GrybPT3SFILm5Gij2YBdPEPFlYNFAXUJWX6QRgvi/lwVoadaQEFsizohs6aFRMqsXI2ewA== dependencies: - "@typescript-eslint/types" "5.2.0" - "@typescript-eslint/visitor-keys" "5.2.0" + "@typescript-eslint/types" "5.4.0" + "@typescript-eslint/visitor-keys" "5.4.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@5.2.0": - version "5.2.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.2.0.tgz#03522d35df98474f08e0357171a7d1b259a88f55" - integrity sha512-Nk7HizaXWWCUBfLA/rPNKMzXzWS8Wg9qHMuGtT+v2/YpPij4nVXrVJc24N/r5WrrmqK31jCrZxeHqIgqRzs0Xg== +"@typescript-eslint/visitor-keys@5.4.0": + version "5.4.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.4.0.tgz#09bc28efd3621f292fe88c86eef3bf4893364c8c" + integrity sha512-PVbax7MeE7tdLfW5SA0fs8NGVVr+buMPrcj+CWYWPXsZCH8qZ1THufDzbXm1xrZ2b2PA1iENJ0sRq5fuUtvsJg== dependencies: - "@typescript-eslint/types" "5.2.0" + "@typescript-eslint/types" "5.4.0" eslint-visitor-keys "^3.0.0" JSONStream@^1.0.4: @@ -1215,6 +1243,11 @@ ansi-regex@^5.0.0, ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" @@ -1240,6 +1273,11 @@ ansi-styles@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansi-styles@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz#87313c102b8118abd57371afab34618bf7350ed3" + integrity sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ== + anymatch@^3.0.3, anymatch@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" @@ -1473,20 +1511,20 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browser-sync-client@^2.27.6: - version "2.27.6" - resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.6.tgz#23a3bd339d352bec6ce1870e9d49ce6ea357b0e8" - integrity sha512-hqTThp4/nE0Rxu6kn2UXVH9f8WhoHDls+bfhkZjhzCJfDdnGN9VyuwcgfD6gofaxvbzaDK00FiSCACFdmILDdg== +browser-sync-client@^2.27.7: + version "2.27.7" + resolved "https://registry.yarnpkg.com/browser-sync-client/-/browser-sync-client-2.27.7.tgz#e09dce1add876984cf8232de95d2332d29401a64" + integrity sha512-wKg9UP9a4sCIkBBAXUdbkdWFJzfSAQizGh+nC19W9y9zOo9s5jqeYRFUUbs7x5WKhjtspT+xetVp9AtBJ6BmWg== dependencies: etag "1.8.1" fresh "0.5.2" mitt "^1.1.3" rxjs "^5.5.6" -browser-sync-ui@^2.27.6: - version "2.27.6" - resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.27.6.tgz#c54dd7133ac96dc65824d341afc400504cb63a04" - integrity sha512-0nKvGG39z5cGIyPWhNgJBF4p6n6X6JjQj99EpilHEkUOnagbVRtJaWOXlOrkPNxsz5IZ3zx4pk0wYEO4IX7J8w== +browser-sync-ui@^2.27.7: + version "2.27.7" + resolved "https://registry.yarnpkg.com/browser-sync-ui/-/browser-sync-ui-2.27.7.tgz#38cd65f7ba058544310591ad8ac2e7fdf29934f2" + integrity sha512-Bt4OQpx9p18OIzk0KKyu7jqlvmjacasUlk8ARY3uuIyiFWSBiRgr2i6XY8dEMF14DtbooaEBOpHEu9VCYvMcCw== dependencies: async-each-series "0.1.1" connect-history-api-fallback "^1" @@ -1495,13 +1533,13 @@ browser-sync-ui@^2.27.6: socket.io-client "^2.4.0" stream-throttle "^0.1.3" -browser-sync@^2.27.6: - version "2.27.6" - resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.6.tgz#2c9e80e5e459df849eba3a12373c488c6ff667fd" - integrity sha512-lknOs7RmALVC8iLvQuNv0vhe6lChaT+GTP8qVw7s4+fZAhNvFn6jWedX94HMRs4iJOrwrm7kdg52G9mf1oHmAA== +browser-sync@^2.27.7: + version "2.27.7" + resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.7.tgz#65ec55d6c6e33283e505e06e5113bc32d9d0a8f0" + integrity sha512-9ElnnA/u+s2Jd+IgY+2SImB+sAEIteHsMG0NR96m7Ph/wztpvJCUpyC2on1KqmG9iAp941j+5jfmd34tEguGbg== dependencies: - browser-sync-client "^2.27.6" - browser-sync-ui "^2.27.6" + browser-sync-client "^2.27.7" + browser-sync-ui "^2.27.7" bs-recipes "1.3.4" bs-snippet-injector "^2.0.1" chokidar "^3.5.1" @@ -1528,7 +1566,7 @@ browser-sync@^2.27.6: serve-static "1.13.2" server-destroy "1.0.1" socket.io "2.4.0" - ua-parser-js "1.0.1" + ua-parser-js "1.0.2" yargs "^15.4.1" browserslist@^4.16.6: @@ -1688,7 +1726,15 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-truncate@2.1.0, cli-truncate@^2.1.0: +cli-truncate@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" + integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== + dependencies: + slice-ansi "^5.0.0" + string-width "^5.0.0" + +cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== @@ -1714,6 +1760,11 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +clone@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -1748,11 +1799,6 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -colorette@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40" - integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g== - colorette@^2.0.16: version "2.0.16" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" @@ -1770,7 +1816,7 @@ commander@^2.2.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^8.2.0: +commander@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== @@ -2010,7 +2056,7 @@ debug@4, debug@^4.1.1: dependencies: ms "2.1.2" -debug@4.3.2, debug@^4.1.0, debug@^4.3.2: +debug@4.3.2, debug@^4.1.0, debug@^4.3.1, debug@^4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== @@ -2198,6 +2244,11 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encodeurl@~1.0.1, encodeurl@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" @@ -2250,7 +2301,7 @@ engine.io@~3.5.0: engine.io-parser "~2.2.0" ws "~7.4.2" -enquirer@^2.3.5, enquirer@^2.3.6: +enquirer@^2.3.5: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== @@ -2358,12 +2409,12 @@ eslint-visitor-keys@^3.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz#e32e99c6cdc2eb063f204eda5db67bfe58bb4186" integrity sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q== -eslint@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.1.0.tgz#00f1f7dbf4134f26588e6c9f2efe970760f64664" - integrity sha512-JZvNneArGSUsluHWJ8g8MMs3CfIEzwaLx9KyH4tZ2i+R2/rPWzL8c0zg3rHdwYVpN/1sB9gqnjHwz9HoeJpGHw== +eslint@^8.2.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.2.0.tgz#44d3fb506d0f866a506d97a0fc0e90ee6d06a815" + integrity sha512-erw7XmM+CLxTOickrimJ1SiF55jiNlVSp2qqm0NuBWPtHYQCegD5ZMaW0c3i5ytPqL+SSLaCxdvQXFPLJn+ABw== dependencies: - "@eslint/eslintrc" "^1.0.3" + "@eslint/eslintrc" "^1.0.4" "@humanwhocodes/config-array" "^0.6.0" ajv "^6.10.0" chalk "^4.0.0" @@ -2397,7 +2448,7 @@ eslint@^8.1.0: progress "^2.0.0" regexpp "^3.2.0" semver "^7.2.1" - strip-ansi "^6.0.0" + strip-ansi "^6.0.1" strip-json-comments "^3.1.0" text-table "^0.2.0" v8-compile-cache "^2.0.3" @@ -2784,11 +2835,6 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== -get-own-enumerable-property-symbols@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" - integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== - get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -2959,6 +3005,11 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-flag@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-5.0.1.tgz#5483db2ae02a472d1d0691462fc587d1843cd940" + integrity sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA== + has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -3219,6 +3270,11 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-fullwidth-code-point@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz#fae3167c729e7463f8461ce512b080a49268aa88" + integrity sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== + is-generator-fn@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" @@ -3250,11 +3306,6 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-obj@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" - integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= - is-obj@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" @@ -3275,11 +3326,6 @@ is-potential-custom-element-name@^1.0.1: resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== -is-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" - integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= - is-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" @@ -3969,36 +4015,35 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= -lint-staged@^11.2.6: - version "11.2.6" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-11.2.6.tgz#f477b1af0294db054e5937f171679df63baa4c43" - integrity sha512-Vti55pUnpvPE0J9936lKl0ngVeTdSZpEdTNhASbkaWX7J5R9OEifo1INBGQuGW4zmy6OG+TcWPJ3m5yuy5Q8Tg== +lint-staged@^12.0.2: + version "12.0.2" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.0.2.tgz#b0f96f2a57898658a5b59e087aeff975dad03fc1" + integrity sha512-tpCvACqc7bykziGJmXG0G8YG2RaCrWiDBwmrP9wU7i/3za9JMOvCECQmXjw/sO4ICC70ApVwyqixS1htQX9Haw== dependencies: - cli-truncate "2.1.0" - colorette "^1.4.0" - commander "^8.2.0" + cli-truncate "3.1.0" + colorette "^2.0.16" + commander "^8.3.0" cosmiconfig "^7.0.1" debug "^4.3.2" - enquirer "^2.3.6" execa "^5.1.1" - listr2 "^3.12.2" + listr2 "^3.13.3" micromatch "^4.0.4" normalize-path "^3.0.0" - please-upgrade-node "^3.2.0" + object-inspect "1.11.0" string-argv "0.3.1" - stringify-object "3.3.0" - supports-color "8.1.1" + supports-color "9.0.2" -listr2@^3.12.2: - version "3.13.1" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.1.tgz#816e8c1728d50f223795f530d72d248c7fa14602" - integrity sha512-pk4YBDA2cxtpM8iLHbz6oEsfZieJKHf6Pt19NlKaHZZVpqHyVs/Wqr7RfBBCeAFCJchGO7WQHVkUPZTvJMHk8w== +listr2@^3.13.3: + version "3.13.4" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.4.tgz#34101fc0184545597e00d1e7915ccfbfb17332e6" + integrity sha512-lZ1Rut1DSIRwbxQbI8qaUBfOWJ1jEYRgltIM97j6kKOCI2pHVWMyxZvkU/JKmRBWcIYgDS2PK+yDgVqm7u3crw== dependencies: cli-truncate "^2.1.0" + clone "^2.1.2" colorette "^2.0.16" log-update "^4.0.0" p-map "^4.0.0" - rxjs "^6.6.7" + rxjs "^7.4.0" through "^2.3.8" wrap-ansi "^7.0.0" @@ -4243,13 +4288,14 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.3.1.tgz#e39efd3f1ffb5a5c5e206a65bbd8f21723ddd345" - integrity sha512-GKMqL9h65JokWK6LK/+raUzVa44fE58PGLi4a8nUn7C2YSenBX6jDPdMDC84ckCwJPUOuOMjsqkjWSjUJCe/OA== +mockttp@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.4.0.tgz#3027d210be46d0695f60367d35737bb6c13e59c4" + integrity sha512-aMktxhtDGiKcH+vtcmZL41fPtR9u5ZanauurAOPVybH9QcryOVQN2wLjhxXqsvji348rtAWSjuZUmMYSBqaWTg== dependencies: "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^1.0.0" + "@httptoolkit/proxy-agent" "^5.0.1-socks-lookup-fix.0" "@httptoolkit/subscriptions-transport-ws" "^0.9.19" "@httptoolkit/websocket-stream" "^6.0.0" "@types/cors" "^2.8.6" @@ -4273,7 +4319,6 @@ mockttp@^2.3.1: node-forge "^0.10.0" performance-now "^2.1.0" portfinder "^1.0.23" - proxy-agent "^5.0.0" typed-error "^3.0.2" uuid "^3.1.0" ws "^7.3.1" @@ -4390,6 +4435,11 @@ object-assign@^4: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= +object-inspect@1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -4624,13 +4674,6 @@ pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -please-upgrade-node@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" - integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== - dependencies: - semver-compare "^1.0.0" - portfinder@^1.0.23: version "1.0.28" resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.28.tgz#67c4622852bd5374dd1dd900f779f53462fac778" @@ -4706,20 +4749,6 @@ proxy-addr@~2.0.5: forwarded "~0.1.2" ipaddr.js "1.9.1" -proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-5.0.0.tgz#d31405c10d6e8431fde96cba7a0c027ce01d633b" - integrity sha512-gkH7BkvLVkSfX9Dk27W6TyNOWWZWRilRfk1XxGNWOYJ2TuedAv1yFpCaU9QSBmBe716XOTNpYNOzhysyw8xn7g== - dependencies: - agent-base "^6.0.0" - debug "4" - http-proxy-agent "^4.0.0" - https-proxy-agent "^5.0.0" - lru-cache "^5.1.1" - pac-proxy-agent "^5.0.0" - proxy-from-env "^1.0.0" - socks-proxy-agent "^5.0.0" - proxy-from-env@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" @@ -4975,12 +5004,12 @@ rxjs@^5.5.6: dependencies: symbol-observable "1.0.1" -rxjs@^6.6.7: - version "6.6.7" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" - integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== +rxjs@^7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" + integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== dependencies: - tslib "^1.9.0" + tslib "~2.1.0" safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" @@ -5004,11 +5033,6 @@ saxes@^5.0.1: dependencies: xmlchars "^2.2.0" -semver-compare@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" - integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= - "semver@2 || 3 || 4 || 5": version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -5167,6 +5191,14 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" +slice-ansi@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz#b73063c57aa96f9cd881654b15294d95d285c42a" + integrity sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== + dependencies: + ansi-styles "^6.0.0" + is-fullwidth-code-point "^4.0.0" + smart-buffer@^4.1.0: version "4.2.0" resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" @@ -5224,7 +5256,7 @@ socket.io@2.4.0: socket.io-client "2.4.0" socket.io-parser "~3.4.0" -socks-proxy-agent@5, socks-proxy-agent@^5.0.0: +socks-proxy-agent@5: version "5.0.1" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== @@ -5233,7 +5265,7 @@ socks-proxy-agent@5, socks-proxy-agent@^5.0.0: debug "4" socks "^2.3.3" -socks@^2.3.3: +socks@^2.3.3, socks@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== @@ -5359,6 +5391,15 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.0" +string-width@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.0.1.tgz#0d8158335a6cfd8eb95da9b6b262ce314a036ffd" + integrity sha512-5ohWO/M4//8lErlUUtrFy3b11GtNOuMOU0ysKCDXFcfXuuvUXu95akgj/i8ofmaGdN0hCqyl6uu9i8dS/mQp5g== + dependencies: + emoji-regex "^9.2.2" + is-fullwidth-code-point "^4.0.0" + strip-ansi "^7.0.1" + string_decoder@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" @@ -5378,15 +5419,6 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -stringify-object@3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" - integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== - dependencies: - get-own-enumerable-property-symbols "^3.0.0" - is-obj "^1.0.1" - is-regexp "^1.0.0" - strip-ansi@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -5401,6 +5433,20 @@ strip-ansi@^6.0.0: dependencies: ansi-regex "^5.0.0" +strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz#61740a08ce36b61e50e65653f07060d000975fb2" + integrity sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw== + dependencies: + ansi-regex "^6.0.1" + strip-bom@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" @@ -5448,12 +5494,12 @@ supertest@^6.1.6: methods "^1.1.2" superagent "^6.1.0" -supports-color@8.1.1, supports-color@^8.0.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" - integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== +supports-color@9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.0.2.tgz#50f082888e4b0a4e2ccd2d0b4f9ef4efcd332485" + integrity sha512-ii6tc8ImGFrgMPYq7RVAMKkhPo9vk8uA+D3oKbJq/3Pk2YSMv1+9dUAesa9UxMbxBTvxwKTQffBahNVNxEvM8Q== dependencies: - has-flag "^4.0.0" + has-flag "^5.0.0" supports-color@^2.0.0: version "2.0.0" @@ -5481,6 +5527,13 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + supports-hyperlinks@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" @@ -5635,7 +5688,7 @@ ts-node@^9: source-map-support "^0.5.17" yn "3.1.1" -tslib@^1.8.1, tslib@^1.9.0: +tslib@^1.8.1: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== @@ -5650,6 +5703,11 @@ tslib@~2.0.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== +tslib@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" + integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== + tslib@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" @@ -5736,15 +5794,15 @@ typescript@^4.4.3: resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.3.tgz#bdc5407caa2b109efd4f82fe130656f977a29324" integrity sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA== -typescript@^4.4.4: - version "4.4.4" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c" - integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA== +typescript@^4.5.2: + version "4.5.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998" + integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw== -ua-parser-js@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.1.tgz#268408f4d60375e67aa919fa7d117bdc66d5cd77" - integrity sha512-ZMu7XRN3M3R+g/YaFQKiVW0J42bzciF0+xAxP5uuO6VibE30MQvRRBctHuh22uS3yAe5jkru/i8QVOwRDJazIw== +ua-parser-js@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.2.tgz#e2976c34dbfb30b15d2c300b2a53eac87c57a775" + integrity sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg== universalify@^0.1.0, universalify@^0.1.2: version "0.1.2" From a21c0dcbc9beeaf131dfe7efb32da156ec7e3a2b Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 28 Nov 2021 23:36:50 +0100 Subject: [PATCH 47/77] chore(husky): fix husky v7 hooks (#682) --- .husky/commit-msg | 3 +++ .husky/pre-commit | 3 +++ 2 files changed, 6 insertions(+) diff --git a/.husky/commit-msg b/.husky/commit-msg index 2785bc1d..d71a03b9 100755 --- a/.husky/commit-msg +++ b/.husky/commit-msg @@ -1 +1,4 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + yarn commitlint --edit $1 diff --git a/.husky/pre-commit b/.husky/pre-commit index 37236231..d2ae35e8 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1 +1,4 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + yarn lint-staged From 700f071628910a591a667eeeacdce1f3767acfc5 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 18 Dec 2021 18:05:48 +0000 Subject: [PATCH 48/77] chore(package): pin and update dev dependencies --- package.json | 58 +- yarn.lock | 2180 ++++++++++++++++++++++---------------------------- 2 files changed, 996 insertions(+), 1242 deletions(-) diff --git a/package.json b/package.json index 46b25545..ce91f1c3 100644 --- a/package.json +++ b/package.json @@ -52,35 +52,35 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "^15.0.0", - "@commitlint/config-conventional": "^15.0.0", - "@types/express": "^4.17.13", - "@types/is-glob": "^4.0.2", - "@types/jest": "^27.0.2", - "@types/micromatch": "^4.0.2", - "@types/node": "^16.11.7", - "@types/supertest": "^2.0.11", - "@types/ws": "^8.2.0", - "@typescript-eslint/eslint-plugin": "^5.4.0", - "@typescript-eslint/parser": "^5.4.0", - "body-parser": "^1.19.0", - "browser-sync": "^2.27.7", - "connect": "^3.7.0", - "eslint": "^8.2.0", - "eslint-config-prettier": "^8.3.0", - "eslint-plugin-prettier": "^4.0.0", - "express": "^4.17.1", - "get-port": "^5.1.1", - "husky": "^7.0.4", - "jest": "^27.3.1", - "lint-staged": "^12.0.2", - "mockttp": "^2.4.0", - "open": "^8.4.0", - "prettier": "^2.4.1", - "supertest": "^6.1.6", - "ts-jest": "^27.0.7", - "typescript": "^4.5.2", - "ws": "^8.2.3" + "@commitlint/cli": "15.0.0", + "@commitlint/config-conventional": "15.0.0", + "@types/express": "4.17.13", + "@types/is-glob": "4.0.2", + "@types/jest": "27.0.3", + "@types/micromatch": "4.0.2", + "@types/node": "17.0.0", + "@types/supertest": "2.0.11", + "@types/ws": "8.2.2", + "@typescript-eslint/eslint-plugin": "5.7.0", + "@typescript-eslint/parser": "5.7.0", + "body-parser": "1.19.1", + "browser-sync": "2.27.7", + "connect": "3.7.0", + "eslint": "8.5.0", + "eslint-config-prettier": "8.3.0", + "eslint-plugin-prettier": "4.0.0", + "express": "4.17.2", + "get-port": "5.1.1", + "husky": "7.0.4", + "jest": "27.4.5", + "lint-staged": "12.1.3", + "mockttp": "2.4.0", + "open": "8.4.0", + "prettier": "2.5.1", + "supertest": "6.1.6", + "ts-jest": "27.1.2", + "typescript": "4.5.4", + "ws": "8.3.0" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index 77e82051..def6b6c9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9,39 +9,32 @@ dependencies: tslib "~2.0.1" -"@babel/code-frame@^7.0.0": - version "7.12.13" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.13.tgz#dcfc826beef65e75c50e21d3837d7d95798dd658" - integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== - dependencies: - "@babel/highlight" "^7.12.13" - -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.14.5", "@babel/code-frame@^7.15.8": - version "7.15.8" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.15.8.tgz#45990c47adadb00c03677baa89221f7cc23d2503" - integrity sha512-2IAnmn8zbvC/jKYhq5Ki9I+DwjlrtMPUCH/CpHvqI4dNnlwHwsxoIhlc8WcYY5LSYknXQtAlFYuHfqAFCvQ4Wg== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" + integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== dependencies: - "@babel/highlight" "^7.14.5" + "@babel/highlight" "^7.16.0" -"@babel/compat-data@^7.15.0": - version "7.15.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.15.0.tgz#2dbaf8b85334796cafbb0f5793a90a2fc010b176" - integrity sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA== +"@babel/compat-data@^7.16.0": + version "7.16.4" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" + integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== "@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.7.5": - version "7.15.8" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.15.8.tgz#195b9f2bffe995d2c6c159e72fe525b4114e8c10" - integrity sha512-3UG9dsxvYBMYwRv+gS41WKHno4K60/9GPy1CJaH6xy3Elq8CTtvtjT5R5jmNhXfCYLX2mTw+7/aq5ak/gOE0og== - dependencies: - "@babel/code-frame" "^7.15.8" - "@babel/generator" "^7.15.8" - "@babel/helper-compilation-targets" "^7.15.4" - "@babel/helper-module-transforms" "^7.15.8" - "@babel/helpers" "^7.15.4" - "@babel/parser" "^7.15.8" - "@babel/template" "^7.15.4" - "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.6" + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.5.tgz#924aa9e1ae56e1e55f7184c8bf073a50d8677f5c" + integrity sha512-wUcenlLzuWMZ9Zt8S0KmFwGlH6QKRh3vsm/dhDA3CHkiTA45YuG1XkHRcNRl73EFPXDp/d5kVOU0/y7x2w6OaQ== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/generator" "^7.16.5" + "@babel/helper-compilation-targets" "^7.16.3" + "@babel/helper-module-transforms" "^7.16.5" + "@babel/helpers" "^7.16.5" + "@babel/parser" "^7.16.5" + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.5" + "@babel/types" "^7.16.0" convert-source-map "^1.7.0" debug "^4.1.0" gensync "^1.0.0-beta.2" @@ -49,118 +42,96 @@ semver "^6.3.0" source-map "^0.5.0" -"@babel/generator@^7.15.4", "@babel/generator@^7.15.8", "@babel/generator@^7.7.2": - version "7.15.8" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.15.8.tgz#fa56be6b596952ceb231048cf84ee499a19c0cd1" - integrity sha512-ECmAKstXbp1cvpTTZciZCgfOt6iN64lR0d+euv3UZisU5awfRawOvg07Utn/qBGuH4bRIEZKrA/4LzZyXhZr8g== +"@babel/generator@^7.16.5", "@babel/generator@^7.7.2": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.5.tgz#26e1192eb8f78e0a3acaf3eede3c6fc96d22bedf" + integrity sha512-kIvCdjZqcdKqoDbVVdt5R99icaRtrtYhYK/xux5qiWCBmfdvEYMFZ68QCrpE5cbFM1JsuArUNs1ZkuKtTtUcZA== dependencies: - "@babel/types" "^7.15.6" + "@babel/types" "^7.16.0" jsesc "^2.5.1" source-map "^0.5.0" -"@babel/helper-compilation-targets@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.4.tgz#cf6d94f30fbefc139123e27dd6b02f65aeedb7b9" - integrity sha512-rMWPCirulnPSe4d+gwdWXLfAXTTBj8M3guAf5xFQJ0nvFY7tfNAFnWdqaHegHlgDZOCT4qvhF3BYlSJag8yhqQ== +"@babel/helper-compilation-targets@^7.16.3": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0" + integrity sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA== dependencies: - "@babel/compat-data" "^7.15.0" + "@babel/compat-data" "^7.16.0" "@babel/helper-validator-option" "^7.14.5" - browserslist "^4.16.6" + browserslist "^4.17.5" semver "^6.3.0" -"@babel/helper-function-name@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.15.4.tgz#845744dafc4381a4a5fb6afa6c3d36f98a787ebc" - integrity sha512-Z91cOMM4DseLIGOnog+Z8OI6YseR9bua+HpvLAQ2XayUGU+neTtX+97caALaLdyu53I/fjhbeCnWnRH1O3jFOw== +"@babel/helper-environment-visitor@^7.16.5": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz#f6a7f38b3c6d8b07c88faea083c46c09ef5451b8" + integrity sha512-ODQyc5AnxmZWm/R2W7fzhamOk1ey8gSguo5SGvF0zcB3uUzRpTRmM/jmLSm9bDMyPlvbyJ+PwPEK0BWIoZ9wjg== dependencies: - "@babel/helper-get-function-arity" "^7.15.4" - "@babel/template" "^7.15.4" - "@babel/types" "^7.15.4" + "@babel/types" "^7.16.0" -"@babel/helper-get-function-arity@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.15.4.tgz#098818934a137fce78b536a3e015864be1e2879b" - integrity sha512-1/AlxSF92CmGZzHnC515hm4SirTxtpDnLEJ0UyEMgTMZN+6bxXKg04dKhiRx5Enel+SUA1G1t5Ed/yQia0efrA== +"@babel/helper-function-name@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481" + integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog== dependencies: - "@babel/types" "^7.15.4" + "@babel/helper-get-function-arity" "^7.16.0" + "@babel/template" "^7.16.0" + "@babel/types" "^7.16.0" -"@babel/helper-hoist-variables@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.15.4.tgz#09993a3259c0e918f99d104261dfdfc033f178df" - integrity sha512-VTy085egb3jUGVK9ycIxQiPbquesq0HUQ+tPO0uv5mPEBZipk+5FkRKiWq5apuyTE9FUrjENB0rCf8y+n+UuhA== +"@babel/helper-get-function-arity@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" + integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.16.0" -"@babel/helper-member-expression-to-functions@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.4.tgz#bfd34dc9bba9824a4658b0317ec2fd571a51e6ef" - integrity sha512-cokOMkxC/BTyNP1AlY25HuBWM32iCEsLPI4BHDpJCHHm1FU2E7dKWWIXJgQgSFiu4lp8q3bL1BIKwqkSUviqtA== +"@babel/helper-hoist-variables@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" + integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.16.0" -"@babel/helper-module-imports@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz#e18007d230632dea19b47853b984476e7b4e103f" - integrity sha512-jeAHZbzUwdW/xHgHQ3QmWR4Jg6j15q4w/gCfwZvtqOxoo5DKtLHk8Bsf4c5RZRC7NmLEs+ohkdq8jFefuvIxAA== +"@babel/helper-module-imports@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" + integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.16.0" -"@babel/helper-module-transforms@^7.15.8": - version "7.15.8" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.15.8.tgz#d8c0e75a87a52e374a8f25f855174786a09498b2" - integrity sha512-DfAfA6PfpG8t4S6npwzLvTUpp0sS7JrcuaMiy1Y5645laRJIp/LiLGIBbQKaXSInK8tiGNI7FL7L8UvB8gdUZg== +"@babel/helper-module-transforms@^7.16.5": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz#530ebf6ea87b500f60840578515adda2af470a29" + integrity sha512-CkvMxgV4ZyyioElFwcuWnDCcNIeyqTkCm9BxXZi73RR1ozqlpboqsbGUNvRTflgZtFbbJ1v5Emvm+lkjMYY/LQ== dependencies: - "@babel/helper-module-imports" "^7.15.4" - "@babel/helper-replace-supers" "^7.15.4" - "@babel/helper-simple-access" "^7.15.4" - "@babel/helper-split-export-declaration" "^7.15.4" + "@babel/helper-environment-visitor" "^7.16.5" + "@babel/helper-module-imports" "^7.16.0" + "@babel/helper-simple-access" "^7.16.0" + "@babel/helper-split-export-declaration" "^7.16.0" "@babel/helper-validator-identifier" "^7.15.7" - "@babel/template" "^7.15.4" - "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.6" + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.5" + "@babel/types" "^7.16.0" -"@babel/helper-optimise-call-expression@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.15.4.tgz#f310a5121a3b9cc52d9ab19122bd729822dee171" - integrity sha512-E/z9rfbAOt1vDW1DR7k4SzhzotVV5+qMciWV6LaG1g4jeFrkDlJedjtV4h0i4Q/ITnUu+Pk08M7fczsB9GXBDw== - dependencies: - "@babel/types" "^7.15.4" +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.5.tgz#afe37a45f39fce44a3d50a7958129ea5b1a5c074" + integrity sha512-59KHWHXxVA9K4HNF4sbHCf+eJeFe0Te/ZFGqBT4OjXhrwvA04sGfaEGsVTdsjoszq0YTP49RC9UKe5g8uN2RwQ== -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" - integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== - -"@babel/helper-replace-supers@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.15.4.tgz#52a8ab26ba918c7f6dee28628b07071ac7b7347a" - integrity sha512-/ztT6khaXF37MS47fufrKvIsiQkx1LBRvSJNzRqmbyeZnTwU9qBxXYLaaT/6KaxfKhjs2Wy8kG8ZdsFUuWBjzw== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.15.4" - "@babel/helper-optimise-call-expression" "^7.15.4" - "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.4" - -"@babel/helper-simple-access@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.15.4.tgz#ac368905abf1de8e9781434b635d8f8674bcc13b" - integrity sha512-UzazrDoIVOZZcTeHHEPYrr1MvTR/K+wgLg6MY6e1CJyaRhbibftF6fR2KU2sFRtI/nERUZR9fBd6aKgBlIBaPg== +"@babel/helper-simple-access@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz#21d6a27620e383e37534cf6c10bba019a6f90517" + integrity sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw== dependencies: - "@babel/types" "^7.15.4" + "@babel/types" "^7.16.0" -"@babel/helper-split-export-declaration@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.15.4.tgz#aecab92dcdbef6a10aa3b62ab204b085f776e257" - integrity sha512-HsFqhLDZ08DxCpBdEVtKmywj6PQbwnF6HHybur0MAnkAKnlS6uHkwnmRIkElB2Owpfb4xL4NwDmDLFubueDXsw== +"@babel/helper-split-export-declaration@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438" + integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw== dependencies: - "@babel/types" "^7.15.4" - -"@babel/helper-validator-identifier@^7.14.0": - version "7.14.0" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz#d26cad8a47c65286b15df1547319a5d0bcf27288" - integrity sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A== + "@babel/types" "^7.16.0" -"@babel/helper-validator-identifier@^7.14.5", "@babel/helper-validator-identifier@^7.14.9", "@babel/helper-validator-identifier@^7.15.7": +"@babel/helper-validator-identifier@^7.15.7": version "7.15.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== @@ -170,37 +141,28 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== -"@babel/helpers@^7.15.4": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.15.4.tgz#5f40f02050a3027121a3cf48d497c05c555eaf43" - integrity sha512-V45u6dqEJ3w2rlryYYXf6i9rQ5YMNu4FLS6ngs8ikblhu2VdR1AqAd6aJjBzmf2Qzh6KOLqKHxEN9+TFbAkAVQ== +"@babel/helpers@^7.16.5": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.5.tgz#29a052d4b827846dd76ece16f565b9634c554ebd" + integrity sha512-TLgi6Lh71vvMZGEkFuIxzaPsyeYCHQ5jJOOX1f0xXn0uciFuE8cEk0wyBquMcCxBXZ5BJhE2aUB7pnWTD150Tw== dependencies: - "@babel/template" "^7.15.4" - "@babel/traverse" "^7.15.4" - "@babel/types" "^7.15.4" + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.5" + "@babel/types" "^7.16.0" -"@babel/highlight@^7.12.13": - version "7.14.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.0.tgz#3197e375711ef6bf834e67d0daec88e4f46113cf" - integrity sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg== +"@babel/highlight@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" + integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== dependencies: - "@babel/helper-validator-identifier" "^7.14.0" - chalk "^2.0.0" - js-tokens "^4.0.0" - -"@babel/highlight@^7.14.5": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.14.5.tgz#6861a52f03966405001f6aa534a01a24d99e8cd9" - integrity sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg== - dependencies: - "@babel/helper-validator-identifier" "^7.14.5" + "@babel/helper-validator-identifier" "^7.15.7" chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.15.4", "@babel/parser@^7.15.8", "@babel/parser@^7.7.2": - version "7.15.8" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.15.8.tgz#7bacdcbe71bdc3ff936d510c15dcea7cf0b99016" - integrity sha512-BRYa3wcQnjS/nqI8Ac94pYYpJfojHVvVXJ97+IDCImX4Jc8W8Xv1+47enbruk+q1etOpsQNwnfFcNGw+gtPGxA== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.0", "@babel/parser@^7.16.5", "@babel/parser@^7.7.2": + version "7.16.6" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.6.tgz#8f194828193e8fa79166f34a4b4e52f3e769a314" + integrity sha512-Gr86ujcNuPDnNOY8mi383Hvi8IYrJVJYuf3XcuBM/Dgd+bINn/7tHqsj+tKkoreMbmGsFLsltI/JJd8fOFWGDQ== "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -287,42 +249,43 @@ "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": - version "7.14.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz#b82c6ce471b165b5ce420cf92914d6fb46225716" - integrity sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q== - dependencies: - "@babel/helper-plugin-utils" "^7.14.5" - -"@babel/template@^7.15.4", "@babel/template@^7.3.3": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.15.4.tgz#51898d35dcf3faa670c4ee6afcfd517ee139f194" - integrity sha512-UgBAfEa1oGuYgDIPM2G+aHa4Nlo9Lh6mGD2bDBGMTbYnc38vulXPuC1MGjYILIEmlwl6Rd+BPR9ee3gm20CBtg== - dependencies: - "@babel/code-frame" "^7.14.5" - "@babel/parser" "^7.15.4" - "@babel/types" "^7.15.4" - -"@babel/traverse@^7.1.0", "@babel/traverse@^7.15.4", "@babel/traverse@^7.7.2": - version "7.15.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.15.4.tgz#ff8510367a144bfbff552d9e18e28f3e2889c22d" - integrity sha512-W6lQD8l4rUbQR/vYgSuCAE75ADyyQvOpFVsvPPdkhf6lATXAsQIG9YdtOcu8BB1dZ0LKu+Zo3c1wEcbKeuhdlA== - dependencies: - "@babel/code-frame" "^7.14.5" - "@babel/generator" "^7.15.4" - "@babel/helper-function-name" "^7.15.4" - "@babel/helper-hoist-variables" "^7.15.4" - "@babel/helper-split-export-declaration" "^7.15.4" - "@babel/parser" "^7.15.4" - "@babel/types" "^7.15.4" + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.5.tgz#f47a33e4eee38554f00fb6b2f894fa1f5649b0b3" + integrity sha512-/d4//lZ1Vqb4mZ5xTep3dDK888j7BGM/iKqBmndBaoYAFPlPKrGU608VVBz5JeyAb6YQDjRu1UKqj86UhwWVgw== + dependencies: + "@babel/helper-plugin-utils" "^7.16.5" + +"@babel/template@^7.16.0", "@babel/template@^7.3.3": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6" + integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/parser" "^7.16.0" + "@babel/types" "^7.16.0" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.16.5", "@babel/traverse@^7.7.2": + version "7.16.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.5.tgz#d7d400a8229c714a59b87624fc67b0f1fbd4b2b3" + integrity sha512-FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/generator" "^7.16.5" + "@babel/helper-environment-visitor" "^7.16.5" + "@babel/helper-function-name" "^7.16.0" + "@babel/helper-hoist-variables" "^7.16.0" + "@babel/helper-split-export-declaration" "^7.16.0" + "@babel/parser" "^7.16.5" + "@babel/types" "^7.16.0" debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.15.4", "@babel/types@^7.15.6", "@babel/types@^7.3.0", "@babel/types@^7.3.3": - version "7.15.6" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.15.6.tgz#99abdc48218b2881c058dd0a7ab05b99c9be758f" - integrity sha512-BPU+7QhqNjmWyDO0/vitH/CuhpV8ZmK1wpKva8nuyNF5MJfuRNWMc+hc14+u9xT93kvykMdncrJT19h74uB1Ig== +"@babel/types@^7.0.0", "@babel/types@^7.16.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba" + integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg== dependencies: - "@babel/helper-validator-identifier" "^7.14.9" + "@babel/helper-validator-identifier" "^7.15.7" to-fast-properties "^2.0.0" "@bcoe/v8-coverage@^0.2.3": @@ -330,7 +293,7 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@^15.0.0": +"@commitlint/cli@15.0.0": version "15.0.0" resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-15.0.0.tgz#8e78e86ee2b6955c1a5d140e734a6c171ce367ee" integrity sha512-Y5xmDCweytqzo4N4lOI2YRiuX35xTjcs8n5hUceBH8eyK0YbwtgWX50BJOH2XbkwEmII9blNhlBog6AdQsqicg== @@ -345,7 +308,7 @@ resolve-global "1.0.0" yargs "^17.0.0" -"@commitlint/config-conventional@^15.0.0": +"@commitlint/config-conventional@15.0.0": version "15.0.0" resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-15.0.0.tgz#3bf1adf319e3b431de12ba82dc399524038b2d8f" integrity sha512-eZBRL8Lk3hMNHp1wUMYj0qrZQEsST1ai7KHR8J1IDD9aHgT7L2giciibuQ+Og7vxVhR5WtYDvh9xirXFVPaSkQ== @@ -480,14 +443,14 @@ ts-node "^9" tslib "^2" -"@eslint/eslintrc@^1.0.4": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.4.tgz#dfe0ff7ba270848d10c5add0715e04964c034b31" - integrity sha512-h8Vx6MdxwWI2WM8/zREHMoqdgLNXEL4QX3MWSVMdyNJGvXVOs+6lp+m2hc3FnuMHDc4poxFNI20vCk0OmI4G0Q== +"@eslint/eslintrc@^1.0.5": + version "1.0.5" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.5.tgz#33f1b838dbf1f923bfa517e008362b78ddbbf318" + integrity sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ== dependencies: ajv "^6.12.4" debug "^4.3.2" - espree "^9.0.0" + espree "^9.2.0" globals "^13.9.0" ignore "^4.0.6" import-fresh "^3.2.1" @@ -568,19 +531,19 @@ ws "*" xtend "^4.0.0" -"@humanwhocodes/config-array@^0.6.0": - version "0.6.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.6.0.tgz#b5621fdb3b32309d2d16575456cbc277fa8f021a" - integrity sha512-JQlEKbcgEUjBFhLIF4iqM7u/9lwgHRBcpHrmUNCALK0Q3amXN6lxdoXLnF0sm11E9VqTmBALR87IlUg1bZ8A9A== +"@humanwhocodes/config-array@^0.9.2": + version "0.9.2" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.9.2.tgz#68be55c737023009dfc5fe245d51181bb6476914" + integrity sha512-UXOuFCGcwciWckOpmfKDq/GyhlTf9pN/BzG//x8p8zTOFEcGuA68ANXheFS0AGvy3qgZqLBUkMs7hqzqCKOVwA== dependencies: - "@humanwhocodes/object-schema" "^1.2.0" + "@humanwhocodes/object-schema" "^1.2.1" debug "^4.1.1" minimatch "^3.0.4" -"@humanwhocodes/object-schema@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz#87de7af9c231826fdd68ac7258f77c429e0e5fcf" - integrity sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w== +"@humanwhocodes/object-schema@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" @@ -598,93 +561,93 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.3.1.tgz#e8ea3a475d3f8162f23d69efbfaa9cbe486bee93" - integrity sha512-RkFNWmv0iui+qsOr/29q9dyfKTTT5DCuP31kUwg7rmOKPT/ozLeGLKJKVIiOfbiKyleUZKIrHwhmiZWVe8IMdw== +"@jest/console@^27.4.2": + version "27.4.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.2.tgz#7a95612d38c007ddb528ee446fe5e5e785e685ce" + integrity sha512-xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.3.1" - jest-util "^27.3.1" + jest-message-util "^27.4.2" + jest-util "^27.4.2" slash "^3.0.0" -"@jest/core@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.3.1.tgz#04992ef1b58b17c459afb87ab56d81e63d386925" - integrity sha512-DMNE90RR5QKx0EA+wqe3/TNEwiRpOkhshKNxtLxd4rt3IZpCt+RSL+FoJsGeblRZmqdK4upHA/mKKGPPRAifhg== +"@jest/core@^27.4.5": + version "27.4.5" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.5.tgz#cae2dc34259782f4866c6606c3b480cce920ed4c" + integrity sha512-3tm/Pevmi8bDsgvo73nX8p/WPng6KWlCyScW10FPEoN1HU4pwI83tJ3TsFvi1FfzsjwUlMNEPowgb/rPau/LTQ== dependencies: - "@jest/console" "^27.3.1" - "@jest/reporters" "^27.3.1" - "@jest/test-result" "^27.3.1" - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/console" "^27.4.2" + "@jest/reporters" "^27.4.5" + "@jest/test-result" "^27.4.2" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^27.3.0" - jest-config "^27.3.1" - jest-haste-map "^27.3.1" - jest-message-util "^27.3.1" - jest-regex-util "^27.0.6" - jest-resolve "^27.3.1" - jest-resolve-dependencies "^27.3.1" - jest-runner "^27.3.1" - jest-runtime "^27.3.1" - jest-snapshot "^27.3.1" - jest-util "^27.3.1" - jest-validate "^27.3.1" - jest-watcher "^27.3.1" + jest-changed-files "^27.4.2" + jest-config "^27.4.5" + jest-haste-map "^27.4.5" + jest-message-util "^27.4.2" + jest-regex-util "^27.4.0" + jest-resolve "^27.4.5" + jest-resolve-dependencies "^27.4.5" + jest-runner "^27.4.5" + jest-runtime "^27.4.5" + jest-snapshot "^27.4.5" + jest-util "^27.4.2" + jest-validate "^27.4.2" + jest-watcher "^27.4.2" micromatch "^4.0.4" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.3.1.tgz#2182defbce8d385fd51c5e7c7050f510bd4c86b1" - integrity sha512-BCKCj4mOVLme6Tanoyc9k0ultp3pnmuyHw73UHRPeeZxirsU/7E3HC4le/VDb/SMzE1JcPnto+XBKFOcoiJzVw== +"@jest/environment@^27.4.4": + version "27.4.4" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.4.tgz#66ebebc79673d84aad29d2bb70a8c51e6c29bb4d" + integrity sha512-q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ== dependencies: - "@jest/fake-timers" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/fake-timers" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.3.0" + jest-mock "^27.4.2" -"@jest/fake-timers@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.3.1.tgz#1fad860ee9b13034762cdb94266e95609dfce641" - integrity sha512-M3ZFgwwlqJtWZ+QkBG5NmC23A9w+A6ZxNsO5nJxJsKYt4yguBd3i8TpjQz5NfCX91nEve1KqD9RA2Q+Q1uWqoA== +"@jest/fake-timers@^27.4.2": + version "27.4.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.2.tgz#d217f86c3ba2027bf29e0b731fd0cb761a72d093" + integrity sha512-f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.3.1" - jest-mock "^27.3.0" - jest-util "^27.3.1" + jest-message-util "^27.4.2" + jest-mock "^27.4.2" + jest-util "^27.4.2" -"@jest/globals@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.3.1.tgz#ce1dfb03d379237a9da6c1b99ecfaca1922a5f9e" - integrity sha512-Q651FWiWQAIFiN+zS51xqhdZ8g9b88nGCobC87argAxA7nMfNQq0Q0i9zTfQYgLa6qFXk2cGANEqfK051CZ8Pg== +"@jest/globals@^27.4.4": + version "27.4.4" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.4.tgz#fe501a80c23ea2dab585c42be2a519bb5e38530d" + integrity sha512-bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ== dependencies: - "@jest/environment" "^27.3.1" - "@jest/types" "^27.2.5" - expect "^27.3.1" + "@jest/environment" "^27.4.4" + "@jest/types" "^27.4.2" + expect "^27.4.2" -"@jest/reporters@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.3.1.tgz#28b5c1f5789481e23788048fa822ed15486430b9" - integrity sha512-m2YxPmL9Qn1emFVgZGEiMwDntDxRRQ2D58tiDQlwYTg5GvbFOKseYCcHtn0WsI8CG4vzPglo3nqbOiT8ySBT/w== +"@jest/reporters@^27.4.5": + version "27.4.5" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.5.tgz#e229acca48d18ea39e805540c1c322b075ae63ad" + integrity sha512-3orsG4vi8zXuBqEoy2LbnC1kuvkg1KQUgqNxmxpQgIOQEPeV0onvZu+qDQnEoX8qTQErtqn/xzcnbpeTuOLSiA== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.3.1" - "@jest/test-result" "^27.3.1" - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/console" "^27.4.2" + "@jest/test-result" "^27.4.2" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" collect-v8-coverage "^1.0.0" @@ -696,70 +659,70 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^27.3.1" - jest-resolve "^27.3.1" - jest-util "^27.3.1" - jest-worker "^27.3.1" + jest-haste-map "^27.4.5" + jest-resolve "^27.4.5" + jest-util "^27.4.2" + jest-worker "^27.4.5" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" -"@jest/source-map@^27.0.6": - version "27.0.6" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.0.6.tgz#be9e9b93565d49b0548b86e232092491fb60551f" - integrity sha512-Fek4mi5KQrqmlY07T23JRi0e7Z9bXTOOD86V/uS0EIW4PClvPDqZOyFlLpNJheS6QI0FNX1CgmPjtJ4EA/2M+g== +"@jest/source-map@^27.4.0": + version "27.4.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz#2f0385d0d884fb3e2554e8f71f8fa957af9a74b6" + integrity sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.3.1.tgz#89adee8b771877c69b3b8d59f52f29dccc300194" - integrity sha512-mLn6Thm+w2yl0opM8J/QnPTqrfS4FoXsXF2WIWJb2O/GBSyResL71BRuMYbYRsGt7ELwS5JGcEcGb52BNrumgg== +"@jest/test-result@^27.4.2": + version "27.4.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.2.tgz#05fd4a5466ec502f3eae0b39dff2b93ea4d5d9ec" + integrity sha512-kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA== dependencies: - "@jest/console" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/console" "^27.4.2" + "@jest/types" "^27.4.2" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.3.1.tgz#4b3bde2dbb05ee74afdae608cf0768e3354683b1" - integrity sha512-siySLo07IMEdSjA4fqEnxfIX8lB/lWYsBPwNFtkOvsFQvmBrL3yj3k3uFNZv/JDyApTakRpxbKLJ3CT8UGVCrA== +"@jest/test-sequencer@^27.4.5": + version "27.4.5" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.5.tgz#1d7e026844d343b60d2ca7fd82c579a17b445d7d" + integrity sha512-n5woIn/1v+FT+9hniymHPARA9upYUmfi5Pw9ewVwXCDlK4F5/Gkees9v8vdjGdAIJ2MPHLHodiajLpZZanWzEQ== dependencies: - "@jest/test-result" "^27.3.1" + "@jest/test-result" "^27.4.2" graceful-fs "^4.2.4" - jest-haste-map "^27.3.1" - jest-runtime "^27.3.1" + jest-haste-map "^27.4.5" + jest-runtime "^27.4.5" -"@jest/transform@^27.3.1": - version "27.3.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.3.1.tgz#ff80eafbeabe811e9025e4b6f452126718455220" - integrity sha512-3fSvQ02kuvjOI1C1ssqMVBKJpZf6nwoCiSu00zAKh5nrp3SptNtZy/8s5deayHnqxhjD9CWDJ+yqQwuQ0ZafXQ== +"@jest/transform@^27.4.5": + version "27.4.5" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.5.tgz#3dfe2e3680cd4aa27356172bf25617ab5b94f195" + integrity sha512-PuMet2UlZtlGzwc6L+aZmR3I7CEBpqadO03pU40l2RNY2fFJ191b9/ITB44LNOhVtsyykx0OZvj0PCyuLm7Eew== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.3.1" - jest-regex-util "^27.0.6" - jest-util "^27.3.1" + jest-haste-map "^27.4.5" + jest-regex-util "^27.4.0" + jest-util "^27.4.2" micromatch "^4.0.4" pirates "^4.0.1" slash "^3.0.0" source-map "^0.6.1" write-file-atomic "^3.0.0" -"@jest/types@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.0.2.tgz#e153d6c46bda0f2589f0702b071f9898c7bbd37e" - integrity sha512-XpjCtJ/99HB4PmyJ2vgmN7vT+JLP7RW1FBT9RgnMFS4Dt7cvIyBee8O3/j98aUZ34ZpenPZFqmaaObWSeL65dg== +"@jest/types@^27.4.2": + version "27.4.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.4.2.tgz#96536ebd34da6392c2b7c7737d693885b5dd44a5" + integrity sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" @@ -767,36 +730,25 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jest/types@^27.2.5": - version "27.2.5" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.2.5.tgz#420765c052605e75686982d24b061b4cbba22132" - integrity sha512-nmuM4VuDtCZcY+eTpw+0nvstwReMsjPoj7ZR80/BbixulhLaiX+fbv8oeLW8WZlJMcsGQsTmMKT/iTZu1Uy/lQ== +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - -"@nodelib/fs.scandir@2.1.4": - version "2.1.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz#d4b3549a5db5de2683e0c1071ab4f140904bbf69" - integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA== - dependencies: - "@nodelib/fs.stat" "2.0.4" + "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz#a3f2dd61bab43b8db8fa108a121cfffe4c676655" - integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q== +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": - version "1.2.6" - resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz#cce9396b30aa5afe9e3756608f5831adcb53d063" - integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow== + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: - "@nodelib/fs.scandir" "2.1.4" + "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" "@sinonjs/commons@^1.7.0": @@ -807,9 +759,9 @@ type-detect "4.0.8" "@sinonjs/fake-timers@^8.0.1": - version "8.0.1" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.0.1.tgz#1c1c9a91419f804e59ae8df316a07dd1c3a76b94" - integrity sha512-AU7kwFxreVd6OAXcAFlKSmZquiRUU0FvYm44k1Y1QbK7Co4m0aqfGMhjykIeQp/H6rcl+nFmj0zfdUcGVs9Dew== + version "8.1.0" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" + integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== dependencies: "@sinonjs/commons" "^1.7.0" @@ -819,9 +771,9 @@ integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.16" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.16.tgz#bc12c74b7d65e82d29876b5d0baf5c625ac58702" - integrity sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ== + version "7.1.17" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.17.tgz#f50ac9d20d64153b510578d84f9643f9a3afbe64" + integrity sha512-6zzkezS9QEIL8yCBvXWxPTJPNuMeECJVxSOhxNY/jfq9LxOTHivaYTqr37n9LknWWRTIkzqH2UilS5QFvfa90A== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" @@ -864,11 +816,6 @@ resolved "https://registry.yarnpkg.com/@types/braces/-/braces-3.0.0.tgz#7da1c0d44ff1c7eb660a36ec078ea61ba7eb42cb" integrity sha512-TbH79tcyi9FHwbyboOKeRachRq63mSuWYXOflsNO9ZyE5ClQ/JaozNKl+aWUq87qPNsXasXxi2AbgfwIJ+8GQw== -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== - "@types/connect@*": version "3.4.33" resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546" @@ -895,7 +842,7 @@ "@types/qs" "*" "@types/range-parser" "*" -"@types/express@^4.17.13": +"@types/express@4.17.13": version "4.17.13" resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.13.tgz#a76e2995728999bab51a33fabce1d705a3709034" integrity sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA== @@ -919,17 +866,12 @@ dependencies: "@types/node" "*" -"@types/is-glob@^4.0.2": +"@types/is-glob@4.0.2": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/is-glob/-/is-glob-4.0.2.tgz#c243dd0d09eac2992130142419ff2308ffd988bf" integrity sha512-4j5G9Y5jljDSICQ1R2f/Rcyoj6DZmYGneny+p/cDkjep0rkqNg0W73Ty0bVjMUTZgLXHf8oiMjg1XC3CDwCz+g== -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz#42995b446db9a48a11a07ec083499a860e9138ff" - integrity sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg== - -"@types/istanbul-lib-coverage@^2.0.1": +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": version "2.0.3" resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== @@ -942,16 +884,16 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" - integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^27.0.2": - version "27.0.2" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.2.tgz#ac383c4d4aaddd29bbf2b916d8d105c304a5fcd7" - integrity sha512-4dRxkS/AFX0c5XW6IPMNOydLn2tEhNhJV7DnYK+0bjoJZ+QTmfucBlihX7aoEsh/ocYtkLC73UbnBXBXIxsULA== +"@types/jest@27.0.3": + version "27.0.3" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.3.tgz#0cf9dfe9009e467f70a342f0f94ead19842a783a" + integrity sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg== dependencies: jest-diff "^27.0.0" pretty-format "^27.0.0" @@ -961,7 +903,7 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== -"@types/micromatch@^4.0.2": +"@types/micromatch@4.0.2": version "4.0.2" resolved "https://registry.yarnpkg.com/@types/micromatch/-/micromatch-4.0.2.tgz#ce29c8b166a73bf980a5727b1e4a4d099965151d" integrity sha512-oqXqVb0ci19GtH0vOA/U2TmHTcRY9kuZl4mqUxe0QmJAlIW13kzhuK5pi1i9+ngav8FjpSb9FVS/GE00GLX1VA== @@ -978,15 +920,10 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*": - version "15.6.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-15.6.2.tgz#c61d49f38af70da32424b5322eee21f97e627175" - integrity sha512-dxcOx8801kMo3KlU+C+/ctWrzREAH7YvoF3aoVpRdqgs+Kf7flp+PJDN/EX5bME3suDUZHsxes9hpvBmzYlWbA== - -"@types/node@^16.11.7": - version "16.11.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42" - integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw== +"@types/node@*", "@types/node@17.0.0": + version "17.0.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.0.tgz#62797cee3b8b497f6547503b2312254d4fe3c2bb" + integrity sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw== "@types/node@^16.7.10": version "16.11.6" @@ -1004,9 +941,9 @@ integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== "@types/prettier@^2.1.5": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.1.tgz#e1303048d5389563e130f5bdd89d37a99acb75eb" - integrity sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw== + version "2.4.2" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.2.tgz#4c62fae93eb479660c3bd93f9d24d561597a8281" + integrity sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA== "@types/qs@*": version "6.9.4" @@ -1039,39 +976,39 @@ "@types/cookiejar" "*" "@types/node" "*" -"@types/supertest@^2.0.11": +"@types/supertest@2.0.11": version "2.0.11" resolved "https://registry.yarnpkg.com/@types/supertest/-/supertest-2.0.11.tgz#2e70f69f220bc77b4f660d72c2e1a4231f44a77d" integrity sha512-uci4Esokrw9qGb9bvhhSVEjd6rkny/dk5PK/Qz4yxKiyppEI+dOPlNrZBahE3i+PoKFYyDxChVXZ/ysS/nrm1Q== dependencies: "@types/superagent" "*" -"@types/ws@*", "@types/ws@^8.2.0": - version "8.2.0" - resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.2.0.tgz#75faefbe2328f3b833cb8dc640658328990d04f3" - integrity sha512-cyeefcUCgJlEk+hk2h3N+MqKKsPViQgF5boi9TTHSK+PoR9KWBb/C5ccPcDyAqgsbAYHTwulch725DV84+pSpg== +"@types/ws@*", "@types/ws@8.2.2": + version "8.2.2" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.2.2.tgz#7c5be4decb19500ae6b3d563043cd407bf366c21" + integrity sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg== dependencies: "@types/node" "*" "@types/yargs-parser@*": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" - integrity sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw== + version "20.2.1" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" + integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== "@types/yargs@^16.0.0": - version "16.0.3" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.3.tgz#4b6d35bb8e680510a7dc2308518a80ee1ef27e01" - integrity sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ== + version "16.0.4" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" + integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.4.0.tgz#05e711a2e7b68342661fde61bccbd1531c19521a" - integrity sha512-9/yPSBlwzsetCsGEn9j24D8vGQgJkOTr4oMLas/w886ZtzKIs1iyoqFrwsX2fqYEeUwsdBpC21gcjRGo57u0eg== +"@typescript-eslint/eslint-plugin@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.7.0.tgz#12d54709f8ea1da99a01d8a992cd0474ad0f0aa9" + integrity sha512-8RTGBpNn5a9M628wBPrCbJ+v3YTEOE2qeZb7TDkGKTDXSj36KGRg92SpFFaR/0S3rSXQxM0Og/kV9EyadsYSBg== dependencies: - "@typescript-eslint/experimental-utils" "5.4.0" - "@typescript-eslint/scope-manager" "5.4.0" + "@typescript-eslint/experimental-utils" "5.7.0" + "@typescript-eslint/scope-manager" "5.7.0" debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -1079,60 +1016,60 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.4.0.tgz#238a7418d2da3b24874ba35385eb21cc61d2a65e" - integrity sha512-Nz2JDIQUdmIGd6p33A+naQmwfkU5KVTLb/5lTk+tLVTDacZKoGQisj8UCxk7onJcrgjIvr8xWqkYI+DbI3TfXg== +"@typescript-eslint/experimental-utils@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.7.0.tgz#2b1633e6613c3238036156f70c32634843ad034f" + integrity sha512-u57eZ5FbEpzN5kSjmVrSesovWslH2ZyNPnaXQMXWgH57d5+EVHEt76W75vVuI9qKZ5BMDKNfRN+pxcPEjQjb2A== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.4.0" - "@typescript-eslint/types" "5.4.0" - "@typescript-eslint/typescript-estree" "5.4.0" + "@typescript-eslint/scope-manager" "5.7.0" + "@typescript-eslint/types" "5.7.0" + "@typescript-eslint/typescript-estree" "5.7.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.4.0.tgz#3aa83ce349d66e39b84151f6d5464928044ca9e3" - integrity sha512-JoB41EmxiYpaEsRwpZEYAJ9XQURPFer8hpkIW9GiaspVLX8oqbqNM8P4EP8HOZg96yaALiLEVWllA2E8vwsIKw== +"@typescript-eslint/parser@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.7.0.tgz#4dca6de463d86f02d252e681136a67888ea3b181" + integrity sha512-m/gWCCcS4jXw6vkrPQ1BjZ1vomP01PArgzvauBqzsoZ3urLbsRChexB8/YV8z9HwE3qlJM35FxfKZ1nfP/4x8g== dependencies: - "@typescript-eslint/scope-manager" "5.4.0" - "@typescript-eslint/types" "5.4.0" - "@typescript-eslint/typescript-estree" "5.4.0" + "@typescript-eslint/scope-manager" "5.7.0" + "@typescript-eslint/types" "5.7.0" + "@typescript-eslint/typescript-estree" "5.7.0" debug "^4.3.2" -"@typescript-eslint/scope-manager@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.4.0.tgz#aaab08415f4a9cf32b870c7750ae8ba4607126a1" - integrity sha512-pRxFjYwoi8R+n+sibjgF9iUiAELU9ihPBtHzocyW8v8D8G8KeQvXTsW7+CBYIyTYsmhtNk50QPGLE3vrvhM5KA== +"@typescript-eslint/scope-manager@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.7.0.tgz#70adf960e5a58994ad50438ba60d98ecadd79452" + integrity sha512-7mxR520DGq5F7sSSgM0HSSMJ+TFUymOeFRMfUfGFAVBv8BR+Jv1vHgAouYUvWRZeszVBJlLcc9fDdktxb5kmxA== dependencies: - "@typescript-eslint/types" "5.4.0" - "@typescript-eslint/visitor-keys" "5.4.0" + "@typescript-eslint/types" "5.7.0" + "@typescript-eslint/visitor-keys" "5.7.0" -"@typescript-eslint/types@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.4.0.tgz#b1c130f4b381b77bec19696c6e3366f9781ce8f2" - integrity sha512-GjXNpmn+n1LvnttarX+sPD6+S7giO+9LxDIGlRl4wK3a7qMWALOHYuVSZpPTfEIklYjaWuMtfKdeByx0AcaThA== +"@typescript-eslint/types@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.7.0.tgz#2d4cae0105ba7d08bffa69698197a762483ebcbe" + integrity sha512-5AeYIF5p2kAneIpnLFve8g50VyAjq7udM7ApZZ9JYjdPjkz0LvODfuSHIDUVnIuUoxafoWzpFyU7Sqbxgi79mA== -"@typescript-eslint/typescript-estree@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.4.0.tgz#fe524fb308973c68ebeb7428f3b64499a6ba5fc0" - integrity sha512-nhlNoBdhKuwiLMx6GrybPT3SFILm5Gij2YBdPEPFlYNFAXUJWX6QRgvi/lwVoadaQEFsizohs6aFRMqsXI2ewA== +"@typescript-eslint/typescript-estree@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.7.0.tgz#968fad899050ccce4f08a40cd5fabc0798525006" + integrity sha512-aO1Ql+izMrTnPj5aFFlEJkpD4jRqC4Gwhygu2oHK2wfVQpmOPbyDSveJ+r/NQo+PWV43M6uEAeLVbTi09dFLhg== dependencies: - "@typescript-eslint/types" "5.4.0" - "@typescript-eslint/visitor-keys" "5.4.0" + "@typescript-eslint/types" "5.7.0" + "@typescript-eslint/visitor-keys" "5.7.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@5.4.0": - version "5.4.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.4.0.tgz#09bc28efd3621f292fe88c86eef3bf4893364c8c" - integrity sha512-PVbax7MeE7tdLfW5SA0fs8NGVVr+buMPrcj+CWYWPXsZCH8qZ1THufDzbXm1xrZ2b2PA1iENJ0sRq5fuUtvsJg== +"@typescript-eslint/visitor-keys@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.7.0.tgz#e05164239eb7cb8aa9fa06c516ede480ce260178" + integrity sha512-hdohahZ4lTFcglZSJ3DGdzxQHBSxsLVqHzkiOmKi7xVAWC4y2c1bIMKmPJSrA4aOEoRUPOKQ87Y/taC7yVHpFg== dependencies: - "@typescript-eslint/types" "5.4.0" + "@typescript-eslint/types" "5.7.0" eslint-visitor-keys "^3.0.0" JSONStream@^1.0.4: @@ -1165,9 +1102,9 @@ acorn-globals@^6.0.0: acorn-walk "^7.1.1" acorn-jsx@^5.3.1: - version "5.3.1" - resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" - integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^7.1.1: version "7.2.0" @@ -1179,10 +1116,10 @@ acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.5.0: - version "8.5.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" - integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== +acorn@^8.2.4, acorn@^8.6.0: + version "8.6.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895" + integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw== after@0.8.2: version "0.8.2" @@ -1197,9 +1134,9 @@ agent-base@6, agent-base@^6.0.0, agent-base@^6.0.2: debug "4" aggregate-error@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" - integrity sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA== + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" indent-string "^4.0.0" @@ -1219,26 +1156,19 @@ ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-escapes@^4.2.1: +ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: type-fest "^0.21.3" -ansi-escapes@^4.3.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== - dependencies: - type-fest "^0.11.0" - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= -ansi-regex@^5.0.0, ansi-regex@^5.0.1: +ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== @@ -1261,11 +1191,10 @@ ansi-styles@^3.2.1: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: - "@types/color-name" "^1.1.1" color-convert "^2.0.1" ansi-styles@^5.0.0: @@ -1369,16 +1298,16 @@ axios@0.21.4: dependencies: follow-redirects "^1.14.0" -babel-jest@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.3.1.tgz#0636a3404c68e07001e434ac4956d82da8a80022" - integrity sha512-SjIF8hh/ir0peae2D6S6ZKRhUy7q/DnpH7k/V6fT4Bgs/LXXUztOpX4G2tCgq8mLo5HA9mN6NmlFMeYtKmIsTQ== +babel-jest@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.5.tgz#d38bd0be8ea71d8b97853a5fc9f76deeb095c709" + integrity sha512-3uuUTjXbgtODmSv/DXO9nZfD52IyC2OYTFaXGRzL0kpykzroaquCrD5+lZNafTvZlnNqZHt5pb0M08qVBZnsnA== dependencies: - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@types/babel__core" "^7.1.14" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^27.2.0" + babel-preset-jest "^27.4.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1394,10 +1323,10 @@ babel-plugin-istanbul@^6.0.0: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.2.0: - version "27.2.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.2.0.tgz#79f37d43f7e5c4fdc4b2ca3e10cc6cf545626277" - integrity sha512-TOux9khNKdi64mW+0OIhcmbAn75tTlzKhxmiNXevQaPbrBYK7YKjP1jl6NHTJ6XR5UgUrJbCnWlKVnJn29dfjw== +babel-plugin-jest-hoist@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz#d7831fc0f93573788d80dee7e682482da4c730d6" + integrity sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -1422,12 +1351,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.2.0: - version "27.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.2.0.tgz#556bbbf340608fed5670ab0ea0c8ef2449fba885" - integrity sha512-z7MgQ3peBwN5L5aCqBKnF6iqdlvZvFUQynEhu0J+X9nHLU72jO3iY331lcYrg+AssJ8q7xsv5/3AICzVmJ/wvg== +babel-preset-jest@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz#70d0e676a282ccb200fbabd7f415db5fdf393bca" + integrity sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg== dependencies: - babel-plugin-jest-hoist "^27.2.0" + babel-plugin-jest-hoist "^27.4.0" babel-preset-current-node-syntax "^1.0.0" backo2@1.0.2, backo2@^1.0.2: @@ -1436,9 +1365,9 @@ backo2@1.0.2, backo2@^1.0.2: integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= balanced-match@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" - integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-arraybuffer@0.1.4: version "0.1.4" @@ -1470,21 +1399,21 @@ blob@0.0.5: resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== -body-parser@1.19.0, body-parser@^1.15.2, body-parser@^1.19.0: - version "1.19.0" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" - integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== +body-parser@1.19.1, body-parser@^1.15.2: + version "1.19.1" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.1.tgz#1499abbaa9274af3ecc9f6f10396c995943e31d4" + integrity sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA== dependencies: - bytes "3.1.0" + bytes "3.1.1" content-type "~1.0.4" debug "2.6.9" depd "~1.1.2" - http-errors "1.7.2" + http-errors "1.8.1" iconv-lite "0.4.24" on-finished "~2.3.0" - qs "6.7.0" - raw-body "2.4.0" - type-is "~1.6.17" + qs "6.9.6" + raw-body "2.4.2" + type-is "~1.6.18" brace-expansion@^1.1.7: version "1.1.11" @@ -1533,7 +1462,7 @@ browser-sync-ui@^2.27.7: socket.io-client "^2.4.0" stream-throttle "^0.1.3" -browser-sync@^2.27.7: +browser-sync@2.27.7: version "2.27.7" resolved "https://registry.yarnpkg.com/browser-sync/-/browser-sync-2.27.7.tgz#65ec55d6c6e33283e505e06e5113bc32d9d0a8f0" integrity sha512-9ElnnA/u+s2Jd+IgY+2SImB+sAEIteHsMG0NR96m7Ph/wztpvJCUpyC2on1KqmG9iAp941j+5jfmd34tEguGbg== @@ -1569,13 +1498,13 @@ browser-sync@^2.27.7: ua-parser-js "1.0.2" yargs "^15.4.1" -browserslist@^4.16.6: - version "4.17.5" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.5.tgz#c827bbe172a4c22b123f5e337533ceebadfdd559" - integrity sha512-I3ekeB92mmpctWBoLXe0d5wPS2cBuRvvW0JyyJHMrk9/HmP2ZjrTboNAZ8iuGqaEIlKguljbQY32OkOJIRrgoA== +browserslist@^4.17.5: + version "4.19.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.19.1.tgz#4ac0435b35ab655896c31d53018b6dd5e9e4c9a3" + integrity sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A== dependencies: - caniuse-lite "^1.0.30001271" - electron-to-chromium "^1.3.878" + caniuse-lite "^1.0.30001286" + electron-to-chromium "^1.4.17" escalade "^3.1.1" node-releases "^2.0.1" picocolors "^1.0.0" @@ -1609,10 +1538,10 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -bytes@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" - integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== +bytes@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a" + integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg== cacheable-lookup@^6.0.0: version "6.0.4" @@ -1647,14 +1576,14 @@ camelcase@^5.0.0, camelcase@^5.3.1: integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== camelcase@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" - integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== + version "6.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.1.tgz#250fd350cfd555d0d2160b1d51510eaf8326e86e" + integrity sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA== -caniuse-lite@^1.0.30001271: - version "1.0.30001271" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001271.tgz#0dda0c9bcae2cf5407cd34cac304186616cc83e8" - integrity sha512-BBruZFWmt3HFdVPS8kceTBIguKxu4f99n5JNp06OlPD/luoAMIaIK5ieV5YjnBLH3Nysai9sxj9rpJj4ZisXOA== +caniuse-lite@^1.0.30001286: + version "1.0.30001291" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001291.tgz#08a8d2cfea0b2cf2e1d94dd795942d0daef6108c" + integrity sha512-roMV5V0HNGgJ88s42eE70sstqGW/gwFndosYrikHthw98N5tLnOTxFqMLQjZVRxTWFlJ4rn+MsgXrR7MDPY4jA== chalk@^1.1.3: version "1.1.3" @@ -1677,9 +1606,9 @@ chalk@^2.0.0: supports-color "^5.3.0" chalk@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.1.tgz#c80b3fab28bf6371e6863325eee67e618b77e6ad" - integrity sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg== + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== dependencies: ansi-styles "^4.1.0" supports-color "^7.1.0" @@ -1704,10 +1633,10 @@ chokidar@^3.5.1: optionalDependencies: fsevents "~2.3.2" -ci-info@^3.1.1, ci-info@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.2.0.tgz#2876cb948a498797b5236f0095bc057d0dca38b6" - integrity sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A== +ci-info@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" + integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== cjs-module-lexer@^1.0.0: version "1.2.2" @@ -1726,14 +1655,6 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" -cli-truncate@3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" - integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== - dependencies: - slice-ansi "^5.0.0" - string-width "^5.0.0" - cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" @@ -1742,6 +1663,14 @@ cli-truncate@^2.1.0: slice-ansi "^3.0.0" string-width "^4.2.0" +cli-truncate@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz#3f23ab12535e3d73e839bb43e73c9de487db1389" + integrity sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== + dependencies: + slice-ansi "^5.0.0" + string-width "^5.0.0" + cliui@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" @@ -1760,11 +1689,6 @@ cliui@^7.0.2: strip-ansi "^6.0.0" wrap-ansi "^7.0.0" -clone@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= - co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -1874,7 +1798,7 @@ connect@3.6.6: parseurl "~1.3.2" utils-merge "1.0.1" -connect@^3.7.0: +connect@3.7.0, connect@^3.7.0: version "3.7.0" resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== @@ -1884,12 +1808,12 @@ connect@^3.7.0: parseurl "~1.3.3" utils-merge "1.0.1" -content-disposition@0.5.3: - version "0.5.3" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" - integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== +content-disposition@0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" + integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== dependencies: - safe-buffer "5.1.2" + safe-buffer "5.2.1" content-type@^1.0.4, content-type@~1.0.4: version "1.0.4" @@ -1937,12 +1861,7 @@ cookie-signature@1.0.6: resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= -cookie@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" - integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== - -cookie@~0.4.1: +cookie@0.4.1, cookie@~0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== @@ -1981,17 +1900,6 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cosmiconfig@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" - integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== - 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" - create-require@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" @@ -2049,14 +1957,14 @@ debug@2.6.9, debug@^2.2.0: dependencies: ms "2.0.0" -debug@4, debug@^4.1.1: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3: + version "4.3.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664" + integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q== dependencies: ms "2.1.2" -debug@4.3.2, debug@^4.1.0, debug@^4.3.1, debug@^4.3.2: +debug@4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== @@ -2108,9 +2016,9 @@ dedent@^0.7.0: integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= deep-is@^0.1.3, deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== deepmerge@^4.2.2: version "4.2.2" @@ -2157,10 +2065,10 @@ dev-ip@^1.0.1: resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" integrity sha1-p2o+0YVb56ASu4rBbLgPPADcKPA= -diff-sequences@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.0.6.tgz#3305cb2e55a033924054695cc66019fd7f8e5723" - integrity sha512-ag6wfpBFyNXZ0p8pcuIDS//D8H062ZQJ3fzYxjpmeKjnz8W4pekL3AI8VohmyZmsWW2PWaHgjsmqR6L13101VQ== +diff-sequences@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5" + integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww== diff@^4.0.1: version "4.0.2" @@ -2229,10 +2137,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.878: - version "1.3.879" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.879.tgz#4aba9700cfb241fb95c6ed69e31785e3d1605a43" - integrity sha512-zJo+D9GwbJvM31IdFmwcGvychhk4KKbKYo2GWlsn+C/dxz2NwmbhGJjWwTfFSF2+eFH7VvfA8MCZ8SOqTrlnpw== +electron-to-chromium@^1.4.17: + version "1.4.24" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.24.tgz#9cf8a92d5729c480ee47ff0aa5555f57467ae2fa" + integrity sha512-erwx5r69B/WFfFuF2jcNN0817BfDBdC4765kQ6WltOMuwsimlQo3JTEq0Cle+wpHralwdeX3OfAtw/mHxPK0Wg== emittery@^0.8.1: version "0.8.1" @@ -2364,12 +2272,12 @@ escodegen@^2.0.0: optionalDependencies: source-map "~0.6.1" -eslint-config-prettier@^8.3.0: +eslint-config-prettier@8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz#f7471b20b6fe8a9a9254cc684454202886a2dd7a" integrity sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew== -eslint-plugin-prettier@^4.0.0: +eslint-plugin-prettier@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz#8b99d1e4b8b24a762472b4567992023619cb98e0" integrity sha512-98MqmCJ7vJodoQK359bqQWaxOE0CS8paAz/GgjaZLyex4TTk3g9HugoO89EqWCrFiOqn9EVvcoo7gZzONCWVwQ== @@ -2384,10 +2292,10 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-6.0.0.tgz#9cf45b13c5ac8f3d4c50f46a5121f61b3e318978" - integrity sha512-uRDL9MWmQCkaFus8RF5K9/L/2fn+80yoW3jkD53l4shjCh26fCtvJGasxjUqP5OT87SYTxCVA3BwTUzuELx9kA== +eslint-scope@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.0.tgz#c1f6ea30ac583031f203d65c73e723b01298f153" + integrity sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" @@ -2400,22 +2308,22 @@ eslint-utils@^3.0.0: eslint-visitor-keys "^2.0.0" eslint-visitor-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" - integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint-visitor-keys@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.0.0.tgz#e32e99c6cdc2eb063f204eda5db67bfe58bb4186" - integrity sha512-mJOZa35trBTb3IyRmo8xmKBZlxf+N7OnUl4+ZhJHs/r+0770Wh/LEACE2pqMGMe27G/4y8P2bYGk4J70IC5k1Q== +eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2" + integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA== -eslint@^8.2.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.2.0.tgz#44d3fb506d0f866a506d97a0fc0e90ee6d06a815" - integrity sha512-erw7XmM+CLxTOickrimJ1SiF55jiNlVSp2qqm0NuBWPtHYQCegD5ZMaW0c3i5ytPqL+SSLaCxdvQXFPLJn+ABw== +eslint@8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.5.0.tgz#ddd2c1afd8f412036f87ae2a063d2aa296d3175f" + integrity sha512-tVGSkgNbOfiHyVte8bCM8OmX+xG9PzVG/B4UCF60zx7j61WIVY/AqJECDgpLD4DbbESD0e174gOg3ZlrX15GDg== dependencies: - "@eslint/eslintrc" "^1.0.4" - "@humanwhocodes/config-array" "^0.6.0" + "@eslint/eslintrc" "^1.0.5" + "@humanwhocodes/config-array" "^0.9.2" ajv "^6.10.0" chalk "^4.0.0" cross-spawn "^7.0.2" @@ -2423,10 +2331,10 @@ eslint@^8.2.0: doctrine "^3.0.0" enquirer "^2.3.5" escape-string-regexp "^4.0.0" - eslint-scope "^6.0.0" + eslint-scope "^7.1.0" eslint-utils "^3.0.0" - eslint-visitor-keys "^3.0.0" - espree "^9.0.0" + eslint-visitor-keys "^3.1.0" + espree "^9.2.0" esquery "^1.4.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -2453,14 +2361,14 @@ eslint@^8.2.0: text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.0.0.tgz#e90a2965698228502e771c7a58489b1a9d107090" - integrity sha512-r5EQJcYZ2oaGbeR0jR0fFVijGOcwai07/690YRXLINuhmVeRY4UKSAsQPe/0BNuDgwP7Ophoc1PRsr2E3tkbdQ== +espree@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.2.0.tgz#c50814e01611c2d0f8bd4daa83c369eabba80dbc" + integrity sha512-oP3utRkynpZWF/F2x/HZJ+AGtnIclaR7z1pYPxy7NYM2fSO6LgK/Rkny8anRSPK/VwEA1eqm2squui0T7ZMOBg== dependencies: - acorn "^8.5.0" + acorn "^8.6.0" acorn-jsx "^5.3.1" - eslint-visitor-keys "^3.0.0" + eslint-visitor-keys "^3.1.0" esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" @@ -2487,9 +2395,9 @@ estraverse@^4.1.1, estraverse@^4.2.0: integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.1.0, estraverse@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" - integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== esutils@^2.0.2: version "2.0.3" @@ -2511,22 +2419,7 @@ eventemitter3@^4.0.0: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.0.tgz#d65176163887ee59f386d64c82610b696a4a74eb" integrity sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg== -execa@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" - integrity sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ== - 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" - -execa@^5.1.1: +execa@^5.0.0, execa@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== @@ -2546,17 +2439,17 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.3.1.tgz#d0f170b1f5c8a2009bab0beffd4bb94f043e38e7" - integrity sha512-MrNXV2sL9iDRebWPGOGFdPQRl2eDQNu/uhxIMShjjx74T6kC6jFIkmQ6OqXDtevjGUkyB2IT56RzDBqXf/QPCg== +expect@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.2.tgz#4429b0f7e307771d176de9bdf23229b101db6ef6" + integrity sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" ansi-styles "^5.0.0" - jest-get-type "^27.3.1" - jest-matcher-utils "^27.3.1" - jest-message-util "^27.3.1" - jest-regex-util "^27.0.6" + jest-get-type "^27.4.0" + jest-matcher-utils "^27.4.2" + jest-message-util "^27.4.2" + jest-regex-util "^27.4.0" express-graphql@^0.11.0: version "0.11.0" @@ -2568,17 +2461,17 @@ express-graphql@^0.11.0: http-errors "1.8.0" raw-body "^2.4.1" -express@^4.14.0, express@^4.17.1: - version "4.17.1" - resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" - integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== +express@4.17.2, express@^4.14.0: + version "4.17.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.2.tgz#c18369f265297319beed4e5558753cc8c1364cb3" + integrity sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg== dependencies: accepts "~1.3.7" array-flatten "1.1.1" - body-parser "1.19.0" - content-disposition "0.5.3" + body-parser "1.19.1" + content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.4.0" + cookie "0.4.1" cookie-signature "1.0.6" debug "2.6.9" depd "~1.1.2" @@ -2592,13 +2485,13 @@ express@^4.14.0, express@^4.17.1: on-finished "~2.3.0" parseurl "~1.3.3" path-to-regexp "0.1.7" - proxy-addr "~2.0.5" - qs "6.7.0" + proxy-addr "~2.0.7" + qs "6.9.6" range-parser "~1.2.1" - safe-buffer "5.1.2" - send "0.17.1" - serve-static "1.14.1" - setprototypeof "1.1.1" + safe-buffer "5.2.1" + send "0.17.2" + serve-static "1.14.2" + setprototypeof "1.2.0" statuses "~1.5.0" type-is "~1.6.18" utils-merge "1.0.1" @@ -2615,16 +2508,15 @@ fast-diff@^1.1.2: integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== fast-glob@^3.1.1: - version "3.2.5" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.5.tgz#7939af2a656de79a4f1901903ee8adcaa7cb9661" - integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== + version "3.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" - glob-parent "^5.1.0" + glob-parent "^5.1.2" merge2 "^1.3.0" - micromatch "^4.0.2" - picomatch "^2.2.1" + micromatch "^4.0.4" fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: version "2.1.0" @@ -2642,9 +2534,9 @@ fast-safe-stringify@^2.0.7: integrity sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== fastq@^1.6.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.11.0.tgz#bb9fb955a07130a918eb63c1f5161cc32a5d0858" - integrity sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g== + version "1.13.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" + integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== dependencies: reusify "^1.0.4" @@ -2732,24 +2624,19 @@ flat-cache@^3.0.4: rimraf "^3.0.2" flatted@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz#c4b489e80096d9df1dfc97c79871aea7c617c469" - integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== - -follow-redirects@^1.0.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.0.tgz#f5d260f95c5f8c105894491feee5dc8993b402fe" - integrity sha512-0vRwd7RKQBTt+mgu87mtYeofLFZpTas2S9zY+jIeuLJMNvudIgF52nr19q40HOwH5RrhWIPuj9puybzSJiRrVg== + version "3.2.4" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2" + integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== -follow-redirects@^1.14.0: +follow-redirects@^1.0.0, follow-redirects@^1.14.0: version "1.14.4" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.4.tgz#838fdf48a8bbdd79e52ee51fb1c94e3ed98b9379" integrity sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g== form-data@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682" - integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg== + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -2760,10 +2647,10 @@ formidable@^1.2.2: resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== -forwarded@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" - integrity sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ= +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== fresh@0.5.2, fresh@^0.5.2: version "0.5.2" @@ -2840,7 +2727,7 @@ get-package-type@^0.1.0: resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== -get-port@^5.1.1: +get-port@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== @@ -2873,7 +2760,7 @@ git-raw-commits@^2.0.0: split2 "^3.0.0" through2 "^4.0.0" -glob-parent@^5.1.0, glob-parent@~5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -2887,7 +2774,7 @@ glob-parent@^6.0.1: dependencies: is-glob "^4.0.3" -glob@^7.1.1, glob@^7.1.2, glob@^7.1.4: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== @@ -2899,18 +2786,6 @@ glob@^7.1.1, glob@^7.1.2, glob@^7.1.4: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.3: - version "7.1.6" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== - dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.0.4" - once "^1.3.0" - path-is-absolute "^1.0.0" - global-dirs@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" @@ -2923,17 +2798,10 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globals@^13.6.0: - version "13.7.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.7.0.tgz#aed3bcefd80ad3ec0f0be2cf0c895110c0591795" - integrity sha512-Aipsz6ZKRxa/xQkZhNg0qIWXT6x6rD46f6x/PCnBomlttdIyAPak4YD9jTmKpZ72uROSMU87qJtcgpgHaVchiA== - dependencies: - type-fest "^0.20.2" - -globals@^13.9.0: - version "13.11.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-13.11.0.tgz#40ef678da117fe7bd2e28f1fab24951bd0255be7" - integrity sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g== +globals@^13.6.0, globals@^13.9.0: + version "13.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e" + integrity sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg== dependencies: type-fest "^0.20.2" @@ -2949,16 +2817,11 @@ globby@^11.0.4: merge2 "^1.3.0" slash "^3.0.0" -graceful-fs@^4.1.2: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: version "4.2.8" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== -graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: - version "4.2.4" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" - integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== - graphql-subscriptions@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.2.1.tgz#2142b2d729661ddf967b7388f7cf1dd4cf2e061d" @@ -3005,11 +2868,6 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-flag@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-5.0.1.tgz#5483db2ae02a472d1d0691462fc587d1843cd940" - integrity sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA== - has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -3049,38 +2907,27 @@ http-encoding@^1.4.0: brotli-wasm "^1.1.0" zstd-codec "^0.1.2" -http-errors@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" - integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" - -http-errors@1.7.3, http-errors@~1.7.2: - version "1.7.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" - integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== +http-errors@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" + integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== dependencies: depd "~1.1.2" inherits "2.0.4" - setprototypeof "1.1.1" + setprototypeof "1.2.0" statuses ">= 1.5.0 < 2" toidentifier "1.0.0" -http-errors@1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" - integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== +http-errors@1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" + integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== dependencies: depd "~1.1.2" inherits "2.0.4" setprototypeof "1.2.0" statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" + toidentifier "1.0.1" http-errors@~1.6.2: version "1.6.3" @@ -3131,7 +2978,7 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -husky@^7.0.4: +husky@7.0.4: version "7.0.4" resolved "https://registry.yarnpkg.com/husky/-/husky-7.0.4.tgz#242048245dc49c8fb1bf0cc7cfb98dd722531535" integrity sha512-vbaCKN2QLtP/vD4yvs6iz6hBEo6wkSzs8HpRah1Z6aGmF2KW5PdYuAd7uX5a+OyBZHBhd+TFLqgjUgytQr4RvQ== @@ -3149,9 +2996,9 @@ ignore@^4.0.6: integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== ignore@^5.1.4, ignore@^5.1.8: - version "5.1.8" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + version "5.1.9" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb" + integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ== immutable@^3: version "3.8.2" @@ -3159,9 +3006,9 @@ immutable@^3: integrity sha1-wkOZUUVbs5kT2vKBN28VMOEErfM= import-fresh@^3.0.0, import-fresh@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" - integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: parent-module "^1.0.0" resolve-from "^4.0.0" @@ -3234,24 +3081,10 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" -is-ci@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.0.tgz#c7e7be3c9d8eef7d0fa144390bd1e4b88dc4c994" - integrity sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ== - dependencies: - ci-info "^3.1.1" - -is-core-module@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" - integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== - dependencies: - has "^1.0.3" - -is-core-module@^2.5.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.7.0.tgz#3c0ef7d31b4acfc574f80c58409d568a836848e3" - integrity sha512-ByY+tjCciCr+9nLryBYcSD50EOGWt95c7tIsKTG1J2ixKKXPvF7Ej3AVd+UfDydAJom3biBGDBALaO79ktwgEQ== +is-core-module@^2.2.0, is-core-module@^2.5.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548" + integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw== dependencies: has "^1.0.3" @@ -3280,14 +3113,7 @@ is-generator-fn@^2.0.0: resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== -is-glob@^4.0.0, is-glob@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-glob@^4.0.3, is-glob@~4.0.1: +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -3327,9 +3153,9 @@ is-potential-custom-element-name@^1.0.1: integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== is-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" - integrity sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw== + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== is-text-path@^1.0.1: version "1.0.1" @@ -3380,7 +3206,7 @@ isomorphic-ws@^4.0.1: resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== -istanbul-lib-coverage@^3.0.0: +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== @@ -3396,14 +3222,14 @@ istanbul-lib-instrument@^4.0.3: semver "^6.3.0" istanbul-lib-instrument@^5.0.4: - version "5.0.4" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.0.4.tgz#e976f2aa66ebc6737f236d3ab05b76e36f885c80" - integrity sha512-W6jJF9rLGEISGoCyXRqa/JCGQGmmxPO10TMu7izaUTynxvBvTjqzAIIGCK9USBmIbQAaSWD6XJPrM9Pv5INknw== + version "5.1.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" + integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" + istanbul-lib-coverage "^3.2.0" semver "^6.3.0" istanbul-lib-report@^3.0.0: @@ -3425,9 +3251,9 @@ istanbul-lib-source-maps@^4.0.0: source-map "^0.6.1" istanbul-reports@^3.0.2: - version "3.0.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.5.tgz#a2580107e71279ea6d661ddede929ffc6d693384" - integrity sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ== + version "3.1.1" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.1.tgz#7085857f17d2441053c6ce5c3b8fdf6882289397" + integrity sha512-q1kvhAXWSsXfMjCdNHNPKZZv94OlspKnoGv+R9RGbnqOOQ0VbNfLFgQDVgi7hHenKsndGq3/o0OBdzDXthWcNw== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -3437,226 +3263,227 @@ iterall@^1.2.1, iterall@^1.3.0: resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^27.3.0: - version "27.3.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.3.0.tgz#22a02cc2b34583fc66e443171dc271c0529d263c" - integrity sha512-9DJs9garMHv4RhylUMZgbdCJ3+jHSkpL9aaVKp13xtXAD80qLTLrqcDZL1PHA9dYA0bCI86Nv2BhkLpLhrBcPg== +jest-changed-files@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.2.tgz#da2547ea47c6e6a5f6ed336151bd2075736eb4a5" + integrity sha512-/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.3.1.tgz#1679e74387cbbf0c6a8b42de963250a6469e0797" - integrity sha512-v1dsM9II6gvXokgqq6Yh2jHCpfg7ZqV4jWY66u7npz24JnhP3NHxI0sKT7+ZMQ7IrOWHYAaeEllOySbDbWsiXw== +jest-circus@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.5.tgz#70bfb78e0200cab9b84747bf274debacaa538467" + integrity sha512-eTNWa9wsvBwPykhMMShheafbwyakcdHZaEYh5iRrQ0PFJxkDP/e3U/FvzGuKWu2WpwUA3C3hPlfpuzvOdTVqnw== dependencies: - "@jest/environment" "^27.3.1" - "@jest/test-result" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/environment" "^27.4.4" + "@jest/test-result" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.3.1" + expect "^27.4.2" is-generator-fn "^2.0.0" - jest-each "^27.3.1" - jest-matcher-utils "^27.3.1" - jest-message-util "^27.3.1" - jest-runtime "^27.3.1" - jest-snapshot "^27.3.1" - jest-util "^27.3.1" - pretty-format "^27.3.1" + jest-each "^27.4.2" + jest-matcher-utils "^27.4.2" + jest-message-util "^27.4.2" + jest-runtime "^27.4.5" + jest-snapshot "^27.4.5" + jest-util "^27.4.2" + pretty-format "^27.4.2" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.3.1.tgz#b576f9d146ba6643ce0a162d782b40152b6b1d16" - integrity sha512-WHnCqpfK+6EvT62me6WVs8NhtbjAS4/6vZJnk7/2+oOr50cwAzG4Wxt6RXX0hu6m1169ZGMlhYYUNeKBXCph/Q== +jest-cli@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.5.tgz#8708f54c28d13681f3255ec9026a2b15b03d41e8" + integrity sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg== dependencies: - "@jest/core" "^27.3.1" - "@jest/test-result" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/core" "^27.4.5" + "@jest/test-result" "^27.4.2" + "@jest/types" "^27.4.2" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - jest-config "^27.3.1" - jest-util "^27.3.1" - jest-validate "^27.3.1" + jest-config "^27.4.5" + jest-util "^27.4.2" + jest-validate "^27.4.2" prompts "^2.0.1" yargs "^16.2.0" -jest-config@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.3.1.tgz#cb3b7f6aaa8c0a7daad4f2b9573899ca7e09bbad" - integrity sha512-KY8xOIbIACZ/vdYCKSopL44I0xboxC751IX+DXL2+Wx6DKNycyEfV3rryC3BPm5Uq/BBqDoMrKuqLEUNJmMKKg== +jest-config@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.5.tgz#77ed7f2ba7bcfd7d740ade711d0d13512e08a59e" + integrity sha512-t+STVJtPt+fpqQ8GBw850NtSQbnDOw/UzdPfzDaHQ48/AylQlW7LHj3dH+ndxhC1UxJ0Q3qkq7IH+nM1skwTwA== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.3.1" - "@jest/types" "^27.2.5" - babel-jest "^27.3.1" + "@jest/test-sequencer" "^27.4.5" + "@jest/types" "^27.4.2" + babel-jest "^27.4.5" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-circus "^27.3.1" - jest-environment-jsdom "^27.3.1" - jest-environment-node "^27.3.1" - jest-get-type "^27.3.1" - jest-jasmine2 "^27.3.1" - jest-regex-util "^27.0.6" - jest-resolve "^27.3.1" - jest-runner "^27.3.1" - jest-util "^27.3.1" - jest-validate "^27.3.1" + jest-circus "^27.4.5" + jest-environment-jsdom "^27.4.4" + jest-environment-node "^27.4.4" + jest-get-type "^27.4.0" + jest-jasmine2 "^27.4.5" + jest-regex-util "^27.4.0" + jest-resolve "^27.4.5" + jest-runner "^27.4.5" + jest-util "^27.4.2" + jest-validate "^27.4.2" micromatch "^4.0.4" - pretty-format "^27.3.1" + pretty-format "^27.4.2" + slash "^3.0.0" -jest-diff@^27.0.0, jest-diff@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.3.1.tgz#d2775fea15411f5f5aeda2a5e02c2f36440f6d55" - integrity sha512-PCeuAH4AWUo2O5+ksW4pL9v5xJAcIKPUPfIhZBcG1RKv/0+dvaWTQK1Nrau8d67dp65fOqbeMdoil+6PedyEPQ== +jest-diff@^27.0.0, jest-diff@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.2.tgz#786b2a5211d854f848e2dcc1e324448e9481f36f" + integrity sha512-ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q== dependencies: chalk "^4.0.0" - diff-sequences "^27.0.6" - jest-get-type "^27.3.1" - pretty-format "^27.3.1" + diff-sequences "^27.4.0" + jest-get-type "^27.4.0" + pretty-format "^27.4.2" -jest-docblock@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.0.6.tgz#cc78266acf7fe693ca462cbbda0ea4e639e4e5f3" - integrity sha512-Fid6dPcjwepTFraz0YxIMCi7dejjJ/KL9FBjPYhBp4Sv1Y9PdhImlKZqYU555BlN4TQKaTc+F2Av1z+anVyGkA== +jest-docblock@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f" + integrity sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg== dependencies: detect-newline "^3.0.0" -jest-each@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.3.1.tgz#14c56bb4f18dd18dc6bdd853919b5f16a17761ff" - integrity sha512-E4SwfzKJWYcvOYCjOxhZcxwL+AY0uFMvdCOwvzgutJiaiodFjkxQQDxHm8FQBeTqDnSmKsQWn7ldMRzTn2zJaQ== +jest-each@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.2.tgz#19364c82a692d0d26557642098d1f4619c9ee7d3" + integrity sha512-53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" chalk "^4.0.0" - jest-get-type "^27.3.1" - jest-util "^27.3.1" - pretty-format "^27.3.1" - -jest-environment-jsdom@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.3.1.tgz#63ac36d68f7a9303494df783494856222b57f73e" - integrity sha512-3MOy8qMzIkQlfb3W1TfrD7uZHj+xx8Olix5vMENkj5djPmRqndMaXtpnaZkxmxM+Qc3lo+yVzJjzuXbCcZjAlg== - dependencies: - "@jest/environment" "^27.3.1" - "@jest/fake-timers" "^27.3.1" - "@jest/types" "^27.2.5" + jest-get-type "^27.4.0" + jest-util "^27.4.2" + pretty-format "^27.4.2" + +jest-environment-jsdom@^27.4.4: + version "27.4.4" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.4.tgz#94f738e99514d7a880e8ed8e03e3a321d43b49db" + integrity sha512-cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA== + dependencies: + "@jest/environment" "^27.4.4" + "@jest/fake-timers" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.3.0" - jest-util "^27.3.1" + jest-mock "^27.4.2" + jest-util "^27.4.2" jsdom "^16.6.0" -jest-environment-node@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.3.1.tgz#af7d0eed04edafb740311b303f3fe7c8c27014bb" - integrity sha512-T89F/FgkE8waqrTSA7/ydMkcc52uYPgZZ6q8OaZgyiZkJb5QNNCF6oPZjH9IfPFfcc9uBWh1574N0kY0pSvTXw== +jest-environment-node@^27.4.4: + version "27.4.4" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.4.tgz#42fe5e3b224cb69b99811ebf6f5eaa5a59618514" + integrity sha512-D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA== dependencies: - "@jest/environment" "^27.3.1" - "@jest/fake-timers" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/environment" "^27.4.4" + "@jest/fake-timers" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.3.0" - jest-util "^27.3.1" + jest-mock "^27.4.2" + jest-util "^27.4.2" -jest-get-type@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.3.1.tgz#a8a2b0a12b50169773099eee60a0e6dd11423eff" - integrity sha512-+Ilqi8hgHSAdhlQ3s12CAVNd8H96ZkQBfYoXmArzZnOfAtVAJEiPDBirjByEblvG/4LPJmkL+nBqPO3A1YJAEg== +jest-get-type@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5" + integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ== -jest-haste-map@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.3.1.tgz#7656fbd64bf48bda904e759fc9d93e2c807353ee" - integrity sha512-lYfNZIzwPccDJZIyk9Iz5iQMM/MH56NIIcGj7AFU1YyA4ewWFBl8z+YPJuSCRML/ee2cCt2y3W4K3VXPT6Nhzg== +jest-haste-map@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.5.tgz#c2921224a59223f91e03ec15703905978ef0cc1a" + integrity sha512-oJm1b5qhhPs78K24EDGifWS0dELYxnoBiDhatT/FThgB9yxqUm5F6li3Pv+Q+apMBmmPNzOBnZ7ZxWMB1Leq1Q== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" - jest-regex-util "^27.0.6" - jest-serializer "^27.0.6" - jest-util "^27.3.1" - jest-worker "^27.3.1" + jest-regex-util "^27.4.0" + jest-serializer "^27.4.0" + jest-util "^27.4.2" + jest-worker "^27.4.5" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.3.1.tgz#df6d3d07c7dafc344feb43a0072a6f09458d32b0" - integrity sha512-WK11ZUetDQaC09w4/j7o4FZDUIp+4iYWH/Lik34Pv7ukL+DuXFGdnmmi7dT58J2ZYKFB5r13GyE0z3NPeyJmsg== +jest-jasmine2@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.5.tgz#ff79d11561679ff6c89715b0cd6b1e8c0dfbc6dc" + integrity sha512-oUnvwhJDj2LhOiUB1kdnJjkx8C5PwgUZQb9urF77mELH9DGR4e2GqpWQKBOYXWs5+uTN9BGDqRz3Aeg5Wts7aw== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.3.1" - "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/environment" "^27.4.4" + "@jest/source-map" "^27.4.0" + "@jest/test-result" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.3.1" + expect "^27.4.2" is-generator-fn "^2.0.0" - jest-each "^27.3.1" - jest-matcher-utils "^27.3.1" - jest-message-util "^27.3.1" - jest-runtime "^27.3.1" - jest-snapshot "^27.3.1" - jest-util "^27.3.1" - pretty-format "^27.3.1" + jest-each "^27.4.2" + jest-matcher-utils "^27.4.2" + jest-message-util "^27.4.2" + jest-runtime "^27.4.5" + jest-snapshot "^27.4.5" + jest-util "^27.4.2" + pretty-format "^27.4.2" throat "^6.0.1" -jest-leak-detector@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.3.1.tgz#7fb632c2992ef707a1e73286e1e704f9cc1772b2" - integrity sha512-78QstU9tXbaHzwlRlKmTpjP9k4Pvre5l0r8Spo4SbFFVy/4Abg9I6ZjHwjg2QyKEAMg020XcjP+UgLZIY50yEg== +jest-leak-detector@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.2.tgz#7fc3120893a7a911c553f3f2bdff9faa4454abbb" + integrity sha512-ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw== dependencies: - jest-get-type "^27.3.1" - pretty-format "^27.3.1" + jest-get-type "^27.4.0" + pretty-format "^27.4.2" -jest-matcher-utils@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.3.1.tgz#257ad61e54a6d4044e080d85dbdc4a08811e9c1c" - integrity sha512-hX8N7zXS4k+8bC1Aj0OWpGb7D3gIXxYvPNK1inP5xvE4ztbz3rc4AkI6jGVaerepBnfWB17FL5lWFJT3s7qo8w== +jest-matcher-utils@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.2.tgz#d17c5038607978a255e0a9a5c32c24e984b6c60b" + integrity sha512-jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ== dependencies: chalk "^4.0.0" - jest-diff "^27.3.1" - jest-get-type "^27.3.1" - pretty-format "^27.3.1" + jest-diff "^27.4.2" + jest-get-type "^27.4.0" + pretty-format "^27.4.2" -jest-message-util@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.3.1.tgz#f7c25688ad3410ab10bcb862bcfe3152345c6436" - integrity sha512-bh3JEmxsTZ/9rTm0jQrPElbY2+y48Rw2t47uMfByNyUVR+OfPh4anuyKsGqsNkXk/TI4JbLRZx+7p7Hdt6q1yg== +jest-message-util@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.2.tgz#07f3f1bf207d69cf798ce830cc57f1a849f99388" + integrity sha512-OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" graceful-fs "^4.2.4" micromatch "^4.0.4" - pretty-format "^27.3.1" + pretty-format "^27.4.2" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.3.0: - version "27.3.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.3.0.tgz#ddf0ec3cc3e68c8ccd489bef4d1f525571a1b867" - integrity sha512-ziZiLk0elZOQjD08bLkegBzv5hCABu/c8Ytx45nJKkysQwGaonvmTxwjLqEA4qGdasq9o2I8/HtdGMNnVsMTGw== +jest-mock@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.2.tgz#184ff197a25491bfe4570c286daa5d62eb760b88" + integrity sha512-PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3664,76 +3491,76 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.0.6.tgz#02e112082935ae949ce5d13b2675db3d8c87d9c5" - integrity sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ== +jest-regex-util@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca" + integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg== -jest-resolve-dependencies@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.3.1.tgz#85b99bdbdfa46e2c81c6228fc4c91076f624f6e2" - integrity sha512-X7iLzY8pCiYOnvYo2YrK3P9oSE8/3N2f4pUZMJ8IUcZnT81vlSonya1KTO9ZfKGuC+svE6FHK/XOb8SsoRUV1A== +jest-resolve-dependencies@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.5.tgz#9398af854bdb12d6a9e5a8a536ee401f889a3ecf" + integrity sha512-elEVvkvRK51y037NshtEkEnukMBWvlPzZHiL847OrIljJ8yIsujD2GXRPqDXC4rEVKbcdsy7W0FxoZb4WmEs7w== dependencies: - "@jest/types" "^27.2.5" - jest-regex-util "^27.0.6" - jest-snapshot "^27.3.1" + "@jest/types" "^27.4.2" + jest-regex-util "^27.4.0" + jest-snapshot "^27.4.5" -jest-resolve@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.3.1.tgz#0e5542172a1aa0270be6f66a65888647bdd74a3e" - integrity sha512-Dfzt25CFSPo3Y3GCbxynRBZzxq9AdyNN+x/v2IqYx6KVT5Z6me2Z/PsSGFSv3cOSUZqJ9pHxilao/I/m9FouLw== +jest-resolve@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.5.tgz#8dc44f5065fb8d58944c20f932cb7b9fe9760cca" + integrity sha512-xU3z1BuOz/hUhVUL+918KqUgK+skqOuUsAi7A+iwoUldK6/+PW+utK8l8cxIWT9AW7IAhGNXjSAh1UYmjULZZw== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" chalk "^4.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.3.1" + jest-haste-map "^27.4.5" jest-pnp-resolver "^1.2.2" - jest-util "^27.3.1" - jest-validate "^27.3.1" + jest-util "^27.4.2" + jest-validate "^27.4.2" resolve "^1.20.0" resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.3.1.tgz#1d594dcbf3bd8600a7e839e790384559eaf96e3e" - integrity sha512-r4W6kBn6sPr3TBwQNmqE94mPlYVn7fLBseeJfo4E2uCTmAyDFm2O5DYAQAFP7Q3YfiA/bMwg8TVsciP7k0xOww== +jest-runner@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.5.tgz#daba2ba71c8f34137dc7ac45616add35370a681e" + integrity sha512-/irauncTfmY1WkTaRQGRWcyQLzK1g98GYG/8QvIPviHgO1Fqz1JYeEIsSfF+9mc/UTA6S+IIHFgKyvUrtiBIZg== dependencies: - "@jest/console" "^27.3.1" - "@jest/environment" "^27.3.1" - "@jest/test-result" "^27.3.1" - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/console" "^27.4.2" + "@jest/environment" "^27.4.4" + "@jest/test-result" "^27.4.2" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-docblock "^27.0.6" - jest-environment-jsdom "^27.3.1" - jest-environment-node "^27.3.1" - jest-haste-map "^27.3.1" - jest-leak-detector "^27.3.1" - jest-message-util "^27.3.1" - jest-resolve "^27.3.1" - jest-runtime "^27.3.1" - jest-util "^27.3.1" - jest-worker "^27.3.1" + jest-docblock "^27.4.0" + jest-environment-jsdom "^27.4.4" + jest-environment-node "^27.4.4" + jest-haste-map "^27.4.5" + jest-leak-detector "^27.4.2" + jest-message-util "^27.4.2" + jest-resolve "^27.4.5" + jest-runtime "^27.4.5" + jest-util "^27.4.2" + jest-worker "^27.4.5" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.3.1.tgz#80fa32eb85fe5af575865ddf379874777ee993d7" - integrity sha512-qtO6VxPbS8umqhEDpjA4pqTkKQ1Hy4ZSi9mDVeE9Za7LKBo2LdW2jmT+Iod3XFaJqINikZQsn2wEi0j9wPRbLg== - dependencies: - "@jest/console" "^27.3.1" - "@jest/environment" "^27.3.1" - "@jest/globals" "^27.3.1" - "@jest/source-map" "^27.0.6" - "@jest/test-result" "^27.3.1" - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" +jest-runtime@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.5.tgz#97703ad2a1799d4f50ab59049bd21a9ceaed2813" + integrity sha512-CIYqwuJQXHQtPd/idgrx4zgJ6iCb6uBjQq1RSAGQrw2S8XifDmoM1Ot8NRd80ooAm+ZNdHVwsktIMGlA1F1FAQ== + dependencies: + "@jest/console" "^27.4.2" + "@jest/environment" "^27.4.4" + "@jest/globals" "^27.4.4" + "@jest/source-map" "^27.4.0" + "@jest/test-result" "^27.4.2" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@types/yargs" "^16.0.0" chalk "^4.0.0" cjs-module-lexer "^1.0.0" @@ -3742,30 +3569,30 @@ jest-runtime@^27.3.1: exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-haste-map "^27.3.1" - jest-message-util "^27.3.1" - jest-mock "^27.3.0" - jest-regex-util "^27.0.6" - jest-resolve "^27.3.1" - jest-snapshot "^27.3.1" - jest-util "^27.3.1" - jest-validate "^27.3.1" + jest-haste-map "^27.4.5" + jest-message-util "^27.4.2" + jest-mock "^27.4.2" + jest-regex-util "^27.4.0" + jest-resolve "^27.4.5" + jest-snapshot "^27.4.5" + jest-util "^27.4.2" + jest-validate "^27.4.2" slash "^3.0.0" strip-bom "^4.0.0" yargs "^16.2.0" -jest-serializer@^27.0.6: - version "27.0.6" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.0.6.tgz#93a6c74e0132b81a2d54623251c46c498bb5bec1" - integrity sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA== +jest-serializer@^27.4.0: + version "27.4.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz#34866586e1cae2388b7d12ffa2c7819edef5958a" + integrity sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ== dependencies: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.3.1.tgz#1da5c0712a252d70917d46c037054f5918c49ee4" - integrity sha512-APZyBvSgQgOT0XumwfFu7X3G5elj6TGhCBLbBdn3R1IzYustPGPE38F51dBWMQ8hRXa9je0vAdeVDtqHLvB6lg== +jest-snapshot@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.5.tgz#2ea909b20aac0fe62504bc161331f730b8a7ecc7" + integrity sha512-eCi/iM1YJFrJWiT9de4+RpWWWBqsHiYxFG9V9o/n0WXs6GpW4lUt4FAHAgFPTLPqCUVzrMQmSmTZSgQzwqR7IQ== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" @@ -3773,91 +3600,79 @@ jest-snapshot@^27.3.1: "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/transform" "^27.4.5" + "@jest/types" "^27.4.2" "@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.3.1" + expect "^27.4.2" graceful-fs "^4.2.4" - jest-diff "^27.3.1" - jest-get-type "^27.3.1" - jest-haste-map "^27.3.1" - jest-matcher-utils "^27.3.1" - jest-message-util "^27.3.1" - jest-resolve "^27.3.1" - jest-util "^27.3.1" + jest-diff "^27.4.2" + jest-get-type "^27.4.0" + jest-haste-map "^27.4.5" + jest-matcher-utils "^27.4.2" + jest-message-util "^27.4.2" + jest-resolve "^27.4.5" + jest-util "^27.4.2" natural-compare "^1.4.0" - pretty-format "^27.3.1" + pretty-format "^27.4.2" semver "^7.3.2" -jest-util@^27.0.0: - version "27.0.2" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.0.2.tgz#fc2c7ace3c75ae561cf1e5fdb643bf685a5be7c7" - integrity sha512-1d9uH3a00OFGGWSibpNYr+jojZ6AckOMCXV2Z4K3YXDnzpkAaXQyIpY14FOJPiUmil7CD+A6Qs+lnnh6ctRbIA== - dependencies: - "@jest/types" "^27.0.2" - "@types/node" "*" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^3.0.0" - picomatch "^2.2.3" - -jest-util@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.3.1.tgz#a58cdc7b6c8a560caac9ed6bdfc4e4ff23f80429" - integrity sha512-8fg+ifEH3GDryLQf/eKZck1DEs2YuVPBCMOaHQxVVLmQwl/CDhWzrvChTX4efLZxGrw+AA0mSXv78cyytBt/uw== +jest-util@^27.0.0, jest-util@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.2.tgz#ed95b05b1adfd761e2cda47e0144c6a58e05a621" + integrity sha512-YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" ci-info "^3.2.0" graceful-fs "^4.2.4" picomatch "^2.2.3" -jest-validate@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.3.1.tgz#3a395d61a19cd13ae9054af8cdaf299116ef8a24" - integrity sha512-3H0XCHDFLA9uDII67Bwi1Vy7AqwA5HqEEjyy934lgVhtJ3eisw6ShOF1MDmRPspyikef5MyExvIm0/TuLzZ86Q== +jest-validate@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.2.tgz#eecfcc1b1c9429aa007da08a2bae4e32a81bbbc3" + integrity sha512-hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.3.1" + jest-get-type "^27.4.0" leven "^3.1.0" - pretty-format "^27.3.1" + pretty-format "^27.4.2" -jest-watcher@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.3.1.tgz#ba5e0bc6aa843612b54ddb7f009d1cbff7e05f3e" - integrity sha512-9/xbV6chABsGHWh9yPaAGYVVKurWoP3ZMCv6h+O1v9/+pkOroigs6WzZ0e9gLP/njokUwM7yQhr01LKJVMkaZA== +jest-watcher@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.2.tgz#c9037edfd80354c9fe90de4b6f8b6e2b8e736744" + integrity sha512-NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg== dependencies: - "@jest/test-result" "^27.3.1" - "@jest/types" "^27.2.5" + "@jest/test-result" "^27.4.2" + "@jest/types" "^27.4.2" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^27.3.1" + jest-util "^27.4.2" string-length "^4.0.1" -jest-worker@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.3.1.tgz#0def7feae5b8042be38479799aeb7b5facac24b2" - integrity sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g== +jest-worker@^27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.5.tgz#d696e3e46ae0f24cff3fa7195ffba22889262242" + integrity sha512-f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.3.1.tgz#b5bab64e8f56b6f7e275ba1836898b0d9f1e5c8a" - integrity sha512-U2AX0AgQGd5EzMsiZpYt8HyZ+nSVIh5ujQ9CPp9EQZJMjXIiSZpJNweZl0swatKRoqHWgGKM3zaSwm4Zaz87ng== +jest@27.4.5: + version "27.4.5" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.5.tgz#66e45acba44137fac26be9d3cc5bb031e136dc0f" + integrity sha512-uT5MiVN3Jppt314kidCk47MYIRilJjA/l2mxwiuzzxGUeJIvA8/pDaJOAX5KWvjAo7SCydcW0/4WEtgbLMiJkg== dependencies: - "@jest/core" "^27.3.1" + "@jest/core" "^27.4.5" import-local "^3.0.2" - jest-cli "^27.3.1" + jest-cli "^27.4.5" js-tokens@^4.0.0: version "4.0.0" @@ -3865,9 +3680,9 @@ js-tokens@^4.0.0: integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-yaml@^3.13.1: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -3917,10 +3732,10 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -json-parse-better-errors@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== json-schema-traverse@^0.4.1: version "0.4.1" @@ -3932,14 +3747,7 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= -json5@2.x: - version "2.1.2" - resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.2.tgz#43ef1f0af9835dd624751a6b7fa48874fb2d608e" - integrity sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ== - dependencies: - minimist "^1.2.5" - -json5@^2.1.2: +json5@2.x, json5@^2.1.2: version "2.2.0" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== @@ -4005,44 +3813,50 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" +lilconfig@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.4.tgz#f4507d043d7058b380b6a8f5cb7bcd4b34cee082" + integrity sha512-bfTIN7lEsiooCocSISTWXkiWJkRqtL9wYtYy+8EK3Y41qh3mpwPU0ycTOgjdY9ErwXCc8QyrQp82bdL0Xkm9yA== + limiter@^1.0.5: version "1.1.5" resolved "https://registry.yarnpkg.com/limiter/-/limiter-1.1.5.tgz#8f92a25b3b16c6131293a0cc834b4a838a2aa7c2" integrity sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA== lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -lint-staged@^12.0.2: - version "12.0.2" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.0.2.tgz#b0f96f2a57898658a5b59e087aeff975dad03fc1" - integrity sha512-tpCvACqc7bykziGJmXG0G8YG2RaCrWiDBwmrP9wU7i/3za9JMOvCECQmXjw/sO4ICC70ApVwyqixS1htQX9Haw== +lint-staged@12.1.3: + version "12.1.3" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.1.3.tgz#a16e885c0a5e77de9cf559724d29a10348670e68" + integrity sha512-ajapdkaFxx+MVhvq6xQRg9zCnCLz49iQLJZP7+w8XaA3U4B35Z9xJJGq9vxmWo73QTvJLG+N2NxhjWiSexbAWQ== dependencies: - cli-truncate "3.1.0" + cli-truncate "^3.1.0" colorette "^2.0.16" commander "^8.3.0" - cosmiconfig "^7.0.1" - debug "^4.3.2" + debug "^4.3.3" execa "^5.1.1" - listr2 "^3.13.3" + lilconfig "2.0.4" + listr2 "^3.13.5" micromatch "^4.0.4" normalize-path "^3.0.0" - object-inspect "1.11.0" - string-argv "0.3.1" - supports-color "9.0.2" + object-inspect "^1.11.1" + string-argv "^0.3.1" + supports-color "^9.2.1" + yaml "^1.10.2" -listr2@^3.13.3: - version "3.13.4" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.4.tgz#34101fc0184545597e00d1e7915ccfbfb17332e6" - integrity sha512-lZ1Rut1DSIRwbxQbI8qaUBfOWJ1jEYRgltIM97j6kKOCI2pHVWMyxZvkU/JKmRBWcIYgDS2PK+yDgVqm7u3crw== +listr2@^3.13.5: + version "3.13.5" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.5.tgz#105a813f2eb2329c4aae27373a281d610ee4985f" + integrity sha512-3n8heFQDSk+NcwBn3CgxEibZGaRzx+pC64n3YjpMD1qguV4nWus3Al+Oo3KooqFKTQEJ1v7MmnbnyyNspgx3NA== dependencies: cli-truncate "^2.1.0" - clone "^2.1.2" colorette "^2.0.16" log-update "^4.0.0" p-map "^4.0.0" + rfdc "^1.3.0" rxjs "^7.4.0" through "^2.3.8" wrap-ansi "^7.0.0" @@ -4206,29 +4020,17 @@ micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.1" picomatch "^2.2.3" -mime-db@1.47.0: - version "1.47.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.47.0.tgz#8cb313e59965d3c05cfbf898915a267af46a335c" - integrity sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw== - -mime-db@1.50.0: - version "1.50.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.50.0.tgz#abd4ac94e98d3c0e185016c67ab45d5fde40c11f" - integrity sha512-9tMZCDlYHqeERXEHO9f/hKfNXhre5dK2eE/krIvUjZbS2KPcqGDfNShIWS1uW9XOTKQKqK6qbeOci18rbfW77A== - -mime-types@^2.1.12, mime-types@~2.1.24: - version "2.1.30" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.30.tgz#6e7be8b4c479825f85ed6326695db73f9305d62d" - integrity sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg== - dependencies: - mime-db "1.47.0" +mime-db@1.51.0: + version "1.51.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" + integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== -mime-types@~2.1.17: - version "2.1.33" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.33.tgz#1fa12a904472fafd068e48d9e8401f74d3f70edb" - integrity sha512-plLElXp7pRDd0bNZHw+nMd52vRYjLwQjygaNg7ddJ2uJtTlmnTCjWuPKxVu6//AdaRuME84SvLW91sIkBqGT0g== +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.24: + version "2.1.34" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" + integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== dependencies: - mime-db "1.50.0" + mime-db "1.51.0" mime@1.4.1: version "1.4.1" @@ -4288,7 +4090,7 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@^2.4.0: +mockttp@2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.4.0.tgz#3027d210be46d0695f60367d35737bb6c13e59c4" integrity sha512-aMktxhtDGiKcH+vtcmZL41fPtR9u5ZanauurAOPVybH9QcryOVQN2wLjhxXqsvji348rtAWSjuZUmMYSBqaWTg== @@ -4328,16 +4130,16 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= -ms@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== - -ms@2.1.2, ms@^2.1.1: +ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@2.1.3, ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + native-duplexpair@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/native-duplexpair/-/native-duplexpair-1.0.0.tgz#7899078e64bf3c8a3d732601b3d40ff05db58fa0" @@ -4383,11 +4185,6 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= -node-modules-regexp@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" - integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= - node-releases@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" @@ -4435,10 +4232,10 @@ object-assign@^4: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-inspect@1.11.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" - integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== +object-inspect@^1.11.1: + version "1.12.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" + integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== on-finished@~2.3.0: version "2.3.0" @@ -4461,7 +4258,7 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.4.0: +open@8.4.0: version "8.4.0" resolved "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz#345321ae18f8138f82565a910fdc6b39e8c244f8" integrity sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q== @@ -4507,9 +4304,9 @@ optionator@^0.9.1: word-wrap "^1.2.3" p-limit@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz#61279b67721f5287aa1c13a9a7fbbc48c9291b1e" - integrity sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ== + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" @@ -4578,13 +4375,13 @@ parent-module@^1.0.0: callsites "^3.0.0" parse-json@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" - integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" error-ex "^1.3.1" - json-parse-better-errors "^1.0.1" + json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" parse5@6.0.1: @@ -4656,16 +4453,14 @@ picocolors@^1.0.0: integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.3.tgz#465547f359ccc206d3c48e46a1bcb89bf7ee619d" - integrity sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg== + version "2.3.0" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== pirates@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" - integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== - dependencies: - node-modules-regexp "^1.0.0" + version "4.0.4" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.4.tgz#07df81e61028e402735cdd49db701e4885b4e6e6" + integrity sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw== pkg-dir@^4.2.0: version "4.2.0" @@ -4708,17 +4503,17 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" -prettier@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" - integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== +prettier@2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.5.1.tgz#fff75fa9d519c54cf0fce328c1017d94546bc56a" + integrity sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg== -pretty-format@^27.0.0, pretty-format@^27.3.1: - version "27.3.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.3.1.tgz#7e9486365ccdd4a502061fa761d3ab9ca1b78df5" - integrity sha512-DR/c+pvFc52nLimLROYjnXPtolawm+uWDxr4FjuLDLUn+ktWnSN851KoHwHzzqq6rfCOjkzN8FLgDrSub6UDuA== +pretty-format@^27.0.0, pretty-format@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.2.tgz#e4ce92ad66c3888423d332b40477c87d1dac1fb8" + integrity sha512-p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw== dependencies: - "@jest/types" "^27.2.5" + "@jest/types" "^27.4.2" ansi-regex "^5.0.1" ansi-styles "^5.0.0" react-is "^17.0.1" @@ -4741,12 +4536,12 @@ prompts@^2.0.1: kleur "^3.0.3" sisteransi "^1.0.5" -proxy-addr@~2.0.5: - version "2.0.6" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.6.tgz#fdc2336505447d3f2f2c638ed272caf614bbb2bf" - integrity sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== +proxy-addr@~2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== dependencies: - forwarded "~0.1.2" + forwarded "0.2.0" ipaddr.js "1.9.1" proxy-from-env@^1.0.0: @@ -4774,15 +4569,10 @@ qs@6.2.3: resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" integrity sha1-HPyyXBCpsrSDBT/zn138kjOQjP4= -qs@6.7.0: - version "6.7.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" - integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== - -qs@^6.9.4: - version "6.9.4" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.4.tgz#9090b290d1f91728d3c22e54843ca44aea5ab687" - integrity sha512-A1kFqHekCTM7cz0udomYUoYNWjBebHm/5wzU/XqrBRBNWectVH0QIiN+NEcZ0Dte5hvzHwbr8+XQmguPhJ6WdQ== +qs@6.9.6, qs@^6.9.4: + version "6.9.6" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.6.tgz#26ed3c8243a431b2924aca84cc90471f35d5a0ee" + integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== queue-microtask@^1.2.2: version "1.2.3" @@ -4804,23 +4594,13 @@ range-parser@~1.2.0, range-parser@~1.2.1: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" - integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== - dependencies: - bytes "3.1.0" - http-errors "1.7.2" - iconv-lite "0.4.24" - unpipe "1.0.0" - -raw-body@^2.2.0, raw-body@^2.3.2, raw-body@^2.4.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.1.tgz#30ac82f98bb5ae8c152e67149dac8d55153b168c" - integrity sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA== +raw-body@2.4.2, raw-body@^2.2.0, raw-body@^2.3.2, raw-body@^2.4.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.2.tgz#baf3e9c21eebced59dd6533ac872b71f7b61cb32" + integrity sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ== dependencies: - bytes "3.1.0" - http-errors "1.7.3" + bytes "3.1.1" + http-errors "1.8.1" iconv-lite "0.4.24" unpipe "1.0.0" @@ -4978,6 +4758,11 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== +rfdc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" + integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== + rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -5011,16 +4796,16 @@ rxjs@^7.4.0: dependencies: tslib "~2.1.0" -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + "safer-buffer@>= 2.1.2 < 3": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" @@ -5069,10 +4854,10 @@ send@0.16.2: range-parser "~1.2.0" statuses "~1.4.0" -send@0.17.1: - version "0.17.1" - resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" - integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== +send@0.17.2: + version "0.17.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.2.tgz#926622f76601c41808012c8bf1688fe3906f7820" + integrity sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww== dependencies: debug "2.6.9" depd "~1.1.2" @@ -5081,9 +4866,9 @@ send@0.17.1: escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "~1.7.2" + http-errors "1.8.1" mime "1.6.0" - ms "2.1.1" + ms "2.1.3" on-finished "~2.3.0" range-parser "~1.2.1" statuses "~1.5.0" @@ -5111,15 +4896,15 @@ serve-static@1.13.2: parseurl "~1.3.2" send "0.16.2" -serve-static@1.14.1: - version "1.14.1" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" - integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== +serve-static@1.14.2: + version "1.14.2" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.2.tgz#722d6294b1d62626d41b43a013ece4598d292bfa" + integrity sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.17.1" + send "0.17.2" server-destroy@1.0.1: version "1.0.1" @@ -5136,11 +4921,6 @@ setprototypeof@1.1.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== -setprototypeof@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" - integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== - setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" @@ -5159,9 +4939,9 @@ shebang-regex@^3.0.0: integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + version "3.0.6" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" + integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== sisteransi@^1.0.5: version "1.0.5" @@ -5274,9 +5054,9 @@ socks@^2.3.3, socks@^2.6.1: smart-buffer "^4.1.0" source-map-support@^0.5.17, source-map-support@^0.5.6: - version "0.5.20" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9" - integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw== + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -5369,7 +5149,7 @@ stream-throttle@^0.1.3: commander "^2.2.0" limiter "^1.0.5" -string-argv@0.3.1: +string-argv@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== @@ -5383,13 +5163,13 @@ string-length@^4.0.1: strip-ansi "^6.0.0" string-width@^4.1.0, string-width@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== dependencies: emoji-regex "^8.0.0" is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" + strip-ansi "^6.0.1" string-width@^5.0.0: version "5.0.1" @@ -5426,14 +5206,7 @@ strip-ansi@^3.0.0: dependencies: ansi-regex "^2.0.0" -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== - dependencies: - ansi-regex "^5.0.0" - -strip-ansi@^6.0.1: +strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -5486,7 +5259,7 @@ superagent@^6.1.0: readable-stream "^3.6.0" semver "^7.3.2" -supertest@^6.1.6: +supertest@6.1.6: version "6.1.6" resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.6.tgz#6151c518f4c5ced2ac2aadb9f96f1bf8198174c8" integrity sha512-0hACYGNJ8OHRg8CRITeZOdbjur7NLuNs0mBjVhdpxi7hP6t3QIbOzLON5RTUmZcy2I9riuII3+Pr2C7yztrIIg== @@ -5494,13 +5267,6 @@ supertest@^6.1.6: methods "^1.1.2" superagent "^6.1.0" -supports-color@9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.0.2.tgz#50f082888e4b0a4e2ccd2d0b4f9ef4efcd332485" - integrity sha512-ii6tc8ImGFrgMPYq7RVAMKkhPo9vk8uA+D3oKbJq/3Pk2YSMv1+9dUAesa9UxMbxBTvxwKTQffBahNVNxEvM8Q== - dependencies: - has-flag "^5.0.0" - supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" @@ -5513,20 +5279,13 @@ supports-color@^5.3.0: dependencies: has-flag "^3.0.0" -supports-color@^7.0.0: +supports-color@^7.0.0, supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" -supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== - dependencies: - has-flag "^4.0.0" - supports-color@^8.0.0: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" @@ -5534,6 +5293,11 @@ supports-color@^8.0.0: dependencies: has-flag "^4.0.0" +supports-color@^9.2.1: + version "9.2.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-9.2.1.tgz#599dc9d45acf74c6176e0d880bab1d7d718fe891" + integrity sha512-Obv7ycoCTG51N7y175StI9BlAXrmgZrFhZOb0/PyjHBher/NmsdBgbbQ1Inhq+gIhz6+7Gb+jWF2Vqi7Mf1xnQ== + supports-hyperlinks@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" @@ -5636,6 +5400,11 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== + tough-cookie@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" @@ -5662,10 +5431,10 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -ts-jest@^27.0.7: - version "27.0.7" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.0.7.tgz#fb7c8c8cb5526ab371bc1b23d06e745652cca2d0" - integrity sha512-O41shibMqzdafpuP+CkrOL7ykbmLh+FqQrXEmV9CydQ5JBk0Sj0uAEF5TNNe94fZWKm3yYvWa/IbyV4Yg1zK2Q== +ts-jest@27.1.2: + version "27.1.2" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.2.tgz#5991d6eb3fd8e1a8d4b8f6de3ec0a3cc567f3151" + integrity sha512-eSOiJOWq6Hhs6Khzk5wKC5sgWIXgXqOCiIl1+3lfnearu58Hj4QpE5tUhQcA3xtZrELbcvAGCsd6HB8OsaVaTA== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" @@ -5689,9 +5458,9 @@ ts-node@^9: yn "3.1.1" tslib@^1.8.1: - version "1.13.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== tslib@^2, tslib@^2.0.1, tslib@^2.0.3: version "2.3.1" @@ -5739,11 +5508,6 @@ type-detect@4.0.8: resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== - type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -5769,7 +5533,7 @@ type-fest@^0.8.1: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== -type-is@~1.6.17, type-is@~1.6.18: +type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== @@ -5789,15 +5553,10 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.4.3: - version "4.4.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.3.tgz#bdc5407caa2b109efd4f82fe130656f977a29324" - integrity sha512-4xfscpisVgqqDfPaJo5vkd+Qd/ItkoagnHpufr+i2QCHBsNYp+G7UAoyFl8aPtx879u38wPV65rZ8qbGZijalA== - -typescript@^4.5.2: - version "4.5.2" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998" - integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw== +typescript@4.5.4, typescript@^4.4.3: + version "4.5.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.4.tgz#a17d3a0263bf5c8723b9c52f43c5084edf13c2e8" + integrity sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg== ua-parser-js@1.0.2: version "1.0.2" @@ -5820,9 +5579,9 @@ unpipe@1.0.0, unpipe@~1.0.0: integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= uri-js@^4.2.2: - version "4.2.2" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" - integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ== + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== dependencies: punycode "^2.1.0" @@ -5842,9 +5601,9 @@ uuid@^3.1.0: integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== v8-compile-cache@^2.0.3: - version "2.1.1" - resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" - integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== v8-to-istanbul@^8.1.0: version "8.1.0" @@ -5993,17 +5752,17 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@*, ws@^8.2.3: - version "8.2.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.2.3.tgz#63a56456db1b04367d0b721a0b80cae6d8becbba" - integrity sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA== +ws@*, ws@8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.3.0.tgz#7185e252c8973a60d57170175ff55fdbd116070d" + integrity sha512-Gs5EZtpqZzLvmIM59w4igITU57lrtYVFneaa434VROv4thzJyV6UjIL3D42lslWlI+D4KzLYnxSwtfuiO79sNw== -ws@^7.3.1: - version "7.5.5" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" - integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== +ws@^7.3.1, ws@^7.4.6: + version "7.5.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.6.tgz#e59fc509fb15ddfb65487ee9765c5a51dec5fe7b" + integrity sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA== -ws@^7.4.6, ws@~7.4.2: +ws@~7.4.2: version "7.4.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== @@ -6039,9 +5798,9 @@ y18n@^4.0.0: integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== y18n@^5.0.5: - version "5.0.5" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" - integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^3.0.2: version "3.1.1" @@ -6053,15 +5812,15 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" - integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== +yaml@^1.10.0, yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.x, yargs-parser@^20.2.2: - version "20.2.7" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" - integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== +yargs-parser@20.x, yargs-parser@^20.2.2, yargs-parser@^20.2.3: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== yargs-parser@^18.1.2: version "18.1.3" @@ -6071,11 +5830,6 @@ yargs-parser@^18.1.2: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^20.2.3: - version "20.2.9" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" - integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== - yargs@17.1.1: version "17.1.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.1.tgz#c2a8091564bdb196f7c0a67c1d12e5b85b8067ba" From 6ca729e05e293bcb888d06495a2ab1ca39ecdba6 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Thu, 23 Dec 2021 17:46:23 +0000 Subject: [PATCH 49/77] build(eslint): disable @typescript-eslint/no-explicit-any --- .eslintrc.js | 1 + 1 file changed, 1 insertion(+) diff --git a/.eslintrc.js b/.eslintrc.js index ca697b23..b17cfb3f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -6,6 +6,7 @@ module.exports = { }, extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'], rules: { + '@typescript-eslint/no-explicit-any': 'off', '@typescript-eslint/no-unused-vars': [ 'error', { vars: 'all', args: 'none', ignoreRestSiblings: false }, From 92f75c4009ce1bfb297bddde90dc273b8e720aa2 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 24 Dec 2021 18:07:03 +0100 Subject: [PATCH 50/77] build: spellchecker (#689) * build(cspell): add spellchecker * build(cspell): add cspell github-action * docs: fix spelling mistakes --- .github/workflows/ci.yml | 47 ++++++++++++++++++++++++++ CONTRIBUTORS.txt | 19 +++++++++++ README.md | 5 ++- cspell.json | 40 ++++++++++++++++++++++ examples/response-interceptor/index.js | 1 + examples/websocket/index.html | 2 +- package.json | 3 +- recipes/async-response.md | 2 +- recipes/logLevel.md | 2 +- recipes/logProvider.md | 2 +- recipes/modify-post.md | 4 +-- recipes/response-interceptor.md | 2 +- test/e2e/websocket.spec.ts | 1 + test/unit/response-interceptor.spec.ts | 6 ++-- test/unit/router.spec.ts | 2 +- 15 files changed, 124 insertions(+), 14 deletions(-) create mode 100644 CONTRIBUTORS.txt create mode 100644 cspell.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 16a941f6..42160f48 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -95,3 +95,50 @@ jobs: uses: coverallsapp/github-action@master with: github-token: ${{ secrets.github_token }} + + spellcheck: + name: Spellcheck + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: streetsidesoftware/cspell-action@main + with: + # Github token used to fetch the list of changed files in the commit. + # Default: ${{ github.token }} + github_token: ${{ github.token }} + + # Define glob patterns to filter the files to be checked. Use a new line between patterns to define multiple patterns. + # The default is to check ALL files that were changed in in the pull_request or push. + # Note: `ignorePaths` defined in cspell.json still apply. + # Example: + # files: | + # **/*.{ts,js} + # !dist/**/*.{ts,js} + # # Hidden directories need an explicit .* to be included + # .*/**/*.yml + # + # To not check hidden files, use: + # files: "**" + # + # Default: ALL files + files: '**' + + # The point in the directory tree to start spell checking. + # Default: . + root: '.' + + # Notification level to use with inline reporting of spelling errors. + # Allowed values are: warning, error, none + # Default: warning + inline: error + + # Determines if the action should be failed if any spelling issues are found. + # Allowed values are: true, false + # Default: true + strict: true + + # Limit the files checked to the ones in the pull request or push. + incremental_files_only: false + + # Path to `cspell.json` + config: 'cspell.json' diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt new file mode 100644 index 00000000..69c37fb6 --- /dev/null +++ b/CONTRIBUTORS.txt @@ -0,0 +1,19 @@ +aremishevsky +Bezalel +bforbis +Chim +cloudmu +dylang +Elad +graingert +julbra +leonardobazico +Liran +midgleyc +mpth +oshri +oufeng +rsethc +sunnylqm +Tazelaar +trbngr diff --git a/README.md b/README.md index 9fd7a146..e94dd152 100644 --- a/README.md +++ b/README.md @@ -340,7 +340,7 @@ Subscribe to [http-proxy events](https://github.com/nodejitsu/node-http-proxy#li ```javascript function onOpen(proxySocket) { // listen for messages coming FROM the target here - proxySocket.on('data', hybiParseAndLogMessage); + proxySocket.on('data', hybridParseAndLogMessage); } ``` @@ -585,6 +585,9 @@ $ yarn test # code coverage $ yarn cover + +# check spelling mistakes +$ yarn spellcheck ``` ## Changelog diff --git a/cspell.json b/cspell.json new file mode 100644 index 00000000..a962e9c2 --- /dev/null +++ b/cspell.json @@ -0,0 +1,40 @@ +{ + "language": "en", + "spellCheckDelayMs": 500, + "dictionaries": ["node", "npm", "typescript", "contributors"], + "ignorePaths": ["node_modules/**", "coverage/**", "dist/**", "package.json", "yarn.lock"], + "dictionaryDefinitions": [ + { + "name": "contributors", + "path": "CONTRIBUTORS.txt" + } + ], + "ignoreRegExpList": ["[a-z]+path"], + "words": [ + "camelcase", + "codesandbox", + "deepcode", + "depthfrom", + "fastify", + "globbing", + "gzipped", + "insertanchor", + "lcov", + "Lenna", + "lipsum", + "lorum", + "middlewares", + "millis", + "mockttp", + "Nodejitsu", + "ntlm", + "proxied", + "proxying", + "rawbody", + "restream", + "streamify", + "vhosted", + "websockets", + "xfwd" + ] +} diff --git a/examples/response-interceptor/index.js b/examples/response-interceptor/index.js index 92de8ae3..64b8ee74 100644 --- a/examples/response-interceptor/index.js +++ b/examples/response-interceptor/index.js @@ -8,6 +8,7 @@ const express = require('express'); const { createProxyMiddleware, responseInterceptor } = require('../../dist'); // require('http-proxy-middleware'); // test with double-byte characters +// cSpell:ignore Kroket, ส้มตำไทย, चिकन const favoriteFoods = [ { country: 'NL', diff --git a/examples/websocket/index.html b/examples/websocket/index.html index bad58edf..38674154 100644 --- a/examples/websocket/index.html +++ b/examples/websocket/index.html @@ -93,7 +93,7 @@

WebSocket demo

log('DISCONNECTED'); }); socket.addEventListener('error', () => { - log('SOCKET ERROR OCCURED'); + log('SOCKET ERROR OCCURRED'); }); socket.addEventListener('message', (msg) => { log('RECEIVED:' + msg.data); diff --git a/package.json b/package.json index ce91f1c3..e9802d6a 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,8 @@ "precoverage": "yarn build", "coverage": "jest --coverage --coverageReporters=lcov", "prepare": "husky install", - "prepack": "yarn build && rm dist/tsconfig.tsbuildinfo" + "prepack": "yarn build && rm dist/tsconfig.tsbuildinfo", + "spellcheck": "npx --yes cspell --show-context --show-suggestions '**/*.*'" }, "repository": { "type": "git", diff --git a/recipes/async-response.md b/recipes/async-response.md index 9526fc36..c134c374 100644 --- a/recipes/async-response.md +++ b/recipes/async-response.md @@ -50,7 +50,7 @@ const myProxy = createProxyMiddleware({ selfHandleResponse: true, onProxyReq: (proxyReq, req, res) => { // before - // get something async from entry middlware before the proxy kicks in + // get something async from entry middleware before the proxy kicks in console.log('proxyReq:', req.locals.da); proxyReq.setHeader('mpth-1', req.locals.da); diff --git a/recipes/logLevel.md b/recipes/logLevel.md index c6285c16..32b776c0 100644 --- a/recipes/logLevel.md +++ b/recipes/logLevel.md @@ -12,7 +12,7 @@ Possible values: ## Level: debug -Log everyting. +Log everything. ```javascript const { createProxyMiddleware } = require('http-proxy-middleware'); diff --git a/recipes/logProvider.md b/recipes/logProvider.md index d3df990a..3cc84953 100644 --- a/recipes/logProvider.md +++ b/recipes/logProvider.md @@ -60,7 +60,7 @@ const logProvider = function (provider) { const logger = new winston.Logger({ transports: [ new winston.transports.Console(), - new winston.transports.File({ filename: 'somefile.log' }), + new winston.transports.File({ filename: 'some-file.log' }), ], }); diff --git a/recipes/modify-post.md b/recipes/modify-post.md index 6cdf7030..0d2c9226 100644 --- a/recipes/modify-post.md +++ b/recipes/modify-post.md @@ -44,8 +44,8 @@ const proxy_options = { let body = new Object(); body.filename = 'reports/statistics/summary_2016.pdf'; - body.routeid = 's003b012d002'; - body.authid = 'bac02c1d-258a-4177-9da6-862580154960'; + body.routeId = 's003b012d002'; + body.authId = 'bac02c1d-258a-4177-9da6-862580154960'; // URI encode JSON object body = Object.keys(body) diff --git a/recipes/response-interceptor.md b/recipes/response-interceptor.md index 5c1c99b5..1507dbf5 100644 --- a/recipes/response-interceptor.md +++ b/recipes/response-interceptor.md @@ -99,7 +99,7 @@ Some working examples on /[relative wikimedia _You can just use any relative image path from and use the relative image path on to see the manipulated image._ ```javascript -const Jimp = require('jimp'); // use jimp libray for image manipulation +const Jimp = require('jimp'); // use jimp library for image manipulation const proxy = createProxyMiddleware({ target: 'https://upload.wikimedia.org', diff --git a/test/e2e/websocket.spec.ts b/test/e2e/websocket.spec.ts index bb80b166..ad946d4a 100644 --- a/test/e2e/websocket.spec.ts +++ b/test/e2e/websocket.spec.ts @@ -125,6 +125,7 @@ describe('E2E WebSocket proxy', () => { beforeEach(() => { // override proxyServer = createApp( + // cSpell:ignore notworkinghost createProxyMiddleware('ws://notworkinghost:6789', { router: { '/socket': `ws://localhost:${WS_SERVER_PORT}` }, pathRewrite: { '^/socket': '' }, diff --git a/test/unit/response-interceptor.spec.ts b/test/unit/response-interceptor.spec.ts index 09bfc548..03ec9567 100644 --- a/test/unit/response-interceptor.spec.ts +++ b/test/unit/response-interceptor.spec.ts @@ -52,12 +52,10 @@ describe('responseInterceptor', () => { response ); - httpIncomingMessage.emit('error', new Error('some error meessage')); + httpIncomingMessage.emit('error', new Error('some error message')); expect(response.setHeader).not.toHaveBeenCalled(); expect(response.write).not.toHaveBeenCalled(); - expect(response.end).toHaveBeenCalledWith( - 'Error fetching proxied request: some error meessage' - ); + expect(response.end).toHaveBeenCalledWith('Error fetching proxied request: some error message'); }); }); diff --git a/test/unit/router.spec.ts b/test/unit/router.spec.ts index fa554f71..1b1f0fc6 100644 --- a/test/unit/router.spec.ts +++ b/test/unit/router.spec.ts @@ -144,7 +144,7 @@ describe('router unit test', () => { }); it('should target http://localhost:6000 path in not present in router config', () => { - fakeReq.url = '/unknow-path'; + fakeReq.url = '/unknown-path'; result = getTarget(fakeReq, proxyOptionWithRouter); return expect(result).resolves.toBeUndefined(); }); From e2b4e30359295e4e49fcf7efb1b10ea89f435754 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 22 Jan 2022 14:08:52 +0100 Subject: [PATCH 51/77] chore: fix github templates (#697) * fix(github): fix bug template * fix(github): remove feature label --- .github/ISSUE_TEMPLATE/bug.yml | 2 +- .github/ISSUE_TEMPLATE/feature.yml | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 9158c3ed..a8c16b0a 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -1,6 +1,5 @@ name: Bug Report description: 'Create a report to help us improve' -labels: bug body: - type: markdown attributes: @@ -13,6 +12,7 @@ body: required: true - type: checkboxes attributes: + label: Checks description: Please verify that you've followed these steps. options: - label: I understand project setup issues should be asked on [StackOverflow](https://stackoverflow.com/questions/tagged/http-proxy-middleware) or in [GitHub Discussions](https://github.com/chimurai/http-proxy-middleware/discussions). diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml index 4ea89268..a8683707 100644 --- a/.github/ISSUE_TEMPLATE/feature.yml +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -1,6 +1,5 @@ name: Feature Request description: 'Suggest an idea for this project' -labels: feature body: - type: textarea attributes: From 1e91fd34bd7337c367523386378898f55f4947eb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 22 Jan 2022 14:45:01 +0100 Subject: [PATCH 52/77] chore(github): bug template improvements (#698) --- .github/ISSUE_TEMPLATE/bug.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index a8c16b0a..90f1b41b 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -4,12 +4,6 @@ body: - type: markdown attributes: value: 'Please note your issue will be closed without comment if do not fill out the issue checklist and provide ALL the requested information.' - - type: textarea - attributes: - render: shell - label: '`yarn why http-proxy-middleware` OR `npm ls http-proxy-middleware` output (mask private folder names with *****)' - validations: - required: true - type: checkboxes attributes: label: Checks @@ -24,12 +18,10 @@ body: label: 'Describe the bug (be clear and concise)' validations: required: true - - type: markdown - attributes: - value: 'If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1' - type: textarea attributes: label: 'Step-by-step reproduction instructions' + description: 'If possible, please provide minimal example to demonstrate the issue. Create a minimal Github project or use the CodeSandbox template: https://codesandbox.io/s/http-proxy-middleware-44oc1' value: | 1. ... 2. ... @@ -39,24 +31,32 @@ body: - type: textarea attributes: label: 'Expected behavior (be clear and concise)' - placeholder: Tell us in a clear and concise description of what you expected to happen. + description: Tell us in a clear and concise description of what you expected to happen. + validations: + required: true + - type: textarea + attributes: + render: shell + label: 'How is http-proxy-middleware used in your project?' + description: '`yarn why http-proxy-middleware` OR `npm ls http-proxy-middleware` output (mask private folder names with *****)' validations: required: true - type: textarea attributes: render: typescript label: 'What http-proxy-middleware configuration are you using?' - placeholder: 'Paste your http-proxy configuration here...' + description: 'Paste your http-proxy configuration here...' validations: required: true - type: textarea attributes: render: shell label: 'What OS/version and node/version are you seeing the problem?' + description: 'Paste the output of `npx envinfo`' placeholder: 'ie. MacOS 11.4 and Node 16.2.0' validations: required: true - type: textarea attributes: label: 'Additional context (optional)' - placeholder: 'Please add any addition information that might help the investigation' + description: 'Please add any addition information that might help the investigation' From aaa15a9874b81bcfdfe98cf222f5324a2e756eb0 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 22 Jan 2022 18:43:14 +0100 Subject: [PATCH 53/77] chore(package): bump dev dependencies (#699) --- package.json | 28 +- yarn.lock | 1417 +++++++++++++++++++++++++++++++------------------- 2 files changed, 895 insertions(+), 550 deletions(-) diff --git a/package.json b/package.json index e9802d6a..7e79cb2f 100644 --- a/package.json +++ b/package.json @@ -53,35 +53,35 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "15.0.0", - "@commitlint/config-conventional": "15.0.0", + "@commitlint/cli": "16.1.0", + "@commitlint/config-conventional": "16.0.0", "@types/express": "4.17.13", "@types/is-glob": "4.0.2", - "@types/jest": "27.0.3", + "@types/jest": "27.4.0", "@types/micromatch": "4.0.2", - "@types/node": "17.0.0", + "@types/node": "17.0.10", "@types/supertest": "2.0.11", "@types/ws": "8.2.2", - "@typescript-eslint/eslint-plugin": "5.7.0", - "@typescript-eslint/parser": "5.7.0", + "@typescript-eslint/eslint-plugin": "5.10.0", + "@typescript-eslint/parser": "5.10.0", "body-parser": "1.19.1", "browser-sync": "2.27.7", "connect": "3.7.0", - "eslint": "8.5.0", + "eslint": "8.7.0", "eslint-config-prettier": "8.3.0", "eslint-plugin-prettier": "4.0.0", "express": "4.17.2", "get-port": "5.1.1", "husky": "7.0.4", - "jest": "27.4.5", - "lint-staged": "12.1.3", - "mockttp": "2.4.0", + "jest": "27.4.7", + "lint-staged": "12.2.2", + "mockttp": "2.5.1", "open": "8.4.0", "prettier": "2.5.1", - "supertest": "6.1.6", - "ts-jest": "27.1.2", - "typescript": "4.5.4", - "ws": "8.3.0" + "supertest": "6.2.2", + "ts-jest": "27.1.3", + "typescript": "4.5.5", + "ws": "8.4.2" }, "dependencies": { "@types/http-proxy": "^1.17.5", diff --git a/yarn.lock b/yarn.lock index def6b6c9..ecbb3710 100644 --- a/yarn.lock +++ b/yarn.lock @@ -16,12 +16,24 @@ dependencies: "@babel/highlight" "^7.16.0" +"@babel/code-frame@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" + integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== + dependencies: + "@babel/highlight" "^7.16.7" + "@babel/compat-data@^7.16.0": version "7.16.4" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.4.tgz#081d6bbc336ec5c2435c6346b2ae1fb98b5ac68e" integrity sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q== -"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2", "@babel/core@^7.7.5": +"@babel/compat-data@^7.16.4": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.8.tgz#31560f9f29fdf1868de8cb55049538a1b9732a60" + integrity sha512-m7OkX0IdKLKPpBlJtF561YJal5y/jyI5fNfWbPxh2D/nbzzGI4qRyrD8xO2jB24u7l+5I2a43scCG2IrfjC50Q== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.2": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.5.tgz#924aa9e1ae56e1e55f7184c8bf073a50d8677f5c" integrity sha512-wUcenlLzuWMZ9Zt8S0KmFwGlH6QKRh3vsm/dhDA3CHkiTA45YuG1XkHRcNRl73EFPXDp/d5kVOU0/y7x2w6OaQ== @@ -42,6 +54,27 @@ semver "^6.3.0" source-map "^0.5.0" +"@babel/core@^7.8.0": + version "7.16.12" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.12.tgz#5edc53c1b71e54881315923ae2aedea2522bb784" + integrity sha512-dK5PtG1uiN2ikk++5OzSYsitZKny4wOCD0nrO4TqnW4BVBTQ2NGS3NgilvT/TEyxTST7LNyWV/T4tXDoD3fOgg== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.16.8" + "@babel/helper-compilation-targets" "^7.16.7" + "@babel/helper-module-transforms" "^7.16.7" + "@babel/helpers" "^7.16.7" + "@babel/parser" "^7.16.12" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.10" + "@babel/types" "^7.16.8" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + semver "^6.3.0" + source-map "^0.5.0" + "@babel/generator@^7.16.5", "@babel/generator@^7.7.2": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.5.tgz#26e1192eb8f78e0a3acaf3eede3c6fc96d22bedf" @@ -51,6 +84,15 @@ jsesc "^2.5.1" source-map "^0.5.0" +"@babel/generator@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.8.tgz#359d44d966b8cd059d543250ce79596f792f2ebe" + integrity sha512-1ojZwE9+lOXzcWdWmO6TbUzDfqLD39CmEhN8+2cX9XkDo5yW1OpgfejfliysR2AWLpMamTiOiAp/mtroaymhpw== + dependencies: + "@babel/types" "^7.16.8" + jsesc "^2.5.1" + source-map "^0.5.0" + "@babel/helper-compilation-targets@^7.16.3": version "7.16.3" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0" @@ -61,6 +103,16 @@ browserslist "^4.17.5" semver "^6.3.0" +"@babel/helper-compilation-targets@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz#06e66c5f299601e6c7da350049315e83209d551b" + integrity sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA== + dependencies: + "@babel/compat-data" "^7.16.4" + "@babel/helper-validator-option" "^7.16.7" + browserslist "^4.17.5" + semver "^6.3.0" + "@babel/helper-environment-visitor@^7.16.5": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.5.tgz#f6a7f38b3c6d8b07c88faea083c46c09ef5451b8" @@ -68,6 +120,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-environment-visitor@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" + integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-function-name@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481" @@ -77,6 +136,15 @@ "@babel/template" "^7.16.0" "@babel/types" "^7.16.0" +"@babel/helper-function-name@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" + integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== + dependencies: + "@babel/helper-get-function-arity" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-get-function-arity@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" @@ -84,6 +152,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-get-function-arity@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" + integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-hoist-variables@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" @@ -91,6 +166,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-hoist-variables@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" + integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-module-imports@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" @@ -98,6 +180,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-module-imports@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" + integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-module-transforms@^7.16.5": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.5.tgz#530ebf6ea87b500f60840578515adda2af470a29" @@ -112,6 +201,20 @@ "@babel/traverse" "^7.16.5" "@babel/types" "^7.16.0" +"@babel/helper-module-transforms@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz#7665faeb721a01ca5327ddc6bba15a5cb34b6a41" + integrity sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng== + dependencies: + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-module-imports" "^7.16.7" + "@babel/helper-simple-access" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/helper-validator-identifier" "^7.16.7" + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.5", "@babel/helper-plugin-utils@^7.8.0": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.5.tgz#afe37a45f39fce44a3d50a7958129ea5b1a5c074" @@ -124,6 +227,13 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-simple-access@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz#d656654b9ea08dbb9659b69d61063ccd343ff0f7" + integrity sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-split-export-declaration@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438" @@ -131,16 +241,33 @@ dependencies: "@babel/types" "^7.16.0" +"@babel/helper-split-export-declaration@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" + integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== + dependencies: + "@babel/types" "^7.16.7" + "@babel/helper-validator-identifier@^7.15.7": version "7.15.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== +"@babel/helper-validator-identifier@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" + integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== + "@babel/helper-validator-option@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== +"@babel/helper-validator-option@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" + integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ== + "@babel/helpers@^7.16.5": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.5.tgz#29a052d4b827846dd76ece16f565b9634c554ebd" @@ -150,6 +277,15 @@ "@babel/traverse" "^7.16.5" "@babel/types" "^7.16.0" +"@babel/helpers@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.7.tgz#7e3504d708d50344112767c3542fc5e357fffefc" + integrity sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw== + dependencies: + "@babel/template" "^7.16.7" + "@babel/traverse" "^7.16.7" + "@babel/types" "^7.16.7" + "@babel/highlight@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" @@ -159,11 +295,25 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.0", "@babel/parser@^7.16.5", "@babel/parser@^7.7.2": +"@babel/highlight@^7.16.7": + version "7.16.10" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" + integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.0", "@babel/parser@^7.16.5": version "7.16.6" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.6.tgz#8f194828193e8fa79166f34a4b4e52f3e769a314" integrity sha512-Gr86ujcNuPDnNOY8mi383Hvi8IYrJVJYuf3XcuBM/Dgd+bINn/7tHqsj+tKkoreMbmGsFLsltI/JJd8fOFWGDQ== +"@babel/parser@^7.16.10", "@babel/parser@^7.16.12", "@babel/parser@^7.16.7": + version "7.16.12" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.12.tgz#9474794f9a650cf5e2f892444227f98e28cdf8b6" + integrity sha512-VfaV15po8RiZssrkPweyvbGVSe4x2y+aciFCgn0n0/SJMR22cwofRV1mtnJQYcSB1wUTaA/X1LnA3es66MCO5A== + "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" @@ -264,7 +414,32 @@ "@babel/parser" "^7.16.0" "@babel/types" "^7.16.0" -"@babel/traverse@^7.1.0", "@babel/traverse@^7.16.5", "@babel/traverse@^7.7.2": +"@babel/template@^7.16.7": + version "7.16.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" + integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/parser" "^7.16.7" + "@babel/types" "^7.16.7" + +"@babel/traverse@^7.16.10", "@babel/traverse@^7.16.7": + version "7.16.10" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.10.tgz#448f940defbe95b5a8029975b051f75993e8239f" + integrity sha512-yzuaYXoRJBGMlBhsMJoUW7G1UmSb/eXr/JHYM/MsOJgavJibLwASijW7oXBdw3NQ6T0bW7Ty5P/VarOs9cHmqw== + dependencies: + "@babel/code-frame" "^7.16.7" + "@babel/generator" "^7.16.8" + "@babel/helper-environment-visitor" "^7.16.7" + "@babel/helper-function-name" "^7.16.7" + "@babel/helper-hoist-variables" "^7.16.7" + "@babel/helper-split-export-declaration" "^7.16.7" + "@babel/parser" "^7.16.10" + "@babel/types" "^7.16.8" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/traverse@^7.16.5", "@babel/traverse@^7.7.2": version "7.16.5" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.5.tgz#d7d400a8229c714a59b87624fc67b0f1fbd4b2b3" integrity sha512-FOCODAzqUMROikDYLYxl4nmwiLlu85rNqBML/A5hKRVXG2LV8d0iMqgPzdYTcIpjZEBB7D6UDU9vxRZiriASdQ== @@ -288,160 +463,181 @@ "@babel/helper-validator-identifier" "^7.15.7" to-fast-properties "^2.0.0" +"@babel/types@^7.16.7", "@babel/types@^7.16.8": + version "7.16.8" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.8.tgz#0ba5da91dd71e0a4e7781a30f22770831062e3c1" + integrity sha512-smN2DQc5s4M7fntyjGtyIPbRJv6wW4rU/94fmYJ7PKQuZkC0qGMHXJbg6sNGt12JmVr4k5YaptI/XtiLJBnmIg== + dependencies: + "@babel/helper-validator-identifier" "^7.16.7" + to-fast-properties "^2.0.0" + "@bcoe/v8-coverage@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-15.0.0.tgz#8e78e86ee2b6955c1a5d140e734a6c171ce367ee" - integrity sha512-Y5xmDCweytqzo4N4lOI2YRiuX35xTjcs8n5hUceBH8eyK0YbwtgWX50BJOH2XbkwEmII9blNhlBog6AdQsqicg== +"@commitlint/cli@16.1.0": + version "16.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-16.1.0.tgz#022ad86008374b02974c9f3faf86affb785f4574" + integrity sha512-x5L1knvA3isRWBRVQx+Q6D45pA9139a2aZQYpxkljMG0dj4UHZkCnsYWpnGalxPxASI7nrI0KedKfS2YeQ55cQ== dependencies: - "@commitlint/format" "^15.0.0" - "@commitlint/lint" "^15.0.0" - "@commitlint/load" "^15.0.0" - "@commitlint/read" "^15.0.0" - "@commitlint/types" "^15.0.0" + "@commitlint/format" "^16.0.0" + "@commitlint/lint" "^16.0.0" + "@commitlint/load" "^16.1.0" + "@commitlint/read" "^16.0.0" + "@commitlint/types" "^16.0.0" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^17.0.0" -"@commitlint/config-conventional@15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-15.0.0.tgz#3bf1adf319e3b431de12ba82dc399524038b2d8f" - integrity sha512-eZBRL8Lk3hMNHp1wUMYj0qrZQEsST1ai7KHR8J1IDD9aHgT7L2giciibuQ+Og7vxVhR5WtYDvh9xirXFVPaSkQ== +"@commitlint/config-conventional@16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-16.0.0.tgz#f42d9e1959416b5e691c8b5248fc2402adb1fc03" + integrity sha512-mN7J8KlKFn0kROd+q9PB01sfDx/8K/R25yITspL1No8PB4oj9M1p77xWjP80hPydqZG9OvQq+anXK3ZWeR7s3g== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/ensure@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-15.0.0.tgz#06a63738e2393970a085b428e6cf80fa1fe76f48" - integrity sha512-7DV4iNIald3vycwaWBNGk5FbonaNzOlU8nBe5m5AgU2dIeNKuXwLm+zzJzG27j0Ho56rgz//3F6RIvmsoxY9ZA== +"@commitlint/config-validator@^16.1.0": + version "16.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-16.1.0.tgz#410979f713ed55cbb85504d46295c1fd2419dc4d" + integrity sha512-2cHeZPNTuf1JWbMqyA46MkExor5HMSgv8JrdmzEakUbJHUreh35/wN00FJf57qGs134exQW2thiSQ1IJUsVx2Q== dependencies: - "@commitlint/types" "^15.0.0" + "@commitlint/types" "^16.0.0" + ajv "^6.12.6" + +"@commitlint/ensure@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-16.0.0.tgz#fdac1e60a944a1993deb33b5e8454c559abe9866" + integrity sha512-WdMySU8DCTaq3JPf0tZFCKIUhqxaL54mjduNhu8v4D2AMUVIIQKYMGyvXn94k8begeW6iJkTf9cXBArayskE7Q== + dependencies: + "@commitlint/types" "^16.0.0" lodash "^4.17.19" -"@commitlint/execute-rule@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-15.0.0.tgz#6bff7962df38e89ff9fdbc00abd79b8849c7e9f9" - integrity sha512-pyE4ApxjbWhb1TXz5vRiGwI2ssdMMgZbaaheZq1/7WC0xRnqnIhE1yUC1D2q20qPtvkZPstTYvMiRVtF+DvjUg== +"@commitlint/execute-rule@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-16.0.0.tgz#824e11ba5b208c214a474ae52a51780d32d31ebc" + integrity sha512-8edcCibmBb386x5JTHSPHINwA5L0xPkHQFY8TAuDEt5QyRZY/o5DF8OPHSa5Hx2xJvGaxxuIz4UtAT6IiRDYkw== -"@commitlint/format@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-15.0.0.tgz#10935180913de9384bea4c9217f4c6c5ee100ab3" - integrity sha512-bPhAfqwRhPk92WiuY0ktEJNpRRHSCd+Eg1MdhGyL9Bl3U25E5zvuInA+dNctnzZiOBSH/37ZaD0eOKCpQE6acg== +"@commitlint/format@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-16.0.0.tgz#6a6fb2c1e6460aff63cc6eca30a7807a96b0ce73" + integrity sha512-9yp5NCquXL1jVMKL0ZkRwJf/UHdebvCcMvICuZV00NQGYSAL89O398nhqrqxlbjBhM5EZVq0VGcV5+7r3D4zAA== dependencies: - "@commitlint/types" "^15.0.0" + "@commitlint/types" "^16.0.0" chalk "^4.0.0" -"@commitlint/is-ignored@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-15.0.0.tgz#382bf9f6f8d810f2ffc59ccc527f4389eadd7949" - integrity sha512-edtnkf2QZ/7e/YCJDgn1WDw9wfF1WfOitW5YEoSOb4SxjJEb/oE87kxNPZ2j8mnDMuunspcMfGHeg6fRlwaEWg== +"@commitlint/is-ignored@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-16.0.0.tgz#5ab4c4a9c7444c1a8540f50a0f1a907dfd78eb70" + integrity sha512-gmAQcwIGC/R/Lp0CEb2b5bfGC7MT5rPe09N8kOGjO/NcdNmfFSZMquwrvNJsq9hnAP0skRdHIsqwlkENkN4Lag== dependencies: - "@commitlint/types" "^15.0.0" + "@commitlint/types" "^16.0.0" semver "7.3.5" -"@commitlint/lint@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-15.0.0.tgz#a93b8896fb25b05ab2ed0246d365f4908654588d" - integrity sha512-hUi2+Im/2dJ5FBvWnodypTkg+5haCgsDzB0fyMApWLUA1IucYUAqRCQCW5em1Mhk9Crw1pd5YzFNikhIclkqCw== - dependencies: - "@commitlint/is-ignored" "^15.0.0" - "@commitlint/parse" "^15.0.0" - "@commitlint/rules" "^15.0.0" - "@commitlint/types" "^15.0.0" - -"@commitlint/load@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-15.0.0.tgz#5bd391c1387aafe92b54cf2a86b76a5228fcf4ef" - integrity sha512-Ak1YPeOhvxmY3ioe0o6m1yLGvUAYb4BdfGgShU8jiTCmU3Mnmms0Xh/kfQz8AybhezCC3AmVTyBLaBZxOHR8kg== - dependencies: - "@commitlint/execute-rule" "^15.0.0" - "@commitlint/resolve-extends" "^15.0.0" - "@commitlint/types" "^15.0.0" - "@endemolshinegroup/cosmiconfig-typescript-loader" "^3.0.2" +"@commitlint/lint@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-16.0.0.tgz#87151a935941073027907fd4752a2e3c83cebbfe" + integrity sha512-HNl15bRC0h+pLzbMzQC3tM0j1aESXsLYhElqKnXcf5mnCBkBkHzu6WwJW8rZbfxX+YwJmNljN62cPhmdBo8x0A== + dependencies: + "@commitlint/is-ignored" "^16.0.0" + "@commitlint/parse" "^16.0.0" + "@commitlint/rules" "^16.0.0" + "@commitlint/types" "^16.0.0" + +"@commitlint/load@^16.1.0": + version "16.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-16.1.0.tgz#7a884072ab915611080c5e99a1f1d999c05f4360" + integrity sha512-MtlEhKjP8jAF85jjX4mw8DUUwCxKsCgAc865hhpnwxjrfBcmGP7Up2AFE/M3ZMGDmSl1X1TMybQk/zohj8Cqdg== + dependencies: + "@commitlint/config-validator" "^16.1.0" + "@commitlint/execute-rule" "^16.0.0" + "@commitlint/resolve-extends" "^16.1.0" + "@commitlint/types" "^16.0.0" chalk "^4.0.0" cosmiconfig "^7.0.0" + cosmiconfig-typescript-loader "^1.0.0" lodash "^4.17.19" resolve-from "^5.0.0" typescript "^4.4.3" -"@commitlint/message@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-15.0.0.tgz#98a38aca1b3cd996a0fcdbd9ad67e9039df60b0a" - integrity sha512-L8euabzboKavPuDJsdIYAY2wx97LbiGEYsckMo6NmV8pOun50c8hQx6ouXFSAx4pp+mX9yUGmMiVqfrk2LKDJQ== +"@commitlint/message@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-16.0.0.tgz#4a467341fc6bc49e5a3ead005dd6aa36fa856b87" + integrity sha512-CmK2074SH1Ws6kFMEKOKH/7hMekGVbOD6vb4alCOo2+33ZSLUIX8iNkDYyrw38Jwg6yWUhLjyQLUxREeV+QIUA== -"@commitlint/parse@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-15.0.0.tgz#cac77b7514748b8d01d00c0e67d5e54c695c302c" - integrity sha512-7fweM67tZfBNS7zw1KTuuT5K2u9nGytUJqFqT/1Ln3Na9cBCsoAqR47mfsNOTlRCgGwakm4xiQ7BpS2gN0OGuw== +"@commitlint/parse@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-16.0.0.tgz#5ce05af14edff806effc702ba910fcb32fcb192a" + integrity sha512-F9EjFlMw4MYgBEqoRrWZZKQBzdiJzPBI0qFDFqwUvfQsMmXEREZ242T4R5bFwLINWaALFLHEIa/FXEPa6QxCag== dependencies: - "@commitlint/types" "^15.0.0" + "@commitlint/types" "^16.0.0" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.2.2" -"@commitlint/read@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-15.0.0.tgz#da839f3b4d49b05586a9cd2666cc8c4a36b9ec91" - integrity sha512-5yI1o2HKZFVe7RTjL7IhuhHMKar/MDNY34vEHqqz9gMI7BK/rdP8uVb4Di1efl2V0UPnwID0nPKWESjQ8Ti0gw== +"@commitlint/read@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-16.0.0.tgz#92fab45d4e0e4d7d049427306500270b3e459221" + integrity sha512-H4T2zsfmYQK9B+JtoQaCXWBHUhgIJyOzWZjSfuIV9Ce69/OgHoffNpLZPF2lX6yKuDrS1SQFhI/kUCjVc/e4ew== dependencies: - "@commitlint/top-level" "^15.0.0" - "@commitlint/types" "^15.0.0" + "@commitlint/top-level" "^16.0.0" + "@commitlint/types" "^16.0.0" fs-extra "^10.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-15.0.0.tgz#baf21227e2ac52cef546ec35dd6732e9b0b6e57c" - integrity sha512-7apfRJjgJsKja7lHsPfEFixKjA/fk/UeD3owkOw1174yYu4u8xBDLSeU3IinGPdMuF9m245eX8wo7vLUy+EBSg== +"@commitlint/resolve-extends@^16.1.0": + version "16.1.0" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-16.1.0.tgz#4b199197c45ddb436b59ef319662de6870f68fd5" + integrity sha512-8182s6AFoUFX6+FT1PgQDt15nO2ogdR/EN8SYVAdhNXw1rLz8kT5saB/ICw567GuRAUgFTUMGCXy3ctMOXPEDg== dependencies: + "@commitlint/config-validator" "^16.1.0" + "@commitlint/types" "^16.0.0" import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-15.0.0.tgz#326370abc004492fcb5543198d1d55b14e25e3c8" - integrity sha512-SqXfp6QUlwBS+0IZm4FEA/NmmAwcFQIkG3B05BtemOVWXQdZ8j1vV6hDwvA9oMPCmUSrrGpHOtZK7HaHhng2yA== +"@commitlint/rules@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-16.0.0.tgz#79d28c3678d2d1f7f1cdbedaedb30b01a86ee75b" + integrity sha512-AOl0y2SBTdJ1bvIv8nwHvQKRT/jC1xb09C5VZwzHoT8sE8F54KDeEzPCwHQFgUcWdGLyS10kkOTAH2MyA8EIlg== dependencies: - "@commitlint/ensure" "^15.0.0" - "@commitlint/message" "^15.0.0" - "@commitlint/to-lines" "^15.0.0" - "@commitlint/types" "^15.0.0" + "@commitlint/ensure" "^16.0.0" + "@commitlint/message" "^16.0.0" + "@commitlint/to-lines" "^16.0.0" + "@commitlint/types" "^16.0.0" execa "^5.0.0" -"@commitlint/to-lines@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-15.0.0.tgz#b86ac98f319688990ecc2e09227fadf591b65c92" - integrity sha512-mY3MNA9ujPqVpiJjTYG9MDsYCobue5PJFO0MfcIzS1mCVvngH8ZFTPAh1fT5t+t1h876boS88+9WgqjRvbYItw== +"@commitlint/to-lines@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-16.0.0.tgz#799980a89072302445baf595e20092fb86f0a58a" + integrity sha512-iN/qU38TCKU7uKOg6RXLpD49wNiuI0TqMqybHbjefUeP/Jmzxa8ishryj0uLyVdrAl1ZjGeD1ukXGMTtvqz8iA== -"@commitlint/top-level@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-15.0.0.tgz#467ec8377e81dfc916e1a20a27558862be1a4254" - integrity sha512-7Gz3t7xcuuUw1d1Nou6YLaztzp2Em+qZ6YdCzrqYc+aquca3Vt0O696nuiBDU/oE+tls4Hx2CNpAbWhTgEwB5A== +"@commitlint/top-level@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-16.0.0.tgz#7c2efc33cc37df839b3de558c0bc2eaddb64efe6" + integrity sha512-/Jt6NLxyFkpjL5O0jxurZPCHURZAm7cQCqikgPCwqPAH0TLgwqdHjnYipl8J+AGnAMGDip4FNLoYrtgIpZGBYw== dependencies: find-up "^5.0.0" -"@commitlint/types@^15.0.0": - version "15.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-15.0.0.tgz#46fa7bda3e6340caf3e3a2e415bcb78ff0195eed" - integrity sha512-OMSLX+QJnyNoTwws54ULv9sOvuw9GdVezln76oyUd4YbMMJyaav62aSXDuCdWyL2sm9hTkSzyEi52PNaIj/vqw== +"@commitlint/types@^16.0.0": + version "16.0.0" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-16.0.0.tgz#3c133f106d36132756c464071a7f2290966727a3" + integrity sha512-+0FvYOAS39bJ4aKjnYn/7FD4DfWkmQ6G/06I4F0Gvu4KS5twirEg8mIcLhmeRDOOKn4Tp8PwpLwBiSA6npEMQA== dependencies: chalk "^4.0.0" -"@endemolshinegroup/cosmiconfig-typescript-loader@^3.0.2": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz#eea4635828dde372838b0909693ebd9aafeec22d" - integrity sha512-QRVtqJuS1mcT56oHpVegkKBlgtWjXw/gHNWO3eL9oyB5Sc7HBoc2OLG/nYpVfT/Jejvo3NUrD0Udk7XgoyDKkA== +"@cspotcode/source-map-consumer@0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b" + integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg== + +"@cspotcode/source-map-support@0.7.0": + version "0.7.0" + resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5" + integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA== dependencies: - lodash.get "^4" - make-error "^1" - ts-node "^9" - tslib "^2" + "@cspotcode/source-map-consumer" "0.8.0" "@eslint/eslintrc@^1.0.5": version "1.0.5" @@ -476,10 +672,10 @@ camel-case "4.1.2" tslib "~2.2.0" -"@httptoolkit/httpolyglot@^1.0.0": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@httptoolkit/httpolyglot/-/httpolyglot-1.0.1.tgz#2ade7c70fecc8473f8f55d95defea99bf444a81b" - integrity sha512-wka8aO36+Ldb4d0V7fpKf4gd9netRa1odekK5BQnsJa3BwkKSIqOYlR51ZfoaGjifwx2WBTRQgHgtcc1wY1eEg== +"@httptoolkit/httpolyglot@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@httptoolkit/httpolyglot/-/httpolyglot-2.0.1.tgz#1ee1c7f86b82adca7b7a5f7bf001181166c8b56f" + integrity sha512-xhz5ilhpQfEeLTKJMQmlUbvuS7yeFrF5u0M5zUDNpBWu/QMHrnBRxIfqRSV8phJThOpo1DBXuBld6qF07UFk4g== dependencies: "@types/node" "^16.7.10" @@ -561,27 +757,27 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.2.tgz#7a95612d38c007ddb528ee446fe5e5e785e685ce" - integrity sha512-xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg== +"@jest/console@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.6.tgz#0742e6787f682b22bdad56f9db2a8a77f6a86107" + integrity sha512-jauXyacQD33n47A44KrlOVeiXHEXDqapSdfb9kTekOchH/Pd18kBIO1+xxJQRLuG+LUuljFCwTG92ra4NW7SpA== dependencies: "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.4.2" + jest-message-util "^27.4.6" jest-util "^27.4.2" slash "^3.0.0" -"@jest/core@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.5.tgz#cae2dc34259782f4866c6606c3b480cce920ed4c" - integrity sha512-3tm/Pevmi8bDsgvo73nX8p/WPng6KWlCyScW10FPEoN1HU4pwI83tJ3TsFvi1FfzsjwUlMNEPowgb/rPau/LTQ== +"@jest/core@^27.4.7": + version "27.4.7" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.7.tgz#84eabdf42a25f1fa138272ed229bcf0a1b5e6913" + integrity sha512-n181PurSJkVMS+kClIFSX/LLvw9ExSb+4IMtD6YnfxZVerw9ANYtW0bPrm0MJu2pfe9SY9FJ9FtQ+MdZkrZwjg== dependencies: - "@jest/console" "^27.4.2" - "@jest/reporters" "^27.4.5" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" + "@jest/console" "^27.4.6" + "@jest/reporters" "^27.4.6" + "@jest/test-result" "^27.4.6" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" ansi-escapes "^4.2.1" @@ -590,63 +786,63 @@ exit "^0.1.2" graceful-fs "^4.2.4" jest-changed-files "^27.4.2" - jest-config "^27.4.5" - jest-haste-map "^27.4.5" - jest-message-util "^27.4.2" + jest-config "^27.4.7" + jest-haste-map "^27.4.6" + jest-message-util "^27.4.6" jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-resolve-dependencies "^27.4.5" - jest-runner "^27.4.5" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" + jest-resolve "^27.4.6" + jest-resolve-dependencies "^27.4.6" + jest-runner "^27.4.6" + jest-runtime "^27.4.6" + jest-snapshot "^27.4.6" jest-util "^27.4.2" - jest-validate "^27.4.2" - jest-watcher "^27.4.2" + jest-validate "^27.4.6" + jest-watcher "^27.4.6" micromatch "^4.0.4" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.4.4": - version "27.4.4" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.4.tgz#66ebebc79673d84aad29d2bb70a8c51e6c29bb4d" - integrity sha512-q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ== +"@jest/environment@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.6.tgz#1e92885d64f48c8454df35ed9779fbcf31c56d8b" + integrity sha512-E6t+RXPfATEEGVidr84WngLNWZ8ffCPky8RqqRK6u1Bn0LK92INe0MDttyPl/JOzaq92BmDzOeuqk09TvM22Sg== dependencies: - "@jest/fake-timers" "^27.4.2" + "@jest/fake-timers" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.4.2" + jest-mock "^27.4.6" -"@jest/fake-timers@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.2.tgz#d217f86c3ba2027bf29e0b731fd0cb761a72d093" - integrity sha512-f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg== +"@jest/fake-timers@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.6.tgz#e026ae1671316dbd04a56945be2fa251204324e8" + integrity sha512-mfaethuYF8scV8ntPpiVGIHQgS0XIALbpY2jt2l7wb/bvq4Q5pDLk4EP4D7SAvYT1QrPOPVZAtbdGAOOyIgs7A== dependencies: "@jest/types" "^27.4.2" "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.4.2" - jest-mock "^27.4.2" + jest-message-util "^27.4.6" + jest-mock "^27.4.6" jest-util "^27.4.2" -"@jest/globals@^27.4.4": - version "27.4.4" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.4.tgz#fe501a80c23ea2dab585c42be2a519bb5e38530d" - integrity sha512-bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ== +"@jest/globals@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.6.tgz#3f09bed64b0fd7f5f996920258bd4be8f52f060a" + integrity sha512-kAiwMGZ7UxrgPzu8Yv9uvWmXXxsy0GciNejlHvfPIfWkSxChzv6bgTS3YqBkGuHcis+ouMFI2696n2t+XYIeFw== dependencies: - "@jest/environment" "^27.4.4" + "@jest/environment" "^27.4.6" "@jest/types" "^27.4.2" - expect "^27.4.2" + expect "^27.4.6" -"@jest/reporters@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.5.tgz#e229acca48d18ea39e805540c1c322b075ae63ad" - integrity sha512-3orsG4vi8zXuBqEoy2LbnC1kuvkg1KQUgqNxmxpQgIOQEPeV0onvZu+qDQnEoX8qTQErtqn/xzcnbpeTuOLSiA== +"@jest/reporters@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.6.tgz#b53dec3a93baf9b00826abf95b932de919d6d8dd" + integrity sha512-+Zo9gV81R14+PSq4wzee4GC2mhAN9i9a7qgJWL90Gpx7fHYkWpTBvwWNZUXvJByYR9tAVBdc8VxDWqfJyIUrIQ== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.4.2" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" + "@jest/console" "^27.4.6" + "@jest/test-result" "^27.4.6" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" @@ -655,14 +851,14 @@ glob "^7.1.2" graceful-fs "^4.2.4" istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^4.0.3" + istanbul-lib-instrument "^5.1.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.0.2" - jest-haste-map "^27.4.5" - jest-resolve "^27.4.5" + istanbul-reports "^3.1.3" + jest-haste-map "^27.4.6" + jest-resolve "^27.4.6" jest-util "^27.4.2" - jest-worker "^27.4.5" + jest-worker "^27.4.6" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" @@ -678,43 +874,43 @@ graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^27.4.2": - version "27.4.2" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.2.tgz#05fd4a5466ec502f3eae0b39dff2b93ea4d5d9ec" - integrity sha512-kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA== +"@jest/test-result@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.6.tgz#b3df94c3d899c040f602cea296979844f61bdf69" + integrity sha512-fi9IGj3fkOrlMmhQqa/t9xum8jaJOOAi/lZlm6JXSc55rJMXKHxNDN1oCP39B0/DhNOa2OMupF9BcKZnNtXMOQ== dependencies: - "@jest/console" "^27.4.2" + "@jest/console" "^27.4.6" "@jest/types" "^27.4.2" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.5.tgz#1d7e026844d343b60d2ca7fd82c579a17b445d7d" - integrity sha512-n5woIn/1v+FT+9hniymHPARA9upYUmfi5Pw9ewVwXCDlK4F5/Gkees9v8vdjGdAIJ2MPHLHodiajLpZZanWzEQ== +"@jest/test-sequencer@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.6.tgz#447339b8a3d7b5436f50934df30854e442a9d904" + integrity sha512-3GL+nsf6E1PsyNsJuvPyIz+DwFuCtBdtvPpm/LMXVkBJbdFvQYCDpccYT56qq5BGniXWlE81n2qk1sdXfZebnw== dependencies: - "@jest/test-result" "^27.4.2" + "@jest/test-result" "^27.4.6" graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" - jest-runtime "^27.4.5" + jest-haste-map "^27.4.6" + jest-runtime "^27.4.6" -"@jest/transform@^27.4.5": - version "27.4.5" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.5.tgz#3dfe2e3680cd4aa27356172bf25617ab5b94f195" - integrity sha512-PuMet2UlZtlGzwc6L+aZmR3I7CEBpqadO03pU40l2RNY2fFJ191b9/ITB44LNOhVtsyykx0OZvj0PCyuLm7Eew== +"@jest/transform@^27.4.6": + version "27.4.6" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.6.tgz#153621940b1ed500305eacdb31105d415dc30231" + integrity sha512-9MsufmJC8t5JTpWEQJ0OcOOAXaH5ioaIX6uHVBLBMoCZPfKKQF+EqP8kACAvCZ0Y1h2Zr3uOccg8re+Dr5jxyw== dependencies: "@babel/core" "^7.1.0" "@jest/types" "^27.4.2" - babel-plugin-istanbul "^6.0.0" + babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" + jest-haste-map "^27.4.6" jest-regex-util "^27.4.0" jest-util "^27.4.2" micromatch "^4.0.4" - pirates "^4.0.1" + pirates "^4.0.4" slash "^3.0.0" source-map "^0.6.1" write-file-atomic "^3.0.0" @@ -770,6 +966,26 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== +"@tsconfig/node10@^1.0.7": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9" + integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg== + +"@tsconfig/node12@^1.0.7": + version "1.0.9" + resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c" + integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw== + +"@tsconfig/node14@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2" + integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg== + +"@tsconfig/node16@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e" + integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA== + "@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": version "7.1.17" resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.17.tgz#f50ac9d20d64153b510578d84f9643f9a3afbe64" @@ -890,10 +1106,10 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@27.0.3": - version "27.0.3" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.0.3.tgz#0cf9dfe9009e467f70a342f0f94ead19842a783a" - integrity sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg== +"@types/jest@27.4.0": + version "27.4.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.4.0.tgz#037ab8b872067cae842a320841693080f9cb84ed" + integrity sha512-gHl8XuC1RZ8H2j5sHv/JqsaxXkDDM9iDOgu0Wp8sjs4u/snb2PVehyWXJPr+ORA0RPpgw231mnutWI1+0hgjIQ== dependencies: jest-diff "^27.0.0" pretty-format "^27.0.0" @@ -920,11 +1136,16 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*", "@types/node@17.0.0": +"@types/node@*": version "17.0.0" resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.0.tgz#62797cee3b8b497f6547503b2312254d4fe3c2bb" integrity sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw== +"@types/node@17.0.10": + version "17.0.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.10.tgz#616f16e9d3a2a3d618136b1be244315d95bd7cab" + integrity sha512-S/3xB4KzyFxYGCppyDt68yzBU9ysL88lSdIah4D6cptdcltc4NCPCAMc0+PCpg/lLIyC7IPvj2Z52OJWeIUkog== + "@types/node@^16.7.10": version "16.11.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae" @@ -1002,13 +1223,14 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.7.0.tgz#12d54709f8ea1da99a01d8a992cd0474ad0f0aa9" - integrity sha512-8RTGBpNn5a9M628wBPrCbJ+v3YTEOE2qeZb7TDkGKTDXSj36KGRg92SpFFaR/0S3rSXQxM0Og/kV9EyadsYSBg== +"@typescript-eslint/eslint-plugin@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.10.0.tgz#e90afea96dff8620892ad216b0e4ccdf8ee32d3a" + integrity sha512-XXVKnMsq2fuu9K2KsIxPUGqb6xAImz8MEChClbXmE3VbveFtBUU5bzM6IPVWqzyADIgdkS2Ws/6Xo7W2TeZWjQ== dependencies: - "@typescript-eslint/experimental-utils" "5.7.0" - "@typescript-eslint/scope-manager" "5.7.0" + "@typescript-eslint/scope-manager" "5.10.0" + "@typescript-eslint/type-utils" "5.10.0" + "@typescript-eslint/utils" "5.10.0" debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -1016,60 +1238,69 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.7.0.tgz#2b1633e6613c3238036156f70c32634843ad034f" - integrity sha512-u57eZ5FbEpzN5kSjmVrSesovWslH2ZyNPnaXQMXWgH57d5+EVHEt76W75vVuI9qKZ5BMDKNfRN+pxcPEjQjb2A== +"@typescript-eslint/parser@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.10.0.tgz#8f59e036f5f1cffc178cacbd5ccdd02aeb96c91c" + integrity sha512-pJB2CCeHWtwOAeIxv8CHVGJhI5FNyJAIpx5Pt72YkK3QfEzt6qAlXZuyaBmyfOdM62qU0rbxJzNToPTVeJGrQw== dependencies: - "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.7.0" - "@typescript-eslint/types" "5.7.0" - "@typescript-eslint/typescript-estree" "5.7.0" - eslint-scope "^5.1.1" - eslint-utils "^3.0.0" + "@typescript-eslint/scope-manager" "5.10.0" + "@typescript-eslint/types" "5.10.0" + "@typescript-eslint/typescript-estree" "5.10.0" + debug "^4.3.2" -"@typescript-eslint/parser@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.7.0.tgz#4dca6de463d86f02d252e681136a67888ea3b181" - integrity sha512-m/gWCCcS4jXw6vkrPQ1BjZ1vomP01PArgzvauBqzsoZ3urLbsRChexB8/YV8z9HwE3qlJM35FxfKZ1nfP/4x8g== +"@typescript-eslint/scope-manager@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.10.0.tgz#bb5d872e8b9e36203908595507fbc4d3105329cb" + integrity sha512-tgNgUgb4MhqK6DoKn3RBhyZ9aJga7EQrw+2/OiDk5hKf3pTVZWyqBi7ukP+Z0iEEDMF5FDa64LqODzlfE4O/Dg== dependencies: - "@typescript-eslint/scope-manager" "5.7.0" - "@typescript-eslint/types" "5.7.0" - "@typescript-eslint/typescript-estree" "5.7.0" - debug "^4.3.2" + "@typescript-eslint/types" "5.10.0" + "@typescript-eslint/visitor-keys" "5.10.0" -"@typescript-eslint/scope-manager@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.7.0.tgz#70adf960e5a58994ad50438ba60d98ecadd79452" - integrity sha512-7mxR520DGq5F7sSSgM0HSSMJ+TFUymOeFRMfUfGFAVBv8BR+Jv1vHgAouYUvWRZeszVBJlLcc9fDdktxb5kmxA== +"@typescript-eslint/type-utils@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.10.0.tgz#8524b9479c19c478347a7df216827e749e4a51e5" + integrity sha512-TzlyTmufJO5V886N+hTJBGIfnjQDQ32rJYxPaeiyWKdjsv2Ld5l8cbS7pxim4DeNs62fKzRSt8Q14Evs4JnZyQ== dependencies: - "@typescript-eslint/types" "5.7.0" - "@typescript-eslint/visitor-keys" "5.7.0" + "@typescript-eslint/utils" "5.10.0" + debug "^4.3.2" + tsutils "^3.21.0" -"@typescript-eslint/types@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.7.0.tgz#2d4cae0105ba7d08bffa69698197a762483ebcbe" - integrity sha512-5AeYIF5p2kAneIpnLFve8g50VyAjq7udM7ApZZ9JYjdPjkz0LvODfuSHIDUVnIuUoxafoWzpFyU7Sqbxgi79mA== +"@typescript-eslint/types@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.10.0.tgz#beb3cb345076f5b088afe996d57bcd1dfddaa75c" + integrity sha512-wUljCgkqHsMZbw60IbOqT/puLfyqqD5PquGiBo1u1IS3PLxdi3RDGlyf032IJyh+eQoGhz9kzhtZa+VC4eWTlQ== -"@typescript-eslint/typescript-estree@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.7.0.tgz#968fad899050ccce4f08a40cd5fabc0798525006" - integrity sha512-aO1Ql+izMrTnPj5aFFlEJkpD4jRqC4Gwhygu2oHK2wfVQpmOPbyDSveJ+r/NQo+PWV43M6uEAeLVbTi09dFLhg== +"@typescript-eslint/typescript-estree@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.10.0.tgz#4be24a3dea0f930bb1397c46187d0efdd955a224" + integrity sha512-x+7e5IqfwLwsxTdliHRtlIYkgdtYXzE0CkFeV6ytAqq431ZyxCFzNMNR5sr3WOlIG/ihVZr9K/y71VHTF/DUQA== dependencies: - "@typescript-eslint/types" "5.7.0" - "@typescript-eslint/visitor-keys" "5.7.0" + "@typescript-eslint/types" "5.10.0" + "@typescript-eslint/visitor-keys" "5.10.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/visitor-keys@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.7.0.tgz#e05164239eb7cb8aa9fa06c516ede480ce260178" - integrity sha512-hdohahZ4lTFcglZSJ3DGdzxQHBSxsLVqHzkiOmKi7xVAWC4y2c1bIMKmPJSrA4aOEoRUPOKQ87Y/taC7yVHpFg== +"@typescript-eslint/utils@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.10.0.tgz#c3d152a85da77c400e37281355561c72fb1b5a65" + integrity sha512-IGYwlt1CVcFoE2ueW4/ioEwybR60RAdGeiJX/iDAw0t5w0wK3S7QncDwpmsM70nKgGTuVchEWB8lwZwHqPAWRg== dependencies: - "@typescript-eslint/types" "5.7.0" + "@types/json-schema" "^7.0.9" + "@typescript-eslint/scope-manager" "5.10.0" + "@typescript-eslint/types" "5.10.0" + "@typescript-eslint/typescript-estree" "5.10.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/visitor-keys@5.10.0": + version "5.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.10.0.tgz#770215497ad67cd15a572b52089991d5dfe06281" + integrity sha512-GMxj0K1uyrFLPKASLmZzCuSddmjZVbVj3Ouy5QVuIGKZopxvOr24JsS7gruz6C3GExE01mublZ3mIBOaon9zuQ== + dependencies: + "@typescript-eslint/types" "5.10.0" eslint-visitor-keys "^3.0.0" JSONStream@^1.0.4: @@ -1111,6 +1342,11 @@ acorn-walk@^7.1.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== +acorn-walk@^8.1.1: + version "8.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== + acorn@^7.1.1: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" @@ -1121,6 +1357,11 @@ acorn@^8.2.4, acorn@^8.6.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895" integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw== +acorn@^8.4.1, acorn@^8.7.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" + integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== + after@0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" @@ -1141,7 +1382,7 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv@^6.10.0, ajv@^6.12.4: +ajv@^6.10.0, ajv@^6.12.4, ajv@^6.12.6: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -1151,11 +1392,6 @@ ajv@^6.10.0, ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ansi-colors@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" - integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== - ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" @@ -1257,6 +1493,11 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= +asap@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= + ast-types@^0.13.2: version "0.13.4" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" @@ -1298,21 +1539,21 @@ axios@0.21.4: dependencies: follow-redirects "^1.14.0" -babel-jest@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.5.tgz#d38bd0be8ea71d8b97853a5fc9f76deeb095c709" - integrity sha512-3uuUTjXbgtODmSv/DXO9nZfD52IyC2OYTFaXGRzL0kpykzroaquCrD5+lZNafTvZlnNqZHt5pb0M08qVBZnsnA== +babel-jest@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.6.tgz#4d024e69e241cdf4f396e453a07100f44f7ce314" + integrity sha512-qZL0JT0HS1L+lOuH+xC2DVASR3nunZi/ozGhpgauJHgmI7f8rudxf6hUjEHympdQ/J64CdKmPkgfJ+A3U6QCrg== dependencies: - "@jest/transform" "^27.4.5" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.0.0" + babel-plugin-istanbul "^6.1.1" babel-preset-jest "^27.4.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" -babel-plugin-istanbul@^6.0.0: +babel-plugin-istanbul@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== @@ -1548,6 +1789,14 @@ cacheable-lookup@^6.0.0: resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.4.tgz#65c0e51721bb7f9f2cb513aed6da4a1b93ad7dc8" integrity sha512-mbcDEZCkv2CZF4G01kr8eBd/5agkt9oCqz75tJMSIsquvRZ2sL6Hi5zGVKi/0OSC9oO1GHfJ2AV0ZIOY9vye0A== +call-bind@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -1866,10 +2115,10 @@ cookie@0.4.1, cookie@~0.4.1: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== -cookiejar@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.2.tgz#dd8a235530752f988f9a0844f3fc589e3111125c" - integrity sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA== +cookiejar@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" + integrity sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ== core-util-is@~1.0.0: version "1.0.3" @@ -1889,6 +2138,25 @@ cors@^2.8.4: object-assign "^4" vary "^1" +cosmiconfig-typescript-loader@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-1.0.3.tgz#528f2bb3e6b6705020dc42df659f24837e75b611" + integrity sha512-ARo21VjxdacJUcHxgVMEYNIoVPYiuKOEwWBIYej4M22+pEbe3LzKgmht2UPM+0u7/T/KnZf2r/5IzHv2Nwz+/w== + dependencies: + cosmiconfig "^7" + ts-node "^10.4.0" + +cosmiconfig@^7: + version "7.0.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" + integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== + 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" + cosmiconfig@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" @@ -2065,6 +2333,14 @@ dev-ip@^1.0.1: resolved "https://registry.yarnpkg.com/dev-ip/-/dev-ip-1.0.1.tgz#a76a3ed1855be7a012bb8ac16cb80f3c00dc28f0" integrity sha1-p2o+0YVb56ASu4rBbLgPPADcKPA= +dezalgo@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= + dependencies: + asap "^2.0.0" + wrappy "1" + diff-sequences@^27.4.0: version "27.4.0" resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5" @@ -2209,13 +2485,6 @@ engine.io@~3.5.0: engine.io-parser "~2.2.0" ws "~7.4.2" -enquirer@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -2317,10 +2586,15 @@ eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2" integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA== -eslint@8.5.0: - version "8.5.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.5.0.tgz#ddd2c1afd8f412036f87ae2a063d2aa296d3175f" - integrity sha512-tVGSkgNbOfiHyVte8bCM8OmX+xG9PzVG/B4UCF60zx7j61WIVY/AqJECDgpLD4DbbESD0e174gOg3ZlrX15GDg== +eslint-visitor-keys@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz#6fbb166a6798ee5991358bc2daa1ba76cc1254a1" + integrity sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ== + +eslint@8.7.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.7.0.tgz#22e036842ee5b7cf87b03fe237731675b4d3633c" + integrity sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w== dependencies: "@eslint/eslintrc" "^1.0.5" "@humanwhocodes/config-array" "^0.9.2" @@ -2329,12 +2603,11 @@ eslint@8.5.0: cross-spawn "^7.0.2" debug "^4.3.2" doctrine "^3.0.0" - enquirer "^2.3.5" escape-string-regexp "^4.0.0" eslint-scope "^7.1.0" eslint-utils "^3.0.0" - eslint-visitor-keys "^3.1.0" - espree "^9.2.0" + eslint-visitor-keys "^3.2.0" + espree "^9.3.0" esquery "^1.4.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -2342,7 +2615,7 @@ eslint@8.5.0: functional-red-black-tree "^1.0.1" glob-parent "^6.0.1" globals "^13.6.0" - ignore "^4.0.6" + ignore "^5.2.0" import-fresh "^3.0.0" imurmurhash "^0.1.4" is-glob "^4.0.0" @@ -2353,9 +2626,7 @@ eslint@8.5.0: minimatch "^3.0.4" natural-compare "^1.4.0" optionator "^0.9.1" - progress "^2.0.0" regexpp "^3.2.0" - semver "^7.2.1" strip-ansi "^6.0.1" strip-json-comments "^3.1.0" text-table "^0.2.0" @@ -2370,6 +2641,15 @@ espree@^9.2.0: acorn-jsx "^5.3.1" eslint-visitor-keys "^3.1.0" +espree@^9.3.0: + version "9.3.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.0.tgz#c1240d79183b72aaee6ccfa5a90bc9111df085a8" + integrity sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ== + dependencies: + acorn "^8.7.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^3.1.0" + esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" @@ -2439,17 +2719,15 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.2.tgz#4429b0f7e307771d176de9bdf23229b101db6ef6" - integrity sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg== +expect@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.6.tgz#f335e128b0335b6ceb4fcab67ece7cbd14c942e6" + integrity sha512-1M/0kAALIaj5LaG66sFJTbRsWTADnylly82cu4bspI0nl+pgP4E6Bh/aqdHlTUjul06K7xQnnrAoqfxVU0+/ag== dependencies: "@jest/types" "^27.4.2" - ansi-styles "^5.0.0" jest-get-type "^27.4.0" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-regex-util "^27.4.0" + jest-matcher-utils "^27.4.6" + jest-message-util "^27.4.6" express-graphql@^0.11.0: version "0.11.0" @@ -2528,10 +2806,10 @@ fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= -fast-safe-stringify@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz#124aa885899261f68aedb42a7c080de9da608743" - integrity sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== +fast-safe-stringify@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== fastq@^1.6.0: version "1.13.0" @@ -2629,9 +2907,9 @@ flatted@^3.1.0: integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.14.4" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.4.tgz#838fdf48a8bbdd79e52ee51fb1c94e3ed98b9379" - integrity sha512-zwGkiSXC1MUJG/qmeIFH2HBJx9u0V46QGUe3YR1fXG8bXQxq7fLj0RjLZQ5nubr9qNJUZrH+xUcwXEoXNpfS+g== + version "1.14.7" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.7.tgz#2004c02eb9436eee9a21446a6477debf17e81685" + integrity sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ== form-data@^3.0.0: version "3.0.1" @@ -2642,10 +2920,24 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -formidable@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.2.tgz#bf69aea2972982675f00865342b982986f6b8dd9" - integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== +form-data@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +formidable@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/formidable/-/formidable-2.0.1.tgz#4310bc7965d185536f9565184dee74fbb75557ff" + integrity sha512-rjTMNbp2BpfQShhFbR3Ruk3qk2y9jKpvMW78nJgx8QKtxjDVrwbZG+wvDOmVbifHyOUOQJXxqEy6r0faRrPzTQ== + dependencies: + dezalgo "1.0.3" + hexoid "1.0.0" + once "1.4.0" + qs "6.9.3" forwarded@0.2.0: version "0.2.0" @@ -2722,6 +3014,15 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-intrinsic@^1.0.2: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -2868,6 +3169,11 @@ has-flag@^4.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-symbols@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -2875,6 +3181,11 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +hexoid@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/hexoid/-/hexoid-1.0.0.tgz#ad10c6573fb907de23d9ec63a711267d9dc9bc18" + integrity sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g== + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -3000,6 +3311,11 @@ ignore@^5.1.4, ignore@^5.1.8: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb" integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ== +ignore@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" + integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== + immutable@^3: version "3.8.2" resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" @@ -3211,17 +3527,7 @@ istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== -istanbul-lib-instrument@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" - integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== - dependencies: - "@babel/core" "^7.7.5" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.0.0" - semver "^6.3.0" - -istanbul-lib-instrument@^5.0.4: +istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== @@ -3250,10 +3556,10 @@ istanbul-lib-source-maps@^4.0.0: istanbul-lib-coverage "^3.0.0" source-map "^0.6.1" -istanbul-reports@^3.0.2: - version "3.1.1" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.1.tgz#7085857f17d2441053c6ce5c3b8fdf6882289397" - integrity sha512-q1kvhAXWSsXfMjCdNHNPKZZv94OlspKnoGv+R9RGbnqOOQ0VbNfLFgQDVgi7hHenKsndGq3/o0OBdzDXthWcNw== +istanbul-reports@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.3.tgz#4bcae3103b94518117930d51283690960b50d3c2" + integrity sha512-x9LtDVtfm/t1GFiLl3NffC7hz+I1ragvgX1P/Lg1NlIagifZDKUkuuaAxH/qpwj2IuEfD8G2Bs/UKp+sZ/pKkg== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" @@ -3272,78 +3578,78 @@ jest-changed-files@^27.4.2: execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.5.tgz#70bfb78e0200cab9b84747bf274debacaa538467" - integrity sha512-eTNWa9wsvBwPykhMMShheafbwyakcdHZaEYh5iRrQ0PFJxkDP/e3U/FvzGuKWu2WpwUA3C3hPlfpuzvOdTVqnw== +jest-circus@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.6.tgz#d3af34c0eb742a967b1919fbb351430727bcea6c" + integrity sha512-UA7AI5HZrW4wRM72Ro80uRR2Fg+7nR0GESbSI/2M+ambbzVuA63mn5T1p3Z/wlhntzGpIG1xx78GP2YIkf6PhQ== dependencies: - "@jest/environment" "^27.4.4" - "@jest/test-result" "^27.4.2" + "@jest/environment" "^27.4.6" + "@jest/test-result" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" dedent "^0.7.0" - expect "^27.4.2" + expect "^27.4.6" is-generator-fn "^2.0.0" - jest-each "^27.4.2" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" + jest-each "^27.4.6" + jest-matcher-utils "^27.4.6" + jest-message-util "^27.4.6" + jest-runtime "^27.4.6" + jest-snapshot "^27.4.6" jest-util "^27.4.2" - pretty-format "^27.4.2" + pretty-format "^27.4.6" slash "^3.0.0" stack-utils "^2.0.3" throat "^6.0.1" -jest-cli@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.5.tgz#8708f54c28d13681f3255ec9026a2b15b03d41e8" - integrity sha512-hrky3DSgE0u7sQxaCL7bdebEPHx5QzYmrGuUjaPLmPE8jx5adtvGuOlRspvMoVLTTDOHRnZDoRLYJuA+VCI7Hg== +jest-cli@^27.4.7: + version "27.4.7" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.7.tgz#d00e759e55d77b3bcfea0715f527c394ca314e5a" + integrity sha512-zREYhvjjqe1KsGV15mdnxjThKNDgza1fhDT+iUsXWLCq3sxe9w5xnvyctcYVT5PcdLSjv7Y5dCwTS3FCF1tiuw== dependencies: - "@jest/core" "^27.4.5" - "@jest/test-result" "^27.4.2" + "@jest/core" "^27.4.7" + "@jest/test-result" "^27.4.6" "@jest/types" "^27.4.2" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" - jest-config "^27.4.5" + jest-config "^27.4.7" jest-util "^27.4.2" - jest-validate "^27.4.2" + jest-validate "^27.4.6" prompts "^2.0.1" yargs "^16.2.0" -jest-config@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.5.tgz#77ed7f2ba7bcfd7d740ade711d0d13512e08a59e" - integrity sha512-t+STVJtPt+fpqQ8GBw850NtSQbnDOw/UzdPfzDaHQ48/AylQlW7LHj3dH+ndxhC1UxJ0Q3qkq7IH+nM1skwTwA== +jest-config@^27.4.7: + version "27.4.7" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.7.tgz#4f084b2acbd172c8b43aa4cdffe75d89378d3972" + integrity sha512-xz/o/KJJEedHMrIY9v2ParIoYSrSVY6IVeE4z5Z3i101GoA5XgfbJz+1C8EYPsv7u7f39dS8F9v46BHDhn0vlw== dependencies: - "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^27.4.5" + "@babel/core" "^7.8.0" + "@jest/test-sequencer" "^27.4.6" "@jest/types" "^27.4.2" - babel-jest "^27.4.5" + babel-jest "^27.4.6" chalk "^4.0.0" ci-info "^3.2.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-circus "^27.4.5" - jest-environment-jsdom "^27.4.4" - jest-environment-node "^27.4.4" + jest-circus "^27.4.6" + jest-environment-jsdom "^27.4.6" + jest-environment-node "^27.4.6" jest-get-type "^27.4.0" - jest-jasmine2 "^27.4.5" + jest-jasmine2 "^27.4.6" jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-runner "^27.4.5" + jest-resolve "^27.4.6" + jest-runner "^27.4.6" jest-util "^27.4.2" - jest-validate "^27.4.2" + jest-validate "^27.4.6" micromatch "^4.0.4" - pretty-format "^27.4.2" + pretty-format "^27.4.6" slash "^3.0.0" -jest-diff@^27.0.0, jest-diff@^27.4.2: +jest-diff@^27.0.0: version "27.4.2" resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.2.tgz#786b2a5211d854f848e2dcc1e324448e9481f36f" integrity sha512-ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q== @@ -3353,6 +3659,16 @@ jest-diff@^27.0.0, jest-diff@^27.4.2: jest-get-type "^27.4.0" pretty-format "^27.4.2" +jest-diff@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.6.tgz#93815774d2012a2cbb6cf23f84d48c7a2618f98d" + integrity sha512-zjaB0sh0Lb13VyPsd92V7HkqF6yKRH9vm33rwBt7rPYrpQvS1nCvlIy2pICbKta+ZjWngYLNn4cCK4nyZkjS/w== + dependencies: + chalk "^4.0.0" + diff-sequences "^27.4.0" + jest-get-type "^27.4.0" + pretty-format "^27.4.6" + jest-docblock@^27.4.0: version "27.4.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f" @@ -3360,40 +3676,40 @@ jest-docblock@^27.4.0: dependencies: detect-newline "^3.0.0" -jest-each@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.2.tgz#19364c82a692d0d26557642098d1f4619c9ee7d3" - integrity sha512-53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg== +jest-each@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.6.tgz#e7e8561be61d8cc6dbf04296688747ab186c40ff" + integrity sha512-n6QDq8y2Hsmn22tRkgAk+z6MCX7MeVlAzxmZDshfS2jLcaBlyhpF3tZSJLR+kXmh23GEvS0ojMR8i6ZeRvpQcA== dependencies: "@jest/types" "^27.4.2" chalk "^4.0.0" jest-get-type "^27.4.0" jest-util "^27.4.2" - pretty-format "^27.4.2" + pretty-format "^27.4.6" -jest-environment-jsdom@^27.4.4: - version "27.4.4" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.4.tgz#94f738e99514d7a880e8ed8e03e3a321d43b49db" - integrity sha512-cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA== +jest-environment-jsdom@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.6.tgz#c23a394eb445b33621dfae9c09e4c8021dea7b36" + integrity sha512-o3dx5p/kHPbUlRvSNjypEcEtgs6LmvESMzgRFQE6c+Prwl2JLA4RZ7qAnxc5VM8kutsGRTB15jXeeSbJsKN9iA== dependencies: - "@jest/environment" "^27.4.4" - "@jest/fake-timers" "^27.4.2" + "@jest/environment" "^27.4.6" + "@jest/fake-timers" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.4.2" + jest-mock "^27.4.6" jest-util "^27.4.2" jsdom "^16.6.0" -jest-environment-node@^27.4.4: - version "27.4.4" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.4.tgz#42fe5e3b224cb69b99811ebf6f5eaa5a59618514" - integrity sha512-D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA== +jest-environment-node@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.6.tgz#ee8cd4ef458a0ef09d087c8cd52ca5856df90242" + integrity sha512-yfHlZ9m+kzTKZV0hVfhVu6GuDxKAYeFHrfulmy7Jxwsq4V7+ZK7f+c0XP/tbVDMQW7E4neG2u147hFkuVz0MlQ== dependencies: - "@jest/environment" "^27.4.4" - "@jest/fake-timers" "^27.4.2" + "@jest/environment" "^27.4.6" + "@jest/fake-timers" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" - jest-mock "^27.4.2" + jest-mock "^27.4.6" jest-util "^27.4.2" jest-get-type@^27.4.0: @@ -3401,10 +3717,10 @@ jest-get-type@^27.4.0: resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5" integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ== -jest-haste-map@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.5.tgz#c2921224a59223f91e03ec15703905978ef0cc1a" - integrity sha512-oJm1b5qhhPs78K24EDGifWS0dELYxnoBiDhatT/FThgB9yxqUm5F6li3Pv+Q+apMBmmPNzOBnZ7ZxWMB1Leq1Q== +jest-haste-map@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.6.tgz#c60b5233a34ca0520f325b7e2cc0a0140ad0862a" + integrity sha512-0tNpgxg7BKurZeFkIOvGCkbmOHbLFf4LUQOxrQSMjvrQaQe3l6E8x6jYC1NuWkGo5WDdbr8FEzUxV2+LWNawKQ== dependencies: "@jest/types" "^27.4.2" "@types/graceful-fs" "^4.1.2" @@ -3415,58 +3731,57 @@ jest-haste-map@^27.4.5: jest-regex-util "^27.4.0" jest-serializer "^27.4.0" jest-util "^27.4.2" - jest-worker "^27.4.5" + jest-worker "^27.4.6" micromatch "^4.0.4" walker "^1.0.7" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.5.tgz#ff79d11561679ff6c89715b0cd6b1e8c0dfbc6dc" - integrity sha512-oUnvwhJDj2LhOiUB1kdnJjkx8C5PwgUZQb9urF77mELH9DGR4e2GqpWQKBOYXWs5+uTN9BGDqRz3Aeg5Wts7aw== +jest-jasmine2@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.6.tgz#109e8bc036cb455950ae28a018f983f2abe50127" + integrity sha512-uAGNXF644I/whzhsf7/qf74gqy9OuhvJ0XYp8SDecX2ooGeaPnmJMjXjKt0mqh1Rl5dtRGxJgNrHlBQIBfS5Nw== dependencies: - "@babel/traverse" "^7.1.0" - "@jest/environment" "^27.4.4" + "@jest/environment" "^27.4.6" "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.2" + "@jest/test-result" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^27.4.2" + expect "^27.4.6" is-generator-fn "^2.0.0" - jest-each "^27.4.2" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-runtime "^27.4.5" - jest-snapshot "^27.4.5" + jest-each "^27.4.6" + jest-matcher-utils "^27.4.6" + jest-message-util "^27.4.6" + jest-runtime "^27.4.6" + jest-snapshot "^27.4.6" jest-util "^27.4.2" - pretty-format "^27.4.2" + pretty-format "^27.4.6" throat "^6.0.1" -jest-leak-detector@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.2.tgz#7fc3120893a7a911c553f3f2bdff9faa4454abbb" - integrity sha512-ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw== +jest-leak-detector@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.6.tgz#ed9bc3ce514b4c582637088d9faf58a33bd59bf4" + integrity sha512-kkaGixDf9R7CjHm2pOzfTxZTQQQ2gHTIWKY/JZSiYTc90bZp8kSZnUMS3uLAfwTZwc0tcMRoEX74e14LG1WapA== dependencies: jest-get-type "^27.4.0" - pretty-format "^27.4.2" + pretty-format "^27.4.6" -jest-matcher-utils@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.2.tgz#d17c5038607978a255e0a9a5c32c24e984b6c60b" - integrity sha512-jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ== +jest-matcher-utils@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.6.tgz#53ca7f7b58170638590e946f5363b988775509b8" + integrity sha512-XD4PKT3Wn1LQnRAq7ZsTI0VRuEc9OrCPFiO1XL7bftTGmfNF0DcEwMHRgqiu7NGf8ZoZDREpGrCniDkjt79WbA== dependencies: chalk "^4.0.0" - jest-diff "^27.4.2" + jest-diff "^27.4.6" jest-get-type "^27.4.0" - pretty-format "^27.4.2" + pretty-format "^27.4.6" -jest-message-util@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.2.tgz#07f3f1bf207d69cf798ce830cc57f1a849f99388" - integrity sha512-OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w== +jest-message-util@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.6.tgz#9fdde41a33820ded3127465e1a5896061524da31" + integrity sha512-0p5szriFU0U74czRSFjH6RyS7UYIAkn/ntwMuOwTGWrQIOh5NzXXrq72LOqIkJKKvFbPq+byZKuBz78fjBERBA== dependencies: "@babel/code-frame" "^7.12.13" "@jest/types" "^27.4.2" @@ -3474,14 +3789,14 @@ jest-message-util@^27.4.2: chalk "^4.0.0" graceful-fs "^4.2.4" micromatch "^4.0.4" - pretty-format "^27.4.2" + pretty-format "^27.4.6" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.2.tgz#184ff197a25491bfe4570c286daa5d62eb760b88" - integrity sha512-PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA== +jest-mock@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.6.tgz#77d1ba87fbd33ccb8ef1f061697e7341b7635195" + integrity sha512-kvojdYRkst8iVSZ1EJ+vc1RRD9llueBjKzXzeCytH3dMM7zvPV/ULcfI2nr0v0VUgm3Bjt3hBCQvOeaBz+ZTHw== dependencies: "@jest/types" "^27.4.2" "@types/node" "*" @@ -3496,40 +3811,40 @@ jest-regex-util@^27.4.0: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca" integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg== -jest-resolve-dependencies@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.5.tgz#9398af854bdb12d6a9e5a8a536ee401f889a3ecf" - integrity sha512-elEVvkvRK51y037NshtEkEnukMBWvlPzZHiL847OrIljJ8yIsujD2GXRPqDXC4rEVKbcdsy7W0FxoZb4WmEs7w== +jest-resolve-dependencies@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.6.tgz#fc50ee56a67d2c2183063f6a500cc4042b5e2327" + integrity sha512-W85uJZcFXEVZ7+MZqIPCscdjuctruNGXUZ3OHSXOfXR9ITgbUKeHj+uGcies+0SsvI5GtUfTw4dY7u9qjTvQOw== dependencies: "@jest/types" "^27.4.2" jest-regex-util "^27.4.0" - jest-snapshot "^27.4.5" + jest-snapshot "^27.4.6" -jest-resolve@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.5.tgz#8dc44f5065fb8d58944c20f932cb7b9fe9760cca" - integrity sha512-xU3z1BuOz/hUhVUL+918KqUgK+skqOuUsAi7A+iwoUldK6/+PW+utK8l8cxIWT9AW7IAhGNXjSAh1UYmjULZZw== +jest-resolve@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.6.tgz#2ec3110655e86d5bfcfa992e404e22f96b0b5977" + integrity sha512-SFfITVApqtirbITKFAO7jOVN45UgFzcRdQanOFzjnbd+CACDoyeX7206JyU92l4cRr73+Qy/TlW51+4vHGt+zw== dependencies: "@jest/types" "^27.4.2" chalk "^4.0.0" graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" + jest-haste-map "^27.4.6" jest-pnp-resolver "^1.2.2" jest-util "^27.4.2" - jest-validate "^27.4.2" + jest-validate "^27.4.6" resolve "^1.20.0" resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.5.tgz#daba2ba71c8f34137dc7ac45616add35370a681e" - integrity sha512-/irauncTfmY1WkTaRQGRWcyQLzK1g98GYG/8QvIPviHgO1Fqz1JYeEIsSfF+9mc/UTA6S+IIHFgKyvUrtiBIZg== +jest-runner@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.6.tgz#1d390d276ec417e9b4d0d081783584cbc3e24773" + integrity sha512-IDeFt2SG4DzqalYBZRgbbPmpwV3X0DcntjezPBERvnhwKGWTW7C5pbbA5lVkmvgteeNfdd/23gwqv3aiilpYPg== dependencies: - "@jest/console" "^27.4.2" - "@jest/environment" "^27.4.4" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" + "@jest/console" "^27.4.6" + "@jest/environment" "^27.4.6" + "@jest/test-result" "^27.4.6" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" chalk "^4.0.0" @@ -3537,49 +3852,45 @@ jest-runner@^27.4.5: exit "^0.1.2" graceful-fs "^4.2.4" jest-docblock "^27.4.0" - jest-environment-jsdom "^27.4.4" - jest-environment-node "^27.4.4" - jest-haste-map "^27.4.5" - jest-leak-detector "^27.4.2" - jest-message-util "^27.4.2" - jest-resolve "^27.4.5" - jest-runtime "^27.4.5" + jest-environment-jsdom "^27.4.6" + jest-environment-node "^27.4.6" + jest-haste-map "^27.4.6" + jest-leak-detector "^27.4.6" + jest-message-util "^27.4.6" + jest-resolve "^27.4.6" + jest-runtime "^27.4.6" jest-util "^27.4.2" - jest-worker "^27.4.5" + jest-worker "^27.4.6" source-map-support "^0.5.6" throat "^6.0.1" -jest-runtime@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.5.tgz#97703ad2a1799d4f50ab59049bd21a9ceaed2813" - integrity sha512-CIYqwuJQXHQtPd/idgrx4zgJ6iCb6uBjQq1RSAGQrw2S8XifDmoM1Ot8NRd80ooAm+ZNdHVwsktIMGlA1F1FAQ== +jest-runtime@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.6.tgz#83ae923818e3ea04463b22f3597f017bb5a1cffa" + integrity sha512-eXYeoR/MbIpVDrjqy5d6cGCFOYBFFDeKaNWqTp0h6E74dK0zLHzASQXJpl5a2/40euBmKnprNLJ0Kh0LCndnWQ== dependencies: - "@jest/console" "^27.4.2" - "@jest/environment" "^27.4.4" - "@jest/globals" "^27.4.4" + "@jest/environment" "^27.4.6" + "@jest/fake-timers" "^27.4.6" + "@jest/globals" "^27.4.6" "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.2" - "@jest/transform" "^27.4.5" + "@jest/test-result" "^27.4.6" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" - "@types/yargs" "^16.0.0" chalk "^4.0.0" cjs-module-lexer "^1.0.0" collect-v8-coverage "^1.0.0" execa "^5.0.0" - exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-haste-map "^27.4.5" - jest-message-util "^27.4.2" - jest-mock "^27.4.2" + jest-haste-map "^27.4.6" + jest-message-util "^27.4.6" + jest-mock "^27.4.6" jest-regex-util "^27.4.0" - jest-resolve "^27.4.5" - jest-snapshot "^27.4.5" + jest-resolve "^27.4.6" + jest-snapshot "^27.4.6" jest-util "^27.4.2" - jest-validate "^27.4.2" slash "^3.0.0" strip-bom "^4.0.0" - yargs "^16.2.0" jest-serializer@^27.4.0: version "27.4.0" @@ -3589,34 +3900,32 @@ jest-serializer@^27.4.0: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.5.tgz#2ea909b20aac0fe62504bc161331f730b8a7ecc7" - integrity sha512-eCi/iM1YJFrJWiT9de4+RpWWWBqsHiYxFG9V9o/n0WXs6GpW4lUt4FAHAgFPTLPqCUVzrMQmSmTZSgQzwqR7IQ== +jest-snapshot@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.6.tgz#e2a3b4fff8bdce3033f2373b2e525d8b6871f616" + integrity sha512-fafUCDLQfzuNP9IRcEqaFAMzEe7u5BF7mude51wyWv7VRex60WznZIC7DfKTgSIlJa8aFzYmXclmN328aqSDmQ== dependencies: "@babel/core" "^7.7.2" "@babel/generator" "^7.7.2" - "@babel/parser" "^7.7.2" "@babel/plugin-syntax-typescript" "^7.7.2" "@babel/traverse" "^7.7.2" "@babel/types" "^7.0.0" - "@jest/transform" "^27.4.5" + "@jest/transform" "^27.4.6" "@jest/types" "^27.4.2" "@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.4.2" + expect "^27.4.6" graceful-fs "^4.2.4" - jest-diff "^27.4.2" + jest-diff "^27.4.6" jest-get-type "^27.4.0" - jest-haste-map "^27.4.5" - jest-matcher-utils "^27.4.2" - jest-message-util "^27.4.2" - jest-resolve "^27.4.5" + jest-haste-map "^27.4.6" + jest-matcher-utils "^27.4.6" + jest-message-util "^27.4.6" jest-util "^27.4.2" natural-compare "^1.4.0" - pretty-format "^27.4.2" + pretty-format "^27.4.6" semver "^7.3.2" jest-util@^27.0.0, jest-util@^27.4.2: @@ -3631,24 +3940,24 @@ jest-util@^27.0.0, jest-util@^27.4.2: graceful-fs "^4.2.4" picomatch "^2.2.3" -jest-validate@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.2.tgz#eecfcc1b1c9429aa007da08a2bae4e32a81bbbc3" - integrity sha512-hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A== +jest-validate@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.6.tgz#efc000acc4697b6cf4fa68c7f3f324c92d0c4f1f" + integrity sha512-872mEmCPVlBqbA5dToC57vA3yJaMRfIdpCoD3cyHWJOMx+SJwLNw0I71EkWs41oza/Er9Zno9XuTkRYCPDUJXQ== dependencies: "@jest/types" "^27.4.2" camelcase "^6.2.0" chalk "^4.0.0" jest-get-type "^27.4.0" leven "^3.1.0" - pretty-format "^27.4.2" + pretty-format "^27.4.6" -jest-watcher@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.2.tgz#c9037edfd80354c9fe90de4b6f8b6e2b8e736744" - integrity sha512-NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg== +jest-watcher@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.6.tgz#673679ebeffdd3f94338c24f399b85efc932272d" + integrity sha512-yKQ20OMBiCDigbD0quhQKLkBO+ObGN79MO4nT7YaCuQ5SM+dkBNWE8cZX0FjU6czwMvWw6StWbe+Wv4jJPJ+fw== dependencies: - "@jest/test-result" "^27.4.2" + "@jest/test-result" "^27.4.6" "@jest/types" "^27.4.2" "@types/node" "*" ansi-escapes "^4.2.1" @@ -3656,23 +3965,23 @@ jest-watcher@^27.4.2: jest-util "^27.4.2" string-length "^4.0.1" -jest-worker@^27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.5.tgz#d696e3e46ae0f24cff3fa7195ffba22889262242" - integrity sha512-f2s8kEdy15cv9r7q4KkzGXvlY0JTcmCbMHZBfSQDwW77REr45IDWwd0lksDFeVHH2jJ5pqb90T77XscrjeGzzg== +jest-worker@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.6.tgz#5d2d93db419566cb680752ca0792780e71b3273e" + integrity sha512-gHWJF/6Xi5CTG5QCvROr6GcmpIqNYpDJyc8A1h/DyXqH1tD6SnRCM0d3U5msV31D2LB/U+E0M+W4oyvKV44oNw== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@27.4.5: - version "27.4.5" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.5.tgz#66e45acba44137fac26be9d3cc5bb031e136dc0f" - integrity sha512-uT5MiVN3Jppt314kidCk47MYIRilJjA/l2mxwiuzzxGUeJIvA8/pDaJOAX5KWvjAo7SCydcW0/4WEtgbLMiJkg== +jest@27.4.7: + version "27.4.7" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.7.tgz#87f74b9026a1592f2da05b4d258e57505f28eca4" + integrity sha512-8heYvsx7nV/m8m24Vk26Y87g73Ba6ueUd0MWed/NXMhSZIm62U/llVbS0PJe1SHunbyXjJ/BqG1z9bFjGUIvTg== dependencies: - "@jest/core" "^27.4.5" + "@jest/core" "^27.4.7" import-local "^3.0.2" - jest-cli "^27.4.5" + jest-cli "^27.4.7" js-tokens@^4.0.0: version "4.0.0" @@ -3828,10 +4137,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -lint-staged@12.1.3: - version "12.1.3" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.1.3.tgz#a16e885c0a5e77de9cf559724d29a10348670e68" - integrity sha512-ajapdkaFxx+MVhvq6xQRg9zCnCLz49iQLJZP7+w8XaA3U4B35Z9xJJGq9vxmWo73QTvJLG+N2NxhjWiSexbAWQ== +lint-staged@12.2.2: + version "12.2.2" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.2.2.tgz#e03d93b41092316e0f38b37c9630da807aae3cca" + integrity sha512-bcHEoM1M/f+K1BYdHcEuIn8K+zMOSJR3mkny6PAuQiTgcSUcRbUWaUD6porAYypxF4k1vYZZ2HutZt1p94Z1jQ== dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" @@ -3885,11 +4194,6 @@ locate-path@^6.0.0: dependencies: p-locate "^5.0.0" -lodash.get@^4: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= - lodash.isfinite@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz#fb89b65a9a80281833f0b7478b3a5104f898ebb3" @@ -3948,7 +4252,7 @@ make-dir@^3.0.0: dependencies: semver "^6.0.0" -make-error@1.x, make-error@^1, make-error@^1.1.1: +make-error@1.x, make-error@^1.1.1: version "1.3.6" resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== @@ -4042,10 +4346,10 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.4.6: - version "2.4.6" - resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" - integrity sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA== +mime@^2.5.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== mimic-fn@^2.1.0: version "2.1.0" @@ -4090,13 +4394,13 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@2.4.0: - version "2.4.0" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.4.0.tgz#3027d210be46d0695f60367d35737bb6c13e59c4" - integrity sha512-aMktxhtDGiKcH+vtcmZL41fPtR9u5ZanauurAOPVybH9QcryOVQN2wLjhxXqsvji348rtAWSjuZUmMYSBqaWTg== +mockttp@2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.5.1.tgz#dc40704203c01d4ec7d91421cc20bc1eae2e2c4d" + integrity sha512-giwCj28tCr6+RwRTTKnuf2qM7vI5hjs3+tKEcLnAiR1O8R9EHcjlgjBf7JvuF25clEDZKsLUg7NKbkB3CIUN6A== dependencies: "@graphql-tools/schema" "^7.1.5" - "@httptoolkit/httpolyglot" "^1.0.0" + "@httptoolkit/httpolyglot" "^2.0.1" "@httptoolkit/proxy-agent" "^5.0.1-socks-lookup-fix.0" "@httptoolkit/subscriptions-transport-ws" "^0.9.19" "@httptoolkit/websocket-stream" "^6.0.0" @@ -4118,7 +4422,7 @@ mockttp@2.4.0: http2-wrapper "2.0.5" lodash "^4.16.4" native-duplexpair "^1.0.0" - node-forge "^0.10.0" + node-forge "^1.2.1" performance-now "^2.1.0" portfinder "^1.0.23" typed-error "^3.0.2" @@ -4169,16 +4473,16 @@ no-case@^3.0.4: tslib "^2.0.3" node-fetch@~2.6.1: - version "2.6.5" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.5.tgz#42735537d7f080a7e5f78b6c549b7146be1742fd" - integrity sha512-mmlIVHJEu5rnIxgEgez6b9GgWXbkZj5YZ7fx+2r94a2E+Uirsp6HsPTPlomfdHtpt/B0cdKviwkoaM6pyvUOpQ== + version "2.6.7" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" + integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== dependencies: whatwg-url "^5.0.0" -node-forge@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.10.0.tgz#32dea2afb3e9926f02ee5ce8794902691a676bf3" - integrity sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA== +node-forge@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.2.1.tgz#82794919071ef2eb5c509293325cec8afd0fd53c" + integrity sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w== node-int64@^0.4.0: version "0.4.0" @@ -4232,7 +4536,7 @@ object-assign@^4: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-inspect@^1.11.1: +object-inspect@^1.11.1, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== @@ -4244,7 +4548,7 @@ on-finished@~2.3.0: dependencies: ee-first "1.1.1" -once@^1.3.0, once@^1.4.0: +once@1.4.0, once@^1.3.0, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= @@ -4457,7 +4761,7 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== -pirates@^4.0.1: +pirates@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.4.tgz#07df81e61028e402735cdd49db701e4885b4e6e6" integrity sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw== @@ -4518,16 +4822,20 @@ pretty-format@^27.0.0, pretty-format@^27.4.2: ansi-styles "^5.0.0" react-is "^17.0.1" +pretty-format@^27.4.6: + version "27.4.6" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.6.tgz#1b784d2f53c68db31797b2348fa39b49e31846b7" + integrity sha512-NblstegA1y/RJW2VyML+3LlpFjzx62cUrtBIKIWDXEDkjNeleA7Od7nrzcs/VLQvAeV4CgSYhrN39DRN88Qi/g== + dependencies: + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -progress@^2.0.0: - version "2.0.3" - resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" - integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== - prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -4569,11 +4877,23 @@ qs@6.2.3: resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" integrity sha1-HPyyXBCpsrSDBT/zn138kjOQjP4= -qs@6.9.6, qs@^6.9.4: +qs@6.9.3: + version "6.9.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e" + integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw== + +qs@6.9.6: version "6.9.6" resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.6.tgz#26ed3c8243a431b2924aca84cc90471f35d5a0ee" integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== +qs@^6.10.1: + version "6.10.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" + integrity sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ== + dependencies: + side-channel "^1.0.4" + queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -4823,7 +5143,7 @@ saxes@^5.0.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.5, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: +semver@7.3.5, semver@7.x, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== @@ -4938,6 +5258,15 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.6" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" @@ -5053,7 +5382,7 @@ socks@^2.3.3, socks@^2.6.1: ip "^1.1.5" smart-buffer "^4.1.0" -source-map-support@^0.5.17, source-map-support@^0.5.6: +source-map-support@^0.5.6: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -5242,30 +5571,30 @@ strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -superagent@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/superagent/-/superagent-6.1.0.tgz#09f08807bc41108ef164cfb4be293cebd480f4a6" - integrity sha512-OUDHEssirmplo3F+1HWKUrUjvnQuA+nZI6i/JJBdXb5eq9IyEQwPyPpqND+SSsxf6TygpBEkUjISVRN4/VOpeg== +superagent@^7.1.0: + version "7.1.1" + resolved "https://registry.yarnpkg.com/superagent/-/superagent-7.1.1.tgz#2ab187d38c3078c31c3771c0b751f10163a27136" + integrity sha512-CQ2weSS6M+doIwwYFoMatklhRbx6sVNdB99OEJ5czcP3cng76Ljqus694knFWgOj3RkrtxZqIgpe6vhe0J7QWQ== dependencies: component-emitter "^1.3.0" - cookiejar "^2.1.2" - debug "^4.1.1" - fast-safe-stringify "^2.0.7" - form-data "^3.0.0" - formidable "^1.2.2" + cookiejar "^2.1.3" + debug "^4.3.3" + fast-safe-stringify "^2.1.1" + form-data "^4.0.0" + formidable "^2.0.1" methods "^1.1.2" - mime "^2.4.6" - qs "^6.9.4" + mime "^2.5.0" + qs "^6.10.1" readable-stream "^3.6.0" - semver "^7.3.2" + semver "^7.3.5" -supertest@6.1.6: - version "6.1.6" - resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.1.6.tgz#6151c518f4c5ced2ac2aadb9f96f1bf8198174c8" - integrity sha512-0hACYGNJ8OHRg8CRITeZOdbjur7NLuNs0mBjVhdpxi7hP6t3QIbOzLON5RTUmZcy2I9riuII3+Pr2C7yztrIIg== +supertest@6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/supertest/-/supertest-6.2.2.tgz#04a5998fd3efaff187cb69f07a169755d655b001" + integrity sha512-wCw9WhAtKJsBvh07RaS+/By91NNE0Wh0DN19/hWPlBOU8tAfOtbZoVSV4xXeoKoxgPx0rx2y+y+8660XtE7jzg== dependencies: methods "^1.1.2" - superagent "^6.1.0" + superagent "^7.1.0" supports-color@^2.0.0: version "2.0.0" @@ -5431,10 +5760,10 @@ trim-newlines@^3.0.0: resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== -ts-jest@27.1.2: - version "27.1.2" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.2.tgz#5991d6eb3fd8e1a8d4b8f6de3ec0a3cc567f3151" - integrity sha512-eSOiJOWq6Hhs6Khzk5wKC5sgWIXgXqOCiIl1+3lfnearu58Hj4QpE5tUhQcA3xtZrELbcvAGCsd6HB8OsaVaTA== +ts-jest@27.1.3: + version "27.1.3" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-27.1.3.tgz#1f723e7e74027c4da92c0ffbd73287e8af2b2957" + integrity sha512-6Nlura7s6uM9BVUAoqLH7JHyMXjz8gluryjpPXxr3IxZdAXnU6FhjvVLHFtfd1vsE1p8zD1OJfskkc0jhTSnkA== dependencies: bs-logger "0.x" fast-json-stable-stringify "2.x" @@ -5445,16 +5774,22 @@ ts-jest@27.1.2: semver "7.x" yargs-parser "20.x" -ts-node@^9: - version "9.1.1" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-9.1.1.tgz#51a9a450a3e959401bda5f004a72d54b936d376d" - integrity sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg== - dependencies: +ts-node@^10.4.0: + version "10.4.0" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.4.0.tgz#680f88945885f4e6cf450e7f0d6223dd404895f7" + integrity sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A== + dependencies: + "@cspotcode/source-map-support" "0.7.0" + "@tsconfig/node10" "^1.0.7" + "@tsconfig/node12" "^1.0.7" + "@tsconfig/node14" "^1.0.0" + "@tsconfig/node16" "^1.0.2" + acorn "^8.4.1" + acorn-walk "^8.1.1" arg "^4.1.0" create-require "^1.1.0" diff "^4.0.1" make-error "^1.1.1" - source-map-support "^0.5.17" yn "3.1.1" tslib@^1.8.1: @@ -5462,7 +5797,7 @@ tslib@^1.8.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2, tslib@^2.0.1, tslib@^2.0.3: +tslib@^2.0.1, tslib@^2.0.3: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== @@ -5553,7 +5888,12 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@4.5.4, typescript@^4.4.3: +typescript@4.5.5: + version "4.5.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3" + integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA== + +typescript@^4.4.3: version "4.5.4" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.4.tgz#a17d3a0263bf5c8723b9c52f43c5084edf13c2e8" integrity sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg== @@ -5752,11 +6092,16 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" -ws@*, ws@8.3.0: +ws@*: version "8.3.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.3.0.tgz#7185e252c8973a60d57170175ff55fdbd116070d" integrity sha512-Gs5EZtpqZzLvmIM59w4igITU57lrtYVFneaa434VROv4thzJyV6UjIL3D42lslWlI+D4KzLYnxSwtfuiO79sNw== +ws@8.4.2: + version "8.4.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.4.2.tgz#18e749868d8439f2268368829042894b6907aa0b" + integrity sha512-Kbk4Nxyq7/ZWqr/tarI9yIt/+iNNFOjBXEWgTb4ydaNHBNGgvf2QHbS9fdfsndfjFlFwEd4Al+mw83YkaD10ZA== + ws@^7.3.1, ws@^7.4.6: version "7.5.6" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.6.tgz#e59fc509fb15ddfb65487ee9765c5a51dec5fe7b" From 6b5d7a8611ba0b400b1ee2796dada72c90e882bb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 23 Jan 2022 16:03:39 +0100 Subject: [PATCH 54/77] fix(types): fix type regression --- package.json | 3 +++ src/types.ts | 20 ++++++++------------ 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 7e79cb2f..8fcfa2db 100644 --- a/package.json +++ b/package.json @@ -90,6 +90,9 @@ "is-plain-obj": "^3.0.0", "micromatch": "^4.0.2" }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, "engines": { "node": ">=12.0.0" }, diff --git a/src/types.ts b/src/types.ts index 767a5688..55628aab 100644 --- a/src/types.ts +++ b/src/types.ts @@ -58,32 +58,28 @@ export type LogProviderCallback = (provider: LogProvider) => LogProvider; */ export type OnErrorCallback = ( err: Error, - req: http.IncomingMessage, - res: http.ServerResponse, + req: Request, + res: Response, target?: string | Partial ) => void; export type OnProxyResCallback = ( proxyRes: http.IncomingMessage, - req: http.IncomingMessage, - res: http.ServerResponse + req: Request, + res: Response ) => void; export type OnProxyReqCallback = ( proxyReq: http.ClientRequest, - req: http.IncomingMessage, - res: http.ServerResponse, + req: Request, + res: Response, options: httpProxy.ServerOptions ) => void; export type OnProxyReqWsCallback = ( proxyReq: http.ClientRequest, - req: http.IncomingMessage, + req: Request, socket: net.Socket, options: httpProxy.ServerOptions, head: any ) => void; -export type OnCloseCallback = ( - proxyRes: http.IncomingMessage, - proxySocket: net.Socket, - proxyHead: any -) => void; +export type OnCloseCallback = (proxyRes: Response, proxySocket: net.Socket, proxyHead: any) => void; export type OnOpenCallback = (proxySocket: net.Socket) => void; From 2bddd384885ddccc7ca59916623f7a2cd72b2a30 Mon Sep 17 00:00:00 2001 From: Marc Hassan Date: Sun, 23 Jan 2022 10:29:08 -0500 Subject: [PATCH 55/77] fix(fixRequestBody): fix request body for empty JSON object requests (#640) Co-authored-by: chimurai <655241+chimurai@users.noreply.github.com> --- src/handlers/fix-request-body.ts | 2 +- test/unit/fix-request-body.spec.ts | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index 500e6236..1855f569 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -8,7 +8,7 @@ import * as querystring from 'querystring'; export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingMessage): void { const requestBody = (req as Request).body; - if (!requestBody || !Object.keys(requestBody).length) { + if (!requestBody) { return; } diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts index 6ea56ba0..96677502 100644 --- a/test/unit/fix-request-body.spec.ts +++ b/test/unit/fix-request-body.spec.ts @@ -24,16 +24,17 @@ describe('fixRequestBody', () => { expect(proxyRequest.write).not.toHaveBeenCalled(); }); - it('should not write when body is empty', () => { + it('should write when body is an empty JSON object', () => { const proxyRequest = fakeProxyRequest(); + proxyRequest.setHeader('content-type', 'application/json; charset=utf-8'); jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); fixRequestBody(proxyRequest, { body: {} } as Request); - expect(proxyRequest.setHeader).not.toHaveBeenCalled(); - expect(proxyRequest.write).not.toHaveBeenCalled(); + expect(proxyRequest.setHeader).toHaveBeenCalled(); + expect(proxyRequest.write).toHaveBeenCalled(); }); it('should write when body is not empty and Content-Type is application/json', () => { From 7cfb81efbe5287dc37d073ff993fdf506ab0da7f Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 23 Jan 2022 15:34:40 +0000 Subject: [PATCH 56/77] chore(deps): update @types/http-proxy to 1.17.8 --- package.json | 2 +- yarn.lock | 15 +++++---------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/package.json b/package.json index 8fcfa2db..154a68b9 100644 --- a/package.json +++ b/package.json @@ -84,7 +84,7 @@ "ws": "8.4.2" }, "dependencies": { - "@types/http-proxy": "^1.17.5", + "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", "is-glob": "^4.0.1", "is-plain-obj": "^3.0.0", diff --git a/yarn.lock b/yarn.lock index ecbb3710..b6327878 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1075,10 +1075,10 @@ dependencies: "@types/node" "*" -"@types/http-proxy@^1.17.5": - version "1.17.5" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.5.tgz#c203c5e6e9dc6820d27a40eb1e511c70a220423d" - integrity sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q== +"@types/http-proxy@^1.17.8": + version "1.17.8" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.8.tgz#968c66903e7e42b483608030ee85800f22d03f55" + integrity sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA== dependencies: "@types/node" "*" @@ -1136,12 +1136,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*": - version "17.0.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.0.tgz#62797cee3b8b497f6547503b2312254d4fe3c2bb" - integrity sha512-eMhwJXc931Ihh4tkU+Y7GiLzT/y/DBNpNtr4yU9O2w3SYBsr9NaOPhQlLKRmoWtI54uNwuo0IOUFQjVOTZYRvw== - -"@types/node@17.0.10": +"@types/node@*", "@types/node@17.0.10": version "17.0.10" resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.10.tgz#616f16e9d3a2a3d618136b1be244315d95bd7cab" integrity sha512-S/3xB4KzyFxYGCppyDt68yzBU9ysL88lSdIah4D6cptdcltc4NCPCAMc0+PCpg/lLIyC7IPvj2Z52OJWeIUkog== From d7623983e18f0daa724a3fcc0b5d4d1812e4c3c1 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 23 Jan 2022 17:28:25 +0000 Subject: [PATCH 57/77] chore(package): v2.0.2 --- CHANGELOG.md | 6 ++++++ CONTRIBUTORS.txt | 1 + README.md | 3 ++- package.json | 2 +- 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ba4ab3b0..4c668e06 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +## [v2.0.2](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.2) + +- chore(deps): update @types/http-proxy to 1.17.8 ([#701](https://github.com/chimurai/http-proxy-middleware/pull/701)) +- fix(fixRequestBody): fix request body for empty JSON object requests ([#640](https://github.com/chimurai/http-proxy-middleware/pull/640)) ([mhassan1](https://github.com/mhassan1)) +- fix(types): fix type regression ([#700](https://github.com/chimurai/http-proxy-middleware/pull/700)) + ## [v2.0.1](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.1) - fix(fixRequestBody): fix type error ([#615](https://github.com/chimurai/http-proxy-middleware/pull/615)) diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 69c37fb6..25cd7981 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -9,6 +9,7 @@ graingert julbra leonardobazico Liran +mhassan1 midgleyc mpth oshri diff --git a/README.md b/README.md index e94dd152..f91ab166 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,7 @@ const express = require('express'); const { createProxyMiddleware } = require('http-proxy-middleware'); // proxy middleware options +/** @type {import('http-proxy-middleware/dist/types').Options} */ const options = { target: 'http://www.example.org', // target host changeOrigin: true, // needed for virtual hosted sites @@ -598,4 +599,4 @@ $ yarn spellcheck The MIT License (MIT) -Copyright (c) 2015-2021 Steven Chim +Copyright (c) 2015-2022 Steven Chim diff --git a/package.json b/package.json index 154a68b9..c270f73e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.1", + "version": "2.0.2", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From fbafdb4e9c61bb40041b55887c25b8dbbd083cc7 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 26 Jan 2022 21:37:54 +0000 Subject: [PATCH 58/77] feat(package): optional @types/express peer dependency --- package.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/package.json b/package.json index c270f73e..c1ec9b8c 100644 --- a/package.json +++ b/package.json @@ -93,6 +93,11 @@ "peerDependencies": { "@types/express": "^4.17.13" }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + }, "engines": { "node": ">=12.0.0" }, From cb466286e83782e868df966cd687a656df7a91f2 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Mon, 7 Feb 2022 19:42:54 +0100 Subject: [PATCH 59/77] chore(package): v2.0.3 --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c668e06..3081e958 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.3](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.3) + +- feat(package): optional @types/express peer dependency ([#707](https://github.com/chimurai/http-proxy-middleware/pull/707)) + ## [v2.0.2](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.2) - chore(deps): update @types/http-proxy to 1.17.8 ([#701](https://github.com/chimurai/http-proxy-middleware/pull/701)) diff --git a/package.json b/package.json index c1ec9b8c..54af4931 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.2", + "version": "2.0.3", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 7f99ed11a5f973e7e4f7ef8f827064c095aa8605 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Fri, 18 Feb 2022 20:34:56 +0100 Subject: [PATCH 60/77] chore(package): bump dev dependencies (#714) --- package.json | 24 +- yarn.lock | 1338 +++++++++++++++++++++++++++----------------------- 2 files changed, 743 insertions(+), 619 deletions(-) diff --git a/package.json b/package.json index 54af4931..779939d4 100644 --- a/package.json +++ b/package.json @@ -53,35 +53,35 @@ }, "homepage": "https://github.com/chimurai/http-proxy-middleware#readme", "devDependencies": { - "@commitlint/cli": "16.1.0", - "@commitlint/config-conventional": "16.0.0", + "@commitlint/cli": "16.2.1", + "@commitlint/config-conventional": "16.2.1", "@types/express": "4.17.13", "@types/is-glob": "4.0.2", "@types/jest": "27.4.0", "@types/micromatch": "4.0.2", - "@types/node": "17.0.10", + "@types/node": "17.0.18", "@types/supertest": "2.0.11", "@types/ws": "8.2.2", - "@typescript-eslint/eslint-plugin": "5.10.0", - "@typescript-eslint/parser": "5.10.0", - "body-parser": "1.19.1", + "@typescript-eslint/eslint-plugin": "5.12.0", + "@typescript-eslint/parser": "5.12.0", + "body-parser": "1.19.2", "browser-sync": "2.27.7", "connect": "3.7.0", - "eslint": "8.7.0", + "eslint": "8.9.0", "eslint-config-prettier": "8.3.0", "eslint-plugin-prettier": "4.0.0", - "express": "4.17.2", + "express": "4.17.3", "get-port": "5.1.1", "husky": "7.0.4", - "jest": "27.4.7", - "lint-staged": "12.2.2", - "mockttp": "2.5.1", + "jest": "27.5.1", + "lint-staged": "12.3.4", + "mockttp": "2.6.0", "open": "8.4.0", "prettier": "2.5.1", "supertest": "6.2.2", "ts-jest": "27.1.3", "typescript": "4.5.5", - "ws": "8.4.2" + "ws": "8.5.0" }, "dependencies": { "@types/http-proxy": "^1.17.8", diff --git a/yarn.lock b/yarn.lock index b6327878..3b8c65c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -476,84 +476,85 @@ resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== -"@commitlint/cli@16.1.0": - version "16.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-16.1.0.tgz#022ad86008374b02974c9f3faf86affb785f4574" - integrity sha512-x5L1knvA3isRWBRVQx+Q6D45pA9139a2aZQYpxkljMG0dj4UHZkCnsYWpnGalxPxASI7nrI0KedKfS2YeQ55cQ== - dependencies: - "@commitlint/format" "^16.0.0" - "@commitlint/lint" "^16.0.0" - "@commitlint/load" "^16.1.0" - "@commitlint/read" "^16.0.0" - "@commitlint/types" "^16.0.0" +"@commitlint/cli@16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/cli/-/cli-16.2.1.tgz#ca4e557829a2755f0e1f0cd69b56b83ce2510173" + integrity sha512-zfKf+B9osuiDbxGMJ7bWFv7XFCW8wlQYPtCffNp7Ukdb7mdrep5R9e03vPUZysnwp8NX6hg05kPEvnD/wRIGWw== + dependencies: + "@commitlint/format" "^16.2.1" + "@commitlint/lint" "^16.2.1" + "@commitlint/load" "^16.2.1" + "@commitlint/read" "^16.2.1" + "@commitlint/types" "^16.2.1" lodash "^4.17.19" resolve-from "5.0.0" resolve-global "1.0.0" yargs "^17.0.0" -"@commitlint/config-conventional@16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-16.0.0.tgz#f42d9e1959416b5e691c8b5248fc2402adb1fc03" - integrity sha512-mN7J8KlKFn0kROd+q9PB01sfDx/8K/R25yITspL1No8PB4oj9M1p77xWjP80hPydqZG9OvQq+anXK3ZWeR7s3g== +"@commitlint/config-conventional@16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/config-conventional/-/config-conventional-16.2.1.tgz#2cf47b505fb259777c063538c8498d8fd9b47779" + integrity sha512-cP9gArx7gnaj4IqmtCIcHdRjTYdRUi6lmGE+lOzGGjGe45qGOS8nyQQNvkNy2Ey2VqoSWuXXkD8zCUh6EHf1Ww== dependencies: conventional-changelog-conventionalcommits "^4.3.1" -"@commitlint/config-validator@^16.1.0": - version "16.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-16.1.0.tgz#410979f713ed55cbb85504d46295c1fd2419dc4d" - integrity sha512-2cHeZPNTuf1JWbMqyA46MkExor5HMSgv8JrdmzEakUbJHUreh35/wN00FJf57qGs134exQW2thiSQ1IJUsVx2Q== +"@commitlint/config-validator@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/config-validator/-/config-validator-16.2.1.tgz#794e769afd4756e4cf1bfd823b6612932e39c56d" + integrity sha512-hogSe0WGg7CKmp4IfNbdNES3Rq3UEI4XRPB8JL4EPgo/ORq5nrGTVzxJh78omibNuB8Ho4501Czb1Er1MoDWpw== dependencies: - "@commitlint/types" "^16.0.0" + "@commitlint/types" "^16.2.1" ajv "^6.12.6" -"@commitlint/ensure@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-16.0.0.tgz#fdac1e60a944a1993deb33b5e8454c559abe9866" - integrity sha512-WdMySU8DCTaq3JPf0tZFCKIUhqxaL54mjduNhu8v4D2AMUVIIQKYMGyvXn94k8begeW6iJkTf9cXBArayskE7Q== +"@commitlint/ensure@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/ensure/-/ensure-16.2.1.tgz#0fc538173f95c1eb2694eeedb79cab478347f16f" + integrity sha512-/h+lBTgf1r5fhbDNHOViLuej38i3rZqTQnBTk+xEg+ehOwQDXUuissQ5GsYXXqI5uGy+261ew++sT4EA3uBJ+A== dependencies: - "@commitlint/types" "^16.0.0" + "@commitlint/types" "^16.2.1" lodash "^4.17.19" -"@commitlint/execute-rule@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-16.0.0.tgz#824e11ba5b208c214a474ae52a51780d32d31ebc" - integrity sha512-8edcCibmBb386x5JTHSPHINwA5L0xPkHQFY8TAuDEt5QyRZY/o5DF8OPHSa5Hx2xJvGaxxuIz4UtAT6IiRDYkw== +"@commitlint/execute-rule@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/execute-rule/-/execute-rule-16.2.1.tgz#60be73be4b9af97a41546e7ce59fdd33787c65f8" + integrity sha512-oSls82fmUTLM6cl5V3epdVo4gHhbmBFvCvQGHBRdQ50H/690Uq1Dyd7hXMuKITCIdcnr9umyDkr8r5C6HZDF3g== -"@commitlint/format@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-16.0.0.tgz#6a6fb2c1e6460aff63cc6eca30a7807a96b0ce73" - integrity sha512-9yp5NCquXL1jVMKL0ZkRwJf/UHdebvCcMvICuZV00NQGYSAL89O398nhqrqxlbjBhM5EZVq0VGcV5+7r3D4zAA== +"@commitlint/format@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/format/-/format-16.2.1.tgz#6e673f710c799be78e68b2682323e04f75080d07" + integrity sha512-Yyio9bdHWmNDRlEJrxHKglamIk3d6hC0NkEUW6Ti6ipEh2g0BAhy8Od6t4vLhdZRa1I2n+gY13foy+tUgk0i1Q== dependencies: - "@commitlint/types" "^16.0.0" + "@commitlint/types" "^16.2.1" chalk "^4.0.0" -"@commitlint/is-ignored@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-16.0.0.tgz#5ab4c4a9c7444c1a8540f50a0f1a907dfd78eb70" - integrity sha512-gmAQcwIGC/R/Lp0CEb2b5bfGC7MT5rPe09N8kOGjO/NcdNmfFSZMquwrvNJsq9hnAP0skRdHIsqwlkENkN4Lag== +"@commitlint/is-ignored@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/is-ignored/-/is-ignored-16.2.1.tgz#cc688ec73a3d204b90f8086821a08814da461e5e" + integrity sha512-exl8HRzTIfb1YvDJp2b2HU5z1BT+9tmgxR2XF0YEzkMiCIuEKh+XLeocPr1VcvAKXv3Cmv5X/OfNRp+i+/HIhQ== dependencies: - "@commitlint/types" "^16.0.0" + "@commitlint/types" "^16.2.1" semver "7.3.5" -"@commitlint/lint@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-16.0.0.tgz#87151a935941073027907fd4752a2e3c83cebbfe" - integrity sha512-HNl15bRC0h+pLzbMzQC3tM0j1aESXsLYhElqKnXcf5mnCBkBkHzu6WwJW8rZbfxX+YwJmNljN62cPhmdBo8x0A== - dependencies: - "@commitlint/is-ignored" "^16.0.0" - "@commitlint/parse" "^16.0.0" - "@commitlint/rules" "^16.0.0" - "@commitlint/types" "^16.0.0" - -"@commitlint/load@^16.1.0": - version "16.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-16.1.0.tgz#7a884072ab915611080c5e99a1f1d999c05f4360" - integrity sha512-MtlEhKjP8jAF85jjX4mw8DUUwCxKsCgAc865hhpnwxjrfBcmGP7Up2AFE/M3ZMGDmSl1X1TMybQk/zohj8Cqdg== - dependencies: - "@commitlint/config-validator" "^16.1.0" - "@commitlint/execute-rule" "^16.0.0" - "@commitlint/resolve-extends" "^16.1.0" - "@commitlint/types" "^16.0.0" +"@commitlint/lint@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/lint/-/lint-16.2.1.tgz#c773f082cd4f69cb7807b805b691d2a52c732f97" + integrity sha512-fNINQ3X2ZqsCkNB3Z0Z8ElmhewqrS3gy2wgBTx97BkcjOWiyPAGwDJ752hwrsUnWAVBRztgw826n37xPzxsOgg== + dependencies: + "@commitlint/is-ignored" "^16.2.1" + "@commitlint/parse" "^16.2.1" + "@commitlint/rules" "^16.2.1" + "@commitlint/types" "^16.2.1" + +"@commitlint/load@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/load/-/load-16.2.1.tgz#301bda1bff66b3e40a85819f854eda72538d8e24" + integrity sha512-oSpz0jTyVI/A1AIImxJINTLDOMB8YF7lWGm+Jg5wVWM0r7ucpuhyViVvpSRTgvL0z09oIxlctyFGWUQQpI42uw== + dependencies: + "@commitlint/config-validator" "^16.2.1" + "@commitlint/execute-rule" "^16.2.1" + "@commitlint/resolve-extends" "^16.2.1" + "@commitlint/types" "^16.2.1" + "@types/node" ">=12" chalk "^4.0.0" cosmiconfig "^7.0.0" cosmiconfig-typescript-loader "^1.0.0" @@ -561,69 +562,69 @@ resolve-from "^5.0.0" typescript "^4.4.3" -"@commitlint/message@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-16.0.0.tgz#4a467341fc6bc49e5a3ead005dd6aa36fa856b87" - integrity sha512-CmK2074SH1Ws6kFMEKOKH/7hMekGVbOD6vb4alCOo2+33ZSLUIX8iNkDYyrw38Jwg6yWUhLjyQLUxREeV+QIUA== +"@commitlint/message@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/message/-/message-16.2.1.tgz#bc6a0fa446a746ac2ca78cf372e4cec48daf620d" + integrity sha512-2eWX/47rftViYg7a3axYDdrgwKv32mxbycBJT6OQY/MJM7SUfYNYYvbMFOQFaA4xIVZt7t2Alyqslbl6blVwWw== -"@commitlint/parse@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-16.0.0.tgz#5ce05af14edff806effc702ba910fcb32fcb192a" - integrity sha512-F9EjFlMw4MYgBEqoRrWZZKQBzdiJzPBI0qFDFqwUvfQsMmXEREZ242T4R5bFwLINWaALFLHEIa/FXEPa6QxCag== +"@commitlint/parse@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/parse/-/parse-16.2.1.tgz#50b359cb711ec566d2ee236a8e4c6baca07b77c0" + integrity sha512-2NP2dDQNL378VZYioLrgGVZhWdnJO4nAxQl5LXwYb08nEcN+cgxHN1dJV8OLJ5uxlGJtDeR8UZZ1mnQ1gSAD/g== dependencies: - "@commitlint/types" "^16.0.0" + "@commitlint/types" "^16.2.1" conventional-changelog-angular "^5.0.11" conventional-commits-parser "^3.2.2" -"@commitlint/read@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-16.0.0.tgz#92fab45d4e0e4d7d049427306500270b3e459221" - integrity sha512-H4T2zsfmYQK9B+JtoQaCXWBHUhgIJyOzWZjSfuIV9Ce69/OgHoffNpLZPF2lX6yKuDrS1SQFhI/kUCjVc/e4ew== +"@commitlint/read@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/read/-/read-16.2.1.tgz#e0539205d77cdb6879b560f95e5fb251e0c6f562" + integrity sha512-tViXGuaxLTrw2r7PiYMQOFA2fueZxnnt0lkOWqKyxT+n2XdEMGYcI9ID5ndJKXnfPGPppD0w/IItKsIXlZ+alw== dependencies: - "@commitlint/top-level" "^16.0.0" - "@commitlint/types" "^16.0.0" + "@commitlint/top-level" "^16.2.1" + "@commitlint/types" "^16.2.1" fs-extra "^10.0.0" git-raw-commits "^2.0.0" -"@commitlint/resolve-extends@^16.1.0": - version "16.1.0" - resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-16.1.0.tgz#4b199197c45ddb436b59ef319662de6870f68fd5" - integrity sha512-8182s6AFoUFX6+FT1PgQDt15nO2ogdR/EN8SYVAdhNXw1rLz8kT5saB/ICw567GuRAUgFTUMGCXy3ctMOXPEDg== +"@commitlint/resolve-extends@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/resolve-extends/-/resolve-extends-16.2.1.tgz#2f7833a5a3a7aa79f508e59fcb0f1d33c45ed360" + integrity sha512-NbbCMPKTFf2J805kwfP9EO+vV+XvnaHRcBy6ud5dF35dxMsvdJqke54W3XazXF1ZAxC4a3LBy4i/GNVBAthsEg== dependencies: - "@commitlint/config-validator" "^16.1.0" - "@commitlint/types" "^16.0.0" + "@commitlint/config-validator" "^16.2.1" + "@commitlint/types" "^16.2.1" import-fresh "^3.0.0" lodash "^4.17.19" resolve-from "^5.0.0" resolve-global "^1.0.0" -"@commitlint/rules@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-16.0.0.tgz#79d28c3678d2d1f7f1cdbedaedb30b01a86ee75b" - integrity sha512-AOl0y2SBTdJ1bvIv8nwHvQKRT/jC1xb09C5VZwzHoT8sE8F54KDeEzPCwHQFgUcWdGLyS10kkOTAH2MyA8EIlg== +"@commitlint/rules@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/rules/-/rules-16.2.1.tgz#7264aa1c754e1c212aeceb27e5eb380cfa7bb233" + integrity sha512-ZFezJXQaBBso+BOTre/+1dGCuCzlWVaeLiVRGypI53qVgPMzQqZhkCcrxBFeqB87qeyzr4A4EoG++IvITwwpIw== dependencies: - "@commitlint/ensure" "^16.0.0" - "@commitlint/message" "^16.0.0" - "@commitlint/to-lines" "^16.0.0" - "@commitlint/types" "^16.0.0" + "@commitlint/ensure" "^16.2.1" + "@commitlint/message" "^16.2.1" + "@commitlint/to-lines" "^16.2.1" + "@commitlint/types" "^16.2.1" execa "^5.0.0" -"@commitlint/to-lines@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-16.0.0.tgz#799980a89072302445baf595e20092fb86f0a58a" - integrity sha512-iN/qU38TCKU7uKOg6RXLpD49wNiuI0TqMqybHbjefUeP/Jmzxa8ishryj0uLyVdrAl1ZjGeD1ukXGMTtvqz8iA== +"@commitlint/to-lines@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/to-lines/-/to-lines-16.2.1.tgz#42d000f34dc0406f514991e86237fdab5e8affd0" + integrity sha512-9/VjpYj5j1QeY3eiog1zQWY6axsdWAc0AonUUfyZ7B0MVcRI0R56YsHAfzF6uK/g/WwPZaoe4Lb1QCyDVnpVaQ== -"@commitlint/top-level@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-16.0.0.tgz#7c2efc33cc37df839b3de558c0bc2eaddb64efe6" - integrity sha512-/Jt6NLxyFkpjL5O0jxurZPCHURZAm7cQCqikgPCwqPAH0TLgwqdHjnYipl8J+AGnAMGDip4FNLoYrtgIpZGBYw== +"@commitlint/top-level@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/top-level/-/top-level-16.2.1.tgz#bdaa53ab3d8970e0288879f1a342a8c2dfe01583" + integrity sha512-lS6GSieHW9y6ePL73ied71Z9bOKyK+Ib9hTkRsB8oZFAyQZcyRwq2w6nIa6Fngir1QW51oKzzaXfJL94qwImyw== dependencies: find-up "^5.0.0" -"@commitlint/types@^16.0.0": - version "16.0.0" - resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-16.0.0.tgz#3c133f106d36132756c464071a7f2290966727a3" - integrity sha512-+0FvYOAS39bJ4aKjnYn/7FD4DfWkmQ6G/06I4F0Gvu4KS5twirEg8mIcLhmeRDOOKn4Tp8PwpLwBiSA6npEMQA== +"@commitlint/types@^16.2.1": + version "16.2.1" + resolved "https://registry.yarnpkg.com/@commitlint/types/-/types-16.2.1.tgz#f25d373b88b01e51fc3fa44488101361945a61bd" + integrity sha512-7/z7pA7BM0i8XvMSBynO7xsB3mVQPUZbVn6zMIlp/a091XJ3qAXRXc+HwLYhiIdzzS5fuxxNIHZMGHVD4HJxdA== dependencies: chalk "^4.0.0" @@ -639,14 +640,14 @@ dependencies: "@cspotcode/source-map-consumer" "0.8.0" -"@eslint/eslintrc@^1.0.5": - version "1.0.5" - resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.0.5.tgz#33f1b838dbf1f923bfa517e008362b78ddbbf318" - integrity sha512-BLxsnmK3KyPunz5wmCCpqy0YelEoxxGmH73Is+Z74oOTMtExcjkr3dDR6quwrjh1YspA8DH9gnX1o069KiS9AQ== +"@eslint/eslintrc@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.1.0.tgz#583d12dbec5d4f22f333f9669f7d0b7c7815b4d3" + integrity sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg== dependencies: ajv "^6.12.4" debug "^4.3.2" - espree "^9.2.0" + espree "^9.3.1" globals "^13.9.0" ignore "^4.0.6" import-fresh "^3.2.1" @@ -757,158 +758,158 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== -"@jest/console@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.4.6.tgz#0742e6787f682b22bdad56f9db2a8a77f6a86107" - integrity sha512-jauXyacQD33n47A44KrlOVeiXHEXDqapSdfb9kTekOchH/Pd18kBIO1+xxJQRLuG+LUuljFCwTG92ra4NW7SpA== +"@jest/console@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" + integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^27.4.6" - jest-util "^27.4.2" + jest-message-util "^27.5.1" + jest-util "^27.5.1" slash "^3.0.0" -"@jest/core@^27.4.7": - version "27.4.7" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.4.7.tgz#84eabdf42a25f1fa138272ed229bcf0a1b5e6913" - integrity sha512-n181PurSJkVMS+kClIFSX/LLvw9ExSb+4IMtD6YnfxZVerw9ANYtW0bPrm0MJu2pfe9SY9FJ9FtQ+MdZkrZwjg== +"@jest/core@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" + integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== dependencies: - "@jest/console" "^27.4.6" - "@jest/reporters" "^27.4.6" - "@jest/test-result" "^27.4.6" - "@jest/transform" "^27.4.6" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/reporters" "^27.5.1" + "@jest/test-result" "^27.5.1" + "@jest/transform" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" emittery "^0.8.1" exit "^0.1.2" - graceful-fs "^4.2.4" - jest-changed-files "^27.4.2" - jest-config "^27.4.7" - jest-haste-map "^27.4.6" - jest-message-util "^27.4.6" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.6" - jest-resolve-dependencies "^27.4.6" - jest-runner "^27.4.6" - jest-runtime "^27.4.6" - jest-snapshot "^27.4.6" - jest-util "^27.4.2" - jest-validate "^27.4.6" - jest-watcher "^27.4.6" + graceful-fs "^4.2.9" + jest-changed-files "^27.5.1" + jest-config "^27.5.1" + jest-haste-map "^27.5.1" + jest-message-util "^27.5.1" + jest-regex-util "^27.5.1" + jest-resolve "^27.5.1" + jest-resolve-dependencies "^27.5.1" + jest-runner "^27.5.1" + jest-runtime "^27.5.1" + jest-snapshot "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" + jest-watcher "^27.5.1" micromatch "^4.0.4" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.4.6.tgz#1e92885d64f48c8454df35ed9779fbcf31c56d8b" - integrity sha512-E6t+RXPfATEEGVidr84WngLNWZ8ffCPky8RqqRK6u1Bn0LK92INe0MDttyPl/JOzaq92BmDzOeuqk09TvM22Sg== +"@jest/environment@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" + integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== dependencies: - "@jest/fake-timers" "^27.4.6" - "@jest/types" "^27.4.2" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.6" + jest-mock "^27.5.1" -"@jest/fake-timers@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.4.6.tgz#e026ae1671316dbd04a56945be2fa251204324e8" - integrity sha512-mfaethuYF8scV8ntPpiVGIHQgS0XIALbpY2jt2l7wb/bvq4Q5pDLk4EP4D7SAvYT1QrPOPVZAtbdGAOOyIgs7A== +"@jest/fake-timers@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" + integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@sinonjs/fake-timers" "^8.0.1" "@types/node" "*" - jest-message-util "^27.4.6" - jest-mock "^27.4.6" - jest-util "^27.4.2" + jest-message-util "^27.5.1" + jest-mock "^27.5.1" + jest-util "^27.5.1" -"@jest/globals@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.4.6.tgz#3f09bed64b0fd7f5f996920258bd4be8f52f060a" - integrity sha512-kAiwMGZ7UxrgPzu8Yv9uvWmXXxsy0GciNejlHvfPIfWkSxChzv6bgTS3YqBkGuHcis+ouMFI2696n2t+XYIeFw== +"@jest/globals@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" + integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== dependencies: - "@jest/environment" "^27.4.6" - "@jest/types" "^27.4.2" - expect "^27.4.6" + "@jest/environment" "^27.5.1" + "@jest/types" "^27.5.1" + expect "^27.5.1" -"@jest/reporters@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.4.6.tgz#b53dec3a93baf9b00826abf95b932de919d6d8dd" - integrity sha512-+Zo9gV81R14+PSq4wzee4GC2mhAN9i9a7qgJWL90Gpx7fHYkWpTBvwWNZUXvJByYR9tAVBdc8VxDWqfJyIUrIQ== +"@jest/reporters@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" + integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.4.6" - "@jest/test-result" "^27.4.6" - "@jest/transform" "^27.4.6" - "@jest/types" "^27.4.2" + "@jest/console" "^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" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.2" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" istanbul-lib-coverage "^3.0.0" istanbul-lib-instrument "^5.1.0" istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.1.3" - jest-haste-map "^27.4.6" - jest-resolve "^27.4.6" - jest-util "^27.4.2" - jest-worker "^27.4.6" + jest-haste-map "^27.5.1" + jest-resolve "^27.5.1" + jest-util "^27.5.1" + jest-worker "^27.5.1" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" v8-to-istanbul "^8.1.0" -"@jest/source-map@^27.4.0": - version "27.4.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.4.0.tgz#2f0385d0d884fb3e2554e8f71f8fa957af9a74b6" - integrity sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ== +"@jest/source-map@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" + integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== dependencies: callsites "^3.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" source-map "^0.6.0" -"@jest/test-result@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.4.6.tgz#b3df94c3d899c040f602cea296979844f61bdf69" - integrity sha512-fi9IGj3fkOrlMmhQqa/t9xum8jaJOOAi/lZlm6JXSc55rJMXKHxNDN1oCP39B0/DhNOa2OMupF9BcKZnNtXMOQ== +"@jest/test-result@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" + integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== dependencies: - "@jest/console" "^27.4.6" - "@jest/types" "^27.4.2" + "@jest/console" "^27.5.1" + "@jest/types" "^27.5.1" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.4.6.tgz#447339b8a3d7b5436f50934df30854e442a9d904" - integrity sha512-3GL+nsf6E1PsyNsJuvPyIz+DwFuCtBdtvPpm/LMXVkBJbdFvQYCDpccYT56qq5BGniXWlE81n2qk1sdXfZebnw== +"@jest/test-sequencer@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" + integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== dependencies: - "@jest/test-result" "^27.4.6" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.6" - jest-runtime "^27.4.6" + "@jest/test-result" "^27.5.1" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-runtime "^27.5.1" -"@jest/transform@^27.4.6": - version "27.4.6" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.4.6.tgz#153621940b1ed500305eacdb31105d415dc30231" - integrity sha512-9MsufmJC8t5JTpWEQJ0OcOOAXaH5ioaIX6uHVBLBMoCZPfKKQF+EqP8kACAvCZ0Y1h2Zr3uOccg8re+Dr5jxyw== +"@jest/transform@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" + integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" babel-plugin-istanbul "^6.1.1" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.6" - jest-regex-util "^27.4.0" - jest-util "^27.4.2" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" + jest-regex-util "^27.5.1" + jest-util "^27.5.1" micromatch "^4.0.4" pirates "^4.0.4" slash "^3.0.0" @@ -926,6 +927,17 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^27.5.1": + version "27.5.1" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" @@ -1136,11 +1148,16 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*", "@types/node@17.0.10": +"@types/node@*": version "17.0.10" resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.10.tgz#616f16e9d3a2a3d618136b1be244315d95bd7cab" integrity sha512-S/3xB4KzyFxYGCppyDt68yzBU9ysL88lSdIah4D6cptdcltc4NCPCAMc0+PCpg/lLIyC7IPvj2Z52OJWeIUkog== +"@types/node@17.0.18", "@types/node@>=12": + version "17.0.18" + resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.18.tgz#3b4fed5cfb58010e3a2be4b6e74615e4847f1074" + integrity sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA== + "@types/node@^16.7.10": version "16.11.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.6.tgz#6bef7a2a0ad684cf6e90fcfe31cecabd9ce0a3ae" @@ -1218,14 +1235,14 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.10.0.tgz#e90afea96dff8620892ad216b0e4ccdf8ee32d3a" - integrity sha512-XXVKnMsq2fuu9K2KsIxPUGqb6xAImz8MEChClbXmE3VbveFtBUU5bzM6IPVWqzyADIgdkS2Ws/6Xo7W2TeZWjQ== +"@typescript-eslint/eslint-plugin@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.12.0.tgz#bb46dd7ce7015c0928b98af1e602118e97df6c70" + integrity sha512-fwCMkDimwHVeIOKeBHiZhRUfJXU8n6xW1FL9diDxAyGAFvKcH4csy0v7twivOQdQdA0KC8TDr7GGRd3L4Lv0rQ== dependencies: - "@typescript-eslint/scope-manager" "5.10.0" - "@typescript-eslint/type-utils" "5.10.0" - "@typescript-eslint/utils" "5.10.0" + "@typescript-eslint/scope-manager" "5.12.0" + "@typescript-eslint/type-utils" "5.12.0" + "@typescript-eslint/utils" "5.12.0" debug "^4.3.2" functional-red-black-tree "^1.0.1" ignore "^5.1.8" @@ -1233,69 +1250,69 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/parser@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.10.0.tgz#8f59e036f5f1cffc178cacbd5ccdd02aeb96c91c" - integrity sha512-pJB2CCeHWtwOAeIxv8CHVGJhI5FNyJAIpx5Pt72YkK3QfEzt6qAlXZuyaBmyfOdM62qU0rbxJzNToPTVeJGrQw== +"@typescript-eslint/parser@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.12.0.tgz#0ca669861813df99ce54916f66f524c625ed2434" + integrity sha512-MfSwg9JMBojMUoGjUmX+D2stoQj1CBYTCP0qnnVtu9A+YQXVKNtLjasYh+jozOcrb/wau8TCfWOkQTiOAruBog== dependencies: - "@typescript-eslint/scope-manager" "5.10.0" - "@typescript-eslint/types" "5.10.0" - "@typescript-eslint/typescript-estree" "5.10.0" + "@typescript-eslint/scope-manager" "5.12.0" + "@typescript-eslint/types" "5.12.0" + "@typescript-eslint/typescript-estree" "5.12.0" debug "^4.3.2" -"@typescript-eslint/scope-manager@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.10.0.tgz#bb5d872e8b9e36203908595507fbc4d3105329cb" - integrity sha512-tgNgUgb4MhqK6DoKn3RBhyZ9aJga7EQrw+2/OiDk5hKf3pTVZWyqBi7ukP+Z0iEEDMF5FDa64LqODzlfE4O/Dg== +"@typescript-eslint/scope-manager@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.12.0.tgz#59619e6e5e2b1ce6cb3948b56014d3a24da83f5e" + integrity sha512-GAMobtIJI8FGf1sLlUWNUm2IOkIjvn7laFWyRx7CLrv6nLBI7su+B7lbStqVlK5NdLvHRFiJo2HhiDF7Ki01WQ== dependencies: - "@typescript-eslint/types" "5.10.0" - "@typescript-eslint/visitor-keys" "5.10.0" + "@typescript-eslint/types" "5.12.0" + "@typescript-eslint/visitor-keys" "5.12.0" -"@typescript-eslint/type-utils@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.10.0.tgz#8524b9479c19c478347a7df216827e749e4a51e5" - integrity sha512-TzlyTmufJO5V886N+hTJBGIfnjQDQ32rJYxPaeiyWKdjsv2Ld5l8cbS7pxim4DeNs62fKzRSt8Q14Evs4JnZyQ== +"@typescript-eslint/type-utils@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.12.0.tgz#aaf45765de71c6d9707c66ccff76ec2b9aa31bb6" + integrity sha512-9j9rli3zEBV+ae7rlbBOotJcI6zfc6SHFMdKI9M3Nc0sy458LJ79Os+TPWeBBL96J9/e36rdJOfCuyRSgFAA0Q== dependencies: - "@typescript-eslint/utils" "5.10.0" + "@typescript-eslint/utils" "5.12.0" debug "^4.3.2" tsutils "^3.21.0" -"@typescript-eslint/types@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.10.0.tgz#beb3cb345076f5b088afe996d57bcd1dfddaa75c" - integrity sha512-wUljCgkqHsMZbw60IbOqT/puLfyqqD5PquGiBo1u1IS3PLxdi3RDGlyf032IJyh+eQoGhz9kzhtZa+VC4eWTlQ== +"@typescript-eslint/types@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.12.0.tgz#5b4030a28222ee01e851836562c07769eecda0b8" + integrity sha512-JowqbwPf93nvf8fZn5XrPGFBdIK8+yx5UEGs2QFAYFI8IWYfrzz+6zqlurGr2ctShMaJxqwsqmra3WXWjH1nRQ== -"@typescript-eslint/typescript-estree@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.10.0.tgz#4be24a3dea0f930bb1397c46187d0efdd955a224" - integrity sha512-x+7e5IqfwLwsxTdliHRtlIYkgdtYXzE0CkFeV6ytAqq431ZyxCFzNMNR5sr3WOlIG/ihVZr9K/y71VHTF/DUQA== +"@typescript-eslint/typescript-estree@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.12.0.tgz#cabf545fd592722f0e2b4104711e63bf89525cd2" + integrity sha512-Dd9gVeOqt38QHR0BEA8oRaT65WYqPYbIc5tRFQPkfLquVEFPD1HAtbZT98TLBkEcCkvwDYOAvuSvAD9DnQhMfQ== dependencies: - "@typescript-eslint/types" "5.10.0" - "@typescript-eslint/visitor-keys" "5.10.0" + "@typescript-eslint/types" "5.12.0" + "@typescript-eslint/visitor-keys" "5.12.0" debug "^4.3.2" globby "^11.0.4" is-glob "^4.0.3" semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/utils@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.10.0.tgz#c3d152a85da77c400e37281355561c72fb1b5a65" - integrity sha512-IGYwlt1CVcFoE2ueW4/ioEwybR60RAdGeiJX/iDAw0t5w0wK3S7QncDwpmsM70nKgGTuVchEWB8lwZwHqPAWRg== +"@typescript-eslint/utils@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.12.0.tgz#92fd3193191621ab863add2f553a7b38b65646af" + integrity sha512-k4J2WovnMPGI4PzKgDtQdNrCnmBHpMUFy21qjX2CoPdoBcSBIMvVBr9P2YDP8jOqZOeK3ThOL6VO/sy6jtnvzw== dependencies: "@types/json-schema" "^7.0.9" - "@typescript-eslint/scope-manager" "5.10.0" - "@typescript-eslint/types" "5.10.0" - "@typescript-eslint/typescript-estree" "5.10.0" + "@typescript-eslint/scope-manager" "5.12.0" + "@typescript-eslint/types" "5.12.0" + "@typescript-eslint/typescript-estree" "5.12.0" eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/visitor-keys@5.10.0": - version "5.10.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.10.0.tgz#770215497ad67cd15a572b52089991d5dfe06281" - integrity sha512-GMxj0K1uyrFLPKASLmZzCuSddmjZVbVj3Ouy5QVuIGKZopxvOr24JsS7gruz6C3GExE01mublZ3mIBOaon9zuQ== +"@typescript-eslint/visitor-keys@5.12.0": + version "5.12.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.12.0.tgz#1ac9352ed140b07ba144ebf371b743fdf537ec16" + integrity sha512-cFwTlgnMV6TgezQynx2c/4/tx9Tufbuo9LPzmWqyRC3QC4qTGkAG1C6pBr0/4I10PAI/FlYunI3vJjIcu+ZHMg== dependencies: - "@typescript-eslint/types" "5.10.0" + "@typescript-eslint/types" "5.12.0" eslint-visitor-keys "^3.0.0" JSONStream@^1.0.4: @@ -1319,6 +1336,14 @@ accepts@^1.3.7, accepts@~1.3.4, accepts@~1.3.7: mime-types "~2.1.24" negotiator "0.6.2" +accepts@~1.3.8: + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== + dependencies: + mime-types "~2.1.34" + negotiator "0.6.3" + acorn-globals@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" @@ -1337,7 +1362,7 @@ acorn-walk@^7.1.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.1.1: +acorn-walk@^8.1.1, acorn-walk@^8.2.0: version "8.2.0" resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== @@ -1347,7 +1372,7 @@ acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.2.4, acorn@^8.6.0: +acorn@^8.2.4: version "8.6.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895" integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw== @@ -1534,18 +1559,18 @@ axios@0.21.4: dependencies: follow-redirects "^1.14.0" -babel-jest@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.4.6.tgz#4d024e69e241cdf4f396e453a07100f44f7ce314" - integrity sha512-qZL0JT0HS1L+lOuH+xC2DVASR3nunZi/ozGhpgauJHgmI7f8rudxf6hUjEHympdQ/J64CdKmPkgfJ+A3U6QCrg== +babel-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" + integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== dependencies: - "@jest/transform" "^27.4.6" - "@jest/types" "^27.4.2" + "@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.4.0" + babel-preset-jest "^27.5.1" chalk "^4.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" slash "^3.0.0" babel-plugin-istanbul@^6.1.1: @@ -1559,10 +1584,10 @@ babel-plugin-istanbul@^6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" -babel-plugin-jest-hoist@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.4.0.tgz#d7831fc0f93573788d80dee7e682482da4c730d6" - integrity sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw== +babel-plugin-jest-hoist@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" + integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== dependencies: "@babel/template" "^7.3.3" "@babel/types" "^7.3.3" @@ -1587,12 +1612,12 @@ babel-preset-current-node-syntax@^1.0.0: "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-top-level-await" "^7.8.3" -babel-preset-jest@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.4.0.tgz#70d0e676a282ccb200fbabd7f415db5fdf393bca" - integrity sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg== +babel-preset-jest@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" + integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== dependencies: - babel-plugin-jest-hoist "^27.4.0" + babel-plugin-jest-hoist "^27.5.1" babel-preset-current-node-syntax "^1.0.0" backo2@1.0.2, backo2@^1.0.2: @@ -1651,6 +1676,22 @@ body-parser@1.19.1, body-parser@^1.15.2: raw-body "2.4.2" type-is "~1.6.18" +body-parser@1.19.2: + version "1.19.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.2.tgz#4714ccd9c157d44797b8b5607d72c0b89952f26e" + integrity sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw== + dependencies: + bytes "3.1.2" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.2" + http-errors "1.8.1" + iconv-lite "0.4.24" + on-finished "~2.3.0" + qs "6.9.7" + raw-body "2.4.3" + type-is "~1.6.18" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -1779,6 +1820,11 @@ bytes@3.1.1: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a" integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg== +bytes@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" + integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== + cacheable-lookup@^6.0.0: version "6.0.4" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-6.0.4.tgz#65c0e51721bb7f9f2cb513aed6da4a1b93ad7dc8" @@ -2110,6 +2156,11 @@ cookie@0.4.1, cookie@~0.4.1: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== +cookie@0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== + cookiejar@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.3.tgz#fc7a6216e408e74414b90230050842dacda75acc" @@ -2341,6 +2392,11 @@ diff-sequences@^27.4.0: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.4.0.tgz#d783920ad8d06ec718a060d00196dfef25b132a5" integrity sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww== +diff-sequences@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== + diff@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" @@ -2556,10 +2612,10 @@ eslint-scope@^5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -eslint-scope@^7.1.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.0.tgz#c1f6ea30ac583031f203d65c73e723b01298f153" - integrity sha512-aWwkhnS0qAXqNOgKOK0dJ2nvzEbhEvpy8OlJ9kZ0FeZnA6zpjv1/Vei+puGFFX7zkPCkHHXb7IDX3A+7yPrRWg== +eslint-scope@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" + integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== dependencies: esrecurse "^4.3.0" estraverse "^5.2.0" @@ -2576,22 +2632,22 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.1.0: +eslint-visitor-keys@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz#eee4acea891814cda67a7d8812d9647dd0179af2" integrity sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA== -eslint-visitor-keys@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.2.0.tgz#6fbb166a6798ee5991358bc2daa1ba76cc1254a1" - integrity sha512-IOzT0X126zn7ALX0dwFiUQEdsfzrm4+ISsQS8nukaJXwEyYKRSnEIIDULYg1mCtGp7UUXgfGl7BIolXREQK+XQ== +eslint-visitor-keys@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" + integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== -eslint@8.7.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.7.0.tgz#22e036842ee5b7cf87b03fe237731675b4d3633c" - integrity sha512-ifHYzkBGrzS2iDU7KjhCAVMGCvF6M3Xfs8X8b37cgrUlDt6bWRTpRh6T/gtSXv1HJ/BUGgmjvNvOEGu85Iif7w== +eslint@8.9.0: + version "8.9.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.9.0.tgz#a2a8227a99599adc4342fd9b854cb8d8d6412fdb" + integrity sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q== dependencies: - "@eslint/eslintrc" "^1.0.5" + "@eslint/eslintrc" "^1.1.0" "@humanwhocodes/config-array" "^0.9.2" ajv "^6.10.0" chalk "^4.0.0" @@ -2599,10 +2655,10 @@ eslint@8.7.0: debug "^4.3.2" doctrine "^3.0.0" escape-string-regexp "^4.0.0" - eslint-scope "^7.1.0" + eslint-scope "^7.1.1" eslint-utils "^3.0.0" - eslint-visitor-keys "^3.2.0" - espree "^9.3.0" + eslint-visitor-keys "^3.3.0" + espree "^9.3.1" esquery "^1.4.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -2627,23 +2683,14 @@ eslint@8.7.0: text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^9.2.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.2.0.tgz#c50814e01611c2d0f8bd4daa83c369eabba80dbc" - integrity sha512-oP3utRkynpZWF/F2x/HZJ+AGtnIclaR7z1pYPxy7NYM2fSO6LgK/Rkny8anRSPK/VwEA1eqm2squui0T7ZMOBg== - dependencies: - acorn "^8.6.0" - acorn-jsx "^5.3.1" - eslint-visitor-keys "^3.1.0" - -espree@^9.3.0: - version "9.3.0" - resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.0.tgz#c1240d79183b72aaee6ccfa5a90bc9111df085a8" - integrity sha512-d/5nCsb0JcqsSEeQzFZ8DH1RmxPcglRWh24EFTlUEmCKoehXGdpsx0RkHDubqUI8LSAIKMQp4r9SzQ3n+sm4HQ== +espree@^9.3.1: + version "9.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd" + integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ== dependencies: acorn "^8.7.0" acorn-jsx "^5.3.1" - eslint-visitor-keys "^3.1.0" + eslint-visitor-keys "^3.3.0" esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" @@ -2714,15 +2761,15 @@ exit@^0.1.2: resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= -expect@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.4.6.tgz#f335e128b0335b6ceb4fcab67ece7cbd14c942e6" - integrity sha512-1M/0kAALIaj5LaG66sFJTbRsWTADnylly82cu4bspI0nl+pgP4E6Bh/aqdHlTUjul06K7xQnnrAoqfxVU0+/ag== +expect@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" + integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== dependencies: - "@jest/types" "^27.4.2" - jest-get-type "^27.4.0" - jest-matcher-utils "^27.4.6" - jest-message-util "^27.4.6" + "@jest/types" "^27.5.1" + jest-get-type "^27.5.1" + jest-matcher-utils "^27.5.1" + jest-message-util "^27.5.1" express-graphql@^0.11.0: version "0.11.0" @@ -2734,7 +2781,43 @@ express-graphql@^0.11.0: http-errors "1.8.0" raw-body "^2.4.1" -express@4.17.2, express@^4.14.0: +express@4.17.3: + version "4.17.3" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.3.tgz#f6c7302194a4fb54271b73a1fe7a06478c8f85a1" + integrity sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg== + dependencies: + accepts "~1.3.8" + array-flatten "1.1.1" + body-parser "1.19.2" + content-disposition "0.5.4" + content-type "~1.0.4" + cookie "0.4.2" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.2" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.1.2" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.7" + qs "6.9.7" + range-parser "~1.2.1" + safe-buffer "5.2.1" + send "0.17.2" + serve-static "1.14.2" + setprototypeof "1.2.0" + statuses "~1.5.0" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +express@^4.14.0: version "4.17.2" resolved "https://registry.yarnpkg.com/express/-/express-4.17.2.tgz#c18369f265297319beed4e5558753cc8c1364cb3" integrity sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg== @@ -2902,9 +2985,9 @@ flatted@^3.1.0: integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.14.7" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.7.tgz#2004c02eb9436eee9a21446a6477debf17e81685" - integrity sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ== + version "1.14.9" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" + integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== form-data@^3.0.0: version "3.0.1" @@ -3118,6 +3201,11 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== +graceful-fs@^4.2.9: + version "4.2.9" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" + integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== + graphql-subscriptions@^1.1.0: version "1.2.1" resolved "https://registry.yarnpkg.com/graphql-subscriptions/-/graphql-subscriptions-1.2.1.tgz#2142b2d729661ddf967b7388f7cf1dd4cf2e061d" @@ -3205,13 +3293,13 @@ html-escaper@^2.0.0: resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== -http-encoding@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/http-encoding/-/http-encoding-1.4.0.tgz#d4645dbb5963d8bb58643c47d27d2f565ebdfadc" - integrity sha512-/9OTWAsy31YMNpt7JRAZGsfUFFkkqdPR7TNXVSnrJ0UjrBHhx1CUa3veMjS6vSpCq3sU4wpIgVoK/snv80RTPQ== +http-encoding@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/http-encoding/-/http-encoding-1.5.0.tgz#bdc98d1900c0901ea87506930b52fc9839797eb7" + integrity sha512-C/Lzx/4zdElYL3Her+bc/wX8oJuQkp3G+HTGXlSS2GINfj7LWqlwZsn2iZr4CExPqno7oPNgFfALhgscf9qnzA== dependencies: brotli-wasm "^1.1.0" - zstd-codec "^0.1.2" + zstd-codec "^0.1.4" http-errors@1.8.0: version "1.8.0" @@ -3564,85 +3652,87 @@ iterall@^1.2.1, iterall@^1.3.0: resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.3.0.tgz#afcb08492e2915cbd8a0884eb93a8c94d0d72fea" integrity sha512-QZ9qOMdF+QLHxy1QIpUHUU1D5pS2CG2P69LF6L6CPjPYA/XMOmKV3PZpawHoAjHNyB0swdVTRxdYT4tbBbxqwg== -jest-changed-files@^27.4.2: - version "27.4.2" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.4.2.tgz#da2547ea47c6e6a5f6ed336151bd2075736eb4a5" - integrity sha512-/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A== +jest-changed-files@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" + integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" execa "^5.0.0" throat "^6.0.1" -jest-circus@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.4.6.tgz#d3af34c0eb742a967b1919fbb351430727bcea6c" - integrity sha512-UA7AI5HZrW4wRM72Ro80uRR2Fg+7nR0GESbSI/2M+ambbzVuA63mn5T1p3Z/wlhntzGpIG1xx78GP2YIkf6PhQ== +jest-circus@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" + integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== dependencies: - "@jest/environment" "^27.4.6" - "@jest/test-result" "^27.4.6" - "@jest/types" "^27.4.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.4.6" + expect "^27.5.1" is-generator-fn "^2.0.0" - jest-each "^27.4.6" - jest-matcher-utils "^27.4.6" - jest-message-util "^27.4.6" - jest-runtime "^27.4.6" - jest-snapshot "^27.4.6" - jest-util "^27.4.2" - pretty-format "^27.4.6" + 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" -jest-cli@^27.4.7: - version "27.4.7" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.4.7.tgz#d00e759e55d77b3bcfea0715f527c394ca314e5a" - integrity sha512-zREYhvjjqe1KsGV15mdnxjThKNDgza1fhDT+iUsXWLCq3sxe9w5xnvyctcYVT5PcdLSjv7Y5dCwTS3FCF1tiuw== +jest-cli@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" + integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== dependencies: - "@jest/core" "^27.4.7" - "@jest/test-result" "^27.4.6" - "@jest/types" "^27.4.2" + "@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.4" + graceful-fs "^4.2.9" import-local "^3.0.2" - jest-config "^27.4.7" - jest-util "^27.4.2" - jest-validate "^27.4.6" + jest-config "^27.5.1" + jest-util "^27.5.1" + jest-validate "^27.5.1" prompts "^2.0.1" yargs "^16.2.0" -jest-config@^27.4.7: - version "27.4.7" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.4.7.tgz#4f084b2acbd172c8b43aa4cdffe75d89378d3972" - integrity sha512-xz/o/KJJEedHMrIY9v2ParIoYSrSVY6IVeE4z5Z3i101GoA5XgfbJz+1C8EYPsv7u7f39dS8F9v46BHDhn0vlw== +jest-config@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" + integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== dependencies: "@babel/core" "^7.8.0" - "@jest/test-sequencer" "^27.4.6" - "@jest/types" "^27.4.2" - babel-jest "^27.4.6" + "@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.4" - jest-circus "^27.4.6" - jest-environment-jsdom "^27.4.6" - jest-environment-node "^27.4.6" - jest-get-type "^27.4.0" - jest-jasmine2 "^27.4.6" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.6" - jest-runner "^27.4.6" - jest-util "^27.4.2" - jest-validate "^27.4.6" + 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" - pretty-format "^27.4.6" + parse-json "^5.2.0" + pretty-format "^27.5.1" slash "^3.0.0" + strip-json-comments "^3.1.1" jest-diff@^27.0.0: version "27.4.2" @@ -3654,146 +3744,151 @@ jest-diff@^27.0.0: jest-get-type "^27.4.0" pretty-format "^27.4.2" -jest-diff@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.4.6.tgz#93815774d2012a2cbb6cf23f84d48c7a2618f98d" - integrity sha512-zjaB0sh0Lb13VyPsd92V7HkqF6yKRH9vm33rwBt7rPYrpQvS1nCvlIy2pICbKta+ZjWngYLNn4cCK4nyZkjS/w== +jest-diff@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== dependencies: chalk "^4.0.0" - diff-sequences "^27.4.0" - jest-get-type "^27.4.0" - pretty-format "^27.4.6" + diff-sequences "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-docblock@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.4.0.tgz#06c78035ca93cbbb84faf8fce64deae79a59f69f" - integrity sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg== +jest-docblock@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" + integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== dependencies: detect-newline "^3.0.0" -jest-each@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.4.6.tgz#e7e8561be61d8cc6dbf04296688747ab186c40ff" - integrity sha512-n6QDq8y2Hsmn22tRkgAk+z6MCX7MeVlAzxmZDshfS2jLcaBlyhpF3tZSJLR+kXmh23GEvS0ojMR8i6ZeRvpQcA== +jest-each@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" + integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" chalk "^4.0.0" - jest-get-type "^27.4.0" - jest-util "^27.4.2" - pretty-format "^27.4.6" - -jest-environment-jsdom@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.4.6.tgz#c23a394eb445b33621dfae9c09e4c8021dea7b36" - integrity sha512-o3dx5p/kHPbUlRvSNjypEcEtgs6LmvESMzgRFQE6c+Prwl2JLA4RZ7qAnxc5VM8kutsGRTB15jXeeSbJsKN9iA== - dependencies: - "@jest/environment" "^27.4.6" - "@jest/fake-timers" "^27.4.6" - "@jest/types" "^27.4.2" + jest-get-type "^27.5.1" + jest-util "^27.5.1" + pretty-format "^27.5.1" + +jest-environment-jsdom@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" + integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== + dependencies: + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.6" - jest-util "^27.4.2" + jest-mock "^27.5.1" + jest-util "^27.5.1" jsdom "^16.6.0" -jest-environment-node@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.4.6.tgz#ee8cd4ef458a0ef09d087c8cd52ca5856df90242" - integrity sha512-yfHlZ9m+kzTKZV0hVfhVu6GuDxKAYeFHrfulmy7Jxwsq4V7+ZK7f+c0XP/tbVDMQW7E4neG2u147hFkuVz0MlQ== +jest-environment-node@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" + integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== dependencies: - "@jest/environment" "^27.4.6" - "@jest/fake-timers" "^27.4.6" - "@jest/types" "^27.4.2" + "@jest/environment" "^27.5.1" + "@jest/fake-timers" "^27.5.1" + "@jest/types" "^27.5.1" "@types/node" "*" - jest-mock "^27.4.6" - jest-util "^27.4.2" + jest-mock "^27.5.1" + jest-util "^27.5.1" jest-get-type@^27.4.0: version "27.4.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.4.0.tgz#7503d2663fffa431638337b3998d39c5e928e9b5" integrity sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ== -jest-haste-map@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.4.6.tgz#c60b5233a34ca0520f325b7e2cc0a0140ad0862a" - integrity sha512-0tNpgxg7BKurZeFkIOvGCkbmOHbLFf4LUQOxrQSMjvrQaQe3l6E8x6jYC1NuWkGo5WDdbr8FEzUxV2+LWNawKQ== +jest-get-type@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== + +jest-haste-map@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" + integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== dependencies: - "@jest/types" "^27.4.2" + "@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.4" - jest-regex-util "^27.4.0" - jest-serializer "^27.4.0" - jest-util "^27.4.2" - jest-worker "^27.4.6" + 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" optionalDependencies: fsevents "^2.3.2" -jest-jasmine2@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.4.6.tgz#109e8bc036cb455950ae28a018f983f2abe50127" - integrity sha512-uAGNXF644I/whzhsf7/qf74gqy9OuhvJ0XYp8SDecX2ooGeaPnmJMjXjKt0mqh1Rl5dtRGxJgNrHlBQIBfS5Nw== +jest-jasmine2@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" + integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== dependencies: - "@jest/environment" "^27.4.6" - "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.6" - "@jest/types" "^27.4.2" + "@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.4.6" + expect "^27.5.1" is-generator-fn "^2.0.0" - jest-each "^27.4.6" - jest-matcher-utils "^27.4.6" - jest-message-util "^27.4.6" - jest-runtime "^27.4.6" - jest-snapshot "^27.4.6" - jest-util "^27.4.2" - pretty-format "^27.4.6" + 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" -jest-leak-detector@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.4.6.tgz#ed9bc3ce514b4c582637088d9faf58a33bd59bf4" - integrity sha512-kkaGixDf9R7CjHm2pOzfTxZTQQQ2gHTIWKY/JZSiYTc90bZp8kSZnUMS3uLAfwTZwc0tcMRoEX74e14LG1WapA== +jest-leak-detector@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" + integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== dependencies: - jest-get-type "^27.4.0" - pretty-format "^27.4.6" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-matcher-utils@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.4.6.tgz#53ca7f7b58170638590e946f5363b988775509b8" - integrity sha512-XD4PKT3Wn1LQnRAq7ZsTI0VRuEc9OrCPFiO1XL7bftTGmfNF0DcEwMHRgqiu7NGf8ZoZDREpGrCniDkjt79WbA== +jest-matcher-utils@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" + integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== dependencies: chalk "^4.0.0" - jest-diff "^27.4.6" - jest-get-type "^27.4.0" - pretty-format "^27.4.6" + jest-diff "^27.5.1" + jest-get-type "^27.5.1" + pretty-format "^27.5.1" -jest-message-util@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.4.6.tgz#9fdde41a33820ded3127465e1a5896061524da31" - integrity sha512-0p5szriFU0U74czRSFjH6RyS7UYIAkn/ntwMuOwTGWrQIOh5NzXXrq72LOqIkJKKvFbPq+byZKuBz78fjBERBA== +jest-message-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" + integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== dependencies: "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/stack-utils" "^2.0.0" chalk "^4.0.0" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" micromatch "^4.0.4" - pretty-format "^27.4.6" + pretty-format "^27.5.1" slash "^3.0.0" stack-utils "^2.0.3" -jest-mock@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.4.6.tgz#77d1ba87fbd33ccb8ef1f061697e7341b7635195" - integrity sha512-kvojdYRkst8iVSZ1EJ+vc1RRD9llueBjKzXzeCytH3dMM7zvPV/ULcfI2nr0v0VUgm3Bjt3hBCQvOeaBz+ZTHw== +jest-mock@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" + integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -3801,129 +3896,128 @@ jest-pnp-resolver@^1.2.2: resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== -jest-regex-util@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.4.0.tgz#e4c45b52653128843d07ad94aec34393ea14fbca" - integrity sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg== +jest-regex-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== -jest-resolve-dependencies@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.4.6.tgz#fc50ee56a67d2c2183063f6a500cc4042b5e2327" - integrity sha512-W85uJZcFXEVZ7+MZqIPCscdjuctruNGXUZ3OHSXOfXR9ITgbUKeHj+uGcies+0SsvI5GtUfTw4dY7u9qjTvQOw== +jest-resolve-dependencies@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" + integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== dependencies: - "@jest/types" "^27.4.2" - jest-regex-util "^27.4.0" - jest-snapshot "^27.4.6" + "@jest/types" "^27.5.1" + jest-regex-util "^27.5.1" + jest-snapshot "^27.5.1" -jest-resolve@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.4.6.tgz#2ec3110655e86d5bfcfa992e404e22f96b0b5977" - integrity sha512-SFfITVApqtirbITKFAO7jOVN45UgFzcRdQanOFzjnbd+CACDoyeX7206JyU92l4cRr73+Qy/TlW51+4vHGt+zw== +jest-resolve@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" + integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== dependencies: - "@jest/types" "^27.4.2" + "@jest/types" "^27.5.1" chalk "^4.0.0" - graceful-fs "^4.2.4" - jest-haste-map "^27.4.6" + graceful-fs "^4.2.9" + jest-haste-map "^27.5.1" jest-pnp-resolver "^1.2.2" - jest-util "^27.4.2" - jest-validate "^27.4.6" + jest-util "^27.5.1" + jest-validate "^27.5.1" resolve "^1.20.0" resolve.exports "^1.1.0" slash "^3.0.0" -jest-runner@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.4.6.tgz#1d390d276ec417e9b4d0d081783584cbc3e24773" - integrity sha512-IDeFt2SG4DzqalYBZRgbbPmpwV3X0DcntjezPBERvnhwKGWTW7C5pbbA5lVkmvgteeNfdd/23gwqv3aiilpYPg== +jest-runner@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" + integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== dependencies: - "@jest/console" "^27.4.6" - "@jest/environment" "^27.4.6" - "@jest/test-result" "^27.4.6" - "@jest/transform" "^27.4.6" - "@jest/types" "^27.4.2" + "@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" - exit "^0.1.2" - graceful-fs "^4.2.4" - jest-docblock "^27.4.0" - jest-environment-jsdom "^27.4.6" - jest-environment-node "^27.4.6" - jest-haste-map "^27.4.6" - jest-leak-detector "^27.4.6" - jest-message-util "^27.4.6" - jest-resolve "^27.4.6" - jest-runtime "^27.4.6" - jest-util "^27.4.2" - jest-worker "^27.4.6" + 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" -jest-runtime@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.4.6.tgz#83ae923818e3ea04463b22f3597f017bb5a1cffa" - integrity sha512-eXYeoR/MbIpVDrjqy5d6cGCFOYBFFDeKaNWqTp0h6E74dK0zLHzASQXJpl5a2/40euBmKnprNLJ0Kh0LCndnWQ== - dependencies: - "@jest/environment" "^27.4.6" - "@jest/fake-timers" "^27.4.6" - "@jest/globals" "^27.4.6" - "@jest/source-map" "^27.4.0" - "@jest/test-result" "^27.4.6" - "@jest/transform" "^27.4.6" - "@jest/types" "^27.4.2" +jest-runtime@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" + integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== + 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.4" - jest-haste-map "^27.4.6" - jest-message-util "^27.4.6" - jest-mock "^27.4.6" - jest-regex-util "^27.4.0" - jest-resolve "^27.4.6" - jest-snapshot "^27.4.6" - jest-util "^27.4.2" + 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" -jest-serializer@^27.4.0: - version "27.4.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.4.0.tgz#34866586e1cae2388b7d12ffa2c7819edef5958a" - integrity sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ== +jest-serializer@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== dependencies: "@types/node" "*" - graceful-fs "^4.2.4" + graceful-fs "^4.2.9" -jest-snapshot@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.4.6.tgz#e2a3b4fff8bdce3033f2373b2e525d8b6871f616" - integrity sha512-fafUCDLQfzuNP9IRcEqaFAMzEe7u5BF7mude51wyWv7VRex60WznZIC7DfKTgSIlJa8aFzYmXclmN328aqSDmQ== +jest-snapshot@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" + integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== 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.4.6" - "@jest/types" "^27.4.2" + "@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.4.6" - graceful-fs "^4.2.4" - jest-diff "^27.4.6" - jest-get-type "^27.4.0" - jest-haste-map "^27.4.6" - jest-matcher-utils "^27.4.6" - jest-message-util "^27.4.6" - jest-util "^27.4.2" + 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.4.6" + pretty-format "^27.5.1" semver "^7.3.2" -jest-util@^27.0.0, jest-util@^27.4.2: +jest-util@^27.0.0: version "27.4.2" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.4.2.tgz#ed95b05b1adfd761e2cda47e0144c6a58e05a621" integrity sha512-YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA== @@ -3935,48 +4029,60 @@ jest-util@^27.0.0, jest-util@^27.4.2: graceful-fs "^4.2.4" picomatch "^2.2.3" -jest-validate@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.4.6.tgz#efc000acc4697b6cf4fa68c7f3f324c92d0c4f1f" - integrity sha512-872mEmCPVlBqbA5dToC57vA3yJaMRfIdpCoD3cyHWJOMx+SJwLNw0I71EkWs41oza/Er9Zno9XuTkRYCPDUJXQ== +jest-util@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: - "@jest/types" "^27.4.2" + "@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" + +jest-validate@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" + integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== + dependencies: + "@jest/types" "^27.5.1" camelcase "^6.2.0" chalk "^4.0.0" - jest-get-type "^27.4.0" + jest-get-type "^27.5.1" leven "^3.1.0" - pretty-format "^27.4.6" + pretty-format "^27.5.1" -jest-watcher@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.4.6.tgz#673679ebeffdd3f94338c24f399b85efc932272d" - integrity sha512-yKQ20OMBiCDigbD0quhQKLkBO+ObGN79MO4nT7YaCuQ5SM+dkBNWE8cZX0FjU6czwMvWw6StWbe+Wv4jJPJ+fw== +jest-watcher@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" + integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== dependencies: - "@jest/test-result" "^27.4.6" - "@jest/types" "^27.4.2" + "@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.4.2" + jest-util "^27.5.1" string-length "^4.0.1" -jest-worker@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.4.6.tgz#5d2d93db419566cb680752ca0792780e71b3273e" - integrity sha512-gHWJF/6Xi5CTG5QCvROr6GcmpIqNYpDJyc8A1h/DyXqH1tD6SnRCM0d3U5msV31D2LB/U+E0M+W4oyvKV44oNw== +jest-worker@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^8.0.0" -jest@27.4.7: - version "27.4.7" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.4.7.tgz#87f74b9026a1592f2da05b4d258e57505f28eca4" - integrity sha512-8heYvsx7nV/m8m24Vk26Y87g73Ba6ueUd0MWed/NXMhSZIm62U/llVbS0PJe1SHunbyXjJ/BqG1z9bFjGUIvTg== +jest@27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" + integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== dependencies: - "@jest/core" "^27.4.7" + "@jest/core" "^27.5.1" import-local "^3.0.2" - jest-cli "^27.4.7" + jest-cli "^27.5.1" js-tokens@^4.0.0: version "4.0.0" @@ -4132,10 +4238,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -lint-staged@12.2.2: - version "12.2.2" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.2.2.tgz#e03d93b41092316e0f38b37c9630da807aae3cca" - integrity sha512-bcHEoM1M/f+K1BYdHcEuIn8K+zMOSJR3mkny6PAuQiTgcSUcRbUWaUD6porAYypxF4k1vYZZ2HutZt1p94Z1jQ== +lint-staged@12.3.4: + version "12.3.4" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-12.3.4.tgz#4b1ff8c394c3e6da436aaec5afd4db18b5dac360" + integrity sha512-yv/iK4WwZ7/v0GtVkNb3R82pdL9M+ScpIbJLJNyCXkJ1FGaXvRCOg/SeL59SZtPpqZhE7BD6kPKFLIDUhDx2/w== dependencies: cli-truncate "^3.1.0" colorette "^2.0.16" @@ -4143,25 +4249,25 @@ lint-staged@12.2.2: debug "^4.3.3" execa "^5.1.1" lilconfig "2.0.4" - listr2 "^3.13.5" + listr2 "^4.0.1" micromatch "^4.0.4" normalize-path "^3.0.0" - object-inspect "^1.11.1" + object-inspect "^1.12.0" string-argv "^0.3.1" supports-color "^9.2.1" yaml "^1.10.2" -listr2@^3.13.5: - version "3.13.5" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.5.tgz#105a813f2eb2329c4aae27373a281d610ee4985f" - integrity sha512-3n8heFQDSk+NcwBn3CgxEibZGaRzx+pC64n3YjpMD1qguV4nWus3Al+Oo3KooqFKTQEJ1v7MmnbnyyNspgx3NA== +listr2@^4.0.1: + version "4.0.4" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-4.0.4.tgz#d098a1c419284fb26e184b5d5889b235e8912245" + integrity sha512-vJOm5KD6uZXjSsrwajr+mNacIjf87gWvlBEltPWLbTkslUscWAzquyK4xfe9Zd4RDgO5nnwFyV06FC+uVR+5mg== dependencies: cli-truncate "^2.1.0" colorette "^2.0.16" log-update "^4.0.0" p-map "^4.0.0" rfdc "^1.3.0" - rxjs "^7.4.0" + rxjs "^7.5.4" through "^2.3.8" wrap-ansi "^7.0.0" @@ -4324,7 +4430,7 @@ mime-db@1.51.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== -mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.24: +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.34" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== @@ -4389,10 +4495,10 @@ mkdirp@^0.5.5: dependencies: minimist "^1.2.5" -mockttp@2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.5.1.tgz#dc40704203c01d4ec7d91421cc20bc1eae2e2c4d" - integrity sha512-giwCj28tCr6+RwRTTKnuf2qM7vI5hjs3+tKEcLnAiR1O8R9EHcjlgjBf7JvuF25clEDZKsLUg7NKbkB3CIUN6A== +mockttp@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mockttp/-/mockttp-2.6.0.tgz#c51f35ac41e0389b747a6ddc3110e0844e64df07" + integrity sha512-yr3q7osj893MIoYAfOsJF7v0BdDbMbtLTGdF6gv3V3enqWEQB2iJWo/+O5YxlqH7uIGLjT14nAyE+uId4MOlzA== dependencies: "@graphql-tools/schema" "^7.1.5" "@httptoolkit/httpolyglot" "^2.0.1" @@ -4413,7 +4519,7 @@ mockttp@2.5.1: fetch-ponyfill "^7.1.0" graphql "^14.0.2 || ^15.5" graphql-subscriptions "^1.1.0" - http-encoding "^1.4.0" + http-encoding "^1.5.0" http2-wrapper "2.0.5" lodash "^4.16.4" native-duplexpair "^1.0.0" @@ -4421,7 +4527,7 @@ mockttp@2.5.1: performance-now "^2.1.0" portfinder "^1.0.23" typed-error "^3.0.2" - uuid "^3.1.0" + uuid "^8.3.2" ws "^7.3.1" ms@2.0.0: @@ -4454,6 +4560,11 @@ negotiator@0.6.2: resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== +negotiator@0.6.3: + version "0.6.3" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== + netmask@^2.0.1: version "2.0.2" resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" @@ -4531,7 +4642,7 @@ object-assign@^4: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= -object-inspect@^1.11.1, object-inspect@^1.9.0: +object-inspect@^1.12.0, object-inspect@^1.9.0: version "1.12.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0" integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g== @@ -4673,7 +4784,7 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" -parse-json@^5.0.0: +parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -4817,10 +4928,10 @@ pretty-format@^27.0.0, pretty-format@^27.4.2: ansi-styles "^5.0.0" react-is "^17.0.1" -pretty-format@^27.4.6: - version "27.4.6" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.6.tgz#1b784d2f53c68db31797b2348fa39b49e31846b7" - integrity sha512-NblstegA1y/RJW2VyML+3LlpFjzx62cUrtBIKIWDXEDkjNeleA7Od7nrzcs/VLQvAeV4CgSYhrN39DRN88Qi/g== +pretty-format@^27.5.1: + version "27.5.1" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== dependencies: ansi-regex "^5.0.1" ansi-styles "^5.0.0" @@ -4882,6 +4993,11 @@ qs@6.9.6: resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.6.tgz#26ed3c8243a431b2924aca84cc90471f35d5a0ee" integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== +qs@6.9.7: + version "6.9.7" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.7.tgz#4610846871485e1e048f44ae3b94033f0e675afe" + integrity sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw== + qs@^6.10.1: version "6.10.3" resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.3.tgz#d6cde1b2ffca87b5aa57889816c5f81535e22e8e" @@ -4919,6 +5035,16 @@ raw-body@2.4.2, raw-body@^2.2.0, raw-body@^2.3.2, raw-body@^2.4.1: iconv-lite "0.4.24" unpipe "1.0.0" +raw-body@2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.3.tgz#8f80305d11c2a0a545c2d9d89d7a0286fcead43c" + integrity sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g== + dependencies: + bytes "3.1.2" + http-errors "1.8.1" + iconv-lite "0.4.24" + unpipe "1.0.0" + react-is@^17.0.1: version "17.0.2" resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" @@ -5104,12 +5230,12 @@ rxjs@^5.5.6: dependencies: symbol-observable "1.0.1" -rxjs@^7.4.0: - version "7.4.0" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" - integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== +rxjs@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.4.tgz#3d6bd407e6b7ce9a123e76b1e770dc5761aa368d" + integrity sha512-h5M3Hk78r6wAheJF0a5YahB1yRQKCsZ4MsGdZ5O9ETbVtjPcScGfrMmoOq7EBsCRzd4BDkvDJ7ogP8Sz5tTFiQ== dependencies: - tslib "~2.1.0" + tslib "^2.1.0" safe-buffer@5.2.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0: version "5.2.1" @@ -5792,7 +5918,7 @@ tslib@^1.8.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.1, tslib@^2.0.3: +tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== @@ -5802,11 +5928,6 @@ tslib@~2.0.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.3.tgz#8e0741ac45fc0c226e58a17bfc3e64b9bc6ca61c" integrity sha512-uZtkfKblCEQtZKBF6EBXVZeQNl82yqtDQdv+eck8u7tdPxjLu2/lp5/uPW+um2tpuxINHWy3GhiccY7QgEaVHQ== -tslib@~2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" - integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== - tslib@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.2.0.tgz#fb2c475977e35e241311ede2693cee1ec6698f5c" @@ -5930,10 +6051,10 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.1.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== v8-compile-cache@^2.0.3: version "2.3.0" @@ -5968,9 +6089,12 @@ vary@^1, vary@~1.1.2: integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= vm2@^3.9.3: - version "3.9.5" - resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.5.tgz#5288044860b4bbace443101fcd3bddb2a0aa2496" - integrity sha512-LuCAHZN75H9tdrAiLFf030oW7nJV5xwNMuk1ymOZwopmuK3d2H4L1Kv4+GFHgarKiLfXXLFU+7LDABHnwOkWng== + version "3.9.8" + resolved "https://registry.yarnpkg.com/vm2/-/vm2-3.9.8.tgz#e99c000db042735cd2f94d8db6c42163a17be04e" + integrity sha512-/1PYg/BwdKzMPo8maOZ0heT7DLI0DAFTm7YQaz/Lim9oIaFZsJs3EdtalvXuBfZwczNwsYhju75NW4d6E+4q+w== + dependencies: + acorn "^8.7.0" + acorn-walk "^8.2.0" w3c-hr-time@^1.0.2: version "1.0.2" @@ -6092,10 +6216,10 @@ ws@*: resolved "https://registry.yarnpkg.com/ws/-/ws-8.3.0.tgz#7185e252c8973a60d57170175ff55fdbd116070d" integrity sha512-Gs5EZtpqZzLvmIM59w4igITU57lrtYVFneaa434VROv4thzJyV6UjIL3D42lslWlI+D4KzLYnxSwtfuiO79sNw== -ws@8.4.2: - version "8.4.2" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.4.2.tgz#18e749868d8439f2268368829042894b6907aa0b" - integrity sha512-Kbk4Nxyq7/ZWqr/tarI9yIt/+iNNFOjBXEWgTb4ydaNHBNGgvf2QHbS9fdfsndfjFlFwEd4Al+mw83YkaD10ZA== +ws@8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" + integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== ws@^7.3.1, ws@^7.4.6: version "7.5.6" @@ -6241,7 +6365,7 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -zstd-codec@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/zstd-codec/-/zstd-codec-0.1.2.tgz#6a13b7e666d9066d5236cbab760862a44f2660a0" - integrity sha512-t1gdk33h1wT7YcBPebyGWGJTWodKsJVfDeVN0q2x/htPGLEX3BAuBvOFsU4W3BplbmTXwvH8c/TUZ/DPTXOFfg== +zstd-codec@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/zstd-codec/-/zstd-codec-0.1.4.tgz#6abb311b63cfacbd06e72797ee6c6e1c7c65248c" + integrity sha512-KYnWoFWgGtWyQEKNnUcb3u8ZtKO8dn5d8u+oGpxPlopqsPyv60U8suDyfk7Z7UtAO6Sk5i1aVcAs9RbaB1n36A== From 2d6741a3cf8d16f27a5a0757eea98b446874ce44 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sat, 19 Feb 2022 15:54:09 +0100 Subject: [PATCH 61/77] chore(vscode): add recommended extensions (#715) --- .vscode/extensions.json | 11 +++++++++++ .vscode/settings.json | 3 ++- README.md | 14 +++++--------- 3 files changed, 18 insertions(+), 10 deletions(-) create mode 100644 .vscode/extensions.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 00000000..c0c1e1ed --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,11 @@ +{ + "recommendations": [ + "bierner.markdown-preview-github-styles", + "dbaeumer.vscode-eslint", + "eamodio.gitlens", + "EditorConfig.EditorConfig", + "esbenp.prettier-vscode", + "streetsidesoftware.code-spell-checker", + "yzhang.markdown-all-in-one" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json index f4ccc13e..29b465e4 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,5 +2,6 @@ "deno.enable": false, "editor.codeActionsOnSave": { "source.fixAll.eslint": true - } + }, + "markdown.extension.toc.levels": "2..3" } diff --git a/README.md b/README.md index f91ab166..4eb8e111 100644 --- a/README.md +++ b/README.md @@ -9,14 +9,14 @@ Node.js proxying made simple. Configure proxy middleware with ease for [connect] Powered by the popular Nodejitsu [`http-proxy`](https://github.com/nodejitsu/node-http-proxy). [![GitHub stars](https://img.shields.io/github/stars/nodejitsu/node-http-proxy.svg?style=social&label=Star)](https://github.com/nodejitsu/node-http-proxy) -## ⚠️ Note +## ⚠️ Note -This page is showing documentation for version v1.x.x ([release notes](https://github.com/chimurai/http-proxy-middleware/releases)) +This page is showing documentation for version v2.x.x ([release notes](https://github.com/chimurai/http-proxy-middleware/releases)) If you're looking for v0.x documentation. Go to: https://github.com/chimurai/http-proxy-middleware/tree/v0.21.0#readme -## TL;DR +## TL;DR Proxy `/api` requests to `http://www.example.org` @@ -52,9 +52,7 @@ _All_ `http-proxy` [options](https://github.com/nodejitsu/node-http-proxy#option :bulb: **Tip:** Set the option `changeOrigin` to `true` for [name-based virtual hosted sites](http://en.wikipedia.org/wiki/Virtual_hosting#Name-based). -## Table of Contents - - +## Table of Contents - [Install](#install) - [Core concept](#core-concept) @@ -65,7 +63,7 @@ _All_ `http-proxy` [options](https://github.com/nodejitsu/node-http-proxy#option - [http-proxy events](#http-proxy-events) - [http-proxy options](#http-proxy-options) - [Shorthand](#shorthand) - - [app.use\(path, proxy\)](#appusepath-proxy) + - [app.use(path, proxy)](#appusepath-proxy) - [WebSocket](#websocket) - [External WebSocket upgrade](#external-websocket-upgrade) - [Intercept and manipulate requests](#intercept-and-manipulate-requests) @@ -77,8 +75,6 @@ _All_ `http-proxy` [options](https://github.com/nodejitsu/node-http-proxy#option - [Changelog](#changelog) - [License](#license) - - ## Install ```bash From e9e25ca5d5548d01c227d0707b54ea15cbd8d1f4 Mon Sep 17 00:00:00 2001 From: Stefan Wright Date: Thu, 10 Mar 2022 18:28:24 +0000 Subject: [PATCH 62/77] docs(response-interceptor.md): add headers modification example (#724) * Update response-interceptor.md An update to the responseInterceptor recipe to include modifying headers * docs: fixed issues with linting in the file --- recipes/response-interceptor.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/recipes/response-interceptor.md b/recipes/response-interceptor.md index 1507dbf5..1e65c2e0 100644 --- a/recipes/response-interceptor.md +++ b/recipes/response-interceptor.md @@ -128,3 +128,27 @@ const proxy = createProxyMiddleware({ // http://localhost:3000/wikipedia/en/7/7d/Lenna\_%28test_image%29.png ``` + +## Manipulate response headers + +```js +const { createProxyMiddleware, responseInterceptor } = require('http-proxy-middleware'); + +const proxy = createProxyMiddleware({ + target: 'http://www.example.com', + changeOrigin: true, // for vhosted sites + + /** + * IMPORTANT: avoid res.end being called automatically + **/ + selfHandleResponse: true, // res.end() will be called internally by responseInterceptor() + + /** + * Intercept response and remove the + **/ + onProxyRes: responseInterceptor(async (responseBuffer, proxyRes, req, res) => { + res.removeHeader('content-security-policy'); // Remove the Content Security Policy header + res.setHeader('HPM-Header', 'Intercepted by HPM'); // Set a new header and value + }), +}); +``` From 68bc6d7293a249167e455cf664427b301e851bff Mon Sep 17 00:00:00 2001 From: Kevin He Date: Sun, 13 Mar 2022 08:52:36 -0700 Subject: [PATCH 63/77] fix(fix-request-body): improve content type check (#725) * Update fix-request-body content type check * add unit test --- src/handlers/fix-request-body.ts | 2 +- test/unit/fix-request-body.spec.ts | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index 1855f569..0f45a2f7 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -23,7 +23,7 @@ export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingM writeBody(JSON.stringify(requestBody)); } - if (contentType === 'application/x-www-form-urlencoded') { + if (contentType && contentType.includes('application/x-www-form-urlencoded')) { writeBody(querystring.stringify(requestBody)); } } diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts index 96677502..5bc42f8c 100644 --- a/test/unit/fix-request-body.spec.ts +++ b/test/unit/fix-request-body.spec.ts @@ -64,4 +64,18 @@ describe('fixRequestBody', () => { expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); }); + + it('should write when body is not empty and Content-Type includes application/x-www-form-urlencoded', () => { + const proxyRequest = fakeProxyRequest(); + proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded; charset=UTF-8'); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + + const expectedBody = querystring.stringify({ someField: 'some value' }); + expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); + expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); + }); }); From 4baae769e46914299240d4c3ddd59019ba1520bd Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 13 Mar 2022 17:06:43 +0100 Subject: [PATCH 64/77] chore(package): v2.0.4 (#729) --- CHANGELOG.md | 4 ++++ CONTRIBUTORS.txt | 1 + package.json | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3081e958..4ee58786 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.4](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.4) + +- fix(fix-request-body): improve content type check ([#725](https://github.com/chimurai/http-proxy-middleware/pull/725)) ([kevinxh](https://github.com/kevinxh)) + ## [v2.0.3](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.3) - feat(package): optional @types/express peer dependency ([#707](https://github.com/chimurai/http-proxy-middleware/pull/707)) diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 25cd7981..21333901 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -7,6 +7,7 @@ dylang Elad graingert julbra +kevinxh leonardobazico Liran mhassan1 diff --git a/package.json b/package.json index 779939d4..079120f4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.3", + "version": "2.0.4", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From bd15913dcb7f07b96f14fd64d1b908eba17dc411 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Tue, 19 Apr 2022 21:49:59 +0200 Subject: [PATCH 65/77] fix(error handler): add default handler to econnreset --- src/_handlers.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/_handlers.ts b/src/_handlers.ts index 6cdefd79..9d3be970 100644 --- a/src/_handlers.ts +++ b/src/_handlers.ts @@ -11,6 +11,10 @@ export function init(proxy: httpProxy, option: Options): void { proxy.on(eventName, handlers[eventName]); } + proxy.on('econnreset', (err, req, res, target) => { + logger.error(`[HPM] ECONNRESET: %s`, err); + }); + logger.debug('[HPM] Subscribed to http-proxy events:', Object.keys(handlers)); } From f64c99489526c355a96f6e32709da9299175d4e9 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Tue, 19 Apr 2022 22:23:13 +0200 Subject: [PATCH 66/77] chore(package): v2.0.5 --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ee58786..a4b27e4d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.5](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.5) + +- fix(error handler): add default handler to econnreset ([#759](https://github.com/chimurai/http-proxy-middleware/pull/759)) + ## [v2.0.4](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.4) - fix(fix-request-body): improve content type check ([#725](https://github.com/chimurai/http-proxy-middleware/pull/725)) ([kevinxh](https://github.com/kevinxh)) diff --git a/package.json b/package.json index 079120f4..dfe51dc2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.4", + "version": "2.0.5", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 3f48d50de1393ca94c6c49cac5f74471979a5099 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 20 Apr 2022 21:42:03 +0200 Subject: [PATCH 67/77] fix(proxyReqWs): catch socket errors --- src/_handlers.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/_handlers.ts b/src/_handlers.ts index 9d3be970..3737aa01 100644 --- a/src/_handlers.ts +++ b/src/_handlers.ts @@ -11,8 +11,16 @@ export function init(proxy: httpProxy, option: Options): void { proxy.on(eventName, handlers[eventName]); } - proxy.on('econnreset', (err, req, res, target) => { - logger.error(`[HPM] ECONNRESET: %s`, err); + // https://github.com/webpack/webpack-dev-server/issues/1642 + proxy.on('econnreset', (error, req, res, target) => { + logger.error(`[HPM] ECONNRESET: %O`, error); + }); + + // https://github.com/webpack/webpack-dev-server/issues/1642#issuecomment-1104325120 + proxy.on('proxyReqWs', (proxyReq, req, socket, options, head) => { + socket.on('error', (error) => { + logger.error(`[HPM] WebSocket error: %O`, error); + }); }); logger.debug('[HPM] Subscribed to http-proxy events:', Object.keys(handlers)); From c08cb1e13b8d8c63b517953156444c9b1ce140eb Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Wed, 20 Apr 2022 21:54:25 +0200 Subject: [PATCH 68/77] chore(package): v2.0.6 (#764) --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a4b27e4d..1bc441d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.6](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.6) + +- fix(proxyReqWs): catch socket errors ([#763](https://github.com/chimurai/http-proxy-middleware/pull/763)) + ## [v2.0.5](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.5) - fix(error handler): add default handler to econnreset ([#759](https://github.com/chimurai/http-proxy-middleware/pull/759)) diff --git a/package.json b/package.json index dfe51dc2..4b47b4ca 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.5", + "version": "2.0.6", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 1bd6dd578b1326ed7979c301e3f8eb0f228f5b6f Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 6 Oct 2024 12:14:38 +0000 Subject: [PATCH 69/77] ci(github actions): add publish.yml --- .github/workflows/publish.yml | 33 +++++++++++++++++++++++++++++++++ CHANGELOG.md | 4 ++++ package.json | 2 +- 3 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 00000000..fb8c5086 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,33 @@ +name: publish to npmjs +on: + release: + types: [prereleased, released] +jobs: + build-and-publish: + # prevents this action from running on forks + if: github.repository == 'chimurai/http-proxy-middleware' + runs-on: ubuntu-latest + permissions: + contents: read + id-token: write + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: '22.x' + registry-url: 'https://registry.npmjs.org' + + - name: Install Dependencies + run: yarn install + + - name: Publish to NPM (beta) + if: 'github.event.release.prerelease' + run: npm publish --provenance --access public --tag v2-beta + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + + - name: Publish to NPM (stable) + if: '!github.event.release.prerelease' + run: npm publish --provenance --access public --tag v2 + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 1bc441d0..3969f00a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.7](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.7) + +- ci(github actions): add publish.yml + ## [v2.0.6](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.6) - fix(proxyReqWs): catch socket errors ([#763](https://github.com/chimurai/http-proxy-middleware/pull/763)) diff --git a/package.json b/package.json index 4b47b4ca..4c8e3743 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.6", + "version": "2.0.7-beta.0", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 0b4274e8cc9e9a2c5a06f35fbf456ccfcebc55a5 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 6 Oct 2024 16:58:31 +0000 Subject: [PATCH 70/77] fix(filter): handle errors --- CHANGELOG.md | 1 + package.json | 2 +- src/http-proxy-middleware.ts | 9 +++++++-- test/e2e/http-proxy-middleware.spec.ts | 28 ++++++++++++++++++++++++++ 4 files changed, 37 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3969f00a..de9c1b0f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## [v2.0.7](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.7) - ci(github actions): add publish.yml +- fix(filter): handle errors ## [v2.0.6](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.6) diff --git a/package.json b/package.json index 4c8e3743..00398625 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.7-beta.0", + "version": "2.0.7-beta.1", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/src/http-proxy-middleware.ts b/src/http-proxy-middleware.ts index b93ae92f..a241cd68 100644 --- a/src/http-proxy-middleware.ts +++ b/src/http-proxy-middleware.ts @@ -109,8 +109,13 @@ export class HttpProxyMiddleware { * @return {Boolean} */ private shouldProxy = (context, req: Request): boolean => { - const path = req.originalUrl || req.url; - return contextMatcher.match(context, path, req); + try { + const path = req.originalUrl || req.url; + return contextMatcher.match(context, path, req); + } catch (error) { + this.logger.error(error); + return false; + } }; /** diff --git a/test/e2e/http-proxy-middleware.spec.ts b/test/e2e/http-proxy-middleware.spec.ts index 4685cc07..15355e91 100644 --- a/test/e2e/http-proxy-middleware.spec.ts +++ b/test/e2e/http-proxy-middleware.spec.ts @@ -153,6 +153,34 @@ describe('E2E http-proxy-middleware', () => { const response = await agent.get(`/api/b/c/d`).expect(404); expect(response.status).toBe(404); }); + + it('should not proxy when filter throws Error', async () => { + const myError = new Error('MY_ERROR'); + const filter = (path, req) => { + throw myError; + }; + + const logger = { + log: jest.fn(), + info: jest.fn(), + warn: jest.fn(), + error: jest.fn(), + }; + + agent = request( + createApp( + createProxyMiddleware(filter, { + target: `http://localhost:${mockTargetServer.port}`, + logProvider: () => logger, + }) + ) + ); + + await mockTargetServer.get('/api/b/c/d').thenReply(200, 'HELLO WEB'); + const response = await agent.get(`/api/b/c/d`).expect(404); + expect(response.status).toBe(404); + expect(logger.error).toHaveBeenCalledWith(expect.objectContaining(myError)); + }); }); describe('multi path', () => { From 90afb7c9a658b32cc8fe08950bd0926d3bb512c1 Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 6 Oct 2024 17:11:33 +0000 Subject: [PATCH 71/77] chore(package): v2.0.7 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 00398625..329e6db2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.7-beta.1", + "version": "2.0.7", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From 1e9233909839962bb3c1980848ad499b4757a71d Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Sun, 6 Oct 2024 17:22:45 +0000 Subject: [PATCH 72/77] ci(github-actions): fix npm tag --- .github/workflows/publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index fb8c5086..328f853f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -28,6 +28,6 @@ jobs: - name: Publish to NPM (stable) if: '!github.event.release.prerelease' - run: npm publish --provenance --access public --tag v2 + run: npm publish --provenance --access public --tag v2-latest env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} From 76a9d8d6dc2b971f63df19d805c7ab656540525b Mon Sep 17 00:00:00 2001 From: Steven Chim <655241+chimurai@users.noreply.github.com> Date: Mon, 7 Apr 2025 22:02:18 +0200 Subject: [PATCH 73/77] fix(fixRequestBody): prevent multiple .write() calls (#1090) * fix(fixRequestBody): prevent multiple .write() calls * ci(github-actions): bump actions and node versions --- .github/workflows/ci.yml | 30 +++++++++++++++--------------- src/handlers/fix-request-body.ts | 11 +++++++---- test/unit/fix-request-body.spec.ts | 15 +++++++++++++++ 3 files changed, 37 insertions(+), 19 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 42160f48..7e196d88 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,13 +8,13 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Use Node.js 16.x - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - name: Use Node.js 22.x + uses: actions/setup-node@v4 with: - node-version: 16.x + node-version: 22.x - - uses: actions/cache@v2 + - uses: actions/cache@v4 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: '**/node_modules' @@ -38,16 +38,16 @@ jobs: strategy: matrix: - node-version: [12.x, 14.x, 16.x] + node-version: [18.x, 20.x, 22.x] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - - uses: actions/cache@v2 + - uses: actions/cache@v4 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: '**/node_modules' @@ -70,13 +70,13 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Use Node.js 16.x - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - name: Use Node.js 22.x + uses: actions/setup-node@v4 with: - node-version: 16.x + node-version: 22.x - - uses: actions/cache@v2 + - uses: actions/cache@v4 id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) with: path: '**/node_modules' @@ -100,7 +100,7 @@ jobs: name: Spellcheck runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: streetsidesoftware/cspell-action@main with: # Github token used to fetch the list of changed files in the commit. diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index 0f45a2f7..bfd4cce1 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -13,17 +13,20 @@ export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingM } const contentType = proxyReq.getHeader('Content-Type') as string; + + if (!contentType) { + return; + } + const writeBody = (bodyData: string) => { // deepcode ignore ContentLengthInCode: bodyParser fix proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)); proxyReq.write(bodyData); }; - if (contentType && contentType.includes('application/json')) { + if (contentType.includes('application/json')) { writeBody(JSON.stringify(requestBody)); - } - - if (contentType && contentType.includes('application/x-www-form-urlencoded')) { + } else if (contentType.includes('application/x-www-form-urlencoded')) { writeBody(querystring.stringify(requestBody)); } } diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts index 5bc42f8c..4415b7e1 100644 --- a/test/unit/fix-request-body.spec.ts +++ b/test/unit/fix-request-body.spec.ts @@ -78,4 +78,19 @@ describe('fixRequestBody', () => { expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); }); + + it('should parse json and call write() once with incorrect content-type application/x-www-form-urlencoded+application/json', () => { + const proxyRequest = fakeProxyRequest(); + proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded+application/json'); + + jest.spyOn(proxyRequest, 'setHeader'); + jest.spyOn(proxyRequest, 'write'); + + fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + + const expectedBody = JSON.stringify({ someField: 'some value' }); + expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); + expect(proxyRequest.write).toHaveBeenCalledTimes(1); + expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); + }); }); From c50dd06d9102fbb81dd4cbad7a295dddee5f6e1e Mon Sep 17 00:00:00 2001 From: Steven Chim <655241+chimurai@users.noreply.github.com> Date: Wed, 9 Apr 2025 20:26:28 +0200 Subject: [PATCH 74/77] fix(fixRequestBody): handle invalid request (#1091) --- src/handlers/fix-request-body.ts | 35 ++++++++++++- test/unit/fix-request-body.spec.ts | 83 +++++++++++++++++++++++++++--- 2 files changed, 110 insertions(+), 8 deletions(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index bfd4cce1..78fcd345 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -2,10 +2,20 @@ import type * as http from 'http'; import type { Request } from '../types'; import * as querystring from 'querystring'; +type HandleBadRequestArgs = { + proxyReq: http.ClientRequest; + req: http.IncomingMessage; + res: http.ServerResponse; +}; + /** * Fix proxied body if bodyParser is involved. */ -export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingMessage): void { +export function fixRequestBody( + proxyReq: http.ClientRequest, + req: http.IncomingMessage, + res: http.ServerResponse +): void { const requestBody = (req as Request).body; if (!requestBody) { @@ -18,6 +28,18 @@ export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingM return; } + // Handle bad request when unexpected "Connect: Upgrade" header is provided + if (/upgrade/gi.test(proxyReq.getHeader('Connection') as string)) { + handleBadRequest({ proxyReq, req, res }); + return; + } + + // Handle bad request when invalid request body is provided + if (hasInvalidKeys(requestBody)) { + handleBadRequest({ proxyReq, req, res }); + return; + } + const writeBody = (bodyData: string) => { // deepcode ignore ContentLengthInCode: bodyParser fix proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)); @@ -30,3 +52,14 @@ export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingM writeBody(querystring.stringify(requestBody)); } } + +function hasInvalidKeys(obj) { + return Object.keys(obj).some((key) => /[\n\r]/.test(key)); +} + +function handleBadRequest({ proxyReq, req, res }: HandleBadRequestArgs) { + res.writeHead(400); + res.end('Bad Request'); + proxyReq.destroy(); + req.destroy(); +} diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts index 4415b7e1..e95e2045 100644 --- a/test/unit/fix-request-body.spec.ts +++ b/test/unit/fix-request-body.spec.ts @@ -1,4 +1,5 @@ -import { ClientRequest } from 'http'; +import { Socket } from 'net'; +import { ClientRequest, ServerResponse, IncomingMessage } from 'http'; import * as querystring from 'querystring'; import { fixRequestBody } from '../../src/handlers/fix-request-body'; @@ -11,6 +12,11 @@ const fakeProxyRequest = () => { return proxyRequest; }; +const fakeProxyResponse = (): ServerResponse => { + const res = new ServerResponse(new IncomingMessage(new Socket())); + return res; +}; + describe('fixRequestBody', () => { it('should not write when body is undefined', () => { const proxyRequest = fakeProxyRequest(); @@ -18,7 +24,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: undefined } as Request); + fixRequestBody(proxyRequest, { body: undefined } as Request, fakeProxyResponse()); expect(proxyRequest.setHeader).not.toHaveBeenCalled(); expect(proxyRequest.write).not.toHaveBeenCalled(); @@ -31,7 +37,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: {} } as Request); + fixRequestBody(proxyRequest, { body: {} } as Request, fakeProxyResponse()); expect(proxyRequest.setHeader).toHaveBeenCalled(); expect(proxyRequest.write).toHaveBeenCalled(); @@ -44,7 +50,11 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + fixRequestBody( + proxyRequest, + { body: { someField: 'some value' } } as Request, + fakeProxyResponse() + ); const expectedBody = JSON.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -58,7 +68,11 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + fixRequestBody( + proxyRequest, + { body: { someField: 'some value' } } as Request, + fakeProxyResponse() + ); const expectedBody = querystring.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -72,7 +86,11 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + fixRequestBody( + proxyRequest, + { body: { someField: 'some value' } } as Request, + fakeProxyResponse() + ); const expectedBody = querystring.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -86,11 +104,62 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: { someField: 'some value' } } as Request); + fixRequestBody( + proxyRequest, + { body: { someField: 'some value' } } as Request, + fakeProxyResponse() + ); const expectedBody = JSON.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); expect(proxyRequest.write).toHaveBeenCalledTimes(1); expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); }); + + it('should return 400 and abort request on "Connection: Upgrade" header', () => { + const proxyRequest = fakeProxyRequest(); + const request = { body: { someField: 'some value' } } as Request; + + proxyRequest.destroy = jest.fn(); + request.destroy = jest.fn(); + + const proxyResponse = fakeProxyResponse(); + proxyRequest.setHeader('connection', 'upgrade'); + proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded'); + + jest.spyOn(proxyRequest, 'destroy'); + jest.spyOn(request, 'destroy'); + jest.spyOn(proxyResponse, 'writeHead'); + jest.spyOn(proxyResponse, 'end'); + + fixRequestBody(proxyRequest, request, proxyResponse); + + expect(proxyResponse.writeHead).toHaveBeenCalledWith(400); + expect(proxyResponse.end).toHaveBeenCalledTimes(1); + expect(proxyRequest.destroy).toHaveBeenCalledTimes(1); + expect(request.destroy).toHaveBeenCalledTimes(1); + }); + + it('should return 400 and abort request on invalid request data', () => { + const proxyRequest = fakeProxyRequest(); + const request = { body: { 'INVALID \n\r DATA': '' } } as Request; + + proxyRequest.destroy = jest.fn(); + request.destroy = jest.fn(); + + const proxyResponse = fakeProxyResponse(); + proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded'); + + jest.spyOn(proxyRequest, 'destroy'); + jest.spyOn(request, 'destroy'); + jest.spyOn(proxyResponse, 'writeHead'); + jest.spyOn(proxyResponse, 'end'); + + fixRequestBody(proxyRequest, request, proxyResponse); + + expect(proxyResponse.writeHead).toHaveBeenCalledWith(400); + expect(proxyResponse.end).toHaveBeenCalledTimes(1); + expect(proxyRequest.destroy).toHaveBeenCalledTimes(1); + expect(request.destroy).toHaveBeenCalledTimes(1); + }); }); From d03d51b54ac8d40db8438a8b216cf1ea92bb7849 Mon Sep 17 00:00:00 2001 From: Steven Chim <655241+chimurai@users.noreply.github.com> Date: Wed, 9 Apr 2025 21:30:36 +0200 Subject: [PATCH 75/77] chore(package): v2.0.8 (#1094) --- CHANGELOG.md | 5 +++++ README.md | 2 +- package.json | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de9c1b0f..22557406 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## [v2.0.8](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.8) + +- fix(fixRequestBody): prevent multiple .write() calls +- fix(fixRequestBody): handle invalid request + ## [v2.0.7](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.7) - ci(github actions): add publish.yml diff --git a/README.md b/README.md index 4eb8e111..31b2a081 100644 --- a/README.md +++ b/README.md @@ -595,4 +595,4 @@ $ yarn spellcheck The MIT License (MIT) -Copyright (c) 2015-2022 Steven Chim +Copyright (c) 2015-2025 Steven Chim diff --git a/package.json b/package.json index 329e6db2..56150637 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.7", + "version": "2.0.8", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts", From d22d58764832fea429d60109a19e1a23136d4425 Mon Sep 17 00:00:00 2001 From: Steven Chim <655241+chimurai@users.noreply.github.com> Date: Thu, 10 Apr 2025 14:01:49 +0200 Subject: [PATCH 76/77] fix(fixRequestBody): check readableLength (#1097) --- src/handlers/fix-request-body.ts | 40 +++------------ test/unit/fix-request-body.spec.ts | 81 +++++++++--------------------- 2 files changed, 30 insertions(+), 91 deletions(-) diff --git a/src/handlers/fix-request-body.ts b/src/handlers/fix-request-body.ts index 78fcd345..2a19c880 100644 --- a/src/handlers/fix-request-body.ts +++ b/src/handlers/fix-request-body.ts @@ -2,20 +2,15 @@ import type * as http from 'http'; import type { Request } from '../types'; import * as querystring from 'querystring'; -type HandleBadRequestArgs = { - proxyReq: http.ClientRequest; - req: http.IncomingMessage; - res: http.ServerResponse; -}; - /** * Fix proxied body if bodyParser is involved. */ -export function fixRequestBody( - proxyReq: http.ClientRequest, - req: http.IncomingMessage, - res: http.ServerResponse -): void { +export function fixRequestBody(proxyReq: http.ClientRequest, req: http.IncomingMessage): void { + // skip fixRequestBody() when req.readableLength not 0 (bodyParser failure) + if (req.readableLength !== 0) { + return; + } + const requestBody = (req as Request).body; if (!requestBody) { @@ -28,18 +23,6 @@ export function fixRequestBody( return; } - // Handle bad request when unexpected "Connect: Upgrade" header is provided - if (/upgrade/gi.test(proxyReq.getHeader('Connection') as string)) { - handleBadRequest({ proxyReq, req, res }); - return; - } - - // Handle bad request when invalid request body is provided - if (hasInvalidKeys(requestBody)) { - handleBadRequest({ proxyReq, req, res }); - return; - } - const writeBody = (bodyData: string) => { // deepcode ignore ContentLengthInCode: bodyParser fix proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData)); @@ -52,14 +35,3 @@ export function fixRequestBody( writeBody(querystring.stringify(requestBody)); } } - -function hasInvalidKeys(obj) { - return Object.keys(obj).some((key) => /[\n\r]/.test(key)); -} - -function handleBadRequest({ proxyReq, req, res }: HandleBadRequestArgs) { - res.writeHead(400); - res.end('Bad Request'); - proxyReq.destroy(); - req.destroy(); -} diff --git a/test/unit/fix-request-body.spec.ts b/test/unit/fix-request-body.spec.ts index e95e2045..0348a2df 100644 --- a/test/unit/fix-request-body.spec.ts +++ b/test/unit/fix-request-body.spec.ts @@ -17,6 +17,13 @@ const fakeProxyResponse = (): ServerResponse => { return res; }; +const createRequestWithBody = (body: unknown): Request => { + const req = new IncomingMessage(new Socket()) as Request; + req.url = '/test_path'; + req.body = body; + return req; +}; + describe('fixRequestBody', () => { it('should not write when body is undefined', () => { const proxyRequest = fakeProxyRequest(); @@ -24,7 +31,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: undefined } as Request, fakeProxyResponse()); + fixRequestBody(proxyRequest, createRequestWithBody(undefined)); expect(proxyRequest.setHeader).not.toHaveBeenCalled(); expect(proxyRequest.write).not.toHaveBeenCalled(); @@ -37,7 +44,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody(proxyRequest, { body: {} } as Request, fakeProxyResponse()); + fixRequestBody(proxyRequest, createRequestWithBody({})); expect(proxyRequest.setHeader).toHaveBeenCalled(); expect(proxyRequest.write).toHaveBeenCalled(); @@ -50,11 +57,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody( - proxyRequest, - { body: { someField: 'some value' } } as Request, - fakeProxyResponse() - ); + fixRequestBody(proxyRequest, createRequestWithBody({ someField: 'some value' })); const expectedBody = JSON.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -68,11 +71,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody( - proxyRequest, - { body: { someField: 'some value' } } as Request, - fakeProxyResponse() - ); + fixRequestBody(proxyRequest, createRequestWithBody({ someField: 'some value' })); const expectedBody = querystring.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -86,11 +85,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody( - proxyRequest, - { body: { someField: 'some value' } } as Request, - fakeProxyResponse() - ); + fixRequestBody(proxyRequest, createRequestWithBody({ someField: 'some value' })); const expectedBody = querystring.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -104,11 +99,7 @@ describe('fixRequestBody', () => { jest.spyOn(proxyRequest, 'setHeader'); jest.spyOn(proxyRequest, 'write'); - fixRequestBody( - proxyRequest, - { body: { someField: 'some value' } } as Request, - fakeProxyResponse() - ); + fixRequestBody(proxyRequest, createRequestWithBody({ someField: 'some value' })); const expectedBody = JSON.stringify({ someField: 'some value' }); expect(proxyRequest.setHeader).toHaveBeenCalledWith('Content-Length', expectedBody.length); @@ -116,50 +107,26 @@ describe('fixRequestBody', () => { expect(proxyRequest.write).toHaveBeenCalledWith(expectedBody); }); - it('should return 400 and abort request on "Connection: Upgrade" header', () => { + it('should not fixRequestBody() when there bodyParser fails', () => { const proxyRequest = fakeProxyRequest(); - const request = { body: { someField: 'some value' } } as Request; - - proxyRequest.destroy = jest.fn(); - request.destroy = jest.fn(); - - const proxyResponse = fakeProxyResponse(); - proxyRequest.setHeader('connection', 'upgrade'); - proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded'); - - jest.spyOn(proxyRequest, 'destroy'); - jest.spyOn(request, 'destroy'); - jest.spyOn(proxyResponse, 'writeHead'); - jest.spyOn(proxyResponse, 'end'); - - fixRequestBody(proxyRequest, request, proxyResponse); - - expect(proxyResponse.writeHead).toHaveBeenCalledWith(400); - expect(proxyResponse.end).toHaveBeenCalledTimes(1); - expect(proxyRequest.destroy).toHaveBeenCalledTimes(1); - expect(request.destroy).toHaveBeenCalledTimes(1); - }); - - it('should return 400 and abort request on invalid request data', () => { - const proxyRequest = fakeProxyRequest(); - const request = { body: { 'INVALID \n\r DATA': '' } } as Request; - - proxyRequest.destroy = jest.fn(); - request.destroy = jest.fn(); + const request = { + get readableLength() { + return 4444; // simulate bodyParser failure + }, + } as Request; const proxyResponse = fakeProxyResponse(); proxyRequest.setHeader('content-type', 'application/x-www-form-urlencoded'); + jest.spyOn(proxyRequest, 'write'); jest.spyOn(proxyRequest, 'destroy'); - jest.spyOn(request, 'destroy'); jest.spyOn(proxyResponse, 'writeHead'); jest.spyOn(proxyResponse, 'end'); - fixRequestBody(proxyRequest, request, proxyResponse); + fixRequestBody(proxyRequest, request); - expect(proxyResponse.writeHead).toHaveBeenCalledWith(400); - expect(proxyResponse.end).toHaveBeenCalledTimes(1); - expect(proxyRequest.destroy).toHaveBeenCalledTimes(1); - expect(request.destroy).toHaveBeenCalledTimes(1); + expect(proxyResponse.end).toHaveBeenCalledTimes(0); + expect(proxyRequest.write).toHaveBeenCalledTimes(0); + expect(proxyRequest.destroy).toHaveBeenCalledTimes(0); }); }); From 617a7c9da9cc90ecc00b0c8b1c2f6a385c879cb1 Mon Sep 17 00:00:00 2001 From: Steven Chim <655241+chimurai@users.noreply.github.com> Date: Thu, 10 Apr 2025 14:10:53 +0200 Subject: [PATCH 77/77] chore(package): v2.0.9 (#1099) --- CHANGELOG.md | 4 ++++ package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22557406..4412d3e2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [v2.0.9](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.9) + +- fix(fixRequestBody): check readableLength + ## [v2.0.8](https://github.com/chimurai/http-proxy-middleware/releases/tag/v2.0.8) - fix(fixRequestBody): prevent multiple .write() calls diff --git a/package.json b/package.json index 56150637..041ed2ff 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "http-proxy-middleware", - "version": "2.0.8", + "version": "2.0.9", "description": "The one-liner node.js proxy middleware for connect, express and browser-sync", "main": "dist/index.js", "types": "dist/index.d.ts",