From 3bdcc53bbb69445f7246aa7b7fa7a345868fe1e8 Mon Sep 17 00:00:00 2001 From: riteshnahar <50190808+riteshnahar@users.noreply.github.com> Date: Tue, 7 Jul 2020 19:05:10 +0530 Subject: [PATCH] PRO-16338: Add Husky & Prettier in ProvarDX, Fix linting issues (#11) * PRO-16338: Add Husky & Prettier in ProvarDX, Fix linting issues * PRO-16338: Prettier ignore README.MD & oclif.manifest.json * PRO-16338: Removed beta paths from README.md * PRO-16370: Changed project structure from Eclipse project to NPM package structure * Added LICENCE.md Added MIT Licence * Rename LICENSE to LICENSE.md * PRO-16338: Added copyright notice on all code files * PRO-16338: Changed licence from MIT to BSD-3-Clause * PRO-16338: Incorporated review comments: - Created CHANGELOG.md, CODE_OF_CONDUCT.md, CONTRIBUTING.md, DEVELOPING.md - Updated README.md to incorporate comments * PRO-16338: Incorporated review comments - Changed mail id from conduct@provartesting.com -> info@provartesting.com - CONTRIBUTING.md added new section for Merging `development` into `master` - DEVELOPING.md made some edits for documentation * PRO-16338: Added vscodeScreenshot.png image * PRO-16338: Incorporated review comment in CONTRIBUTING.md * PRO-16338: Bumped build version to 0.1.0 and updated CHANGELOG.md --- .../.editorconfig => .editorconfig | 0 .eslintrc.json | 3 + .../.gitignore => .gitignore | 6 +- .images/vscodeScreenshot.png | Bin 0 -> 372650 bytes .npmignore | 5 + .prettierignore | 7 + .prettierrc | 5 + CHANGELOG.md | 12 + CODE_OF_CONDUCT.md | 71 + CONTRIBUTING.md | 39 + DEVELOPING.md | 76 + LICENSE.md | 27 + README.md | 163 +- .../appveyor.yml => appveyor.yml | 0 {com.provar.plugins.provardx/bin => bin}/run | 0 .../bin => bin}/run.cmd | 0 com.provar.plugins.provardx/.project | 38 - ....eclipse.wst.common.project.facet.core.xml | 4 - .../META-INF/MANIFEST.MF | 6 - com.provar.plugins.provardx/README.md | 213 -- com.provar.plugins.provardx/messages/org.json | 6 - .../messages/runtests.json | 11 - .../oclif.manifest.json | 1 - com.provar.plugins.provardx/package.json | 67 - .../provardx-properties.json | 36 - .../resources/provardx-properties-schema.json | 134 - .../src/commands/provar/compile.ts | 78 - .../src/commands/provar/metadatacache.ts | 112 - .../src/commands/provar/runtests.ts | 96 - .../src/commands/provar/validate.ts | 105 - com.provar.plugins.provardx/src/index.ts | 1 - .../src/utilities/DxPropertiesSchema.ts | 183 -- .../test/commands/hello/org.test.ts | 19 - .../test/tsconfig.json | 4 - com.provar.plugins.provardx/tsconfig.json | 10 - .../messages => messages}/compile.json | 2 +- .../messages => messages}/metadatacache.json | 19 +- messages/runtests.json | 10 + .../messages => messages}/validate.json | 3 +- package.json | 82 + provardx-properties.json | 35 + src/commands/provar/compile.ts | 122 + src/commands/provar/metadatacache.ts | 181 ++ src/commands/provar/runtests.ts | 167 + src/commands/provar/validate.ts | 142 + src/index.ts | 8 + src/utilities/DxPropertiesSchema.ts | 209 ++ .../src => src}/utilities/ProvarDXUtility.ts | 323 +- test/commands/hello/org.test.ts | 27 + .../test => test}/mocha.opts | 0 test/tsconfig.json | 3 + tsconfig.json | 8 + .../tslint.json => tslint.json | 3 +- .../yarn.lock => yarn.lock | 2725 +++++++++++------ 54 files changed, 3366 insertions(+), 2241 deletions(-) rename com.provar.plugins.provardx/.editorconfig => .editorconfig (100%) create mode 100644 .eslintrc.json rename com.provar.plugins.provardx/.gitignore => .gitignore (92%) create mode 100644 .images/vscodeScreenshot.png create mode 100644 .npmignore create mode 100644 .prettierignore create mode 100644 .prettierrc create mode 100644 CHANGELOG.md create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md create mode 100644 DEVELOPING.md create mode 100644 LICENSE.md rename com.provar.plugins.provardx/appveyor.yml => appveyor.yml (100%) rename {com.provar.plugins.provardx/bin => bin}/run (100%) mode change 100644 => 100755 rename {com.provar.plugins.provardx/bin => bin}/run.cmd (100%) delete mode 100644 com.provar.plugins.provardx/.project delete mode 100644 com.provar.plugins.provardx/.settings/org.eclipse.wst.common.project.facet.core.xml delete mode 100644 com.provar.plugins.provardx/META-INF/MANIFEST.MF delete mode 100644 com.provar.plugins.provardx/README.md delete mode 100644 com.provar.plugins.provardx/messages/org.json delete mode 100644 com.provar.plugins.provardx/messages/runtests.json delete mode 100644 com.provar.plugins.provardx/oclif.manifest.json delete mode 100644 com.provar.plugins.provardx/package.json delete mode 100644 com.provar.plugins.provardx/provardx-properties.json delete mode 100644 com.provar.plugins.provardx/resources/provardx-properties-schema.json delete mode 100644 com.provar.plugins.provardx/src/commands/provar/compile.ts delete mode 100644 com.provar.plugins.provardx/src/commands/provar/metadatacache.ts delete mode 100644 com.provar.plugins.provardx/src/commands/provar/runtests.ts delete mode 100644 com.provar.plugins.provardx/src/commands/provar/validate.ts delete mode 100644 com.provar.plugins.provardx/src/index.ts delete mode 100644 com.provar.plugins.provardx/src/utilities/DxPropertiesSchema.ts delete mode 100644 com.provar.plugins.provardx/test/commands/hello/org.test.ts delete mode 100644 com.provar.plugins.provardx/test/tsconfig.json delete mode 100644 com.provar.plugins.provardx/tsconfig.json rename {com.provar.plugins.provardx/messages => messages}/compile.json (83%) rename {com.provar.plugins.provardx/messages => messages}/metadatacache.json (72%) create mode 100644 messages/runtests.json rename {com.provar.plugins.provardx/messages => messages}/validate.json (77%) create mode 100644 package.json create mode 100644 provardx-properties.json create mode 100644 src/commands/provar/compile.ts create mode 100644 src/commands/provar/metadatacache.ts create mode 100644 src/commands/provar/runtests.ts create mode 100644 src/commands/provar/validate.ts create mode 100644 src/index.ts create mode 100644 src/utilities/DxPropertiesSchema.ts rename {com.provar.plugins.provardx/src => src}/utilities/ProvarDXUtility.ts (59%) create mode 100644 test/commands/hello/org.test.ts rename {com.provar.plugins.provardx/test => test}/mocha.opts (100%) create mode 100644 test/tsconfig.json create mode 100644 tsconfig.json rename com.provar.plugins.provardx/tslint.json => tslint.json (89%) rename com.provar.plugins.provardx/yarn.lock => yarn.lock (56%) diff --git a/com.provar.plugins.provardx/.editorconfig b/.editorconfig similarity index 100% rename from com.provar.plugins.provardx/.editorconfig rename to .editorconfig diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..1a6d2c4 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "@salesforce/dev-config/tslint" +} diff --git a/com.provar.plugins.provardx/.gitignore b/.gitignore similarity index 92% rename from com.provar.plugins.provardx/.gitignore rename to .gitignore index a148837..2275ab6 100644 --- a/com.provar.plugins.provardx/.gitignore +++ b/.gitignore @@ -1,11 +1,11 @@ *-debug.log *-error.log /.nyc_output -/.circleci -/.vscode -/.images /dist /lib /package-lock.json /tmp node_modules +/.circleci +/.sfdx +/.vscode diff --git a/.images/vscodeScreenshot.png b/.images/vscodeScreenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4b7206a47c4b343e68e420c3202122d0dc82348d GIT binary patch literal 372650 zcmagF1yr5Qt^kU=ySuyV#@)TRySqbix8m*;C{obOG}FJ_EigqOT8;DJpp$h{+lp^zGpio;>4X%v-2MFo+I zWWmc#7Xrd}@}Q`;1aXU?s2aF{(33j_wO7AxK6M`QJ*;g$9kzS`T7GdqfeJdAQcw)` z_yF}&7CE%zReT2p2`X}&1Of{mCIuy;pyi$(>FYx$x;uQI)WQ>Mjc+Zf`F)pL^)b1F z7$<244CF~PW7iSLlZ|TyGtZO4Cop;We=S$$7`JEwdUj3}@a-j&c9geW*hEO5`=eGagWV~Q6LHmY~CaC~c&`c6H{`;ZX?kT170A||W zZ$6p^jTpf{VxGD&9${*?*n3Ev3 z1(2=*lxzTbHRwb){-eKOHF)(m&)xVRGeQ_kpiV;kTwt+*EQ-+bL0%3RS&(O2B+W2( z{=5cA(f&jJu*KanOo$jgEMP)h;UG%H$dWM1{&PgS;lSx4Zr^D4z`=#{k#ME`mGkK= z7?Tjug-jLE=YV_>U4_;2wWpA7kuv2t8QGLKC-S zxghzWQhVnwv76yLVKxIK3>aQf^aO#?pv5G9<*_NkCBcv2qX$QdIx6xid6uH6vX^1c zhx`^<7jaZ_E=9DU%ZN-7x6YHBj6hK45gLL0*BpfQ%a+(_=S;VW423UA?|Ud`jj9 z9M%`HHRoW)<&KA%8aO(DKa}00+XKH_>~L{K){dr!X&;B!OSx5dMgA!MYWm9b6{kyf zi9b_H5iA?P-@3tOj3*k&`3Vr~&(B0tX2gxPLg(pn3r_|@xr`*Ka z1QAHq58KQZ$m#O$ivPg)hz61uRO*%|(jk)As_$kGkfMpCk!Z-TE%pAvK6f%ljgwL= z>Rd1|b!};G30m(d1T5q$B+vubY4A<3cCbXSK%`{UQbd0w9)=~RCrKoR8u}fY93~&Nm#&L^G=&+>Aj&8z zFXO!=9)>#l1Ii}DSFLt^A0c7oULg{to#uY_2yUs?qVFcrCN+Dezci`Kl3G;jRcq$Z ze_+l8&U~41ocTV}F>}MR!xGE#gGG%6lx4J5y0)`+xt6|GVK3YXu0^uNsD+@#)05hh z^NH?>;zEC zRJvjWI$20fV_uM5x z)id%leL--_i55*0$EMuH|nh%w-i^MAZ|y+= zeQsfP648ZGyM{x|l+ctZDnYaDb@4X{hkBT`QB5-Gqpa#`>ao_TxTgoFZvD1Cg}sBp zF=yx9>%ZQ@Ur-Ur=$Bq`!K6oO+x93kY5c-l$B_ zW^F_uFC#yoa7vU-h@}{J*5PXSrFea?7mJ2-eYl)kmh~+6TQtK{%X8($rRx?J`xP4+ z`)yUV34e(r+cNiQ-R;(G;Xa2hy@F2@mAAr8^(@#e^z3w*youI)an3Gm{mwhw+vwpn zsWMwP>CLX{W8)`YMAkZY;wG2RY|?1r=r88xI1+3mR+?5WDp2&M-LQ*4Aof)chezn(5WiRo$C;PhAQWhOv zHTYXUc=LHf{%q6f^6YybY~U~Nq~#p9(`z?%D!<{_b$h|@P9B%bwtj;L$5}>n{P}KDAZEuzbCwomi)*%Ogbc=Ri1@sZDqwY zKQo8axA9`WW4YSD);X_w?fTNL{PnKSKBen!5^_wT!yY0jvV% zE@o=#^+r^C)kpW^)Wh`0?yb`^5G-< zZ4Fp;&W8R;oOJBmtgas-3uFYvh5DBbX(0a-kS$hoQ`4vZk�jlcg{q7s|KI<@bRT zPltwTNojuaTIn}qpRLV1-t?M|rmbHAE}siSXa`A6XCNR9@;`rIDP^)tARyozOH~aQ z4LMmJV|!Z$Llb)=Qw9%PhtJkPKmZS(&r4fV7egWsTN^uP9uGc}e_HT-UjKQ_NJ8{a z6Blbf5)C;;A`yEhQzCW-HU=gVei$MmB7l>L8IQ84_`^q{wMCjGBY{?(7Dsk5<@rGty5y&ch?ehrQ6 zU0wJ{Nd6%DpWlDcY3gD5Z%lU1|2?eF0W$u1!^q6Q#P~mbe}V%3Jmpce^f0y25Vf>5 zwR8T&!OzUb$_4lb;D5dPH_E?2HUACD#mezF<88xp|yX9RzZ=)c(Y&(lwS@xuTZ z|A+VdFoZdwOrPSwvlLZO{XB#Gkc)Lpn%&qqJ+*&uGw<}gi76{98;PbRYtVwHrKP>R z_99FC1s2o;q^B20HpFoyWW6i^Ph+ z%zONOT)kh>n=@a|=S_>}ssIggPStB-LS(9Hd(jR#I^z!ysezLbg^0!%Q5ro?`+;(1 z^_VO_?vI%(B7DSu4l$m3_4gbz@5%R7^?u*qXwUR5KN|1r#DWhY!bgJC3EHo>k|C=A z9{WA3-Npsu{3zQ>!4k*>VjgIp7egH0!))Jb{?I^rMrir*4_WX4ij`AR%a678GeR+s zoR3`!GQv19LvfmsC?_RdC5XDGXVv?aQ<{|M5Pu{j5Meb^w`WTjGXfsLh%++;Mp|bON;-1bn;L44kt*Lut$NH!&lAT z2WXGpZ41zoyF+nZu294AF#iYkf6*maj(W7#fT`!ZPk#FwgRa-Pd^Q>G|A+J@B4Bq$ z{nzb>D&sAGCgdFZo*Tw6y8pK^{tJsgl7%bCLZh3>Gg^yNonHrbv7h*!1qvQD`lS<~EpD`NSl3vHJfG?QYmOgqwKe}Kgl03aimkn4 zczpr$ITH$E?y6!j@B0hfSfH|!Tq#*$Gds(u>jXyFznQj%1ExxYzVY?NHkyDBrz|4_ z=VqzK7#H9KiIN3s*h>_H^JZha^>emoBQjW98Xbc4+S(dfTP-B02rD-LCpiYqIon1S z>TbqZFb}xnRn5VDrh7shJQ13zl8Lx#F8oME&?b_dMTWhUc)MBY*9Md?Bwtx8u(&?F zYEo7Dbx4580SoCExcE{wlW=N9P-L(Lo7$Y6DzORa-)a>=i+p)JgU*kDX7DXJa&N7c z)^_21vF!;wPyHjnp?tjWcwLF>iy?I_Z>Ss=OlsLImk$8@7+fs{F{5K{Whvi%Pc_&> zLr5fm(Dhe%S+8tAzFhZmG!59p@3>*ZcPjpN@XtqM zz3zvCv7M0$=!KPUDSYbQiROd2!MC~o^e85*ho3A z=pygDmReuB=U1YW9@m%ZF5q17Ukq1@7>48Y0vI_cnhbJdkMO54J10KPhn%Ri8L$?H zzu|@$|d|p8b9^yq+(l>jhF{^tRAFqXK0uqlzr1X+txsg;KIq zooZd`{YeTh1keOKq=IMr@dfR9-NEzZOnBojOS45mxdrs`%>eA#yGKtV#XJ-zQdV9< z`IQv#)m4H5Jezx2E~}zF^zCFZE8hkhh3D?SD1*_SffRAN;j@3)vck}=1K_cnCyEt3OK z@bTHFX0A%-anj0U6m^7pptZa`xKv6t69dr56VF!Rp^eU)_H!p#qsj2pzp2kfX z_%$z>0lWP?V&7)CbyCZ(r2@@Nd6N}Ftw06?9;;a~*CoalDsG4mD- z6i(ZE*2}Q4Rl^i$n?l@67>}?U6uYC@u$a?fpTst7rfZCDI?d z_l;1_ZsJak)C=dlP`KF`eO|#dysN$d9g{>Vq05G^&So4E{T0kR^Wf)-KgKdAMWC;`UecOwJG z;S#bXV@?Uy^nKUFTWUvNosmXjvLrZwzYB;IkDpgfC3U>f%2InGF7?A|^|UrDC39RD zi3PJptuI#fc}lhaCS-78<;4)5=7cLQdP`Og&t4`|i`-<+ct2!DWUwY1eYPtf=*;gz z(5aZ3)gNkV?LfwjsivcDGr;!rgA;kW2PY$gMzs$|>$$0RFdU~4Cw9R<)P~;5N#5Wo zPG;M8=mcvuAIZAw9oX^5)6_j)*bn2r?F@pLy)l-@nCuWmb5`gxm*5u2%eRM7sX6%W zwN(0EXMmHdE|b%oflJ92q(}^b6^@)nvLhPpf(?;(GvwtGmb$3l3wpt9C9}sMo2X0O z&~&zv2BC`omSLiUw;wH@<`q6$qP|G5I&i1whcg*Q^2{rZU7E`SKGwoIFr@onJl2`N z<)^jnw;QUh%lCM?%BNa-0`JuD2KlbG(QJDz8@xhhd=VSOrL>ORHyGR7%@A8kPaUdx z=&zLlIxyRSr2lb8`xxB?3HlbZ)czH91TU!P-Y47UwzPDiuV|)sKt67EwR4Dbbw+aT zr+S?Izzvxu^ndtL4=@~hfC3w?V_Xy|h^}tD-1Hc4EZ)%aDL^A}9ijvWX9x52FhPt^T$*qGVaR08f8bm-Bn+q`C~2Y3}6$k~%Q4$VVLrT1acKO-`tJ_Iaj( z{XWAw`uZn$*cJFwWqy=@JA`gI(Qb^wgS9Y2zBfe&9)bw6dM$78e1$mqDKxUJ)r-YG z*H=^zre6HzFk=T6TF8<_D`ta!gJ8D>k~dL2`R|L}-&GXgjuyeu5MnL_9vPQp`wH;e zp27@w>T8Zr4MdRZ!m3?gkmt183=fPSdg=h+s|z+^8&!xrFH0oOLt6b=82v*eej zJYa_J6#YIQoTAzv3`FGV&9|}It-)QS*}AH?a~Z%DRVBj^Z#5@?q=+jb5tuB9+c=HCk()cA%3QjPHY{YPv6W zLI`!=7ixc5B&Q;0?x-;@il>z4K>fFX{gIl5pxLxMa>ROX*6k)Po!r9$2B*G%n;%?B z>!YG8&jcGBpGIa43+-E6k0FT;sAvb!F);MaltWF%!P5`S^>7RiSM*L7K2gzb6DKA0 zJgKU?-rY71rA^~2>F7lG*)JIBM~*+yGdxh3yCK^=Pa%mz@|v6hnh;T$?xV)VU9j)l z*j;vjBNK9(k&SktAM6a-+!^aGk@Q$FxcYd5y$T_pf{Y$qpB-*3un}mqTk(I}W7`(P zK$s=;f&&gE^Lg?6_zqp_hn@qhE}P~IN#eyt{FyqhSn~>OMEq{C#(h*k-5WraQN-8* zW>p6aj=fA(R(8N$V7Zim*m`#!70|&e*jJ~-N%CW!BFU^|3o4?S@?_kQ>ukUs$uKwC zzEeMDmf9*hn;SYP2%byY=(-GxsPqsFz%q*HsQ&>jGjZQL+tr17PR@IE7U^?~&5!2W z0b6Z6`h_g>m3ccB+ku8B!gTX&Xo~WDK(L90?$wF?c_IV4solbct4!>Wz!2(&rswLh zkL#ONaJjd+Z0-W$!JO}7*9YFvTB@YWq+Zk+dOp-0qM$mXHX5Elc>OJ&MV~~1zb}yf z8(IvrLiKzojwki6(kWcSivxJbY;0`D)#^<1{d2B7c@KWU-WyGnoZMzr4+P?E&x6pVqb>BBA!j+#WxpwnLA8NseYrK&L>#07!@uWO9zQT}~+?3YrAvAr(&o7iT7xUpy z2$-0C&RZ}M6cfhK`Lf)@BN2R<`I3-Y`0p8lBi7B0g1EsOh!+`WbXJ@l&Zi3(HbDkZ z$cdQ#`8{0snjOWv?h@|x)-QJl40JyfBm|2^BFWV&Z?Fr|V4rRF?UjVmD`M0z1z z>J^WR3}qM6HP{Gry%dxspNbv$Ws!cMGfThAffsrb)HdOA9MRg5M=gk%41joQ(_NFT zU42juBjii56MxK42JjQ?Wo5dG*fegoXa1_E9#Fl3zpYaZn%Q(F+M?e~0%*g)ADH~m z49WVca&?eJJVl8wVmf3{I$kW6K)=Xp%l;#0qb^PG=kbix}6>^Bt2TnAmfQ;6`$*c zwdyuNM64ON5fr)zJqcM@4d|fM^Y$Q$EbRKUx2R}Wr!m-QS9sFBH$8Bq6+SQd`e)Rq zn(wRyFk{t)zhEh+9TDy(`VcR4sQ{^Umw$ubIUUp`OPu&ARPsV>0d;EPD_f7JP zcjZO@+sRXc`+qE)I1vKGVJ8cRcb^C(yj{r4W9ryM9bIpQl2qm*Qlsje>RSfL9ct@( z#tehD4vz$t7(+Ca^&-yHuRL-#%0cR=lqvE+;gjnNib10$0452kS#yU4xt4|%KZIn3 z$vf98`>t%RgY1aZq6?%SiM)^6@xC>kz)7RjQZusSfvj&a=b=VSa!f7G^{y- z-(&XJK|aZ1a&$h;bf5449nG$7fxS8ok+M$rkwa>8o_D{4)oQ>VMOt6&ULi$6g=bq0bqO#YX@t0#K@c(58zZDd!xpF1(x4qXWe8 zQUVBD0xwTjKKKD{+DNx*Y!L-=)c3Z_!DnrVeTC+H+fSQO-+tDK_phllQTL-GXu)fC zRQA{Q;kX=Qhw8PeEVcRax@G?ep_f}Jb-oEu6GN$$mW4{Y<~qmyjY#Q@yLYA+T&QN} z0FNCh)cJ*KL|Sz1_eC}NP;#*OwZ}cRV(|83ud?Eic*ovr`6XT*d{-7l+@X1BzSV`m z)iO>7Qu`pHJAe&U*TuZ%MiF>x9nqLqorvEG`wPL3;Er-$JHKo9BRP;qklK|}!Yd!s zZEnI3-#6nditVS~+Bw>kcJ%-7hu@(-{o%PhtIlN2v|)83sxnoAC%zoR(f;pXUP+6C z+tKs4VQQM5v0UxuvE+zy`_~8?6B-b%infIlhr#m!kHOO{GvRh4($s)|?WJa8k$-AQqjZ{0jc$zx2e_>u#csl5H!s z_(ciL6?lykCy%czsH|Z7n!|zWI{vRbjvWmM>ET%4C2)SJG{B!!>S@a5cZlH|Kq($2 zY_e-98bO5tC1*SAmvgc4@YV#=o+&YHZm`+~5SVAFVv05;fOqqb}@Udg5`j{(vj~MW9b)`r?v=es0(d)R!mxhlWnD7=Q>A^4D>wGejA%~t5 zK#=w@ViWAxOSzDWK<1+ZNotG76p6s|O~~cONthdUGV^9@ z-499}@lNDDqA)yGCQMF}iz4KyU~7ux)%nGX@QBrmBd>Auc#U)3)=mmf9)0Nkd5Cm- zfedE5U}v-92BK!y!E8H7bVLIipO6IGV6X0SL#)l~OR-$Y_QivtIQ+0nrvFCH74lmU z^1l^9aP*HFxD{I(gvRd=knv`?g!CWML`p7bT5cJr95(34_kmmg3hav&-BJ1eT|-kd z1gj2aZ)DK`TGuujYqbMM<+&VrX&M6uUsG4dW?n+`vf^m^Dp|u(GO7@pM->}qV)4{M zPz_5=2d+L~FdNK_CTiK@%UYot4*OiA)@4yhGCKMc9$iSE9ZJVdWgg3n^nXTx)ov#t zS1N;~?U|e|X!v;r>QYt!x1V|eX~Oiv49Gd`)voYjU~-Y1K8j4I;|-Z~-?P{iTYySvq&%3qurrIj7v>h`5r4zpao7@nd|w6$(cyyqS5XkkR+m*erAS z#>7gheSYEK$xMij58U-*q0ToU1ibA1(@oqrif+WR2z~w0L)cfQWqgsYJ*+X%`Nw&dDRb6e{ z!xP(0smPg)9mYxW;5&tMQ1u*{8DujKGPZIMv2MWUb^#6TlROHgRoN6=@s0q%rIq7l zJwfJf1DC84p;)p`M(E9V>IuW^e3m;R;8x7!>Di1>+uwQlK5~0OB~{ANb)m|6D<<<&z&JT>``l8y5LD;L$|D0|^Zh->8Ww(-s zQPfhC>8(Y@vtY5%u7sIKL+UoFTUf?txSw#icLj%;Rnkxn0Ks|sB68QeATOW8kH#fL zy06jxy)_RMzY1S&MqSQzWyT7oKJU7PTRXpu36os9x`DNr@1BbUWPGW{h}~_7EHChP zht_q0n~Pg$az2b0INNl=_q>IPOP89U3_ym=2n{vMG7dtlodabt0s;<}jFXavR>;ol zj1MSQ4XrW$UfIZE)`xV6hhP!zFFEVHx%c zTl}rP(x95!q~8+|OWfYw%j2kD?P$;rQVT*UHaHei3Msw$sUC-eUP< zaBX9L`Jo|V>JB7Rw0NIFN=kRe&$>d`R^G&=YtiuiinK{KPhjwF1XsEW%$sNYv$%jV zb=QCBNCVlF$@Y^LhWtJG{{+RKF_gnDaxS{3K-~ zZI8$1sn6X*wdtkBlBc-(E{$1G+1a2vfc9iG}mP4R$jc%9Jy zscF$z-KO>R^=VTsx+Te&nxex&i15>$2bNCeYsC1re_72f08-z~?~cw}&PcLT}@0Q4y@&m5Xa08M>~!eV8NTsPid zYc4Bhk5|kCzN-p* z6dY{ca9tZd-d^9{1zs~u{8wf2vwr+ZniUoKKbEVz;SGX?2jGko@9_^GSA{=g$zqtwXDH3h)LKBid zLukJL+iH&=bBohtIurK|vxfwAD$HP-}r;R#sMuii%L3Vb`NZEj?7f zVW<9&aqPyVMl>|Y|1h`_r7?9q}B4!RgKK`nHz^Z0M8exex z-_Bg`wpY!TJZfWMwa(;-6t}zHV`tw2v#n!nVAk36P#^S{LyFhB)21sKR;wSUnaVec zrp->~oUoHmPfx0pjXaF}+F<6RwO21m^nck0A}|JuPoWNo+68oRkEBy_uqcXU;i6We z`;MTyAR@YxJM~+zAxlLa=|DEn<4`npAGdBJPS02z#6sIGIhH``!vflqLsX>3|1k7s zdEI6cZM)?yTPaG>968(b$KpxyVO3(HN)UJ>lwJye4%eBDf)WGN{=R?6jxFQ3MQPD- zeZduKv@Y__Zq(aM$DQG~MUyKw1AmDQ!g<9$%N46?Wv3hJ##QIjKySsM5a`2%-PE$B zlBP~b!5oPyx*F{wi}sMl&(WyS&4eyquP8%H-y4B}xD$6?{{p zMR@%eP4e6mk-T#+73yAAiS^W!l*VSFoE(A?6WxIUawq zdG*>>{@k_Ka5lsoqf0y*D`0EOpnqV1n1kaBa@E`08?)sMnHZc-vqOHZjeJY10=$^3 z6nbskenD#mgjpm_CxMhFLFur1YOq>N45=#FYYmJo%Nz|!d48?v4;c+!PhtHW$cD0? zS+;6TQztQz{v-P^*;gze66;~nzO;^~LrqC{c%BurmOr7(TCIm4Gd z5Sox*`ZRP`ig#EqGWETJ2)ybD)(2e&{CWEf&J1F*5?i<$IS5)xZVbzqdt@2YR1ZIE zFTu{_+n&x=46&FgMi646?oRc63-vlhNnc3DX2IXubr`6HjX$%hYk&b3(cnXw%U>}6 zvYDKGzzC<+1rw*w5kX?oGNY25<)vL(8=Q%smSY^uozyR8z!2k@!Q45oQMqqq1*Rcc zE-n~l`$@c$=BMs*i_oZu^V!)MRYFy>6z_p`^c&gJ%089w*N-*l$pV>F28~7=>_)rw zVo^{nl4=I`7*5NuGautmulWSs8ajZw{e;tNxA*gRe_t`|qz?lmB0+R_w_yL!(C+6Z zm65lJ#YN0Q@fc;WLv-3NRM|r@bR*!I@ZJ<4KeKhewezC?c$t-&qNA*NSkZE)+9}q8 z)OPoKyw8PuAc(Jay&*E^Pd)xK0k#~0d_2tcpYD(eazY<_=^z5R*#GvLlPeM;>)vPoJ=T-d6bT~MprU`tA zn5w$@!mcDFpqy?J29=glnIhCJkQtbpmq(k}$mh_7rzX_{JgT@~?0&hgsCpa>0(0gq zF`ik$ga16z@(_D=B8ydz(zTNGxQB9*n5q`U(?wT6R+@)L z2;h=P^ z$McqIG(*{LVYk$KX@AW5)fKiN`MKDE7+4q&nzVJU;AlomX+>R(;zE@7>A2(zM^)#^ z%+&BWpV~x(sHGj28t(fcR}$}6yOj|>nR1d%*mb@xk$3Ybv9*OCKGLo_mxL}{Io&(B z49oFzqjXqC^TU|4w3NV>1xGPGH}saTi-_C`82US= z_yL=Xjoef8B(gx8rpGzjc^t9=Tu_X0cBxGPsyUf_drT-v(5;$RQGYSXbLN}k@%%_# z_JeB!kDu{~bIs-03)@sw$e{@LK-wxPkPsQ5N_wRK*Nzk1jq^}ALQXXa;pwwf@ZmGt zUy-K+GcZPu!26?dQE_qhhedDj6&9x*UZd@5=y+yRed)O`|E#mU*;q3^>*vA4weX$a zaR==E^{|W0YW2Q;+H*S{hx0%v2%^Did2MZNs?FWrqUC}6 z{aN_CZ*aG1aucwFZQoBi4(HsUw^C z+B@7m!c9;Scz9DXN8Q6C1jO3ZOF}owdN=uM*Lxx*ojCl9bp#R3SR>YH3{#VB&+f!r z>X%x_t5B7&pHu*R8NI=wts~69rODjR;$G+esLh$D(tJq={Q>*dEfYAoqg1iN85_sP zO!ZYA4+dJ=LP>k{)>xRH>M&A+U6Y__<8-c0exY;&CJRZTK+?8vR6l!{k4$Vn9^{*w zo7rfVikJ^CjJ7ou@R^j3pB~eL53^uU27a0K<@7($dFjg^{!DE{JtxvX>de7>E{VEa z!&<40`EU0cpq<*C9DLYz(Wz}&ezwv8TdrPZ$u8Jba0&2x_o;=;f&O5QXWO4<*^T|Jd2zDL|(g%soc zb#-k83>-0&u<(TPu|1R*KA}qm31-P18w5X}Q%3ncMWJ92&IWV%9I4uWb86XxVg$6f zUoM;Heim<$JtVm#C>Ip~Ekp`Q^Jv@Yw(MSaze5gl{p5c|o@u>()Rp=`PS@G$Qe&*c3p37-|JGm7u~1cx@vx~hnP34 zM4zv_NS7FUg$BHi%iemc^>r1ZN9KpH+l?pdi;*(&>mNhe#dHTng_wiR+q;{iZ4s(cGL$Wdhy-$~ zdG}!K`{>@0#vMv{L*$i&K~1J?HvT&$6;O@}RV2uPpk?galin@uE!2aBvPUCE1ViHBXFzK&=5j6p?Cg_=aI%#!fE2p3!;o`zJ zk;SbdP;S;`&$_+*l_}?|6H8X4{8s-mT+)iWs6`VJ&b@lnZjJZlZe$Qs8{!b8Uq&cv zW(rZ~Fc2R+y&CptyblHX%EUGnF9pc?K*UlfBRI!7FczB|(VF!A?yg^zu-qjbfMp(5 zVzFu{*7r&=BS1_4mVgPuJ=&pXqKdz7!pVNj=Yab5qEx)MSS_4e4Pi0|8EcLbDO80_ z>ze~|rWkJrm9Crz!ABdjH2H>T!&BJ~P1bs5^zMm#9-u1_Y)+r_hGFCj_hgp4kkIy1 zeh;R-^RLZ5zqkRvv~c+e@zeKfIiD6I&Yc^exc5Ydp*2V*G|J1W!_5I?O2k`_)7-~V zGIaj74^NxP2@z+q;&0S9OzsB;d*|A*aa|hTQjWi?pt7z=2s-)j4odYecR6L^H9q=6 zH(p|Ul6cRDqEvJoto+bo(S9J!Idh5MIt;{{`VFjZo(qZ#nTl}NKe95ssMPf-HTwW# zFlvSsVH_?s!)efMTkN`T`eJ7DxC*p6)tA}!x&EFUpweGCu?&wNI?F^@n^$vp6_($M5;{YY^gUbD)Qtx3 zHE0`c4KnmvIkL7cAfDn)TJMQmj%L0!g&01sZAStRd#v}S>-~;#zrkXfWWa1cQs07- zP=iNN!@&&rdG3eG<6fddcVDsDMAi>kg2UgxBh|{kY_HmPkvldy{Q};M<<~HaC+9w!U3>jbv zzwpyBH_D7*w_ae=_UY8{F!Oq~sUlwu?%gBFT62JD8M?vo+2Bm&V%@g3I4Y0IFGlD! zhTRnQTw!Jia3XAQJOS#u{Be2Cn{v+WhIV#RvLt)?zM|!E@X{=84LPYtI!%4eaNTn* z66o{!-Cl(-j^jUpt`WP#T{=UKkRN6X^>b%9?T% zv=(E$gAN%Bo4A)Iy6ZX0{ik=6|2Xq(W%LcP{bVW`dsNE!@o?PC5)R zS3iAvr|oZ6=&_EA5npJuuW@q+B*5NDlZ}0=*_~SdjzW2F+ZWmlYm0!T`x(YQhttAX zqNJ0$CJyiAjFp5=?GHel8(5TG0?y8IFMAas(=51bpYlx~AN>S&9V!JV###xT#qS~H zg2H!SjN-qU3+C3KPOsu})%g+LS3JWx7At~1;P{{8m&Svl(!i)VIxIp|tffO_yP5+Y z*E*oC>c9UA_s`g2JJqX4A=i~KzRpHPHc<;KidJ4KyDJ@5=oy*yYgvGO2Fp=S7|K*q2&*iyIu#_gvUkg*sQPg_gq|%9rU*+_?tnF2I3`uPUy= ztys}M;{TZ!o@(}1G@bxn7*r;^Sc{-PDNw{iik_Z57yS@ar(xIC2?gnYedLaHZH8AV z*$8#)@Kwr84;IP9G+y5@9)2K*T1NHimZRp~_jbYW)MzFAj^1^Dsu|nWBJ=qf8{l?I zXDowV=89y0_{ZG|Cl!d6lhgH+O(rS8SpwsQS0O_b`CV5;5^1$4d=!uoc(Y3&O-QJZ zLK+t6O^=8lsnRGV^D;s(fRNQ$vwtu`_9!64MrO_D}d`atUliJJ5tY}?nc(N=M z;d7tsLP%4WpoFH-*Wx^DcruS{*8xG>H*sTBh!(%nG09|drWq5dTKgkk2`5#?2mVqr zHJ(%=;X6#+0}u=>>{TBkSq2#e2^}4r@nAHtHuDuM3K_*Ex&=)?*F22etmn{Ek;3DO)GZ z?=h|Ab+%ZpZ>_~Sd3RTd-zVEiR6v2qeXAQd1hUG$BGvxWAQm0(HZgM7q4O_Pl?UrX z!t<3>{t#J`G%Y;II{$HO$wpJ${FB6qJle-@*)Mw%JWBJ9H|>dM+j%T|>~wTOws|(3 zr^oU3NQoRLi`R`y(+go$N>n2Z(ecKQW3jyb!Tk3;6p*=rvvS!=4YClyM^S0g>EY?!Zx zY{&boq>4(40T&1KWUzD(94I;CTp9X-?)T(*mn^+EME2@{W!`WQ!Qbb&DYcQ8HpIj- z|H@4@F$DAkK~gtn%jVVBqe;Z#OTb8RtrznLwf9>j9g>NdU%)lxG1X?u2~xzk?JC*Z zk^^pzE<#}a+V_Heo{uR{krJq}uR3=DvvSKgA`R<3r3 zeyscGK>sv;3tTOxRLD`)p&l8fE&YF(dh4jR;-*`;P~2ULJ4FgD4#6EtaVr!G#oY;B z+=Dv=cXxN!;O_3O#lAf6z4!Uvf6mIvO3u&c?AfztPWimL_F&*Px7@EPyPe~KawdSI zF$XQJ#1*iX6OWBj{Q|RMv1YL=CTul%n|Rf2IP?|#^noumW}}g|zWfpZvxmpm`r4&T ztEv3ix_wd*fKxl@EP6d4$q6He+4f#o%v)?#Wxo4OVWqvX<(6hX{De~ z{@3S=52k2yC#4ieyp^;?_0vYCL2r!JEv@L?n*e>6bX>UC2~-LxhD}ZGO@J*rd%0MH zA&_VjJo>nFxY39kwu4EvaTrqJ|D3hEY2kT&5s3tTr3QC23SS#GY(`Ym^teA}{f4NV zmQ!OJZOQ})5N;c(e7YX%AetThR7@f~7h8C0gBbri#W@VnXbkaxVHE8 z+^#L#tJ&7VuWwr^ME%c^bR_r!`f#qUqQ~=$R?E76gB?H&vO7LrB7D?m@0d%fvx~!0WcLQ)1UzE3%g&FyCs5xXRm7fnXFQJ|X6%M?L=g;{TQ~j4haCT0B1qQp)jtPg zw_ALih+oQHIDN*p(U`J<=;P*{FjgqW>CF``Yy4Uud4G0~@*~7iTUG-ZYiG z?|B{WXR02yJ;Piud=I*+X?u91xyCir_Do~hN^7sRt&!6jb(#3Dk&>XvSUV}EU}ZSz zj;I^)1ObAFvz0=L&YLH<+bQWID#9XNT$ZL9_A$(g!c6bfAWl9;7kSSLKI&vXpQpW~ z$Ne+^DkJ*%DvU zoJ8i9*5|ilFFrbGbsq#n5dZYZ>z)=B%IpD^(CqFq-hB{K)OFo-qhCx6&U~FIRMe~> zTTkpf+1s;CaUCdg@a79@ zPW#j(X!ORJq=9FoG6aO+H%5q%|8yOY?l^U{_=mJ6%8H59s6C(`ev@B78X%PIc{$KZHU^Y%I1?6uWkZ^b%(o7~+>Q6Qw*y&V&)BD+#{ z;-MtJS-9?+63u;{`^Vsw`I&M^_rjWaWqClhJ2N_mqM0p5KrpZ zO8&|W8<>`~If$DLj4I6xRx^@Kh53hq zLNR%od(%hXMp}De30MTP#rJRUB6{+f2WXv&@($eT;oR6M77dXX#IVe|VT)xM4Ne(tJ z0y2hidxlaZR)}kCnyo%8($Feo_9gi|GGnNjVZR-l0iSDLIh|Ksy8rNUdu4XWhG5tGZM$X7VZ~im}X&tDjK0guT zT!jJmtGZ4jOChpRo@x}h2&?Z*H7LmwEA0LWNwWz_Hs3=K>G+om5 z%#cq4K28*q_$7HeA=({;AKxF5oUTT%);BbJFV=ak4rOdf-;XR=mefPK9nZTK!A|5q zrnvU_K8cggTuym@D#%orYK(frs07vZmhgb3Egtyrl=+Y(NeKTe9midUr27``qx&W$nG_c|RFTwi#Z< zT#&qAZ4sOL`?oU2)V85-$n!4W?ixB5cwC2IPelp8HQ}(1VzyRx zzWr;v9OEWo(Y^N818%{;yxc%WB6aD}+Yh9n>zHvv3u`p?S za;u)G-(;1ndO=3WRB?Wk6LZIIm*|ktZKL zt*7bbq^9oMgY{=|9TvWtq^LN|Ifu3++~gJh z(O7R*`86&>?Tu7wTEYvUdr?UNj ze(`D!oEC6@GoP*FQHARF$+5oy8*5j^(?fPaJnR1PG8exzk5k4i@2$GAjPC12nl6x= z+0oHHE%n5i^riQnV%4PqF6>H1%_h@90JL&Ry4z2qrVU)LFTJup(ZB~^biRAjjYN{X z>sF1@*^oNI;Yn9tRhbijn?*+=S!|rHjpRw``ojdCdmZ3(r#BdlI|N6Nal` zb!X}Kx1K$sGKD^7pBK1b9F-FdX!?+T>JQ~H`zRmpx_O zc662zuoe=;#d`%bm7~}3M(KifXa*4Bzsr#~SBo#@hxd!Zmjh00RvxZGi4ypRJ+>6R z*5cMm@iC!H@7Q*u8w#+332D@Q>?a?~9u;h9UvKPBFH=J8;}EDX4s5Sx5@DTEZW#5_ zW{B~%kA{l!sA@USvTJM6ukXDBJ71d+3x{0txNxMYF-eIkZez8tcg)(Gn#98%8jXLc z2AYE2c7{yI8z9(aq}tEjh&}}*d3x9lz+`XTRfC!%K1njIS6Qb_xg0HQ$?gKCm?~zC zvbxh2$na0#D4?5S9pQx~bNj?Q7UK^v{5mMbVQ(G3ALbVPwG>6rs5jLvxDU3tg6)zCISm&=vnwq}Q@i*>No9@d;$4uDVU~-kIjjngtliLGaR^RmD zc#f?ebtzxHj2%$vy$G0$;;jn-0J@=m2NSSDm8S<}czAiUgiSN4jpi4{P=nUl!=cEe zB^oo%H|P*e5a;Wc2U|1$q`upx;i;|V?Bt}9!_*Y#N3+B6?VFi)2~x*G327SzUC&|) z|3Gn^zd&CTi@EvH?341c3HE>{zmUB4WAotDIaCAJqW@SxI>f#EiJn(XbBe^U)_Y1gY>KXmqB!%cpszo$0z zURz1qp8{v5N>GrZ--sKc$t=GmI&q)8I7|`;+iu>MdGGft{L&K!<4OGg>MXlhWwSo_ zI3CUx4x?0{7*~fUe5mc}>e9$44IQ1&~9 zNS9Gt&bP|cGR-d1gbe|T4V>Uy0c_U+{j_Nel7_}F4xuz~ZoKvV&vEb;6}T6BhcP(3&zX--|>%FTQu(K-%bo~`?a*yx(}XtKUbB@UH_%*411SO zRDfXGrM%NWx-uv{NZLz`YnS4Wy-$}E;`)xxh1c$tGHbS_{pTYl&icXo$*)Iz3W?h* z*u&4d8-jThZr@I-cLoC&W8os)ZVk}H07B1aI*aA^61%9GTT!@wD-Q$%=lFUrcXb{N z%nnrg2B%MtEpYY_U4qq*saW1lG$NjNF%PvnVAx*I9ck5@DT^#Wq$@nJ2S@Z5QLRN2 zD#W3BHxp!d1Z+v-fIa3;+a!SJjt`~4U63gI**{`b!hTVn7tt4Q8`HeXl&D4@e%NTm zo3x8}Y#2$M%YTTdcDu99hu4l8BvF_XgQ;w95&3&Nmu~`5xu$b^ZLjwm(PS@pdMN@p zHgl%fj+aEuS^}|I$C1mmN4(X-h#YU%rI)K0p+1{)D{WPKWCY+*S>PKq{QfB~Q$aKv z!WdxwV>_eq9n>2*fB0}o0`#fjY3RHo1s-9L(wO6mosOOueMk1Fs+&7w%LU zZ80CC$XlN4Xq~#nWSW$_}6QH2Y zv-5afP_0?BT&GnJd$6J|lSCQVa6yFTJ(swvS|~$(%8!sevx^u_QH#&_%pLpAoQC)- zIS7pys;y<=^@cj2S_&C9>3Z%*bgR&SiX0qgc=74g7+E+A;3k^9y{Xb25JBJ3CW54+NT~4M2?o`lBw)mgxZTb zX%_;wy0}3{d*mg+;!H3ThcoF3yFm^sw{_7#SVGc;nZdy6!5GA`VQSm49c-1$Tm5%n zYV0L#&oMJKwPaDcYI5u#-P)~b$B&in{&Xo9X(pWzb@8s>g09x(P0=yXv_oon*`l{J zIO&_iXO1tZ#CS)#V2@(fh5DY+1{}b$@9UGc(cX#i!+HCn;tijcc6Ax>3@0h@f(jd( zvzmPA)lNGn$AyuGzQS4i)_te>nfOUTRT@1CVX;F{u2{d(7;5vZvsy}|d0ZpBT>^0I z$yyJyaM1NtRdN@fOUu-%ZmPs5t3CuoAW3Q45WBpXVvfv=;-6$SV1ZdRMfHri5*dsQ ztsOwycdNbQ*c^UC_hHoF3~Q&v@d-9bpiq?9`u{5v)ntsU%K|t#{WbMxo;hqz>Yp!H z(U1b4ZT;4qBb=NnsEglGxZe1<>_ZZ(rQqnmJuTn{URl$&6jdmDKRMRBeDs&iYjfmr zL)mkW`kVD!$iY4mL{|tT6Al7te9F?@GTutb-C1tEe7TK_GtiVlSe5Sxf!uHQT&F}n65&d3yn%K z({=FjUHJKl(K%emt(cQ~Ve{{Cyo(&9*}Tl;W3GQ1$D5MNqA=jA=(VQ&*a`UUnUFl>ImnUbVz_OqX-G|uvsnY zrge99QN5W*BK5Wp0p3)Q%RHVp0zJYp$-R$lZe3Zs5*2h}iczzQ*4VY^`u^-(vjAQ? z5wkXQ39nW!KI4E3=b^~23>S=f8rl7|)DG~K39I-kr`yI?{QY$w0oW4IX79!;I=q4F z)|Q8K50@Lq{Cf?VTZKXL+a=kdmM83nS1nA5uj6GGoaw3i13U|VdeqneqK4j49n*>S zi(&VLqK~^gb_Q>c)7wku=g9ki*kMrc{PfR|YV+;+LN#dbM(LSMz=f&Zj%C@+!$Z05 zPQ$e?^60AT=K}GAauB>RvmVM41+T zY2RG8U)mwqALJX9z6vGmQ)`m6Wz$_A4my9d`z zd!PU&)I_dkUrq>IF!r42*tQ1-1iOoHz)RmcCrY zBwZWJWdIftR_@3E$>;kAhm=oAv3+Rr_E8`#BaM5zejh1_Kaglz(q70({_y-_G0IlX zpex_OQnhYB_^UHg?HC1Pdz{d|bO4ji;r)#Z>#DRA0 zBj2K>u$LCKn5Pz$l?AFz##6cXdKOrPE72`JQj?=W<$oeX#X`U!Kg{bN2g;YeF!LDm zmnUbzAg>oQ#u9Rd#!QLRoL;$j-i;k^>oU%Fv|prGy26DP?iHPFH$H1O zS_73kky38;(xE8|3c+#{ru)L4u6)PsRTs#8sFDe2`56Qk8eS_>gzF0Z#dp1~fMkinoH1yiY> zno6a0bEKAA6mdk;1RTkV!jOei+^<@fN$|XP@26gfzjgbY@0QkQJsOQ<&+!Snh*maX zxeHPVU;}pU zk$jI>=juebJz}*-W4!}gmEG&!bCtaXwloP4==z}jyH?*%`ppHiXS8uEMz|v)8nv?5 znd8eqQ{V5yVit#e@`0qx@`1wEap2_vs&6^l4iB4kj|`}1jgJ{E?d=KYYjJOXb?@l|+BP z-qCwzsv3$DeZV^Z8E+sO1_{oWPUMQ5KShA5$U?-zCJwD)K^sQD znSq{9#DkPNk#>9b^SvOpO{${}WgI`dt)9S7-ONU9aHP>$wKjgzvRhy7NKHcKnIR^kO!$f^>$}XdNTX%+>^?eeYT_ zn!?&E8T@w%zGTmYJ?;o`49tkV|Q2<8f}>tV615Pk*yMJtePgC(~5Reu}~qv<#LG(Wlcm);ilHH}T|bckqC{FHq;A{A1b zG*}kHZK58ieo8~$TaoW!@GZF>rt_TaPW9k8447C>vDQTKJX&f$I7B<92s)}0kp#G+ zME=aiQbJ;c!-Hn!-5~hh_tkRh7V?&oGM4XBVBNR$*idsR#o zf^`ss2dRdp&@_$VOG-|rX8T)>H2WO4^Wb#P$F`j*k}`Ps5DRygjE)<raQn2%PH*91T z9*#ENgrPi@(B$y&a1Aop^IA5t4L_k)3ty%=2aIQ2uH`nQcGn$iR3#y!-7K`5ddXm3 zt2?+IxE437x&74F@#0K{yGHNa(56tZBfJYlss3{Jv(^OtVu}HFI_xzlx`Z3UPgZA7 zF~sD`H4!FAyVk_Ksm!EHiEogusR)gHh>!AtFJ;S)J8vBaGR@tsFoErs`0wK6`a3>X zUHpp9v>W?2z1~1*s4VRY+vKVJH;&px3Op(?D*H>!vrKTR{IA$JRnGp}M}Yh?Byjw{V14`o=vbX7K4DK&Sz!t7M#i!$+b zuqW%ew3|kt3+pIL+}n4kG;7OaM>YGvZ9{p)$Y)V9&^@9z%x-1)Iq~1sc38j}Av&G?N3Ql%>7e;e;gF9bIqM6rdI^_ zr1bB6*8S&GPMC?mff%{1J&Ciejpq;sBwutaWZvdWmoU2ylvS%d%|326jVN)N$hV?O z+1*oco=3dr1()ZKj%KxGp=ht-Zfh?yOC%Hp2a4d`C9N{|xr^iFh^esZ+=n*k&L-x# z-!b3bA|1j z@@ZtaJP4&I0&+?s8p4`6m8RnCW*<*+cwqw0%lA3S%jlNJuQ8vF?^CQM&tdwHP2lwXpTi2Gvj`0n09z5;|t7C=Olgh;1*R|2coTeYxkoImR z>)ijYgd@DKDmJ9^X`Ci?ZVQ_9P*0E8mq%@Vz83Py4H;DKfru#NS+bE8-7d2v3yigSD*8$hz9zN+-jwKnn@^WfCzjFfJbxLZf=c67G-I`#nDwf z<$NI^GmN2fVO?pk7PtUeyH?*E2#|!D`m90b6q`3bZ$Ie@wv_xjK!FVd3TcA!EP};E z{_kPqmllE5dfxadFiN*7VQKgikcDnCFi7pQRdFIPB2q zX*(&jQht7?C<%D@)N*4YPGv|-nH4>eBN2Pl%5+EW>lg?mfD7;>fY>MtKNnhSs;ir? zrwQH(oD1fdUL-=#p64KRllfmH7k&B+w@d@AXLTP^w1EN>`1ik^`bP)@y*nG&RMLEV z)U;Nc?{!Ta(jj$LE6lWxeKod~y(5{KtzA3#P}z}A3>WY_k#&0Jp(Qb5S%T16u!#!!SN{JN_diW%`Cu#cIlgbZ z&BxR4W@6#veAScbdZP+-MoTrC0+{Xw>d*y>Si*VIM%W%VV-*@Cj#~A%&O(AJck;cBp{P&vvskY z8r=Fpx?BYb4F?X|j0{FVNzi}i9}o6`1=c?n_(NX4*AE`m?(x!qMW>-mag%wwS@E(s z65776XvAM=$F92h#?@8(Zp;zdNLmGSLQMrs3!2P&^JB#}Jw>{t0ZCm(vD$y>StrZk zS`$+KzIEQfAkInsucgL={TSGlMGJ3y zlIgD#X<;T7uo6CpG0L~dKbKdF51r)9a_Nfqlk$**x52tfIu|KG+IRZJGZ$dHo(%bu zWybQmP5Zf%*SlK`Zt2G|tz58MA*w@t=FH!}8yXdNg#c-0<_ub}0xdWay2sH6MbE_k z*CXf#)mKy&@Nhr{U1i8r`mRNvPlEbRL*FIX))Qny)pr94FTJ$V`b(V&f$EaEx#h7T zraQ_c$^6XQZolo$Rn`%%W9%4SOn^D-AJ_^%j)`yd=MXdNLjtZPj z1~7bhrX(WGij`UwBisb?T71Fo-RAsv#FA|^Q7QB8t@iCxPKNTw85EDy?5`3Z9a zoBS>%-2ZE7B88$#@TfaCI7$2`h!! z^;e|FP*bXe*DzDzt5b%Iy;`oLRn6(ePDLNGf7efr8St7tvjs?0S;D>~w%k0~pR8HM zmW|Ye@nHS2U?`qWX%f9kOmp|oPF00Tiu~@it?THE_gdxt*C74_$=ju~^g~URSrs$* z@u#My*wb1SwNQ>cFE>R`SDSI&+}zr26%cj)siTsWse~_6MeFVKJaC|Z*u3bda7cRn zK<`2uoq+a}Lwh7$cQS9mZ`$y``9UH79O$u%%E}~UWrtH1?_{6jlN_5jxD_(eE3bzOg& zn~{HebzlFEBR_Ye6V!DdUcWInuGbby-zJI*@}bP$r0h0bC3!9(&il~h(^bKy_ouS6%vUw2(&M)SE0X|Ws z08C_d;0ri-bS;RRm4^Ju6?A=SBdVfJe##64Gz&(qYBIMuce_Z?{oE=q5;s;B1eC>r zwOZ)(TW80d5x|Y^#4HJ>y3&Y!o#;2j$(<=2#$0VH2gdEUCijBCGcMOl&-tY>BoL|y zunyaKubz=lX_R4vQs(;m9v{P+w%dS*0Kbc_ZM5Z&e;=ecVB zwX?Of+XNs6&{R@Wm~?mq(&hK|l6+S;r-GRBJRgjml=x-%`axCM>{RA}u#&LN`zC|0 zKb6$=(KY{|tK^8q5D`QO@=5-5?GoDprEy@!QHw=utHAI)*zTftS$ym2L*TyF*4o$& z>NOP8`b+kFBkvYIXI@L_F=Ko2p`g|xrb$PpHL&x{+aw-k3KxW7ey|2Uos$L~y24h*%q_0)v1YGu#Fa9_%xodFJP4Mm=SnBcM7oja5o~yW#a^b+g_i>ZcyguuCJhMKw z$ESUFl}ThyiG^tb4>vn&?QHd|8c{{4f3PeZvTtS3N5WP+Jaj2e=Cm^+d`%X6$L%hg z&G+R!u@IAvQBmxGrVRdFYyHKoPs`lio8HwzDs*R)_g9ZDrLk}KjVno1)L5ZMzL)Xy zS-iC<=xr=@?)9Uto)mBHt_|y%Q=P(3Yuf8yu9I^ zs||OzbT+GBmoXG}QX}d?deNu=i1^|M9S-a`ENnR#5?z zG);`KZ$|>#yToRK^+y0Pi^WXD&4dr7Mu!I2Mx@{SBHY?jn;-dezT*06^b=ZUVeQ15 z*Bv4^i+tG0ttYP4>vP;i#_7xk#r;D}AZi2>sOwfa>9^A=l2)V!>6eMFpoqv98&O&3 z&#|g;d?6-clJ%%l#kuSj^Xlx;c|wo<9#yS!)i!JV0en4m86Xfv&?BP zt_r7#3INztg|?KRV8_*jjlWBoJ^oBH{EpQMKP>hm7}3(GR;@iXV-nVs)o+o_%k@SG zPPJ{vvz?mcc**PUs`mI}_Km9fG1^%_`K~xPTmEHgcy|i?-?M)rd7x= zuMO+|jn3q=b>35l1~g8jdDTHnMFF+S2?x;kZLl)ke3s*dQN@&3TY@majfoP#(Jf|I z<~V>PG^B?W8AnYmYnI-18q6~abH7cL8}myjD2gO&s}=r;-^={I_+aY6TJ0MmbHI{q z_k$uEudcccg>QvPNp%I8c`8#t7;|)58jjM<3ad?$ixJQ#q&S$=Z!RrmT97(v5ukh^ zsY>R5?(*&2Zkc($mn^mCG=zw`&yfqG%*pU~C74{p2FuhHEnGxb?!zg@$5axM&9M@R zDT6Rk-l4MTr$CXDx9Z!_Kp;jPydlt#U(AXsU29X++KW}raumw~Q_|a52v*#G^1Edj zLdnKiw*hHi$h3(|vz&vHszw;E2in|3|EDEZrXzYqnh^_mZ4H{y&F>@_?y1FQ6_!?F z8lkGSpUa9%O*7k4m@EaYOi;p#(z)x#cJHe6a@+~%ob1)hO_*6U+z$SrprgOy*|FcfzPrDYZ%edh;kh65A3ZYNOjCv*b^x)!-Kd&KE zYE2eKOoWXt^R^Z`kLqaIF`r-k)0f)iA~5%U*kEQ>5l<%>ZI|{+z!!` z`|Q4;pQ#Fds~(>$1W`Ig-Rck;RNlO+^&_YPY(i+@RHqpX%#2XZzI-4044Io9ajA{$ zvqj#<+4+qg>9;^GmS2l}$E98s!^qt-!g;bDFbQ0?Xo@CJ05we#SwYr)%WAB?%Z2tX z2AJWgY3yie3cwZS$7l%!*^m^hfcIJ4 zBhkB&?$77`gR_f?5K|b57|6kyxxEz0m%iHQLZ&-X-=-$s5cSYUKxrNp5hL77#^QV? znOD;5a}uW7FL#}DQg_L>tYD*ftjWxoxGS$%dC61xBIr+9km~5;1*p?rPhKd=mL>DPf zKd0||7-r}U(utI7t`v~xvK9pA0?Z=2%J$_|Q!4meD#?1buLgLEbKd@VW??pq@FQ=K z*+8=mPccO7Cq$^~Q6~IMh79pTzC5W!tA?_YX49em+Vp+xUK7)Hb2v?Y$ibJct&*qP z#uWXJn(rPe3kfL%LVsA35&!%ZU$y$?=6vfyX z`zjP7_(3#AsC2O)$o;1+UN1RLP|ayCBX3<=Z4POOjGX_Jg*aVfD8*Ndpqf96jkXkq z{)RHtJQf5LU#X@T9SF8WwnXzJgLh&LWET??6u+(d=Jw;OsUS|n=J~o%kS`JgCuMQ8 zhfJw*`g3TK!j6@K@s+zVyr+dg9HjwS6-DJUAqOvE7Dn+JvIn{PRumrLK8lU1eU5}7 z=tNgzF{r50va6)!mvv!Qm49yKY4YF3Bf6HB|MkoKaT*^Cn|TM6qY33ZGK&(w4)=X7 zalUQgkLk~n6quXglB0%Z`-7&xa+sFYk3zbN%KX1m%&Lr0m4-4JNvc4#cLAWq+; zRv6Vi@esWzU{4AT{;-~UN2+5;(s{ReZGV3#lT-U�yrmch!c8xKO`EuYvP#EzcGx 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
-?H6%v!mdPc>eTACE3|XF)lV5kF1!A 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%0Dlr_h{9<`J1Vv$l3NtH) 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 10.0.0 +1. Provar should be installed on the machine +1. There should be a provardx folder with provardx.jar available in the installation directory +1. sfdx cli should be installed on machine (https://developer.salesforce.com/tools/sfdxcli) +1. Install Yarn globally using `npm install -g yarn`. + +## Typical workflow + +1. Clone this repository from git `git clone https://github.com/ProvarTesting/provardx.git` +1. `cd` into `provardx` +1. We develop on the `development` branch and release from the `master` branch. Checkout + development branch `git checkout -t origin/development`. +1. `yarn` to bring in all the top-level dependencies +1. `sfdx plugins:link` to link the plugins with `sfdx cli` + +## List of Useful commands + +### `yarn install` + +To install all dependencies + +### `yarn run prepack` + +This command builds the package. + +### `yarn run postpack` + +This command cleans working directory from the build artifacts. + +### `yarn run posttest` + +This command checks for tslint issues in the code. + +### `yarn run test` + +This runs tests. + +### `yarn run prettier` + +This command formats the code with the given rules/config. + +### `yarn run prettier:verify` + +This command lists all the files which are failing as per prettier config. + +## Debugging the plugin + +We recommend using the Visual Studio Code (VS Code) IDE for your plugin development. Included in the `.vscode` directory of this plugin is a `launch.json` config file, which allows you to attach a debugger to the node process when running your commands. + +To debug the `provar:validate` command: + +1. Start the inspector + +If you linked your plugin to the sfdx cli, call your command with the `dev-suspend` switch: + +```sh-session +$ sfdx provar:validate -p './provar-properties.json' --dev-suspend +``` + +Alternatively, to call your command using the `bin/run` script, set the `NODE_OPTIONS` environment variable to `--inspect-brk` when starting the debugger: + +```sh-session +$ NODE_OPTIONS=--inspect-brk bin/run provar:validate -p './provar-properties.json' +``` + +2. Set some breakpoints in your command code +3. Click on the Debug icon in the Activity Bar on the side of VS Code to open up the Debug view. +4. In the upper left hand corner of VS Code, verify that the "Attach to Remote" launch configuration has been chosen. +5. Hit the green play button to the left of the "Attach to Remote" launch configuration window. The debugger should now be suspended on the first line of the program. +6. Hit the green play button at the top middle of VS Code (this play button will be to the right of the play button that you clicked in step #5). +

+ Congrats, you are debugging! diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..05ce98a --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,27 @@ +Copyright (c) 2020, ProvarTesting +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md index fb7fcba..cd7b2f6 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,161 @@ -# provardx -ProvarDX Salesforce CLI Plugin +# provartesting/provardx -UNDER CONSTRUCTION +ProvarDX is a Salesforce CLI Plugin for existing Provar customer to allow them to execute Provar Test Cases from the command line, leveraging the Salesforce CLI and SalesforceDX applications. This provides an alternative mechanism for running test cases than running under ANT. +You must be a Provar customer with a valid paid license to write and maintain your test cases. -ProvarDX is a Salesforce CLI Plugin for existing Provar customer to allow them to execute Provar Test Cases from the command line and leveraging the Salesforce CLI and SalesforceDX applications. This provides an alternative mechanism to running test cases than running under ANT. +[![Version](https://img.shields.io/npm/v/@provartesting/provardx.svg)](https://npmjs.org/package/@provartesting/provardx) +[![Downloads/week](https://img.shields.io/npm/dw/@provartesting/provardx.svg)](https://npmjs.org/package/@provartesting/provardx) +[![License](https://img.shields.io/npm/l/@provartesting/provardx.svg)](https://github.com/ProvarTesting/provardx/provardx/blob/master/package.json) -The ProvarDX CLI plugin is free to use (and will be Open Source Licensed) command library that leverages the commercial Provar Runtime library. You must be a Provar customer with a valid paid license to write and maintain your test cases. +## Installation into the Salesforce CLI + +Install the plugin into your Salesforce CLI using this command: + +```sh-session +$ sfdx plugins:install @provartesting/provardx +``` + +To check list of installed plugins and their versions use following command: + +```sh-session +$ sfdx plugins +``` + +To update the sdfx plugin use following command: + +```sh-session +$ sfdx plugins:update +``` + +Uninstall the plugin using this command: + +```sh-session +$ sfdx plugins:uninstall @provartesting/provardx +``` + +By default, the Salesforce CLI periodically checks for and installs updates for sfdx and the salesforcedx plug-in. To disable sfdx auto-update, set the `SFDX_AUTOUPDATE_DISABLE` environment variable to true. + + + +## Commands + +* [`sfdx provar:compile`](#sfdx-provarcompile) +* [`sfdx provar:metadatacache`](#sfdx-provarmetadatacache) +* [`sfdx provar:runtests`](#sfdx-provarruntests) +* [`sfdx provar:validate`](#sfdx-provarvalidate) + +## `sfdx provar:compile` + +Pre-compiles any /src PageObject or PageControl Java source files into object code to use in runtests + +``` +USAGE + $ sfdx provar:compile [-p ] [-h ] [-c ] [--json] [-l ] + +OPTIONS + -c, --projectpath=projectpath Specify project path override + -h, --provarhome=provarhome Specify provar home override + -l, --loglevel=loglevel Specify log level for command output + -p, --propertyfile=propertyfile Specify custom property file. + --json format output as json + +EXAMPLE + $ sfdx provar:compile -p './myproperties.json' --json --loglevel SEVERE +``` + +## `sfdx provar:metadatacache` + +Command to pre-download any required metadata for a specified user or provar connections. + +``` +USAGE + $ sfdx provar:metadatacache [-m ] [-c ] [-p ] [-n ] [-o ] [--json] [-l + ] + +OPTIONS + -c, --cachepath=cachepath Relative or full file path for where the metadata cache will be stored. + -l, --loglevel=loglevel Specify the log level for command + + -m, --metadatalevel=metadatalevel Permitted values reload (get all metadata - default) | refresh (only + download changes). + + -n, --connections=connections Specify the name of connection for which metadata to be downloaded. + + -o, --connectionoverrides=connectionoverrides Specify comma seperated values for connection overrides, eg + Admin:test@provar.com,Reg:test1@provar.com + + -p, --propertyfile=propertyfile Specify custom property file. + + --json format output as json + +EXAMPLE + $ sfdx provar:metadatacache -m 'refresh' -c './metadata' -f './myproperties.json' +``` + +## `sfdx provar:runtests` + +Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname + +``` +USAGE + $ sfdx provar:runtests [-f ] [-p ] [-o ] [-c ] [-m ] [-s ] [--json] + [-l ] + +OPTIONS + -c, --cachepath=cachepath Specify relative or full file path for where a metadata cache has + already been downloaded using either a VCS extract or metadata + ProvarDX command. + + -f, --filespec=filespec Specify comma-delimited, ordered paths of test cases to be + executed. If not provided all tests in the PROJECTPATH will be + executed. + + -l, --loglevel=loglevel Specify the level of feedback provided during the compilation + (see above) and execution. + + -m, --metadatalevel=metadatalevel Specify permitted values reload (get all metadata - default) | + refresh (only download changes). This overrides any settings made + in the propertyfile. + + -o, --connectionoverridefile=connectionoverridefile Connection file in the format provardx-connection-schema.json + providing a mapping between the Provar project Connection names + and the target users to be used. + + -p, --propertyfile=propertyfile provardx-properties.json file. If filepath specified the filename + will be assumed or it can be specified (.e.g myprops.json). File + must be in JSON format and conform to the provardx-properties + JSON schema. + + -s, --secrets=secrets Specify path to secrets file + + --json format output as json + +EXAMPLE + $ sfdx provar:runtests -f './myproperties.json' +``` + +## `sfdx provar:validate` + +Validate the provardx property file agains standard JSON Schema + +``` +USAGE + $ sfdx provar:validate [-p ] [--json] [-l ] + +OPTIONS + -l, --loglevel=loglevel Allow to provide loglevels. + -p, --propertyfile=propertyfile Specify custom property file. + --json format output as json + +EXAMPLES + $ sfdx provar:validate + Property file is valid. + + $ sfdx provar:validate --json + Invalid property file. + [Detailed validation error shown] + + $ sfdx provar:validate -p './provardx-properties.json' --json + Invalid property file. + [Detailed validation error shown] +``` diff --git a/com.provar.plugins.provardx/appveyor.yml b/appveyor.yml similarity index 100% rename from com.provar.plugins.provardx/appveyor.yml rename to appveyor.yml diff --git a/com.provar.plugins.provardx/bin/run b/bin/run old mode 100644 new mode 100755 similarity index 100% rename from com.provar.plugins.provardx/bin/run rename to bin/run diff --git a/com.provar.plugins.provardx/bin/run.cmd b/bin/run.cmd similarity index 100% rename from com.provar.plugins.provardx/bin/run.cmd rename to bin/run.cmd diff --git a/com.provar.plugins.provardx/.project b/com.provar.plugins.provardx/.project deleted file mode 100644 index 3ce3b05..0000000 --- a/com.provar.plugins.provardx/.project +++ /dev/null @@ -1,38 +0,0 @@ - - - com.provar.plugins.provardx - - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - org.eclipse.wst.validation.validationbuilder - - - - - com.genuitec.eclipse.typescript.typeScriptBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.wst.common.project.facet.core.nature - - diff --git a/com.provar.plugins.provardx/.settings/org.eclipse.wst.common.project.facet.core.xml b/com.provar.plugins.provardx/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index cc5970d..0000000 --- a/com.provar.plugins.provardx/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/com.provar.plugins.provardx/META-INF/MANIFEST.MF b/com.provar.plugins.provardx/META-INF/MANIFEST.MF deleted file mode 100644 index f561e8f..0000000 --- a/com.provar.plugins.provardx/META-INF/MANIFEST.MF +++ /dev/null @@ -1,6 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Provardx -Bundle-SymbolicName: com.provar.plugins.provardx -Bundle-Version: 1.0.0.qualifier -Bundle-Vendor: PROVAR diff --git a/com.provar.plugins.provardx/README.md b/com.provar.plugins.provardx/README.md deleted file mode 100644 index 1a8d5b8..0000000 --- a/com.provar.plugins.provardx/README.md +++ /dev/null @@ -1,213 +0,0 @@ -@provartesting/provardx -======================= - -sfdx custom plugin to run provar testcases - -[![Version](https://img.shields.io/npm/v/@provartesting/provardx.svg)](https://npmjs.org/package/@provartesting/provardx) -[![CircleCI](https://circleci.com/gh/provardx/provardx/tree/master.svg?style=shield)](https://circleci.com/gh/provardx/provardx/tree/master) -[![Appveyor CI](https://ci.appveyor.com/api/projects/status/github/provardx/provardx?branch=master&svg=true)](https://ci.appveyor.com/project/heroku/provardx/branch/master) -[![Codecov](https://codecov.io/gh/provardx/provardx/branch/master/graph/badge.svg)](https://codecov.io/gh/provardx/provardx) -[![Greenkeeper](https://badges.greenkeeper.io/provardx/provardx.svg)](https://greenkeeper.io/) -[![Known Vulnerabilities](https://snyk.io/test/github/provardx/provardx/badge.svg)](https://snyk.io/test/github/provardx/provardx) -[![Downloads/week](https://img.shields.io/npm/dw/@provartesting/provardx.svg)](https://npmjs.org/package/@provartesting/provardx) -[![License](https://img.shields.io/npm/l/@provartesting/provardx.svg)](https://github.com/provardx/provardx/blob/master/package.json) - - -* [Debugging your plugin](#debugging-your-plugin) - - - -```sh-session -$ npm install -g @provartesting/provardx -$ sfdx COMMAND -running command... -$ sfdx (-v|--version|version) -@provartesting/provardx/0.0.1 win32-x64 node-v10.15.3 -$ sfdx --help [COMMAND] -USAGE - $ sfdx COMMAND -... -``` - - -* [`sfdx provar:compile [-p ] [-h ] [-c ] [--json] [-l ]`](#sfdx-provarcompile--p-string--h-string--c-string---json--l-string) -* [`sfdx provar:metadatacache [-m ] [-c ] [-p ] [-n ] [-o ] [--json] [-l ]`](#sfdx-provarmetadatacache--m-string--c-string--p-string--n-string--o-string---json--l-string) -* [`sfdx provar:runtests [-f ] [-p ] [-o ] [-c ] [-m ] [-s ] [--json] [-l ]`](#sfdx-provarruntests--f-string--p-string--o-string--c-string--m-string--s-string---json--l-string) -* [`sfdx provar:test [-p ] [--json] [-l ]`](#sfdx-provartest--p-string---json--l-string) -* [`sfdx provar:validate [-p ] [--json] [-l ]`](#sfdx-provarvalidate--p-string---json--l-string) - -## `sfdx provar:compile [-p ] [-h ] [-c ] [--json] [-l ]` - -Pre-compiles any /src PageObject or PageControl Java source files into object code to use in runtests - -``` -USAGE - $ sfdx provar:compile [-p ] [-h ] [-c ] [--json] [-l ] - -OPTIONS - -c, --projectpath=projectpath Specify project path override - -h, --provarhome=provarhome Specify provar home override - -l, --loglevel=loglevel Specify log level for command output - -p, --propertyfile=propertyfile Specify custom property file. - --json format output as json - -EXAMPLE - $ sfdx provar:compile -p './myproperties.json' --json --loglevel SEVERE -``` - -_See code: [src\commands\provar\compile.ts](https://github.com/provardx/provardx/blob/v0.0.1/src\commands\provar\compile.ts)_ - -## `sfdx provar:metadatacache [-m ] [-c ] [-p ] [-n ] [-o ] [--json] [-l ]` - -Command to pre-download any required metadata for a specified user or provar connections. - -``` -USAGE - $ sfdx provar:metadatacache [-m ] [-c ] [-p ] [-n ] [-o ] [--json] [-l - ] - -OPTIONS - -c, --cachepath=cachepath Relative or full file path for where the metadata cache will be stored. - -l, --loglevel=loglevel Specify the log level for command - - -m, --metadatalevel=metadatalevel Permitted values reload (get all metadata - default) | refresh (only - download changes). - - -n, --connections=connections Specify the name of connection for which metadata to be downloaded. - - -o, --connectionoverrides=connectionoverrides Specify the name of connection for which metadata to be downloaded. - - -p, --propertyfile=propertyfile Specify custom property file. - - --json format output as json - -EXAMPLE - $ sfdx provar:metadatacache -m 'refresh' -c './metadata' -f './myproperties.json' -``` - -_See code: [src\commands\provar\metadatacache.ts](https://github.com/provardx/provardx/blob/v0.0.1/src\commands\provar\metadatacache.ts)_ - -## `sfdx provar:runtests [-f ] [-p ] [-o ] [-c ] [-m ] [-s ] [--json] [-l ]` - -Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname - -``` -USAGE - $ sfdx provar:runtests [-f ] [-p ] [-o ] [-c ] [-m ] [-s ] [--json] - [-l ] - -OPTIONS - -c, --cachepath=cachepath Specify relative or full file path for where a metadata cache has - already been downloaded using either a VCS extract or metadata - ProvarDX command. - - -f, --filespec=filespec Specify comma-delimited, ordered paths of test cases to be - executed. If not provided all tests in the PROJECTPATH will be - executed. - - -l, --loglevel=loglevel Specify the level of feedback provided during the compilation - (see above) and execution. - - -m, --metadatalevel=metadatalevel Specify permitted values reload (get all metadata - default) | - refresh (only download changes). This overrides any settings made - in the propertyfile. - - -o, --connectionoverridefile=connectionoverridefile Connection file in the format provardx-connection-schema.json - providing a mapping between the Provar project Connection names - and the target users to be used. - - -p, --propertyfile=propertyfile provardx-properties.json file. If filepath specified the filename - will be assumed or it can be specified (.e.g myprops.json). File - must be in JSON format and conform to the provardx-properties - JSON schema. - - -s, --secrets=secrets Specify path to secrets file - - --json format output as json - -EXAMPLE - $ sfdx provar:runtests -f './myproperties.json' -``` - -_See code: [src\commands\provar\runtests.ts](https://github.com/provardx/provardx/blob/v0.0.1/src\commands\provar\runtests.ts)_ - -## `sfdx provar:test [-p ] [--json] [-l ]` - -Validate the provardx property file agains standard JSON Schema - -``` -USAGE - $ sfdx provar:test [-p ] [--json] [-l ] - -OPTIONS - -l, --loglevel=loglevel Allow to provide loglevels. - -p, --propertyfile=propertyfile Specify custom property file. - --json format output as json - -EXAMPLES - $ sfdx provar:validate - Property file is valid. - - $ sfdx provar:validate --json - Invalid property file. - [Detailed validation error shown] - - $ sfdx provar:validate -p './provardx-properties.json' --json - Invalid property file. - [Detailed validation error shown] -``` - -_See code: [src\commands\provar\test.ts](https://github.com/provardx/provardx/blob/v0.0.1/src\commands\provar\test.ts)_ - -## `sfdx provar:validate [-p ] [--json] [-l ]` - -Validate the provardx property file agains standard JSON Schema - -``` -USAGE - $ sfdx provar:validate [-p ] [--json] [-l ] - -OPTIONS - -l, --loglevel=loglevel Allow to provide loglevels. - -p, --propertyfile=propertyfile Specify custom property file. - --json format output as json - -EXAMPLES - $ sfdx provar:validate - Property file is valid. - - $ sfdx provar:validate --json - Invalid property file. - [Detailed validation error shown] - - $ sfdx provar:validate -p './provardx-properties.json' --json - Invalid property file. - [Detailed validation error shown] -``` - -_See code: [src\commands\provar\validate.ts](https://github.com/provardx/provardx/blob/v0.0.1/src\commands\provar\validate.ts)_ - - -# Debugging your plugin -We recommend using the Visual Studio Code (VS Code) IDE for your plugin development. Included in the `.vscode` directory of this plugin is a `launch.json` config file, which allows you to attach a debugger to the node process when running your commands. - -To debug the `hello:org` command: -1. Start the inspector - -If you linked your plugin to the sfdx cli, call your command with the `dev-suspend` switch: -```sh-session -$ sfdx hello:org -u myOrg@example.com --dev-suspend -``` - -Alternatively, to call your command using the `bin/run` script, set the `NODE_OPTIONS` environment variable to `--inspect-brk` when starting the debugger: -```sh-session -$ NODE_OPTIONS=--inspect-brk bin/run hello:org -u myOrg@example.com -``` - -2. Set some breakpoints in your command code -3. Click on the Debug icon in the Activity Bar on the side of VS Code to open up the Debug view. -4. In the upper left hand corner of VS Code, verify that the "Attach to Remote" launch configuration has been chosen. -5. Hit the green play button to the left of the "Attach to Remote" launch configuration window. The debugger should now be suspended on the first line of the program. -6. Hit the green play button at the top middle of VS Code (this play button will be to the right of the play button that you clicked in step #5). -

-Congrats, you are debugging! diff --git a/com.provar.plugins.provardx/messages/org.json b/com.provar.plugins.provardx/messages/org.json deleted file mode 100644 index b5c9eec..0000000 --- a/com.provar.plugins.provardx/messages/org.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "commandDescription": "print a greeting and your org IDs", - "nameFlagDescription": "name to print", - "forceFlagDescription": "example boolean flag", - "errorNoOrgResults": "No results found for the org '%s'." -} diff --git a/com.provar.plugins.provardx/messages/runtests.json b/com.provar.plugins.provardx/messages/runtests.json deleted file mode 100644 index f0a32cb..0000000 --- a/com.provar.plugins.provardx/messages/runtests.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commandDescription": "Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname", - "propertyFileFlagDescription" : "provardx-properties.json file. If filepath specified the filename will be assumed or it can be specified (.e.g myprops.json). File must be in JSON format and conform to the provardx-properties JSON schema.", - "fileSpecFlagDescription" : "Specify comma-delimited, ordered paths of test cases to be executed. If not provided all tests in the PROJECTPATH will be executed.", - "connectionOverridefile" : "Connection file in the format provardx-connection-schema.json providing a mapping between the Provar project Connection names and the target users to be used.", - "cachePathFlagDescription" : "Specify relative or full file path for where a metadata cache has already been downloaded using either a VCS extract or metadata ProvarDX command.", - "metadataLevelFlagDescription" : "Specify permitted values reload (get all metadata - default) | refresh (only download changes). This overrides any settings made in the propertyfile.", - "secretsFlagDescription" : "Specify path to secrets file", - "loglevelFlagDescription" : "Specify the level of feedback provided during the compilation (see above) and execution." -} - \ No newline at end of file diff --git a/com.provar.plugins.provardx/oclif.manifest.json b/com.provar.plugins.provardx/oclif.manifest.json deleted file mode 100644 index 6cac926..0000000 --- a/com.provar.plugins.provardx/oclif.manifest.json +++ /dev/null @@ -1 +0,0 @@ -{"version":"0.0.1","commands":{"provar:compile":{"id":"provar:compile","description":"Pre-compiles any /src PageObject or PageControl Java source files into object code to use in runtests","usage":"<%= command.id %> [-p ] [-h ] [-c ] [--json] [-l ]","pluginName":"@provartesting/provardx","pluginType":"core","aliases":[],"examples":["$ sfdx provar:compile -p './myproperties.json' --json --loglevel SEVERE"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","char":"l","description":"Specify log level for command output"},"propertyfile":{"name":"propertyfile","type":"option","char":"p","description":"Specify custom property file."},"provarhome":{"name":"provarhome","type":"option","char":"h","description":"Specify provar home override"},"projectpath":{"name":"projectpath","type":"option","char":"c","description":"Specify project path override"}},"args":[{"name":"file"}]},"provar:metadatacache":{"id":"provar:metadatacache","description":"Command to pre-download any required metadata for a specified user or provar connections.","usage":"<%= command.id %> [-m ] [-c ] [-p ] [-n ] [-o ] [--json] [-l ]","pluginName":"@provartesting/provardx","pluginType":"core","aliases":[],"examples":["$ sfdx provar:metadatacache -m 'refresh' -c './metadata' -f './myproperties.json'"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","char":"l","description":"Specify the log level for command"},"metadatalevel":{"name":"metadatalevel","type":"option","char":"m","description":"Permitted values reload (get all metadata - default) | refresh (only download changes)."},"cachepath":{"name":"cachepath","type":"option","char":"c","description":"Relative or full file path for where the metadata cache will be stored."},"propertyfile":{"name":"propertyfile","type":"option","char":"p","description":"Specify custom property file."},"connections":{"name":"connections","type":"option","char":"n","description":"Specify the name of connection for which metadata to be downloaded."},"connectionoverrides":{"name":"connectionoverrides","type":"option","char":"o","description":"Specify comma seperated values for connection overrides, eg Admin:test@provar.com,Reg:test1@provar.com"}},"args":[{"name":"file"}]},"provar:runtests":{"id":"provar:runtests","description":"Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname","usage":"<%= command.id %> [-f ] [-p ] [-o ] [-c ] [-m ] [-s ] [--json] [-l ]","pluginName":"@provartesting/provardx","pluginType":"core","aliases":[],"examples":["$ sfdx provar:runtests -f './myproperties.json'"],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","char":"l","description":"Specify the level of feedback provided during the compilation (see above) and execution."},"filespec":{"name":"filespec","type":"option","char":"f","description":"Specify comma-delimited, ordered paths of test cases to be executed. If not provided all tests in the PROJECTPATH will be executed."},"propertyfile":{"name":"propertyfile","type":"option","char":"p","description":"provardx-properties.json file. If filepath specified the filename will be assumed or it can be specified (.e.g myprops.json). File must be in JSON format and conform to the provardx-properties JSON schema."},"connectionoverridefile":{"name":"connectionoverridefile","type":"option","char":"o","description":"Connection file in the format provardx-connection-schema.json providing a mapping between the Provar project Connection names and the target users to be used."},"cachepath":{"name":"cachepath","type":"option","char":"c","description":"Specify relative or full file path for where a metadata cache has already been downloaded using either a VCS extract or metadata ProvarDX command."},"metadatalevel":{"name":"metadatalevel","type":"option","char":"m","description":"Specify permitted values reload (get all metadata - default) | refresh (only download changes). This overrides any settings made in the propertyfile."},"secrets":{"name":"secrets","type":"option","char":"s","description":"Specify path to secrets file"}},"args":[{"name":"file"}]},"provar:test":{"id":"provar:test","description":"Validate the provardx property file agains standard JSON Schema","usage":"<%= command.id %> [-p ] [--json] [-l ]","pluginName":"@provartesting/provardx","pluginType":"core","aliases":[],"examples":["$ sfdx provar:validate\n Property file is valid.\n ","$ sfdx provar:validate --json\n Invalid property file.\n [Detailed validation error shown]\n ","$ sfdx provar:validate -p './provardx-properties.json' --json\n Invalid property file.\n [Detailed validation error shown]\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","char":"l","description":"Allow to provide loglevels."},"propertyfile":{"name":"propertyfile","type":"option","char":"p","description":"Specify custom property file."}},"args":[{"name":"file"}]},"provar:validate":{"id":"provar:validate","description":"Validate the provardx property file agains standard JSON Schema","usage":"<%= command.id %> [-p ] [--json] [-l ]","pluginName":"@provartesting/provardx","pluginType":"core","aliases":[],"examples":["$ sfdx provar:validate\n Property file is valid.\n ","$ sfdx provar:validate --json\n Invalid property file.\n [Detailed validation error shown]\n ","$ sfdx provar:validate -p './provardx-properties.json' --json\n Invalid property file.\n [Detailed validation error shown]\n "],"flags":{"json":{"name":"json","type":"boolean","description":"format output as json","allowNo":false},"loglevel":{"name":"loglevel","type":"option","char":"l","description":"Allow to provide loglevels."},"propertyfile":{"name":"propertyfile","type":"option","char":"p","description":"Specify custom property file."}},"args":[{"name":"file"}]}}} \ No newline at end of file diff --git a/com.provar.plugins.provardx/package.json b/com.provar.plugins.provardx/package.json deleted file mode 100644 index 79ba8a2..0000000 --- a/com.provar.plugins.provardx/package.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "name": "@provartesting/provardx", - "description": "sfdx custom plugin to run provar testcases", - "version": "0.0.1", - "author": "Himanshu Sharma", - "bugs": "https://github.com/provardx/provardx/issues", - "dependencies": { - "@oclif/command": "^1", - "@oclif/config": "^1", - "@oclif/errors": "^1", - "@salesforce/command": "^1.4.1", - "@salesforce/core": "^1.3.2", - "jsonschema": "^1.2.4", - "tslib": "^1" - }, - "devDependencies": { - "@oclif/dev-cli": "^1", - "@oclif/plugin-help": "^2", - "@oclif/test": "^1", - "@salesforce/dev-config": "1.4.1", - "@types/chai": "^4", - "@types/mocha": "^5", - "@types/node": "^10", - "chai": "^4", - "globby": "^8", - "mocha": "^5", - "nyc": "^13", - "rimraf": "^2.6.3", - "ts-node": "^8", - "tslint": "^5", - "typescript": "~3.3" - }, - "engines": { - "node": ">=8.0.0" - }, - "files": [ - "/lib", - "/messages", - "/npm-shrinkwrap.json", - "/oclif.manifest.json" - ], - "homepage": "https://github.com/provardx/provardx", - "keywords": [ - "sfdx-plugin" - ], - "license": "MIT", - "oclif": { - "commands": "./lib/commands", - "bin": "sfdx", - "topics": { - "hello": { - "description": "Commands to say hello." - } - }, - "devPlugins": [ - "@oclif/plugin-help" - ] - }, - "repository": "provardx/provardx", - "scripts": { - "postpack": "rimraf oclif.manifest.json", - "posttest": "tslint -p test -t stylish", - "prepack": "rimraf lib && tsc -b && oclif-dev manifest && oclif-dev readme", - "test": "nyc --extension .ts mocha --forbid-only \"test/**/*.test.ts\"", - "version": "oclif-dev readme && git add README.md" - } -} diff --git a/com.provar.plugins.provardx/provardx-properties.json b/com.provar.plugins.provardx/provardx-properties.json deleted file mode 100644 index 365b7f5..0000000 --- a/com.provar.plugins.provardx/provardx-properties.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "provarHome": "/app/Provar/Eclipse", - "projectPath": "/usr/Richard/Provar/MyProject", - "resultsPath": "/usr/Richard/Provar/MyProject/Results", - "outputLevel": "SEVERE", - "excludeCallable": true, - "stopOnError": true, - "lightningMode" : true, - "connectionRefreshType" : "Reload", - "metadata": { - "metadataLevel" : "REUSE", - "cachePath" : "/usr/Richard/Provar/Cache" -}, - "environment": { - "testEnvironment": "UAT", - "webBrowser": "CHROME", - "webBrowserConfig": "Full Screen" - }, - "email": { - "sendEmail" : true, - "toRecipients": ["abc@provar.com", "bcd@provar.com"], - "ccRecipients": ["cde@provar.com"], - "bccRecipients": ["ded@provar.com", "efg@provar.com"] - }, - "testPlan" : ["plan1", "plan2", "./plans/*"], - "testCase" : ["tc1.testcase", - "tc2.testcase", - "./tests/Lightning/*.testcase"], - "connectionOverride": - [ - {"connection": "Admin", "username": "admin122@provartesting.com"}, - {"connection": "Sales", "username": "SalesUser1"} - ] - -} - diff --git a/com.provar.plugins.provardx/resources/provardx-properties-schema.json b/com.provar.plugins.provardx/resources/provardx-properties-schema.json deleted file mode 100644 index 9fd84eb..0000000 --- a/com.provar.plugins.provardx/resources/provardx-properties-schema.json +++ /dev/null @@ -1,134 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "http://provartesting.com/provardx-props.schema.json", - "title": "ProvarDX-Properties", - "description": "A ProvarDX Property File", - "type": "object", - "properties": { - "provarHome": { - "description": "Contains the location that the Provar installation was unzipped. ​This attribute is not required if there is a full Provar installation in the default location, or if PROVAR_HOME Environment Variable is set", - "type": "string" - }, - "projectPath": { - "description": "The fully qualified path of the Test Project containing the tests to be run. This is the folder that contains the .testproject file", - "type": "string" - }, - "resultsPath": { - "description": "The fully qualified path of the folder to which Provar will write the test results", - "type": "string" - }, - "outputLevel": { - "description": "Controls the amount of test output logged to the ANT test log.", - "type": "string", - "enum": ["SEVERE","WARNING","INFO","FINE","FINER","FINEST"] - }, - "excludeCallable": { - "description": "Indicates whether Callable Test Cases should be omitted from execution (true) or included in execution (false)", - "type": "boolean" - }, - "connectionRefreshType": { - "description": "Controls the Metadata at Connection level", - "type": "string" - }, - "lightningMode": { - "description": "Indicates org is lightning or not", - "type": "boolean" - }, - "stopOnError": { - "description": "Indicates whether the Test Run should abort automatically if any test failure is encountered", - "type": "boolean" - }, - "metadata": { - "description": "Controls the Salesforce Metadata usage.", - "type": "object", - "properties": { - "metadataLevel": { - "description": "Controls the Salesforce Metadata usage", - "type": "string", - "enum": ["Reuse","Reload","Refresh"] - }, - "cachePath": { - "description": "The fully qualified path of the folder that will be used for storing the metadata cache", - "type": "string" - } - }, - "required": ["metadataLevel", "cachePath"] - }, - "environment" : { - "description": "", - "type": "object", - "properties": { - "testEnvironment": { - "description": "The name of the Test Environment that the test run should be executed against. Test Environments are defined in Test Settings", - "type": "string" - }, - "webBrowser": { - "description": "The web browser to be used for UI testing", - "type": "string", - "enum": ["Chrome","Edge","Firefox","SAFARI","IE"] - }, - "webBrowserConfig": { - "description": "The web browser window size. Browser configurations are defined in Test Settings", - "type": "string" - } - } - }, - "email": { - "description": "One or more email recipients defining settings for sending email upon test execution completion", - "type": "object", - "properties": { - "sendEmail": { - "description": "Indicates whether an email should be sent after test run execution", - "type": "boolean" - }, - "toRecipients": { - "description": "The primary email addresses which should receive the email", - "type": "array", - "items": { - "type": "string" - } - }, - "ccRecipients": { - "description": "he email addresses which should be CC’d in the email", - "type": "array", - "items": { - "type": "string" - } - }, - "bccRecipients": { - "description": "The email addresses which should be BCC’d in the email", - "type": "array", - "items": { - "type": "string" - } - } - }, - "required": ["sendEmail", "toRecipients"] - }, - "testPlan": { - "description": "List of test plan names to be executed, wildcards are permitted", - "type": "array", - "items": { - "type": "string" - } - }, - "testCase": { - "description": "One or more fileset elements defining the .testcase files to be run. You can specify individual Test Case files, folders containing Test Case files or a combination of both", - "type": "array", - "items": { - "type": "string" - } - }, - "connectionOverride": { - "description": "name:value pairs where the first entry is the provar Connection name and the second is a SFDX username/user-alias to substitute", - "type": "array", - "items": { - "type": "object", - "properties": { - "connection": {"type": "string"}, - "username": {"type": "string"} - } - } - } - } - } diff --git a/com.provar.plugins.provardx/src/commands/provar/compile.ts b/com.provar.plugins.provardx/src/commands/provar/compile.ts deleted file mode 100644 index 4c89d57..0000000 --- a/com.provar.plugins.provardx/src/commands/provar/compile.ts +++ /dev/null @@ -1,78 +0,0 @@ -import ProvarDXUtility from '../../utilities/ProvarDXUtility'; -import { execSync } from 'child_process'; -import { Messages } from '@salesforce/core'; -import { SfdxCommand, flags } from '@salesforce/command'; -import { AnyJson } from '@salesforce/ts-types'; - - -/** - * Command to compile all source files. (PageObjects, CustomAPIs) - * Class will look out for file to compile in project home src directory. - * @author Himanshu Sharma - * - */ - -// Initialize Messages with the current plugin directory -Messages.importMessagesDirectory(__dirname); - -// Load the specific messages for this file. -const messages = Messages.loadMessages('@provartesting/provardx', 'compile'); -export default class compile extends SfdxCommand { - - public static description = messages.getMessage('commandDescription'); - public static examples = [ - `$ sfdx provar:compile -p './myproperties.json' --json --loglevel SEVERE` - ]; - - protected static flagsConfig = { - propertyfile: flags.string({char: 'p', description: messages.getMessage('propertyFileFlagDescription')}), - provarhome: flags.string({char: 'h', description: messages.getMessage('provarHomeFlagDescription')}), - projectpath: flags.string({char: 'c', description: messages.getMessage('projectPathFlagDescription')}), - loglevel: flags.string({char: 'l', description: messages.getMessage('loglevelFlagDescription')}) - }; - - public static args = [{name: 'file'}]; - - public async run(): Promise { - const propertyFile : string = this.flags.propertyfile; - const json : boolean = this.flags.json; - const loglevel : string = this.flags.loglevel ? this.flags.loglevel : 'INFO'; - const provarHome : string = this.flags.provarhome; - const projectPath : string = this.flags.projectpath; - - let provarDxUtils : ProvarDXUtility = new ProvarDXUtility(); - let isValid : boolean = provarDxUtils.validatePropertiesJson(propertyFile); - let jsonValue = json ? json : false; - - if(!isValid) { - this.ux.error("Invalid property file. Run command sfdx provar:validate -e true' to get the validation errors"); - return {}; - } - - this.ux.log("Provided property file:" + propertyFile); - this.ux.log("Json: " + jsonValue); - this.ux.log("LogLevel: " + loglevel); - - let properties = this.updatePropertiesWithOverrides(provarDxUtils.getProperties(), provarHome, projectPath); - let rawProperties = JSON.stringify(properties); - - if(properties.provarHome == null) { - this.ux.error('Prover home is not specified.'); - return {}; - } - - let updateProperties = provarDxUtils.prepareRawProperties(rawProperties); - let jarPath = properties.provarHome +'/provardx/provardx.jar'; - execSync('java -cp "' + jarPath + '" com.provar.provardx.DxCommandExecuter ' + updateProperties + " " + "NA" + " " + "Compile", - {stdio: 'inherit'}); - - return {}; - } - - public updatePropertiesWithOverrides(properties: any, provarHome: string, projectPath: string) { - properties.provarHome = provarHome == null ? properties.provarHome : provarHome; - properties.projectPath = projectPath == null ? properties.projectPath: projectPath; - return properties; - } -} - \ No newline at end of file diff --git a/com.provar.plugins.provardx/src/commands/provar/metadatacache.ts b/com.provar.plugins.provardx/src/commands/provar/metadatacache.ts deleted file mode 100644 index 4ddd992..0000000 --- a/com.provar.plugins.provardx/src/commands/provar/metadatacache.ts +++ /dev/null @@ -1,112 +0,0 @@ -import ProvarDXUtility from '../../utilities/ProvarDXUtility'; -import { execSync } from 'child_process'; -import { Messages } from '@salesforce/core'; -import { SfdxCommand, flags } from '@salesforce/command'; -import { AnyJson } from '@salesforce/ts-types'; - - -/** - * @description - *The metadatacache ensures that the metadata cache is up to date prior to running Provar tasks. - *It can be executed in parallel with other commands as part of a pipeline script, - *but needs to complete before runtests is executed to avoid any duplication of metadata download. - *If no user and no propertyfile is specified then the metadata will be downloaded for the SFDX current default user. - *This may not be what is expected or desired but is consistent with other DX commands! It is up to the user to correctly specify the user(s). - *For download metadata for multiple users it’s recommended to reuse the propertyfile and override the metadata cache settings in the property file with the -m flag. - - * @author Himanshu Sharma - */ - -// Initialize Messages with the current plugin directory -Messages.importMessagesDirectory(__dirname); - -// Load the specific messages for this file. -const messages = Messages.loadMessages('@provartesting/provardx', 'metadatacache'); -export default class metadatacache extends SfdxCommand { - - public static description = messages.getMessage('commandDescription'); - public static examples = [ - `$ sfdx provar:metadatacache -m 'refresh' -c './metadata' -f './myproperties.json'` - ]; - - - protected static flagsConfig = { - // flag with a value (-f, --propertyfile=VALUE) - metadatalevel: flags.string({char: 'm', description: messages.getMessage('metadataLevelFlagDescription')}), - // flag with a value (-c, --cachepath=VALUE) - cachepath: flags.string({char: 'c', description: messages.getMessage('cachePathFlagDescription')}), - // flag with a value (-p, --propertyfile=VALUE) - propertyfile: flags.string({char: 'p', description: messages.getMessage('propertyFileFlagDescription')}), - // flag with a value (-l, --loglevel VALUE) - loglevel: flags.string({char: 'l', description: messages.getMessage('loglevelFlagDescription')}), - // flag with a value (-n, --connections VALUE) - connections: flags.string({char: 'n', description: messages.getMessage('connectionNameFlagDescription')}), - // flag with a value (-o, --connectionoverrides VALUE) - connectionoverrides: flags.string({char: 'o', description: messages.getMessage('connectionoverridesFlagDescription')}) - }; - - - public static args = [{name: 'file'}]; - - public async run(): Promise { - const metadataLevel : string = this.flags.metadatalevel; - const cachePath : string = this.flags.cachepath; - const propertyFile : string = this.flags.propertyfile; - //const json : string = this.flags.propertyFile; - //const logLevel : string = this.flags.loglevel ? this.flags.loglevel : 'INFO'; - const connections : string = this.flags.connections; - const connectionoverrides : string = this.flags.connectionoverrides; - - let provarDxUtils : ProvarDXUtility = new ProvarDXUtility(); - let isValid : boolean = provarDxUtils.validatePropertiesJson(propertyFile); - let propertiesInstance = provarDxUtils.getProperties(); - - if(connections) { - propertiesInstance.connectionName = connections; - } - - if(!isValid || provarDxUtils.hasDuplicateConnectionOverride(propertiesInstance)) { - this.ux.error("Invalid property file. Run command sfdx provar:validate' to know the validation errors"); - return {}; - } - - let properties = this.updatePropertiesWithOverrides(propertiesInstance, metadataLevel, cachePath, propertyFile, connectionoverrides); - let rawProperties = JSON.stringify(properties); - - let updateProperties = provarDxUtils.prepareRawProperties(rawProperties); - - let userInfo = await provarDxUtils.getDxUsersInfo(properties.connectionOverride); - if(userInfo == null) { - this.ux.error('[ERROR] No valid user org found to download metadata. Terminating command.'); - return {}; - } - - let userInfoString = provarDxUtils.prepareRawProperties(JSON.stringify({'dxUsers': userInfo})); - let jarPath = properties.provarHome +'/provardx/provardx.jar'; - execSync('java -cp "' + jarPath + '" com.provar.provardx.DxCommandExecuter ' + updateProperties + " " + userInfoString + " " + "Metadata", - {stdio: 'inherit'}); - return {}; - } - - public updatePropertiesWithOverrides(properties: any, metadataLevel: string, cachePath: string, propertyFile: string, - connectionOverrides: string) { - properties.metadata.metadataLevel = metadataLevel == null ? properties.metadata.metadataLevel : metadataLevel; - properties.metadata.cachePath = cachePath == null ? properties.metadata.cachePath: cachePath; - properties.propertyFile = propertyFile == null ? properties.propertyFile: propertyFile; - this.doConnectionOverrides(properties, connectionOverrides); - return properties; - } - - private doConnectionOverrides(properties: any, connectionOverride : string): void { - if(!connectionOverride) { - return; - } - let overrides = connectionOverride.split(","); - let connOver = []; - for(let i=0;i { - //const fileSpec : string = this.flags.filespec; - const propertyFile : string = this.flags.propertyfile; - //const connectionOverrideFile : string = this.flags.connectionoverridefile; - const cachePath : string = this.flags.cachepath; - const metadataLevel : string = this.flags.metadatalevel; - //const secrets : string = this.flags.secrets; - //const logLevel : string = this.flags.loglevel; - //const json : string = this.flags.json; - - - let provarDxUtils : ProvarDXUtility = new ProvarDXUtility(); - let isValid : boolean = provarDxUtils.validatePropertiesJson(propertyFile); - - if(provarDxUtils.getProperties().testPlan && provarDxUtils.getProperties().connectionOverride) { - const selection = await cli.prompt( 'Test plans detected, connection overrides will be ignored, do you wish to continue (Y/N)? ' ); - if(selection === 'n' || selection === 'n') { - return {}; - } - } - - if(!isValid || provarDxUtils.hasDuplicateConnectionOverride(provarDxUtils.getProperties())) { - this.ux.error("Invalid property file. Run command sfdx provar:validate' to know the validation errors"); - return {}; - } - - let properties = this.updatePropertiesWithOverrides(provarDxUtils.getProperties(), metadataLevel, cachePath, propertyFile); - let rawProperties = JSON.stringify(properties); - - let userInfo = await provarDxUtils.getDxUsersInfo(properties.connectionOverride); - if(userInfo == null) { - this.ux.error('[ERROR] No valid user org found to run tests. Terminating command.'); - return {}; - } - let userInfoString = provarDxUtils.prepareRawProperties(JSON.stringify({'dxUsers': userInfo})); - let updateProperties = provarDxUtils.prepareRawProperties(rawProperties); - let jarPath = properties.provarHome +'/provardx/provardx.jar'; - execSync('java -cp "' + jarPath + '" com.provar.provardx.DxCommandExecuter ' + updateProperties + " " + userInfoString + " " + "Runtests", - { stdio: 'inherit'}); - return {}; - } - - public updatePropertiesWithOverrides(properties: any, metadataLevel: string, cachePath: string, propertyFile: string) { - properties.metadata.metadataLevel = metadataLevel == null ? properties.metadata.metadataLevel : metadataLevel; - properties.metadata.cachePath = cachePath == null ? properties.metadata.cachePath: cachePath; - properties.propertyFile = propertyFile == null ? properties.propertyFile: propertyFile; - return properties; - } -} diff --git a/com.provar.plugins.provardx/src/commands/provar/validate.ts b/com.provar.plugins.provardx/src/commands/provar/validate.ts deleted file mode 100644 index c7116ce..0000000 --- a/com.provar.plugins.provardx/src/commands/provar/validate.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { flags, SfdxCommand } from '@salesforce/command'; -import { AnyJson } from '@salesforce/ts-types'; -import { Messages } from '@salesforce/core'; -import ProvarDXUtility from '../../utilities/ProvarDXUtility'; -import { ValidatorResult } from 'jsonschema'; - - -/** - * This command will be used to check if provided properties json is valid or not. - * Validation will be done against standard provardx property json schema. - * @description - * Command syntax: sfdx provar:metadatacache - * [-f | --propertyfile] Optional. Specify the location of custom provardx property file. - * [--json] Optional. Show validation results in json format. - * [--loglevel] Optional. Avalidable log level [INFO|SEVERE|WARNING|FINE|FINER|FINEST] - * @author Himanshu Sharma - * - */ - -// Initialize Messages with the current plugin directory -Messages.importMessagesDirectory(__dirname); - -// Load the specific messages for this file. -const messages = Messages.loadMessages('@provartesting/provardx', 'validate'); - -export default class validate extends SfdxCommand { - - public static description = messages.getMessage('commandDescription'); - public static examples = [ - `$ sfdx provar:validate - Property file is valid. - `, - `$ sfdx provar:validate --json - Invalid property file. - [Detailed validation error shown] - `, - `$ sfdx provar:validate -p './provardx-properties.json' --json - Invalid property file. - [Detailed validation error shown] - ` - ]; - - protected static flagsConfig = { - // flag with a value (-p, --propertyfile=VALUE) - propertyfile: flags.string({char: 'p', description: messages.getMessage('propertyFileFlagDescription')}), - // flag with a value (-l, --loglevel VALUE) - loglevel: flags.string({char: 'l', description: messages.getMessage('loglevelFlagDescription')}) - }; - - public static args = [{name: 'file'}]; - - public async run(): Promise { - const propertyFile : string = this.flags.propertyfile; - const json : boolean = this.flags.json; - const loglevel : string = this.flags.loglevel ? this.flags.loglevel : 'INFO'; - - let provarDxUtils : ProvarDXUtility = new ProvarDXUtility(); - let isValid : boolean = provarDxUtils.validatePropertiesJson(propertyFile); - let results : ValidatorResult = provarDxUtils.getValidationResults(); - - let errorMsgs= {'message': ''}; - - if(provarDxUtils.hasDuplicateConnectionOverride(provarDxUtils.getProperties())) { - errorMsgs.message = "Duplicate connection overrides, you can't have multiple connection overrides for same connection."; - isValid = false; - } - - if(isValid) { - if(loglevel == 'INFO' || loglevel == 'FINE' || loglevel == 'FINNER' || loglevel == 'FINEST' ) { - if(json) { - this.ux.logJson({'isValid': true, 'properties' : results.instance}); - } else { - this.ux.log('Property file is valid.'); - } - } else if(loglevel == 'SEVERE' || loglevel == 'WARNING') { - if(json) { - this.ux.logJson( {'isValid': true}); - } else { - this.ux.log('Property file is valid.'); - } - } - } else { - for(let i = 0; i < results.errors.length; i++) { - errorMsgs['message'] += results.errors[i].property + " " + results.errors[i].message + ", "; - } - if(loglevel === 'INFO' || loglevel === 'FINE' || loglevel === 'FINNER' || loglevel === 'FINEST' ) { - if(json) { - this.ux.logJson( {'isValid': false}); - this.ux.logJson (results.errors); - } else { - this.ux.error('Property file is not valid.'); - this.ux.error(errorMsgs.message); - } - } else if(loglevel === 'SEVERE' || loglevel === 'WARNING') { - if(json) { - this.ux.logJson( {'isValid': false, 'message' : errorMsgs.message}); - } else { - this.ux.error('Property file is not valid.'); - this.ux.error(errorMsgs.message); - } - } - } - return {}; - } -} diff --git a/com.provar.plugins.provardx/src/index.ts b/com.provar.plugins.provardx/src/index.ts deleted file mode 100644 index ff8b4c5..0000000 --- a/com.provar.plugins.provardx/src/index.ts +++ /dev/null @@ -1 +0,0 @@ -export default {}; diff --git a/com.provar.plugins.provardx/src/utilities/DxPropertiesSchema.ts b/com.provar.plugins.provardx/src/utilities/DxPropertiesSchema.ts deleted file mode 100644 index 60c6044..0000000 --- a/com.provar.plugins.provardx/src/utilities/DxPropertiesSchema.ts +++ /dev/null @@ -1,183 +0,0 @@ -export const schema = { - "$schema": "http://json-schema.org/draft-07/schema#", - "$id": "http://provartesting.com/provardx-props.schema.json", - "title": "ProvarDX-Properties", - "description": "A ProvarDX Property File", - "type": "object", - "properties": { - "provarHome": { - "description": "Contains the location that the Provar installation was unzipped. ​This attribute is not required if there is a full Provar installation in the default location, or if PROVAR_HOME Environment Variable is set", - "type": "string" - }, - "projectPath": { - "description": "The fully qualified path of the Test Project containing the tests to be run. This is the folder that contains the .testproject file", - "type": "string" - }, - "smtpPath": { - "description": "The fully qualified path of the .smtp folder to which Provar will use to send emails", - "type": "string" - }, - "resultsPath": { - "description": "The fully qualified path of the folder to which Provar will write the test results", - "type": "string" - }, - "resultsPathDisposition": { - "description": "Controls the result folder disposition.", - "type": "string", - "enum": ["Increment","Replace","Fail"] - }, - "testOutputLevel": { - "description": "Controls the amount of test output logged to the DX test log.", - "type": "string", - "enum": ["SEVERE","WARNING","INFO","FINE","FINER","FINEST"] - }, - "pluginOutputlevel": { - "description": "Controls the amount of plugin output logged to the DX test log.", - "type": "string", - "enum": ["SEVERE","WARNING","INFO","FINE","FINER","FINEST"] - }, - "excludeCallable": { - "description": "Indicates whether Callable Test Cases should be omitted from execution (true) or included in execution (false)", - "type": "boolean" - }, - "stopOnError": { - "description": "Indicates whether the Test Run should abort automatically if any test failure is encountered", - "type": "boolean" - }, - "connectionRefreshType": { - "description": "Controls the Metadata at Connection level", - "type": "string" - }, - "lightningMode": { - "description": "Indicates org is lightning or not", - "type": "boolean" - }, - "metadata": { - "description": "Controls the Salesforce Metadata usage.", - "type": "object", - "properties": { - "metadataLevel": { - "description": "Controls the Salesforce Metadata usage", - "type": "string", - "enum": ["Reuse","Reload","Refresh"] - }, - "cachePath": { - "description": "The fully qualified path of the folder that will be used for storing the metadata cache", - "type": "string" - } - }, - "required": ["metadataLevel", "cachePath"] - }, - "environment" : { - "description": "", - "type": "object", - "properties": { - "testEnvironment": { - "description": "The name of the Test Environment that the test run should be executed against. Test Environments are defined in Test Settings", - "type": "string" - }, - "webBrowser": { - "description": "The web browser to be used for UI testing", - "type": "string", - "enum": ["Chrome","Edge","Firefox","SAFARI","IE"] - }, - "webBrowserConfig": { - "description": "The web browser window size. Browser configurations are defined in Test Settings", - "type": "string" - }, - "webBrowserProviderName": { - "description": "Web browser provider name.", - "type": "string" - }, - "webBrowserDeviceName": { - "description": "Web browser device name", - "type": "string" - } - } - }, - "testprojectSecrets": { - "description": "Testproject secret encryption password.", - "type": "string" - }, - "environmentsSecrets": { - "description": "Test environment secret encryption password.", - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { "type": "string" }, - "secretsPassword": {"type": "string"} - } - } - }, - "testplanFeatures": { - "description": "Test plan features.", - "type": "array", - "items": { - "type": "object", - "properties": { - "name": { "type": "string" }, - "type": {"type": "string"}, - "enabled": {"type": "string"} - } - } - }, - "email": { - "description": "One or more email recipients defining settings for sending email upon test execution completion", - "type": "object", - "properties": { - "sendEmail": { - "description": "Indicates whether an email should be sent after test run execution", - "type": "boolean" - }, - "toRecipients": { - "description": "The primary email addresses which should receive the email", - "type": "array", - "items": { - "type": "string" - } - }, - "ccRecipients": { - "description": "he email addresses which should be CC’d in the email", - "type": "array", - "items": { - "type": "string" - } - }, - "bccRecipients": { - "description": "The email addresses which should be BCC’d in the email", - "type": "array", - "items": { - "type": "string" - } - } - }, - "required": ["sendEmail", "toRecipients"] - }, - "testPlan": { - "description": "List of test plan names to be executed, wildcards are permitted", - "type": "array", - "items": { - "type": "string" - } - }, - "testCase": { - "description": "One or more fileset elements defining the .testcase files to be run. You can specify individual Test Case files, folders containing Test Case files or a combination of both", - "type": "array", - "items": { - "type": "string" - } - }, - "connectionOverride": { - "description": "name:value pairs where the first entry is the provar Connection name and the second is a SFDX username/user-alias to substitute", - "type": "array", - "items": { - "type": "object", - "properties": { - "connection": {"type": "string"}, - "username": {"type": "string"} - } - } - } - } - } diff --git a/com.provar.plugins.provardx/test/commands/hello/org.test.ts b/com.provar.plugins.provardx/test/commands/hello/org.test.ts deleted file mode 100644 index 1806a04..0000000 --- a/com.provar.plugins.provardx/test/commands/hello/org.test.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { expect, test } from '@salesforce/command/lib/test'; -import { ensureJsonMap, ensureString } from '@salesforce/ts-types'; - -describe('hello:org', () => { - test - .withOrg({ username: 'test@org.com' }, true) - .withConnectionRequest(request => { - const requestMap = ensureJsonMap(request); - if (ensureString(requestMap.url).match(/Organization/)) { - return Promise.resolve({ records: [ { Name: 'Super Awesome Org', TrialExpirationDate: '2018-03-20T23:24:11.000+0000'}] }); - } - return Promise.resolve({ records: [] }); - }) - .stdout() - .command(['hello:org', '--targetusername', 'test@org.com']) - .it('runs hello:org --targetusername test@org.com', ctx => { - expect(ctx.stdout).to.contain('Hello world! This is org: Super Awesome Org and I will be around until Tue Mar 20 2018!'); - }); -}); diff --git a/com.provar.plugins.provardx/test/tsconfig.json b/com.provar.plugins.provardx/test/tsconfig.json deleted file mode 100644 index 4f7a5ce..0000000 --- a/com.provar.plugins.provardx/test/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../tsconfig" -} - diff --git a/com.provar.plugins.provardx/tsconfig.json b/com.provar.plugins.provardx/tsconfig.json deleted file mode 100644 index a42a0c4..0000000 --- a/com.provar.plugins.provardx/tsconfig.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "extends": "./node_modules/@salesforce/dev-config/tsconfig", - "compilerOptions": { - "outDir": "./lib", - "rootDir": "./src" - }, - "include": [ - "./src/**/*" - ] -} diff --git a/com.provar.plugins.provardx/messages/compile.json b/messages/compile.json similarity index 83% rename from com.provar.plugins.provardx/messages/compile.json rename to messages/compile.json index 81c19c2..03cf8c2 100644 --- a/com.provar.plugins.provardx/messages/compile.json +++ b/messages/compile.json @@ -1,6 +1,6 @@ { "commandDescription": "Pre-compiles any /src PageObject or PageControl Java source files into object code to use in runtests", - "propertyFileFlagDescription" : "Specify custom property file.", + "propertyFileFlagDescription": "Specify custom property file.", "provarHomeFlagDescription": "Specify provar home override", "projectPathFlagDescription": "Specify project path override", "loglevelFlagDescription": "Specify log level for command output" diff --git a/com.provar.plugins.provardx/messages/metadatacache.json b/messages/metadatacache.json similarity index 72% rename from com.provar.plugins.provardx/messages/metadatacache.json rename to messages/metadatacache.json index 57eaf7c..9c9aedc 100644 --- a/com.provar.plugins.provardx/messages/metadatacache.json +++ b/messages/metadatacache.json @@ -1,10 +1,9 @@ -{ - "commandDescription": "Command to pre-download any required metadata for a specified user or provar connections.", - "metadataLevelFlagDescription" : "Permitted values reload (get all metadata - default) | refresh (only download changes).", - "cachePathFlagDescription": "Relative or full file path for where the metadata cache will be stored.", - "propertyFileFlagDescription" : "Specify custom property file.", - "loglevelFlagDescription": "Specify the log level for command", - "connectionNameFlagDescription": "Specify the name of connection for which metadata to be downloaded.", - "connectionoverridesFlagDescription": "Specify comma seperated values for connection overrides, eg Admin:test@provar.com,Reg:test1@provar.com" -} - \ No newline at end of file +{ + "commandDescription": "Command to pre-download any required metadata for a specified user or provar connections.", + "metadataLevelFlagDescription": "Permitted values reload (get all metadata - default) | refresh (only download changes).", + "cachePathFlagDescription": "Relative or full file path for where the metadata cache will be stored.", + "propertyFileFlagDescription": "Specify custom property file.", + "loglevelFlagDescription": "Specify the log level for command", + "connectionNameFlagDescription": "Specify the name of connection for which metadata to be downloaded.", + "connectionoverridesFlagDescription": "Specify comma seperated values for connection overrides, eg Admin:test@provar.com,Reg:test1@provar.com" +} diff --git a/messages/runtests.json b/messages/runtests.json new file mode 100644 index 0000000..e1a8b6d --- /dev/null +++ b/messages/runtests.json @@ -0,0 +1,10 @@ +{ + "commandDescription": "Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname", + "propertyFileFlagDescription": "provardx-properties.json file. If filepath specified the filename will be assumed or it can be specified (.e.g myprops.json). File must be in JSON format and conform to the provardx-properties JSON schema.", + "fileSpecFlagDescription": "Specify comma-delimited, ordered paths of test cases to be executed. If not provided all tests in the PROJECTPATH will be executed.", + "connectionOverridefile": "Connection file in the format provardx-connection-schema.json providing a mapping between the Provar project Connection names and the target users to be used.", + "cachePathFlagDescription": "Specify relative or full file path for where a metadata cache has already been downloaded using either a VCS extract or metadata ProvarDX command.", + "metadataLevelFlagDescription": "Specify permitted values reload (get all metadata - default) | refresh (only download changes). This overrides any settings made in the propertyfile.", + "secretsFlagDescription": "Specify path to secrets file", + "loglevelFlagDescription": "Specify the level of feedback provided during the compilation (see above) and execution." +} diff --git a/com.provar.plugins.provardx/messages/validate.json b/messages/validate.json similarity index 77% rename from com.provar.plugins.provardx/messages/validate.json rename to messages/validate.json index f9081b8..c439ef4 100644 --- a/com.provar.plugins.provardx/messages/validate.json +++ b/messages/validate.json @@ -1,7 +1,6 @@ { "commandDescription": "Validate the provardx property file agains standard JSON Schema", - "propertyFileFlagDescription" : "Specify custom property file.", + "propertyFileFlagDescription": "Specify custom property file.", "showErrorsFlagDescription": "Allow to show validation errors. Default is false.", "loglevelFlagDescription": "Allow to provide loglevels." } - \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..62b76cc --- /dev/null +++ b/package.json @@ -0,0 +1,82 @@ +{ + "name": "@provartesting/provardx", + "description": "A plugin for the Salesforce CLI to run provar testcases", + "version": "0.1.0", + "author": "Provar", + "bugs": "https://github.com/ProvarTesting/provardx/issues", + "dependencies": { + "@oclif/command": "^1", + "@oclif/config": "^1", + "@oclif/errors": "^1", + "@salesforce/command": "^2", + "@salesforce/core": "^2", + "jsonschema": "^1.2.4", + "tslib": "^1" + }, + "devDependencies": { + "@oclif/dev-cli": "^1", + "@oclif/plugin-help": "^2", + "@oclif/test": "^1", + "@salesforce/dev-config": "1.4.1", + "@types/chai": "^4", + "@types/mocha": "^5", + "@types/node": "^10", + "chai": "^4", + "eslint": "^7.3.1", + "globby": "^8", + "husky": "^4.2.5", + "lint-staged": "^10.2.11", + "mocha": "^5", + "nyc": "^14", + "prettier": "^2.0.5", + "ts-node": "^8", + "tslint": "^5", + "typescript": "3.9" + }, + "engines": { + "node": ">=10.0.0" + }, + "files": [ + "/lib", + "/messages", + "/npm-shrinkwrap.json", + "/oclif.manifest.json" + ], + "homepage": "https://github.com/ProvarTesting/provardx", + "keywords": [ + "sfdx-plugin" + ], + "license": "BSD-3-Clause", + "oclif": { + "commands": "./lib/commands", + "bin": "sfdx", + "topics": { + "hello": { + "description": "Commands to say hello." + } + }, + "devPlugins": [ + "@oclif/plugin-help" + ] + }, + "repository": "ProvarTesting/provardx", + "scripts": { + "postpack": "rm -f oclif.manifest.json", + "posttest": "tslint -p test -t stylish", + "prepack": "rm -rf lib && tsc -b && oclif-dev manifest && oclif-dev readme", + "test": "nyc --extension .ts mocha --forbid-only \"test/**/*.test.ts\"", + "version": "oclif-dev readme && git add README.md", + "prettier": "prettier --write \"**/*.{json,md,ts}\"", + "prettier:verify": "prettier --list-different \"**/*.{json,md,ts}\"" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "**/*.{json,md,ts}": [ + "prettier --write" + ] + } +} diff --git a/provardx-properties.json b/provardx-properties.json new file mode 100644 index 0000000..856ea1f --- /dev/null +++ b/provardx-properties.json @@ -0,0 +1,35 @@ +{ + "provarHome": "/app/Provar/Eclipse", + "projectPath": "/usr/Admin/Provar/MyProject", + "resultsPath": "/usr/Admin/Provar/MyProject/Results", + "outputLevel": "SEVERE", + "excludeCallable": true, + "stopOnError": true, + "lightningMode": true, + "connectionRefreshType": "Reload", + "metadata": { + "metadataLevel": "Reuse", + "cachePath": "/usr/Admin/Provar/Cache" + }, + "environment": { + "testEnvironment": "UAT", + "webBrowser": "Chrome", + "webBrowserConfig": "Full Screen" + }, + "email": { + "sendEmail": true, + "toRecipients": ["abc@example.com", "bcd@example.com"], + "ccRecipients": ["cde@example.com"], + "bccRecipients": ["def@example.com", "efg@example.com"] + }, + "testPlan": ["plan1", "plan2", "./plans/*"], + "testCase": [ + "tc1.testcase", + "tc2.testcase", + "./tests/Lightning/*.testcase" + ], + "connectionOverride": [ + { "connection": "Admin", "username": "admin123@example.com" }, + { "connection": "Sales", "username": "SalesUser1" } + ] +} diff --git a/src/commands/provar/compile.ts b/src/commands/provar/compile.ts new file mode 100644 index 0000000..2e15bf4 --- /dev/null +++ b/src/commands/provar/compile.ts @@ -0,0 +1,122 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +import { flags, SfdxCommand } from '@salesforce/command'; +import { Messages } from '@salesforce/core'; +import { AnyJson } from '@salesforce/ts-types'; +import { execSync } from 'child_process'; +import ProvarDXUtility from '../../utilities/ProvarDXUtility'; + +/** + * Command to compile all source files. (PageObjects, CustomAPIs) + * Class will look out for file to compile in project home src directory. + * @author Himanshu Sharma + * + */ + +// Initialize Messages with the current plugin directory +Messages.importMessagesDirectory(__dirname); + +// Load the specific messages for this file. +const messages = Messages.loadMessages('@provartesting/provardx', 'compile'); +export default class Compile extends SfdxCommand { + public static description = messages.getMessage('commandDescription'); + public static examples = [ + "$ sfdx provar:compile -p './myproperties.json' --json --loglevel SEVERE" + ]; + + public static args = [{ name: 'file' }]; + + protected static flagsConfig = { + propertyfile: flags.string({ + char: 'p', + description: messages.getMessage('propertyFileFlagDescription') + }), + provarhome: flags.string({ + char: 'h', + description: messages.getMessage('provarHomeFlagDescription') + }), + projectpath: flags.string({ + char: 'c', + description: messages.getMessage('projectPathFlagDescription') + }), + loglevel: flags.string({ + char: 'l', + description: messages.getMessage('loglevelFlagDescription') + }) + }; + + public async run(): Promise { + const propertyFile: string = this.flags.propertyfile; + const json: boolean = this.flags.json; + const loglevel: string = this.flags.loglevel + ? this.flags.loglevel + : 'INFO'; + const provarHome: string = this.flags.provarhome; + const projectPath: string = this.flags.projectpath; + + const provarDxUtils: ProvarDXUtility = new ProvarDXUtility(); + const isValid: boolean = provarDxUtils.validatePropertiesJson( + propertyFile + ); + const jsonValue = json ? json : false; + + if (!isValid) { + this.ux.error( + "Invalid property file. Run command sfdx provar:validate -e true' to get the validation errors" + ); + return {}; + } + + this.ux.log('Provided property file:' + propertyFile); + this.ux.log('Json: ' + jsonValue); + this.ux.log('LogLevel: ' + loglevel); + + const properties = this.updatePropertiesWithOverrides( + provarDxUtils.getProperties(), + provarHome, + projectPath + ); + const rawProperties = JSON.stringify(properties); + + if (properties.provarHome == null) { + this.ux.error('Prover home is not specified.'); + return {}; + } + + const updateProperties = provarDxUtils.prepareRawProperties( + rawProperties + ); + const jarPath = properties.provarHome + '/provardx/provardx.jar'; + execSync( + 'java -cp "' + + jarPath + + '" com.provar.provardx.DxCommandExecuter ' + + updateProperties + + ' ' + + 'NA' + + ' ' + + 'Compile', + { stdio: 'inherit' } + ); + + return {}; + } + + public updatePropertiesWithOverrides( + // tslint:disable-next-line: no-any + properties: any, + provarHome: string, + projectPath: string + ) { + properties.provarHome = + provarHome == null ? properties.provarHome : provarHome; + properties.projectPath = + projectPath == null ? properties.projectPath : projectPath; + return properties; + } +} diff --git a/src/commands/provar/metadatacache.ts b/src/commands/provar/metadatacache.ts new file mode 100644 index 0000000..d743610 --- /dev/null +++ b/src/commands/provar/metadatacache.ts @@ -0,0 +1,181 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +import { flags, SfdxCommand } from '@salesforce/command'; +import { Messages } from '@salesforce/core'; +import { AnyJson } from '@salesforce/ts-types'; +import { execSync } from 'child_process'; +import ProvarDXUtility from '../../utilities/ProvarDXUtility'; + +/** + * The metadatacache ensures that the metadata cache is up to date prior to running Provar tasks. + * It can be executed in parallel with other commands as part of a pipeline script, + * but needs to complete before runtests is executed to avoid any duplication of metadata download. + * If no user and no propertyfile is specified then the metadata will be downloaded for the SFDX current default user. + * This may not be what is expected or desired but is consistent with other DX commands! It is up to the user to correctly specify the user(s). + * For download metadata for multiple users it's recommended to reuse the propertyfile and override the metadata cache settings in the property file with the -m flag. + * @author Himanshu Sharma + */ + +// Initialize Messages with the current plugin directory +Messages.importMessagesDirectory(__dirname); + +// Load the specific messages for this file. +const messages = Messages.loadMessages( + '@provartesting/provardx', + 'metadatacache' +); +export default class MetadataCache extends SfdxCommand { + public static description = messages.getMessage('commandDescription'); + public static examples = [ + "$ sfdx provar:metadatacache -m 'refresh' -c './metadata' -f './myproperties.json'" + ]; + + public static args = [{ name: 'file' }]; + + protected static flagsConfig = { + // flag with a value (-f, --propertyfile=VALUE) + metadatalevel: flags.string({ + char: 'm', + description: messages.getMessage('metadataLevelFlagDescription') + }), + // flag with a value (-c, --cachepath=VALUE) + cachepath: flags.string({ + char: 'c', + description: messages.getMessage('cachePathFlagDescription') + }), + // flag with a value (-p, --propertyfile=VALUE) + propertyfile: flags.string({ + char: 'p', + description: messages.getMessage('propertyFileFlagDescription') + }), + // flag with a value (-l, --loglevel VALUE) + loglevel: flags.string({ + char: 'l', + description: messages.getMessage('loglevelFlagDescription') + }), + // flag with a value (-n, --connections VALUE) + connections: flags.string({ + char: 'n', + description: messages.getMessage('connectionNameFlagDescription') + }), + // flag with a value (-o, --connectionoverrides VALUE) + connectionoverrides: flags.string({ + char: 'o', + description: messages.getMessage( + 'connectionoverridesFlagDescription' + ) + }) + }; + + public async run(): Promise { + const metadataLevel: string = this.flags.metadatalevel; + const cachePath: string = this.flags.cachepath; + const propertyFile: string = this.flags.propertyfile; + // const json : string = this.flags.propertyFile; + // const logLevel : string = this.flags.loglevel ? this.flags.loglevel : 'INFO'; + const connections: string = this.flags.connections; + const connectionoverrides: string = this.flags.connectionoverrides; + + const provarDxUtils: ProvarDXUtility = new ProvarDXUtility(); + const isValid: boolean = provarDxUtils.validatePropertiesJson( + propertyFile + ); + const propertiesInstance = provarDxUtils.getProperties(); + + if (connections) { + propertiesInstance.connectionName = connections; + } + + if ( + !isValid || + provarDxUtils.hasDuplicateConnectionOverride(propertiesInstance) + ) { + this.ux.error( + "Invalid property file. Run command sfdx provar:validate' to know the validation errors" + ); + return {}; + } + + const properties = this.updatePropertiesWithOverrides( + propertiesInstance, + metadataLevel, + cachePath, + propertyFile, + connectionoverrides + ); + const rawProperties = JSON.stringify(properties); + + const updateProperties = provarDxUtils.prepareRawProperties( + rawProperties + ); + + const userInfo = await provarDxUtils.getDxUsersInfo( + properties.connectionOverride + ); + if (userInfo == null) { + this.ux.error( + '[ERROR] No valid user org found to download metadata. Terminating command.' + ); + return {}; + } + + const userInfoString = provarDxUtils.prepareRawProperties( + JSON.stringify({ dxUsers: userInfo }) + ); + const jarPath = properties.provarHome + '/provardx/provardx.jar'; + execSync( + 'java -cp "' + + jarPath + + '" com.provar.provardx.DxCommandExecuter ' + + updateProperties + + ' ' + + userInfoString + + ' ' + + 'Metadata', + { stdio: 'inherit' } + ); + return {}; + } + + public updatePropertiesWithOverrides( + // tslint:disable-next-line: no-any + properties: any, + metadataLevel: string, + cachePath: string, + propertyFile: string, + connectionOverrides: string + ) { + properties.metadata.metadataLevel = + metadataLevel == null + ? properties.metadata.metadataLevel + : metadataLevel; + properties.metadata.cachePath = + cachePath == null ? properties.metadata.cachePath : cachePath; + properties.propertyFile = + propertyFile == null ? properties.propertyFile : propertyFile; + this.doConnectionOverrides(properties, connectionOverrides); + return properties; + } + + private doConnectionOverrides( + // tslint:disable-next-line: no-any + properties: any, + connectionOverride: string + ): void { + if (!connectionOverride) { + return; + } + const overrides = connectionOverride.split(','); + const connOver = []; + for (const override of overrides) { + const v = override.split(':'); + connOver.push({ connection: v[0], username: v[1] }); + } + properties.connectionOverride = connOver; + } +} diff --git a/src/commands/provar/runtests.ts b/src/commands/provar/runtests.ts new file mode 100644 index 0000000..553e158 --- /dev/null +++ b/src/commands/provar/runtests.ts @@ -0,0 +1,167 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +import { flags, SfdxCommand } from '@salesforce/command'; +import { Messages } from '@salesforce/core'; +import { AnyJson } from '@salesforce/ts-types'; +import { execSync } from 'child_process'; +import { cli } from 'cli-ux'; +import ProvarDXUtility from '../../utilities/ProvarDXUtility'; + +/** + * Runs the specified list of Provar test cases against the currently configured SFDX defaultuserrname unless overridden + * in the command below or by a provardx-properties.json file + * @author Himanshu Sharma + * + */ + +// Initialize Messages with the current plugin directory +Messages.importMessagesDirectory(__dirname); + +// Load the specific messages for this file. +const messages = Messages.loadMessages('@provartesting/provardx', 'runtests'); +export default class RunTests extends SfdxCommand { + public static description = messages.getMessage('commandDescription'); + public static examples = [ + "$ sfdx provar:runtests -f './myproperties.json'" + ]; + + public static args = [{ name: 'file' }]; + + protected static flagsConfig = { + // flag with a value (-f, --filespec=VALUE) + filespec: flags.string({ + char: 'f', + description: messages.getMessage('fileSpecFlagDescription') + }), + // flag with a value (-p, --propertyfile=VALUE) + propertyfile: flags.string({ + char: 'p', + description: messages.getMessage('propertyFileFlagDescription') + }), + // flag with a value (-o, --connectionoverridefile=VALUE) + connectionoverridefile: flags.string({ + char: 'o', + description: messages.getMessage('connectionOverridefile') + }), + // flag with a value (-c, --cachepath=VALUE) + cachepath: flags.string({ + char: 'c', + description: messages.getMessage('cachePathFlagDescription') + }), + // flag with a value (-m, --metadatalevel=VALUE) + metadatalevel: flags.string({ + char: 'm', + description: messages.getMessage('metadataLevelFlagDescription') + }), + // flag with a value (-s, --secrets=VALUE) + secrets: flags.string({ + char: 's', + description: messages.getMessage('secretsFlagDescription') + }), + // flag with a value (-l, --loglevel VALUE) + loglevel: flags.string({ + char: 'l', + description: messages.getMessage('loglevelFlagDescription') + }) + }; + + public async run(): Promise { + // const fileSpec : string = this.flags.filespec; + const propertyFile: string = this.flags.propertyfile; + // const connectionOverrideFile : string = this.flags.connectionoverridefile; + const cachePath: string = this.flags.cachepath; + const metadataLevel: string = this.flags.metadatalevel; + // const secrets : string = this.flags.secrets; + // const logLevel : string = this.flags.loglevel; + // const json : string = this.flags.json; + + const provarDxUtils: ProvarDXUtility = new ProvarDXUtility(); + const isValid: boolean = provarDxUtils.validatePropertiesJson( + propertyFile + ); + + if ( + provarDxUtils.getProperties().testPlan && + provarDxUtils.getProperties().connectionOverride + ) { + const selection = await cli.prompt( + 'Test plans detected, connection overrides will be ignored, do you wish to continue (Y/N)? ' + ); + if (selection.toLowerCase() === 'n') { + return {}; + } + } + + if ( + !isValid || + provarDxUtils.hasDuplicateConnectionOverride( + provarDxUtils.getProperties() + ) + ) { + this.ux.error( + "Invalid property file. Run command sfdx provar:validate' to know the validation errors" + ); + return {}; + } + + const properties = this.updatePropertiesWithOverrides( + provarDxUtils.getProperties(), + metadataLevel, + cachePath, + propertyFile + ); + const rawProperties = JSON.stringify(properties); + + const userInfo = await provarDxUtils.getDxUsersInfo( + properties.connectionOverride + ); + if (userInfo == null) { + this.ux.error( + '[ERROR] No valid user org found to run tests. Terminating command.' + ); + return {}; + } + const userInfoString = provarDxUtils.prepareRawProperties( + JSON.stringify({ dxUsers: userInfo }) + ); + const updateProperties = provarDxUtils.prepareRawProperties( + rawProperties + ); + const jarPath = properties.provarHome + '/provardx/provardx.jar'; + execSync( + 'java -cp "' + + jarPath + + '" com.provar.provardx.DxCommandExecuter ' + + updateProperties + + ' ' + + userInfoString + + ' ' + + 'Runtests', + { stdio: 'inherit' } + ); + return {}; + } + + public updatePropertiesWithOverrides( + // tslint:disable-next-line: no-any + properties: any, + metadataLevel: string, + cachePath: string, + propertyFile: string + ) { + properties.metadata.metadataLevel = + metadataLevel == null + ? properties.metadata.metadataLevel + : metadataLevel; + properties.metadata.cachePath = + cachePath == null ? properties.metadata.cachePath : cachePath; + properties.propertyFile = + propertyFile == null ? properties.propertyFile : propertyFile; + return properties; + } +} diff --git a/src/commands/provar/validate.ts b/src/commands/provar/validate.ts new file mode 100644 index 0000000..6873f2d --- /dev/null +++ b/src/commands/provar/validate.ts @@ -0,0 +1,142 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +import { flags, SfdxCommand } from '@salesforce/command'; +import { Messages } from '@salesforce/core'; +import { AnyJson } from '@salesforce/ts-types'; +import { ValidatorResult } from 'jsonschema'; +import ProvarDXUtility from '../../utilities/ProvarDXUtility'; + +/** + * This command will be used to check if provided properties json is valid or not. + * Validation will be done against standard provardx property json schema. + * @description + * Command syntax: sfdx provar:metadatacache + * [-f | --propertyfile] Optional. Specify the location of custom provardx property file. + * [--json] Optional. Show validation results in json format. + * [--loglevel] Optional. Avalidable log level [INFO|SEVERE|WARNING|FINE|FINER|FINEST] + * @author Himanshu Sharma + * + */ + +// Initialize Messages with the current plugin directory +Messages.importMessagesDirectory(__dirname); + +// Load the specific messages for this file. +const messages = Messages.loadMessages('@provartesting/provardx', 'validate'); + +export default class Validate extends SfdxCommand { + public static description = messages.getMessage('commandDescription'); + public static examples = [ + `$ sfdx provar:validate + Property file is valid. + `, + `$ sfdx provar:validate --json + Invalid property file. + [Detailed validation error shown] + `, + `$ sfdx provar:validate -p './provardx-properties.json' --json + Invalid property file. + [Detailed validation error shown] + ` + ]; + + public static args = [{ name: 'file' }]; + + protected static flagsConfig = { + // flag with a value (-p, --propertyfile=VALUE) + propertyfile: flags.string({ + char: 'p', + description: messages.getMessage('propertyFileFlagDescription') + }), + // flag with a value (-l, --loglevel VALUE) + loglevel: flags.string({ + char: 'l', + description: messages.getMessage('loglevelFlagDescription') + }) + }; + + public async run(): Promise { + const propertyFile: string = this.flags.propertyfile; + const json: boolean = this.flags.json; + const loglevel: string = this.flags.loglevel + ? this.flags.loglevel + : 'INFO'; + + const provarDxUtils: ProvarDXUtility = new ProvarDXUtility(); + let isValid: boolean = provarDxUtils.validatePropertiesJson( + propertyFile + ); + const results: ValidatorResult = provarDxUtils.getValidationResults(); + + const errorMsgs = { message: '' }; + + if ( + provarDxUtils.hasDuplicateConnectionOverride( + provarDxUtils.getProperties() + ) + ) { + errorMsgs.message = + "Duplicate connection overrides, you can't have multiple connection overrides for same connection."; + isValid = false; + } + + if (isValid) { + if ( + loglevel === 'INFO' || + loglevel === 'FINE' || + loglevel === 'FINNER' || + loglevel === 'FINEST' + ) { + if (json) { + this.ux.logJson({ + isValid: true, + properties: results.instance + }); + } else { + this.ux.log('Property file is valid.'); + } + } else if (loglevel === 'SEVERE' || loglevel === 'WARNING') { + if (json) { + this.ux.logJson({ isValid: true }); + } else { + this.ux.log('Property file is valid.'); + } + } + } else { + for (const error of results.errors) { + errorMsgs['message'] += + error.property + ' ' + error.message + '\n'; + } + if ( + loglevel === 'INFO' || + loglevel === 'FINE' || + loglevel === 'FINNER' || + loglevel === 'FINEST' + ) { + if (json) { + this.ux.logJson({ isValid: false }); + this.ux.logJson(results.errors); + } else { + this.ux.error('Property file is not valid.'); + this.ux.error(errorMsgs.message); + } + } else if (loglevel === 'SEVERE' || loglevel === 'WARNING') { + if (json) { + this.ux.logJson({ + isValid: false, + message: errorMsgs.message + }); + } else { + this.ux.error('Property file is not valid.'); + this.ux.error(errorMsgs.message); + } + } + } + return {}; + } +} diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..29ad7fb --- /dev/null +++ b/src/index.ts @@ -0,0 +1,8 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +export default {}; diff --git a/src/utilities/DxPropertiesSchema.ts b/src/utilities/DxPropertiesSchema.ts new file mode 100644 index 0000000..201489f --- /dev/null +++ b/src/utilities/DxPropertiesSchema.ts @@ -0,0 +1,209 @@ +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +export const schema = { + $schema: 'http://json-schema.org/draft-07/schema#', + $id: 'http://provartesting.com/provardx-props.schema.json', + title: 'ProvarDX-Properties', + description: 'A ProvarDX Property File', + type: 'object', + properties: { + provarHome: { + description: + 'Contains the location that the Provar installation was unzipped. ​This attribute is not required if there is a full Provar installation in the default location, or if PROVAR_HOME Environment Variable is set', + type: 'string' + }, + projectPath: { + description: + 'The fully qualified path of the Test Project containing the tests to be run. This is the folder that contains the .testproject file', + type: 'string' + }, + smtpPath: { + description: + 'The fully qualified path of the .smtp folder to which Provar will use to send emails', + type: 'string' + }, + resultsPath: { + description: + 'The fully qualified path of the folder to which Provar will write the test results', + type: 'string' + }, + resultsPathDisposition: { + description: 'Controls the result folder disposition.', + type: 'string', + enum: ['Increment', 'Replace', 'Fail'] + }, + testOutputLevel: { + description: + 'Controls the amount of test output logged to the DX test log.', + type: 'string', + enum: ['SEVERE', 'WARNING', 'INFO', 'FINE', 'FINER', 'FINEST'] + }, + pluginOutputlevel: { + description: + 'Controls the amount of plugin output logged to the DX test log.', + type: 'string', + enum: ['SEVERE', 'WARNING', 'INFO', 'FINE', 'FINER', 'FINEST'] + }, + excludeCallable: { + description: + 'Indicates whether Callable Test Cases should be omitted from execution (true) or included in execution (false)', + type: 'boolean' + }, + stopOnError: { + description: + 'Indicates whether the Test Run should abort automatically if any test failure is encountered', + type: 'boolean' + }, + connectionRefreshType: { + description: 'Controls the Metadata at Connection level', + type: 'string' + }, + lightningMode: { + description: 'Indicates org is lightning or not', + type: 'boolean' + }, + metadata: { + description: 'Controls the Salesforce Metadata usage.', + type: 'object', + properties: { + metadataLevel: { + description: 'Controls the Salesforce Metadata usage', + type: 'string', + enum: ['Reuse', 'Reload', 'Refresh'] + }, + cachePath: { + description: + 'The fully qualified path of the folder that will be used for storing the metadata cache', + type: 'string' + } + }, + required: ['metadataLevel', 'cachePath'] + }, + environment: { + description: '', + type: 'object', + properties: { + testEnvironment: { + description: + 'The name of the Test Environment that the test run should be executed against. Test Environments are defined in Test Settings', + type: 'string' + }, + webBrowser: { + description: 'The web browser to be used for UI testing', + type: 'string', + enum: ['Chrome', 'Edge', 'Firefox', 'SAFARI', 'IE'] + }, + webBrowserConfig: { + description: + 'The web browser window size. Browser configurations are defined in Test Settings', + type: 'string' + }, + webBrowserProviderName: { + description: 'Web browser provider name.', + type: 'string' + }, + webBrowserDeviceName: { + description: 'Web browser device name', + type: 'string' + } + } + }, + testprojectSecrets: { + description: 'Testproject secret encryption password.', + type: 'string' + }, + environmentsSecrets: { + description: 'Test environment secret encryption password.', + type: 'array', + items: { + type: 'object', + properties: { + name: { type: 'string' }, + secretsPassword: { type: 'string' } + } + } + }, + testplanFeatures: { + description: 'Test plan features.', + type: 'array', + items: { + type: 'object', + properties: { + name: { type: 'string' }, + type: { type: 'string' }, + enabled: { type: 'string' } + } + } + }, + email: { + description: + 'One or more email recipients defining settings for sending email upon test execution completion', + type: 'object', + properties: { + sendEmail: { + description: + 'Indicates whether an email should be sent after test run execution', + type: 'boolean' + }, + toRecipients: { + description: + 'The primary email addresses which should receive the email', + type: 'array', + items: { + type: 'string' + } + }, + ccRecipients: { + description: + 'he email addresses which should be CC’d in the email', + type: 'array', + items: { + type: 'string' + } + }, + bccRecipients: { + description: + 'The email addresses which should be BCC’d in the email', + type: 'array', + items: { + type: 'string' + } + } + }, + required: ['sendEmail', 'toRecipients'] + }, + testPlan: { + description: + 'List of test plan names to be executed, wildcards are permitted', + type: 'array', + items: { + type: 'string' + } + }, + testCase: { + description: + 'One or more fileset elements defining the .testcase files to be run. You can specify individual Test Case files, folders containing Test Case files or a combination of both', + type: 'array', + items: { + type: 'string' + } + }, + connectionOverride: { + description: + 'name:value pairs where the first entry is the provar Connection name and the second is a SFDX username/user-alias to substitute', + type: 'array', + items: { + type: 'object', + properties: { + connection: { type: 'string' }, + username: { type: 'string' } + } + } + } + } +}; diff --git a/com.provar.plugins.provardx/src/utilities/ProvarDXUtility.ts b/src/utilities/ProvarDXUtility.ts similarity index 59% rename from com.provar.plugins.provardx/src/utilities/ProvarDXUtility.ts rename to src/utilities/ProvarDXUtility.ts index 17af110..64a1cfd 100644 --- a/com.provar.plugins.provardx/src/utilities/ProvarDXUtility.ts +++ b/src/utilities/ProvarDXUtility.ts @@ -1,145 +1,178 @@ -import * as fs from 'fs'; -import { schema } from './DxPropertiesSchema'; - -import { AnyJson } from '@salesforce/ts-types'; -import { cli } from 'cli-ux'; -import { Validator, ValidatorResult } from 'jsonschema'; -/** - * Utility class for provar dx commands. - * @ author Himanshu Sharma - */ -export default class ProvarDXUtility { - public provarDxPropertiesJsonLoc: string = './provardx-properties.json'; - public validationResults: ValidatorResult; - public propertyInstance: any; - - /** - * Validate the dx properties json file. - * @ param propertyJson - */ - public validatePropertiesJson(propertyJson: string): boolean { - const jsonValidator = new Validator(); - const propertiesLoc = propertyJson ? propertyJson : this.provarDxPropertiesJsonLoc; - const instance = JSON.parse(fs.readFileSync(propertiesLoc).toString()); - this.propertyInstance = instance; - - this.validationResults = jsonValidator.validate(instance, schema); - - if (this.validationResults.errors.length > 0) { - return false; - } - return true; - } - - /** - * Check for duplicate connection override properties. - * @param instance - */ - public hasDuplicateConnectionOverride(instance: Object): boolean { - const overrideMap = new Map(); - const override = instance['connectionOverride']; - if(override === undefined) { - return false; - } - for (let i = 0; i < override.length ; i++) { - const connectionName = override[i].connection; - if (overrideMap.has(connectionName)) { - return true; - } - overrideMap.set(connectionName, override[i].username); - } - return false; - } - - /** - * Returns the validation results - */ - public getValidationResults(): ValidatorResult { - return this.validationResults; - } - - /** - * Returns the validated dx properties instance - */ - public getProperties(): any { - return this.propertyInstance; - } - - /** - * Updates the dx properties json string before it is send to command executer. - * @param rawProperties - */ - public prepareRawProperties(rawProperties: string): string { - return '"' + rawProperties.replace(/"/g, '\\"') + '"'; - } - - /** - * Gets the dx user info and generated the password for dx user if not already created. - * @param overrides Connection overrides provided in dx property file. - */ - public async getDxUsersInfo(overrides: string): Promise { - const dxUsers = []; - if(overrides === undefined) { - return dxUsers; - } - for (let i = 0; i < overrides.length; i++) { - const username = overrides[i]['username']; - const message = 'Validating and retriving dx user info: ' + username; - let dxUserInfo = await this.executeCommand('sfdx force:user:display --json -u ' + username, message); - let jsonDxUser = JSON.parse(dxUserInfo.toString()); - if (jsonDxUser.status !== 0) { - console.error('[WARNING] ' + jsonDxUser.message + '. Skipping operation.'); - continue; - } - if (jsonDxUser.result.password == null) { - const generatePasswordCommand = 'sfdx force:user:password:generate --targetusername ' + username; - await this.executeCommand(generatePasswordCommand, 'Generating password for user: ' + username); - dxUserInfo = await this.executeCommand('sfdx force:user:display --json -u ' + username, 'Getting generated password for user: ' + username); - jsonDxUser = JSON.parse(dxUserInfo.toString()); - } - jsonDxUser.result.connection = overrides[i]['connection']; - jsonDxUser.result.password = this.handleSpecialCharacters(jsonDxUser.result.password); - dxUsers.push(jsonDxUser); - } - if (dxUsers.length === 0) { - return null; - } - return dxUsers; - } - - /** - * Executes the provided dx command. - * @param command Command string - * @param message Message to be displayed while command execution is in progress. - */ - private async executeCommand(command: string, message: string): Promise { - if (message) { - cli.action.start(message); - } - let isSucessful = false; - const { promisify } = require('util'); - const exec = promisify(require('child_process').exec); - try { - const result = await exec(command); - isSucessful = true; - return result.stdout; - } catch (e) { - let errorMessage = e.message; - errorMessage = errorMessage.substring(errorMessage.indexOf('{'), errorMessage.indexOf('}') + 1); - return errorMessage; - } finally { - if (message) { - cli.action.stop(isSucessful ? 'successful' : 'failed'); - } - } - } - - private handleSpecialCharacters(password: string): string { - if (password) { - password = password.split('&').join('"&"'); - password = password.split('|').join('"|"'); - password = password.split('^').join('"^"'); - } - return password; - } -} +/* + * Copyright (c) 2020 Make Positive Provar Ltd + * All rights reserved. + * Licensed under the BSD 3-Clause license. + * For full license text, see LICENSE.md file in the repo root or https://opensource.org/licenses/BSD-3-Clause + */ + +import * as fs from 'fs'; +import { schema } from './DxPropertiesSchema'; + +import { AnyJson } from '@salesforce/ts-types'; +import { cli } from 'cli-ux'; +import { Validator, ValidatorResult } from 'jsonschema'; +/** + * Utility class for provar dx commands. + * @author Himanshu Sharma + */ +export default class ProvarDXUtility { + public provarDxPropertiesJsonLoc: string = './provardx-properties.json'; + public validationResults: ValidatorResult; + public propertyInstance: any; // tslint:disable-line:no-any + + /** + * Validate the dx properties json file. + * @param propertyJson + */ + public validatePropertiesJson(propertyJson: string): boolean { + const jsonValidator = new Validator(); + const propertiesLoc = propertyJson + ? propertyJson + : this.provarDxPropertiesJsonLoc; + const instance = JSON.parse(fs.readFileSync(propertiesLoc).toString()); + this.propertyInstance = instance; + + this.validationResults = jsonValidator.validate(instance, schema); + + if (this.validationResults.errors.length > 0) { + return false; + } + return true; + } + + /** + * Check for duplicate connection override properties. + * @param instance + */ + // tslint:disable-next-line: ban-types + public hasDuplicateConnectionOverride(instance: Object): boolean { + const overrideMap = new Map(); + const override = instance['connectionOverride']; + if (override === undefined) { + return false; + } + for (const o of override) { + const connectionName = o.connection; + if (overrideMap.has(connectionName)) { + return true; + } + overrideMap.set(connectionName, o.username); + } + return false; + } + + /** + * Returns the validation results + */ + public getValidationResults(): ValidatorResult { + return this.validationResults; + } + + /** + * Returns the validated dx properties instance + */ + // tslint:disable-next-line:no-any + public getProperties(): any { + return this.propertyInstance; + } + + /** + * Updates the dx properties json string before it is send to command executer. + * @param rawProperties + */ + public prepareRawProperties(rawProperties: string): string { + return '"' + rawProperties.replace(/"/g, '\\"') + '"'; + } + + /** + * Gets the dx user info and generated the password for dx user if not already created. + * @param overrides Connection overrides provided in dx property file. + */ + public async getDxUsersInfo(overrides: string): Promise { + const dxUsers = []; + if (overrides === undefined) { + return dxUsers; + } + for (const override of overrides) { + const username = override['username']; + const message = + 'Validating and retriving dx user info: ' + username; + let dxUserInfo = await this.executeCommand( + 'sfdx force:user:display --json -u ' + username, + message + ); + let jsonDxUser = JSON.parse(dxUserInfo.toString()); + if (jsonDxUser.status !== 0) { + console.error( + '[WARNING] ' + jsonDxUser.message + '. Skipping operation.' + ); + continue; + } + if (jsonDxUser.result.password == null) { + const generatePasswordCommand = + 'sfdx force:user:password:generate --targetusername ' + + username; + await this.executeCommand( + generatePasswordCommand, + 'Generating password for user: ' + username + ); + dxUserInfo = await this.executeCommand( + 'sfdx force:user:display --json -u ' + username, + 'Getting generated password for user: ' + username + ); + jsonDxUser = JSON.parse(dxUserInfo.toString()); + } + jsonDxUser.result.connection = override['connection']; + jsonDxUser.result.password = this.handleSpecialCharacters( + jsonDxUser.result.password + ); + dxUsers.push(jsonDxUser); + } + if (dxUsers.length === 0) { + return null; + } + return dxUsers; + } + + /** + * Executes the provided dx command. + * @param command Command string + * @param message Message to be displayed while command execution is in progress. + */ + private async executeCommand( + command: string, + message: string + ): Promise { + if (message) { + cli.action.start(message); + } + let isSucessful = false; + const { promisify } = require('util'); + const exec = promisify(require('child_process').exec); + try { + const result = await exec(command); + isSucessful = true; + return result.stdout; + } catch (e) { + let errorMessage = e.message; + errorMessage = errorMessage.substring( + errorMessage.indexOf('{'), + errorMessage.indexOf('}') + 1 + ); + return errorMessage; + } finally { + if (message) { + cli.action.stop(isSucessful ? 'successful' : 'failed'); + } + } + } + + private handleSpecialCharacters(password: string): string { + if (password) { + password = password.split('&').join('"&"'); + password = password.split('|').join('"|"'); + password = password.split('^').join('"^"'); + } + return password; + } +} diff --git a/test/commands/hello/org.test.ts b/test/commands/hello/org.test.ts new file mode 100644 index 0000000..0ab7441 --- /dev/null +++ b/test/commands/hello/org.test.ts @@ -0,0 +1,27 @@ +import { expect, test } from '@salesforce/command/lib/test'; +import { ensureJsonMap, ensureString } from '@salesforce/ts-types'; + +describe('hello:org', () => { + test.withOrg({ username: 'test@org.com' }, true) + .withConnectionRequest((request) => { + const requestMap = ensureJsonMap(request); + if (ensureString(requestMap.url).match(/Organization/)) { + return Promise.resolve({ + records: [ + { + Name: 'Super Awesome Org', + TrialExpirationDate: '2018-03-20T23:24:11.000+0000' + } + ] + }); + } + return Promise.resolve({ records: [] }); + }) + .stdout() + .command(['hello:org', '--targetusername', 'test@org.com']) + .it('runs hello:org --targetusername test@org.com', (ctx) => { + expect(ctx.stdout).to.contain( + 'Hello world! This is org: Super Awesome Org and I will be around until Tue Mar 20 2018!' + ); + }); +}); diff --git a/com.provar.plugins.provardx/test/mocha.opts b/test/mocha.opts similarity index 100% rename from com.provar.plugins.provardx/test/mocha.opts rename to test/mocha.opts diff --git a/test/tsconfig.json b/test/tsconfig.json new file mode 100644 index 0000000..2d93419 --- /dev/null +++ b/test/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "../tsconfig" +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..8b32dea --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "./node_modules/@salesforce/dev-config/tsconfig", + "compilerOptions": { + "outDir": "./lib", + "rootDir": "./src" + }, + "include": ["./src/**/*"] +} diff --git a/com.provar.plugins.provardx/tslint.json b/tslint.json similarity index 89% rename from com.provar.plugins.provardx/tslint.json rename to tslint.json index bb09b86..1a6d2c4 100644 --- a/com.provar.plugins.provardx/tslint.json +++ b/tslint.json @@ -1,4 +1,3 @@ { "extends": "@salesforce/dev-config/tslint" - } - \ No newline at end of file +} diff --git a/com.provar.plugins.provardx/yarn.lock b/yarn.lock similarity index 56% rename from com.provar.plugins.provardx/yarn.lock rename to yarn.lock index 1fa314c..a9631d0 100644 --- a/com.provar.plugins.provardx/yarn.lock +++ b/yarn.lock @@ -2,92 +2,96 @@ # yarn lockfile v1 -"@babel/code-frame@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" - integrity sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.3.tgz#324bcfd8d35cd3d47dae18cde63d752086435e9a" + integrity sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg== dependencies: - "@babel/highlight" "^7.0.0" + "@babel/highlight" "^7.10.3" -"@babel/generator@^7.4.0", "@babel/generator@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.4.4.tgz#174a215eb843fc392c7edcaabeaa873de6e8f041" - integrity sha512-53UOLK6TVNqKxf7RUh8NE851EHRxOOeVXKbK2bivdb+iziMyk03Sr4eaE9OELCbyZAAafAKPDwF2TPUES5QbxQ== +"@babel/generator@^7.10.3", "@babel/generator@^7.4.0": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.3.tgz#32b9a0d963a71d7a54f5f6c15659c3dbc2a523a5" + integrity sha512-drt8MUHbEqRzNR0xnF8nMehbY11b1SDkRw03PSNH/3Rb2Z35oxkddVSi3rcaak0YJQ86PCuE7Qx1jSFhbLNBMA== dependencies: - "@babel/types" "^7.4.4" + "@babel/types" "^7.10.3" jsesc "^2.5.1" - lodash "^4.17.11" + lodash "^4.17.13" source-map "^0.5.0" - trim-right "^1.0.1" -"@babel/helper-function-name@^7.1.0": - version "7.1.0" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz#a0ceb01685f73355d4360c1247f582bfafc8ff53" - integrity sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw== +"@babel/helper-function-name@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.3.tgz#79316cd75a9fa25ba9787ff54544307ed444f197" + integrity sha512-FvSj2aiOd8zbeqijjgqdMDSyxsGHaMt5Tr0XjQsGKHD3/1FP3wksjnLAWzxw7lvXiej8W1Jt47SKTZ6upQNiRw== dependencies: - "@babel/helper-get-function-arity" "^7.0.0" - "@babel/template" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/helper-get-function-arity" "^7.10.3" + "@babel/template" "^7.10.3" + "@babel/types" "^7.10.3" -"@babel/helper-get-function-arity@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz#83572d4320e2a4657263734113c42868b64e49c3" - integrity sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ== +"@babel/helper-get-function-arity@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.3.tgz#3a28f7b28ccc7719eacd9223b659fdf162e4c45e" + integrity sha512-iUD/gFsR+M6uiy69JA6fzM5seno8oE85IYZdbVVEuQaZlEzMO2MXblh+KSPJgsZAUx0EEbWXU0yJaW7C9CdAVg== dependencies: - "@babel/types" "^7.0.0" + "@babel/types" "^7.10.3" -"@babel/helper-split-export-declaration@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz#ff94894a340be78f53f06af038b205c49d993677" - integrity sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q== +"@babel/helper-split-export-declaration@^7.10.1": + version "7.10.1" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz#c6f4be1cbc15e3a868e4c64a17d5d31d754da35f" + integrity sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g== dependencies: - "@babel/types" "^7.4.4" + "@babel/types" "^7.10.1" -"@babel/highlight@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0.tgz#f710c38c8d458e6dd9a201afb637fcb781ce99e4" - integrity sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw== +"@babel/helper-validator-identifier@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz#60d9847f98c4cea1b279e005fdb7c28be5412d15" + integrity sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw== + +"@babel/highlight@^7.10.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.3.tgz#c633bb34adf07c5c13156692f5922c81ec53f28d" + integrity sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw== dependencies: + "@babel/helper-validator-identifier" "^7.10.3" chalk "^2.0.0" - esutils "^2.0.2" js-tokens "^4.0.0" -"@babel/parser@^7.4.3", "@babel/parser@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.4.4.tgz#5977129431b8fe33471730d255ce8654ae1250b6" - integrity sha512-5pCS4mOsL+ANsFZGdvNLybx4wtqAZJ0MJjMHxvzI3bvIsz6sQvzW8XX92EYIkiPtIvcfG3Aj+Ir5VNyjnZhP7w== +"@babel/parser@^7.10.3", "@babel/parser@^7.4.3": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.3.tgz#7e71d892b0d6e7d04a1af4c3c79d72c1f10f5315" + integrity sha512-oJtNJCMFdIMwXGmx+KxuaD7i3b8uS7TTFYW/FNG2BT8m+fmGHoiPYoH0Pe3gya07WuFmM5FCDIr1x0irkD/hyA== -"@babel/template@^7.1.0", "@babel/template@^7.4.0": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" - integrity sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw== +"@babel/template@^7.10.3", "@babel/template@^7.4.0": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.3.tgz#4d13bc8e30bf95b0ce9d175d30306f42a2c9a7b8" + integrity sha512-5BjI4gdtD+9fHZUsaxPHPNpwa+xRkDO7c7JbhYn2afvrkDu5SfAAbi9AIMXw2xEhO/BR35TqiW97IqNvCo/GqA== dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.4.4" - "@babel/types" "^7.4.4" + "@babel/code-frame" "^7.10.3" + "@babel/parser" "^7.10.3" + "@babel/types" "^7.10.3" "@babel/traverse@^7.4.3": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.4.4.tgz#0776f038f6d78361860b6823887d4f3937133fe8" - integrity sha512-Gw6qqkw/e6AGzlyj9KnkabJX7VcubqPtkUQVAwkc0wUMldr3A/hezNB3Rc5eIvId95iSGkGIOe5hh1kMKf951A== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/generator" "^7.4.4" - "@babel/helper-function-name" "^7.1.0" - "@babel/helper-split-export-declaration" "^7.4.4" - "@babel/parser" "^7.4.4" - "@babel/types" "^7.4.4" + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.3.tgz#0b01731794aa7b77b214bcd96661f18281155d7e" + integrity sha512-qO6623eBFhuPm0TmmrUFMT1FulCmsSeJuVGhiLodk2raUDFhhTECLd9E9jC4LBIWziqt4wgF6KuXE4d+Jz9yug== + dependencies: + "@babel/code-frame" "^7.10.3" + "@babel/generator" "^7.10.3" + "@babel/helper-function-name" "^7.10.3" + "@babel/helper-split-export-declaration" "^7.10.1" + "@babel/parser" "^7.10.3" + "@babel/types" "^7.10.3" debug "^4.1.0" globals "^11.1.0" - lodash "^4.17.11" + lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.4.0", "@babel/types@^7.4.4": - version "7.4.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.4.4.tgz#8db9e9a629bb7c29370009b4b779ed93fe57d5f0" - integrity sha512-dOllgYdnEFOebhkKCjzSVFqw/PmmB8pH6RGOWkY4GsboQNd47b1fBThBSwlHAq9alF9vc1M3+6oqR47R50L0tQ== +"@babel/types@^7.10.1", "@babel/types@^7.10.3", "@babel/types@^7.4.0": + version "7.10.3" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.3.tgz#6535e3b79fea86a6b09e012ea8528f935099de8e" + integrity sha512-nZxaJhBXBQ8HVoIcGsf9qWep3Oh3jCENK54V4mRF7qaJabVsAYdbTtmSD8WmAp1R6ytPiu5apMwSXyxB1WlaBA== dependencies: - esutils "^2.0.2" - lodash "^4.17.11" + "@babel/helper-validator-identifier" "^7.10.3" + lodash "^4.17.13" to-fast-properties "^2.0.0" "@mrmlnc/readdir-enhanced@^2.2.1": @@ -98,36 +102,61 @@ call-me-maybe "^1.0.1" glob-to-regexp "^0.3.0" +"@nodelib/fs.scandir@2.1.3": + version "2.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" + integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw== + dependencies: + "@nodelib/fs.stat" "2.0.3" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" + integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== + "@nodelib/fs.stat@^1.1.2": version "1.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== -"@oclif/command@^1", "@oclif/command@^1.5.0", "@oclif/command@^1.5.1", "@oclif/command@^1.5.12", "@oclif/command@^1.5.8": - version "1.5.13" - resolved "https://registry.yarnpkg.com/@oclif/command/-/command-1.5.13.tgz#7047f3e5c3abb8a08fb88ba3bf00ea96ea9a1d77" - integrity sha512-zkO8hRd5Sjl7a+GM9ZMNHLD8rneAPjFBFjkAwLPs/hEv72RnFeWSyW6eE1nDbKVzMyDUYmmWNQFp0lQuwhHCdA== +"@nodelib/fs.walk@^1.2.3": + version "1.2.4" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" + integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ== + dependencies: + "@nodelib/fs.scandir" "2.1.3" + fastq "^1.6.0" + +"@oclif/command@^1", "@oclif/command@^1.5.13", "@oclif/command@^1.5.17", "@oclif/command@^1.5.20", "@oclif/command@^1.6.0": + version "1.6.1" + resolved "https://registry.yarnpkg.com/@oclif/command/-/command-1.6.1.tgz#774e860f283f32a728377da1c2a90beb8aadf9f5" + integrity sha512-pvmMmfGn+zm4e4RwVw63mg9sIaqKqmVsFbImQoUrCO/43UmWzoSHWNXKdgEGigOezWrkZfFucaeZcSbp149OWg== dependencies: + "@oclif/config" "^1.15.1" "@oclif/errors" "^1.2.2" - "@oclif/parser" "^3.7.3" + "@oclif/parser" "^3.8.3" + "@oclif/plugin-help" "^3" debug "^4.1.1" semver "^5.6.0" -"@oclif/config@^1", "@oclif/config@^1.12.11": - version "1.12.12" - resolved "https://registry.yarnpkg.com/@oclif/config/-/config-1.12.12.tgz#09e6628fe454214bbd7630ae18d2bee0db6bd533" - integrity sha512-0vlX5VYvOfF9QbkCqMyPSzH9GMp6at4Mbqn8CxCskxhKvNZoPD5ocda2ku0zEnoqxGAQ4VfQP7NCqJthuiStfg== +"@oclif/config@^1", "@oclif/config@^1.12.12", "@oclif/config@^1.15.1": + version "1.15.1" + resolved "https://registry.yarnpkg.com/@oclif/config/-/config-1.15.1.tgz#39950c70811ab82d75bb3cdb33679ed0a4c21c57" + integrity sha512-GdyHpEZuWlfU8GSaZoiywtfVBsPcfYn1KuSLT1JTfvZGpPG6vShcGr24YZ3HG2jXUFlIuAqDcYlTzOrqOdTPNQ== dependencies: + "@oclif/errors" "^1.0.0" + "@oclif/parser" "^3.8.0" debug "^4.1.1" tslib "^1.9.3" "@oclif/dev-cli@^1": - version "1.22.0" - resolved "https://registry.yarnpkg.com/@oclif/dev-cli/-/dev-cli-1.22.0.tgz#ee8f13cea19affa5727ba17a85cc323f1f142c4f" - integrity sha512-oMiZxMNv6sQtlpof8qFqVM7/UmO2i5hbHZxcC7Zq4PoBGnqVl8Rc+uLdNrE39T/JPCGWwq8kEqkhok6eNdG8wg== + version "1.22.2" + resolved "https://registry.yarnpkg.com/@oclif/dev-cli/-/dev-cli-1.22.2.tgz#e890f93d0335c0e3faaa25741999776259b2171f" + integrity sha512-c7633R37RxrQIpwqPKxjNRm6/jb1yuG8fd16hmNz9Nw+/MUhEtQtKHSCe9ScH8n5M06l6LEo4ldk9LEGtpaWwA== dependencies: - "@oclif/command" "^1.5.12" - "@oclif/config" "^1.12.11" + "@oclif/command" "^1.5.13" + "@oclif/config" "^1.12.12" "@oclif/errors" "^1.2.2" "@oclif/plugin-help" "^2.1.6" cli-ux "^5.2.1" @@ -139,39 +168,55 @@ qqjs "^0.3.10" tslib "^1.9.3" -"@oclif/errors@^1", "@oclif/errors@^1.2.0", "@oclif/errors@^1.2.1", "@oclif/errors@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@oclif/errors/-/errors-1.2.2.tgz#9d8f269b15f13d70aa93316fed7bebc24688edc2" - integrity sha512-Eq8BFuJUQcbAPVofDxwdE0bL14inIiwt5EaKRVY9ZDIG11jwdXZqiQEECJx0VfnLyUZdYfRd/znDI/MytdJoKg== +"@oclif/errors@^1", "@oclif/errors@^1.0.0", "@oclif/errors@^1.2.1", "@oclif/errors@^1.2.2": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@oclif/errors/-/errors-1.3.1.tgz#297b783ea1d18e46aa28999c7e1b8b827cd8572a" + integrity sha512-ma9SpBNnAjbJNc8kPl8G8n6oJX0WK0FtosuJ9Y5etHoJrqq/s9GOOIxo47fSXomLT1fmqYX5cW2yeQ2Q39XyAw== dependencies: - clean-stack "^1.3.0" - fs-extra "^7.0.0" - indent-string "^3.2.0" - strip-ansi "^5.0.0" - wrap-ansi "^4.0.0" + clean-stack "^3.0.0" + fs-extra "^9.0.1" + indent-string "^4.0.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" "@oclif/linewrap@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@oclif/linewrap/-/linewrap-1.0.0.tgz#aedcb64b479d4db7be24196384897b5000901d91" integrity sha512-Ups2dShK52xXa8w6iBWLgcjPJWjais6KPJQq3gQ/88AY6BXoTX+MIGFPrWQO1KLMiQfoTpcLnUwloN4brrVUHw== -"@oclif/parser@^3.6.0", "@oclif/parser@^3.7.3": - version "3.8.0" - resolved "https://registry.yarnpkg.com/@oclif/parser/-/parser-3.8.0.tgz#397c73f92cf8ac82daa7448a916638a312775e3b" - integrity sha512-w1fCz0bpg1ukbYKLxQn3cYQS9hiqNgmFhlqAqqfr1k0ijMhA/g8Z+7mshiFs1w7OsxxnKhmRxPn7EZR4EJcemA== +"@oclif/parser@^3.8.0", "@oclif/parser@^3.8.3": + version "3.8.5" + resolved "https://registry.yarnpkg.com/@oclif/parser/-/parser-3.8.5.tgz#c5161766a1efca7343e1f25d769efbefe09f639b" + integrity sha512-yojzeEfmSxjjkAvMRj0KzspXlMjCfBzNRPkWw8ZwOSoNWoJn+OCS/m/S+yfV6BvAM4u2lTzX9Y5rCbrFIgkJLg== dependencies: + "@oclif/errors" "^1.2.2" "@oclif/linewrap" "^1.0.0" chalk "^2.4.2" tslib "^1.9.3" -"@oclif/plugin-help@^2", "@oclif/plugin-help@^2.1.0", "@oclif/plugin-help@^2.1.6": - version "2.1.6" - resolved "https://registry.yarnpkg.com/@oclif/plugin-help/-/plugin-help-2.1.6.tgz#ae14cbe2c5cd3eaf5f796d205ffbe66d3e369173" - integrity sha512-M4kTERpPWNSM1Mga7K/zo9DWHLCVf2FRaIeXPoytmTPd+0kSvG3TR0Vc1bwx9/cxXoYyYGgEejwNlrfayr8FZw== +"@oclif/plugin-help@^2", "@oclif/plugin-help@^2.1.6", "@oclif/plugin-help@^2.2.0": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@oclif/plugin-help/-/plugin-help-2.2.3.tgz#b993041e92047f0e1762668aab04d6738ac06767" + integrity sha512-bGHUdo5e7DjPJ0vTeRBMIrfqTRDBfyR5w0MP41u0n3r7YG5p14lvMmiCXxi6WDaP2Hw5nqx3PnkAIntCKZZN7g== dependencies: - "@oclif/command" "^1.5.8" + "@oclif/command" "^1.5.13" chalk "^2.4.1" - indent-string "^3.2.0" + indent-string "^4.0.0" + lodash.template "^4.4.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + widest-line "^2.0.1" + wrap-ansi "^4.0.0" + +"@oclif/plugin-help@^3": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@oclif/plugin-help/-/plugin-help-3.1.0.tgz#507ff8e9cabe734672b12d1ec0b79812d18c58a8" + integrity sha512-orSWpXGlJaX16eSjAtI8scA8QhrjQOaCSHodEx52t18JKbIVzG8jcngugyWAOB/V4jhPl0rdiVk9XFsaIIiG2g== + dependencies: + "@oclif/command" "^1.5.20" + "@oclif/config" "^1.15.1" + chalk "^2.4.1" + indent-string "^4.0.0" lodash.template "^4.4.0" string-width "^3.0.0" strip-ansi "^5.0.0" @@ -183,44 +228,56 @@ resolved "https://registry.yarnpkg.com/@oclif/screen/-/screen-1.0.4.tgz#b740f68609dfae8aa71c3a6cab15d816407ba493" integrity sha512-60CHpq+eqnTxLZQ4PGHYNwUX572hgpMHGPtTWMjdTMsAvlm69lZV/4ly6O3sAYkomo4NggGcomrDpBe34rxUqw== -"@oclif/test@^1", "@oclif/test@^1.2.0": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@oclif/test/-/test-1.2.4.tgz#81203074927c00b0804a171e67a45c5968813c01" - integrity sha512-c0khMdYBGV7t9L7SNbh84t9PmTqfaTp4Jqf3JbWu80fd+SAM03m9o+dvrgx+qv4YbSTum4GpXBZtXHq4AXsD3Q== +"@oclif/test@^1", "@oclif/test@^1.2.4": + version "1.2.6" + resolved "https://registry.yarnpkg.com/@oclif/test/-/test-1.2.6.tgz#0cc5b4f762c4007f3aeda1608a374cf02e76fe9d" + integrity sha512-8BQm0VFwTf/JpDnI3x6Lbp3S4RRUvQcv8WalKm82+7FNEylWMAXFNgBuzG65cNPj11J2jhlVo0gOWGF6hbiaJQ== dependencies: fancy-test "^1.4.3" -"@salesforce/command@^1.4.1": - version "1.5.1" - resolved "https://registry.yarnpkg.com/@salesforce/command/-/command-1.5.1.tgz#ba57ffcc4487207964e9f055e817bfa160a146e2" - integrity sha512-XP4nxu41mamk+pINkspkYQBQxMCIHjdrFE3/xt2eCRjJY8mBVYtVyQp0jxaDny6nD3yfTGalb9s0JbQ54SlxiQ== - dependencies: - "@oclif/command" "^1.5.0" - "@oclif/errors" "^1.2.0" - "@oclif/parser" "^3.6.0" - "@oclif/plugin-help" "^2.1.0" - "@oclif/test" "^1.2.0" - "@salesforce/core" "^1.2.3" - "@salesforce/kit" "^1.1.0" - "@salesforce/ts-types" "^1.0.0" - chalk "^2.4.0" - cli-ux "^4.8.0" +"@salesforce/bunyan@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@salesforce/bunyan/-/bunyan-2.0.0.tgz#8dbe377f2cf7d35348a23260416fee15adba5f97" + integrity sha512-5hq+HWQSeymuygl3i9ehlQo3XWrlBE+A+QzmpDaoK37op4u9M+SBUbXfOW0IABOQCg+JmfQPocSMV74hRoqU9w== + dependencies: + dayjs "^1.8.16" + dayjs-plugin-utc "^0.1.2" + optionalDependencies: + dtrace-provider "~0.6" + mv "~2" + safe-json-stringify "~1" + +"@salesforce/command@^2": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@salesforce/command/-/command-2.2.0.tgz#316097f8defd300a93a3460dea3fe31e7d958254" + integrity sha512-woOcjp/ZUc+WQtWVuu0arFv3go90KeBDHrRldVq+8oL6SmksK/13c9OPPFANGWeD6KbsTMY7AfqNE/BdpEb1YA== + dependencies: + "@oclif/command" "^1.5.17" + "@oclif/errors" "^1.2.2" + "@oclif/parser" "^3.8.3" + "@oclif/plugin-help" "^2.2.0" + "@oclif/test" "^1.2.4" + "@salesforce/core" "^2.1.4" + "@salesforce/kit" "^1.2.0" + "@salesforce/ts-types" "^1.2.0" + chalk "^2.4.2" + cli-ux "^4.9.3" -"@salesforce/core@^1.2.3", "@salesforce/core@^1.3.2": - version "1.3.3" - resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-1.3.3.tgz#edd69a1534fad82a7c41f69f6d083a9afb5d4234" - integrity sha512-w5zsGpNGocL8OHPDDrQzn44QzOtBmCIXOugXqkIhpgO5p1gdPeL2jxQnCca0FT22AMyt8oYcdvzyRgy5rvgdQw== +"@salesforce/core@^2", "@salesforce/core@^2.1.4": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@salesforce/core/-/core-2.6.0.tgz#e774c06159c5d99f3806f524a95b34bba4f8fdfc" + integrity sha512-sGqDMHK7T4Uf8dYGbO6gRjiQc0WLa6uS8KL/xYeNRkAzUipaW/ggBbkcQafUCbAiaPR/U1PtuOZtpUGwc3WQTg== dependencies: - "@salesforce/kit" "^1.0.0" - "@salesforce/ts-sinon" "^1.0.0" + "@salesforce/bunyan" "^2.0.0" + "@salesforce/kit" "^1.2.2" + "@salesforce/schemas" "^1.0.1" "@salesforce/ts-types" "^1.0.0" "@types/jsforce" "1.9.2" - bunyan-sfdx-no-dtrace "1.8.2" debug "^3.1.0" jsen "0.6.6" - jsforce "1.8.5" + jsforce "1.9.3" jsonwebtoken "8.5.0" - mkdirp "0.5.1" + mkdirp "1.0.4" sfdx-faye "^1.0.9" "@salesforce/dev-config@1.4.1": @@ -232,70 +289,43 @@ tslint-microsoft-contrib "^5" typescript "^3" -"@salesforce/kit@^1.0.0", "@salesforce/kit@^1.1.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@salesforce/kit/-/kit-1.1.1.tgz#99d3f553b1376a49185a654691475a605eda5bab" - integrity sha512-mXAyQwAFx3YO89sm6GUGxqCdvFrfg8ph2PVWYwSxBwMNkJW7xsKdt6ZzsouSl4bysvOhedXC1i3sdIg+SSr1UQ== - dependencies: - "@salesforce/ts-types" "^1.1.4" - tslib "^1" - -"@salesforce/ts-sinon@^1.0.0": - version "1.0.6" - resolved "https://registry.yarnpkg.com/@salesforce/ts-sinon/-/ts-sinon-1.0.6.tgz#a5879ba899f67fbf4db0f8b607bd7031a33a6ea9" - integrity sha512-hL+z2E9Si3R9NNBdfKfex55q1+gacH5bPf2N6GWqEEdLAb4KSXV15R33vpH94uLJSQfWj704EcsqW04M6Hk4gg== +"@salesforce/kit@^1.2.0", "@salesforce/kit@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@salesforce/kit/-/kit-1.2.2.tgz#9efaee2f520fba4c87a1e138fb31579cc5de69bd" + integrity sha512-MQXUh8Ka8oB1SOPUF1kOynXQWcLeZ8YWOyqPtg6j8U9NxLlkTF2vfUfhZEm//jXjejDy7CEes5rEKRHm2df/OA== dependencies: - "@salesforce/ts-types" "^1.1.4" - sinon "5.0.7" - tslib "^1.9.3" + "@salesforce/ts-types" "^1.2.2" + tslib "^1.10.0" -"@salesforce/ts-types@^1.0.0", "@salesforce/ts-types@^1.1.4": - version "1.1.4" - resolved "https://registry.yarnpkg.com/@salesforce/ts-types/-/ts-types-1.1.4.tgz#d4826d5859e6c4e07a4f151436d518be504d3189" - integrity sha512-V0Za4++dOso4IbEgrlErZl6Ki9QJTtMNyz5CUc1R0qPgZelegHg26PpocYnd8GGHuiXVlBIeBcaoZLR7Vm/+8Q== - dependencies: - tslib "^1" +"@salesforce/schemas@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@salesforce/schemas/-/schemas-1.0.1.tgz#d1db56759d2b22a7688e1821aec564e979237ad2" + integrity sha512-78pP1GB/DbIS8nSWGL0GpQ27g02drrEo0vzYdRipGYAIXHMzlh1gqEsq0pOiIQlPm1MxWyEqbmf4GG5qSVsd0Q== -"@sinonjs/commons@^1", "@sinonjs/commons@^1.0.2": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.4.0.tgz#7b3ec2d96af481d7a0321252e7b1c94724ec5a78" - integrity sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw== +"@salesforce/ts-types@^1.0.0", "@salesforce/ts-types@^1.2.0", "@salesforce/ts-types@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@salesforce/ts-types/-/ts-types-1.2.2.tgz#2e6dc771fa42a2cfc1a2e6b13d2f789add0cdf7c" + integrity sha512-inTkNP5jwJTbKqmBv6Cku/ezU6+ErYbUH4YorDfgZ/wDCsdLc9UyPGKGMO8aZ78vvyUTYWEiDxWlMqb1QXEfEw== dependencies: - type-detect "4.0.8" + tslib "^1.10.0" -"@sinonjs/formatio@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sinonjs/formatio/-/formatio-2.0.0.tgz#84db7e9eb5531df18a8c5e0bfb6e449e55e654b2" - integrity sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg== - dependencies: - samsam "1.3.0" +"@types/chai@*", "@types/chai@^4": + version "4.2.11" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.2.11.tgz#d3614d6c5f500142358e6ed24e1bf16657536c50" + integrity sha512-t7uW6eFafjO+qJ3BIV2gGUyZs27egcNRkUdalkud+Qa3+kg//f129iuOFivHDXQ+vnU3fDXuwgv0cqMCbcE8sw== -"@sinonjs/formatio@^3.1.0": - version "3.2.1" - resolved "https://registry.yarnpkg.com/@sinonjs/formatio/-/formatio-3.2.1.tgz#52310f2f9bcbc67bdac18c94ad4901b95fde267e" - integrity sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ== - dependencies: - "@sinonjs/commons" "^1" - "@sinonjs/samsam" "^3.1.0" +"@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== -"@sinonjs/samsam@^3.1.0": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@sinonjs/samsam/-/samsam-3.3.1.tgz#e88c53fbd9d91ad9f0f2b0140c16c7c107fe0d07" - integrity sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw== +"@types/glob@^7.1.1": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.2.tgz#06ca26521353a545d94a0adc74f38a59d232c987" + integrity sha512-VgNIkxK+j7Nz5P7jvUZlRvhuPSmsEfS03b0alKcq5V/STUKAa3Plemsn5mrQUO7am6OErJ4rhGEGJbACclrtRA== dependencies: - "@sinonjs/commons" "^1.0.2" - array-from "^2.1.1" - lodash "^4.17.11" - -"@sinonjs/text-encoding@^0.7.1": - version "0.7.1" - resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5" - integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ== - -"@types/chai@*", "@types/chai@^4": - version "4.1.7" - resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.1.7.tgz#1b8e33b61a8c09cbe1f85133071baa0dbf9fa71a" - integrity sha512-2Y8uPt0/jwjhQ6EiluT0XCri1Dbplr0ZxfFXUz+ye13gaqE8u5gL5ppao1JrUYr9cIip5S6MvQzBS7Kke7U9VA== + "@types/minimatch" "*" + "@types/node" "*" "@types/jsforce@1.9.2": version "1.9.2" @@ -303,56 +333,96 @@ integrity sha512-ZRRPNf/e44QnFI8VEsPxzrM/+Y5vx/HGsMI8qE4JvBHDkSfoFWAdZ93uW6Oh3sHmcoShexcoTH9gufihTgYBLQ== "@types/lodash@*": - version "4.14.123" - resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.123.tgz#39be5d211478c8dd3bdae98ee75bb7efe4abfe4d" - integrity sha512-pQvPkc4Nltyx7G1Ww45OjVqUsJP4UsZm+GWJpigXgkikZqJgRm4c48g027o6tdgubWHwFRF15iFd+Y4Pmqv6+Q== + version "4.14.157" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.157.tgz#fdac1c52448861dfde1a2e1515dbc46e54926dc8" + integrity sha512-Ft5BNFmv2pHDgxV5JDsndOWTRJ+56zte0ZpYLowp03tW+K+t8u8YMOzAnpuqPgzX6WO1XpDIUm7u04M8vdDiVQ== + +"@types/minimatch@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" + integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== -"@types/mocha@*", "@types/mocha@^5": - version "5.2.6" - resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-5.2.6.tgz#b8622d50557dd155e9f2f634b7d68fd38de5e94b" - integrity sha512-1axi39YdtBI7z957vdqXI4Ac25e7YihYQtJa+Clnxg1zTJEaIRbndt71O3sP4GAMgiAm0pY26/b9BrY4MR/PMw== +"@types/mocha@*": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-7.0.2.tgz#b17f16cf933597e10d6d78eae3251e692ce8b0ce" + integrity sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w== -"@types/nock@*": - version "10.0.1" - resolved "https://registry.yarnpkg.com/@types/nock/-/nock-10.0.1.tgz#ca545bdd0c2559fe76e3cda1ba011a74fb940d45" - integrity sha512-3Dbkj/f0HxuvyYfInbQCHLASFyjnNUcidabwrbhJDMZOXXznNyQpzsBgZnY2K+c43OekqWvZ+tDjGsGTKm1d5g== - dependencies: - "@types/node" "*" +"@types/mocha@^5": + version "5.2.7" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-5.2.7.tgz#315d570ccb56c53452ff8638738df60726d5b6ea" + integrity sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ== "@types/node@*": - version "12.0.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-12.0.0.tgz#d11813b9c0ff8aaca29f04cbc12817f4c7d656e5" - integrity sha512-Jrb/x3HT4PTJp6a4avhmJCDEVrPdqLfl3e8GGMbpkGGdwAV5UGlIs4vVEfsHHfylZVOKZWpOqmqFH8CbfOZ6kg== + version "14.0.14" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.14.tgz#24a0b5959f16ac141aeb0c5b3cd7a15b7c64cbce" + integrity sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ== "@types/node@^10": - version "10.14.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.6.tgz#9cbfcb62c50947217f4d88d4d274cc40c22625a9" - integrity sha512-Fvm24+u85lGmV4hT5G++aht2C5I4Z4dYlWZIh62FAfFO/TfzXtPpoLI6I7AuBWkIFqZCnhFOoTT7RjjaIL5Fjg== + version "10.17.26" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.26.tgz#a8a119960bff16b823be4c617da028570779bcfd" + integrity sha512-myMwkO2Cr82kirHY8uknNRHEVtn0wV3DTQfkrjx17jmkstDRZ24gNUdl8AHXVyVclTYI/bNjgTPTAWvWLqXqkw== + +"@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/sinon@*": - version "7.0.11" - resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-7.0.11.tgz#6f28f005a36e779b7db0f1359b9fb9eef72aae88" - integrity sha512-6ee09Ugx6GyEr0opUIakmxIWFNmqYPjkqa3/BuxCBokA0klsOLPgMD5K4q40lH7/yZVuJVzOfQpd7pipwjngkQ== + version "9.0.4" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-9.0.4.tgz#e934f904606632287a6e7f7ab0ce3f08a0dad4b1" + integrity sha512-sJmb32asJZY6Z2u09bl0G2wglSxDlROlAejCjsnor+LzBMz17gu8IU7vKC/vWDnv9zEq2wqADHVXFjf4eE8Gdw== + dependencies: + "@types/sinonjs__fake-timers" "*" + +"@types/sinonjs__fake-timers@*": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.1.tgz#681df970358c82836b42f989188d133e218c458e" + integrity sha512-yYezQwGWty8ziyYLdZjwxyMb0CZR49h8JALHGrxjQHWlqGgc8kLdHEgWrgL0uZ29DMvEVBDnHU2Wg36zKSIUtA== + +acorn-jsx@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.2.0.tgz#4c66069173d6fdd68ed85239fc256226182b2ebe" + integrity sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ== + +acorn@^7.2.0: + version "7.3.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" + integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== + +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== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" -ajv@^6.5.5: - version "6.10.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1" - integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg== +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.5.5: + version "6.12.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.2.tgz#c629c5eced17baf314437918d2da88c99d5958cd" + integrity sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ== dependencies: - fast-deep-equal "^2.0.1" + fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ansi-colors@^3.2.1: + version "3.2.4" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" + integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== + ansi-escapes@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== -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-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@^3.0.0: version "3.0.0" @@ -364,6 +434,11 @@ ansi-regex@^4.1.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== +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-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -371,6 +446,14 @@ ansi-styles@^3.2.0, ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" +ansi-styles@^4.0.0, ansi-styles@^4.1.0, ansi-styles@^4.2.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== + dependencies: + "@types/color-name" "^1.1.1" + color-convert "^2.0.1" + ansicolors@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" @@ -389,9 +472,9 @@ archy@^1.0.0: integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= arg@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.0.tgz#583c518199419e0037abb74062c37f8519e575f0" - integrity sha512-ZWc51jO3qegGkVh8Hwpv636EkbesNV5ZNQPCtRa+0qytRYPEs9IYT9qITY9buezqUH5uqyzlWLcufrzU2rffdg== + 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" @@ -415,11 +498,6 @@ arr-union@^3.1.0: resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= -array-from@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/array-from/-/array-from-2.1.1.tgz#cfe9d8c26628b9dc5aecc62a9f5d8f1f352c1195" - integrity sha1-z+nYwmYoudxa7MYqn12PHzUsEZU= - array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" @@ -427,6 +505,11 @@ array-union@^1.0.1: dependencies: array-uniq "^1.0.1" +array-union@^2.1.0: + version "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-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" @@ -469,12 +552,27 @@ assign-symbols@^1.0.0: resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= -atob@^2.1.1: +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== + +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== @@ -485,15 +583,25 @@ aws-sign2@~0.7.0: integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= aws4@^1.8.0: - version "1.8.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f" - integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ== + version "1.10.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" + integrity sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA== 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= +base64-js@^1.0.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== + +base64-url@^2.2.0: + version "2.3.3" + resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-2.3.3.tgz#645b71455c75109511f27d98450327e455f488ec" + integrity sha512-dLMhIsK7OplcDauDH/tZLvK7JmUZK3A7KiQpjNzsBrM6Etw7hzNI1tLEywqJk9NnwkgWuFKSlx/IUO7vF6Mo8Q== + base@^0.11.1: version "0.11.2" resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" @@ -514,13 +622,14 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bl@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.2.tgz#a160911717103c07410cef63ef51b397c025af9c" - integrity sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA== +bl@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.2.tgz#52b71e9088515d0606d9dd9cc7aa48dc1f98e73a" + integrity sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ== dependencies: - readable-stream "^2.3.5" - safe-buffer "^5.1.1" + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" brace-expansion@^1.1.7: version "1.1.11" @@ -546,54 +655,41 @@ braces@^2.3.1: split-string "^3.0.2" to-regex "^3.0.1" +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + browser-stdout@1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.1.tgz#baa559ee14ced73452229bad7326467c61fabd60" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -buffer-alloc-unsafe@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" - integrity sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg== - -buffer-alloc@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/buffer-alloc/-/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec" - integrity sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow== - dependencies: - buffer-alloc-unsafe "^1.1.0" - buffer-fill "^1.0.0" - buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= -buffer-fill@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/buffer-fill/-/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c" - integrity sha1-+PeLdniYiO858gXNY39o5wISKyw= - 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@^5.5.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786" + integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + builtin-modules@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" integrity sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8= -bunyan-sfdx-no-dtrace@1.8.2: - version "1.8.2" - resolved "https://registry.yarnpkg.com/bunyan-sfdx-no-dtrace/-/bunyan-sfdx-no-dtrace-1.8.2.tgz#10682de07fec17ed14528b166995b1f18bbd4f9a" - integrity sha1-EGgt4H/sF+0UUosWaZWx8Yu9T5o= - optionalDependencies: - dtrace-provider "~0.6" - moment "^2.10.6" - mv "~2" - safe-json-stringify "~1" - cache-base@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" @@ -609,7 +705,7 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -caching-transform@^3.0.1: +caching-transform@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-3.0.2.tgz#601d46b91eca87687a281e71cef99791b0efca70" integrity sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w== @@ -624,6 +720,11 @@ call-me-maybe@^1.0.1: resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + camelcase@^5.0.0: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" @@ -654,7 +755,7 @@ chai@^4: pathval "^1.1.0" type-detect "^4.0.5" -chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -663,15 +764,28 @@ chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.0, chalk@^2.4.1, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" +chalk@^4.0.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" + check-error@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" integrity sha1-V00xLt2Iu13YkS6Sht1sCu1KrII= -chownr@^1.0.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.1.tgz#54726b8b8fff4df053c42187e801fb4412df1494" - integrity sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g== +chownr@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + +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== class-utils@^0.3.5: version "0.3.6" @@ -683,17 +797,42 @@ class-utils@^0.3.5: isobject "^3.0.0" static-extend "^0.1.1" -clean-stack@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-1.3.0.tgz#9e821501ae979986c46b1d66d2d432db2fd4ae31" - integrity sha1-noIVAa6XmYbEax1m0tQy2y/UrjE= - clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +clean-stack@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-3.0.0.tgz#a7c249369fcf0f33c7888c20ea3f3dc79620211f" + integrity sha512-RHxtgFvXsRQ+1AM7dlozLDY7ssmvUUh0XEnfnyhYgJTO6beNZHBogiaCwGM9Q3rFrUkYxOtsZRC0zAturg5bjg== + dependencies: + escape-string-regexp "4.0.0" + +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-progress@^3.4.0: + version "3.8.2" + resolved "https://registry.yarnpkg.com/cli-progress/-/cli-progress-3.8.2.tgz#abaf1fc6d6401351f16f068117a410554a0eb8c7" + integrity sha512-qRwBxLldMSfxB+YGFgNRaj5vyyHe1yMpVeDL79c+7puGujdKJHQHydgqXDcrkvQgJ5U/d3lpf6vffSoVVUftVQ== + dependencies: + colors "^1.1.2" + string-width "^4.2.0" + +cli-truncate@2.1.0, cli-truncate@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.1.0.tgz#9e7fec7f3f8340a2ab4f127c80273085e8fbbdd0" - integrity sha512-uQWrpRm+iZZUCAp7ZZJQbd4Za9I3AjR/3YTjmcnAtkauaIm/T5CT6U8zVI6e60T6OANqBFAzuR9/HB3NzuZCRA== + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" + integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== + dependencies: + slice-ansi "^3.0.0" + string-width "^4.2.0" -cli-ux@^4.8.0: +cli-ux@^4.9.3: version "4.9.3" resolved "https://registry.yarnpkg.com/cli-ux/-/cli-ux-4.9.3.tgz#4c3e070c1ea23eef010bbdb041192e0661be84ce" integrity sha512-/1owvF0SZ5Gn54cgrikJ0QskgTzeg30HGjkmjFoaHDJzAqFpuX1DBpFR8aLvsE1J5s9MgeYRENQK4BFwOag5VA== @@ -721,43 +860,45 @@ cli-ux@^4.8.0: tslib "^1.9.3" cli-ux@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/cli-ux/-/cli-ux-5.2.1.tgz#6e677c90d18ed3efd84745da46221c7d1b1fada5" - integrity sha512-zG1012o7U4ZsCuIST1t2yrHPADv16J81RAGYjY9X1yABEFK40oyjRchD5ffVZaG44BjizmLvu677zbVIypRuxw== + version "5.4.6" + resolved "https://registry.yarnpkg.com/cli-ux/-/cli-ux-5.4.6.tgz#26bbe7d1fb20402ce362240ea5dc434168ddbd46" + integrity sha512-EeiS2TzEndRVknCqE+8Ri8g0bsP617a1nq6n+3Trwft1JCDzyUNlX2J1fl7fwTgRPWtmBmiF6xIyueL5YGs65g== dependencies: - "@oclif/command" "^1.5.1" + "@oclif/command" "^1.6.0" "@oclif/errors" "^1.2.1" "@oclif/linewrap" "^1.0.0" "@oclif/screen" "^1.0.3" - ansi-escapes "^3.1.0" - ansi-styles "^3.2.1" + ansi-escapes "^4.3.0" + ansi-styles "^4.2.0" cardinal "^2.1.1" chalk "^2.4.1" clean-stack "^2.0.0" + cli-progress "^3.4.0" extract-stack "^1.0.0" fs-extra "^7.0.1" hyperlinker "^1.0.0" - indent-string "^3.2.0" + indent-string "^4.0.0" is-wsl "^1.1.0" + js-yaml "^3.13.1" lodash "^4.17.11" natural-orderby "^2.0.1" + object-treeify "^1.1.4" password-prompt "^1.1.2" semver "^5.6.0" string-width "^3.1.0" strip-ansi "^5.1.0" supports-color "^5.5.0" supports-hyperlinks "^1.0.1" - treeify "^1.1.0" tslib "^1.9.3" -cliui@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" - integrity sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ== +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== dependencies: - string-width "^2.1.1" - strip-ansi "^4.0.0" - wrap-ansi "^2.0.0" + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" co-prompt@^1.0.0: version "1.0.0" @@ -766,11 +907,6 @@ co-prompt@^1.0.0: dependencies: keypress "~0.2.1" -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - coffeescript@^1.10.0: version "1.12.7" resolved "https://registry.yarnpkg.com/coffeescript/-/coffeescript-1.12.7.tgz#e57ee4c4867cf7f606bfc4a0f2d550c0981ddd27" @@ -791,15 +927,32 @@ color-convert@^1.9.0: dependencies: color-name "1.1.3" +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colors@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + combined-stream@^1.0.6, combined-stream@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828" - integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w== + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" @@ -808,16 +961,26 @@ commander@2.15.1: resolved "https://registry.yarnpkg.com/commander/-/commander-2.15.1.tgz#df46e867d0fc2aec66a34662b406a9ccafff5b0f" integrity sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag== -commander@^2.12.1, commander@^2.9.0, commander@~2.20.0: - version "2.20.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz#d58bb2b5c1ee8f87b0d340027e9e94e222c5a422" - integrity sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ== +commander@^2.12.1, commander@^2.9.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" + integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= +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-emitter@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" @@ -834,9 +997,9 @@ content-type@^1.0.4: integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== convert-source-map@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz#51b537a8c43e0f04dec1993bffcdd504e758ac20" - integrity sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A== + version "1.7.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== dependencies: safe-buffer "~5.1.1" @@ -850,6 +1013,28 @@ core-util-is@1.0.2, core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +cosmiconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" + integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.1.0" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.7.2" + +cp-file@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-6.2.0.tgz#40d5ea4a1def2a9acdd07ba5c0b0246ef73dc10d" + integrity sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA== + dependencies: + graceful-fs "^4.1.2" + make-dir "^2.0.0" + nested-error-stacks "^2.0.0" + pify "^4.0.1" + safe-buffer "^5.0.1" + cross-spawn@^4: version "4.0.2" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" @@ -869,6 +1054,15 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" +cross-spawn@^7.0.0, cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + csprng@*, csprng@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/csprng/-/csprng-0.1.2.tgz#4bc68f12fa368d252a59841cbaca974b18ab45e2" @@ -876,10 +1070,10 @@ csprng@*, csprng@~0.1.2: dependencies: sequin "*" -csv-parse@^1.1.1: - version "1.3.3" - resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490" - integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA= +csv-parse@^4.6.3: + version "4.10.1" + resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.10.1.tgz#1e26ba63d29c75e94d0eba6e9de9a8aaf89d72a6" + integrity sha512-gdDJVchi0oSLIcYXz1H/VSgLE6htHDqJyFsRU/vTkQgmVOZ3S0IR2LXnNbWUYG7VD76dYVwdfBLyx8AX9+An8A== csv-stringify@^1.0.4: version "1.1.2" @@ -895,6 +1089,16 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" +dayjs-plugin-utc@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/dayjs-plugin-utc/-/dayjs-plugin-utc-0.1.2.tgz#48e552407024143922d6499a40f6c765f8c93d03" + integrity sha512-ExERH5o3oo6jFOdkvMP3gytTCQ9Ksi5PtylclJWghr7k7m3o2U5QrwtdiJkOxLOH4ghr0EKhpqGefzGz1VvVJg== + +dayjs@^1.8.16: + version "1.8.28" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.8.28.tgz#37aa6201df483d089645cb6c8f6cef6f0c4dbc07" + integrity sha512-ccnYgKC0/hPSGXxj7Ju6AV/BP4HUkXC2u15mikXT5mX9YorEaoi1bEKOmAqdkJHN4EEkmAf97SpH66Try5Mbeg== + debug@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" @@ -916,7 +1120,7 @@ debug@^3.1.0: dependencies: ms "^2.1.1" -debug@^4.1.0, debug@^4.1.1: +debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== @@ -933,6 +1137,11 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + deep-eql@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df" @@ -940,6 +1149,11 @@ deep-eql@^3.0.1: dependencies: type-detect "^4.0.0" +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= + default-require-extensions@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-2.0.0.tgz#f5f8fbb18a7d6d50b21f641f649ebb522cfe24f7" @@ -974,16 +1188,21 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= -detect-indent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= +detect-indent@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.0.0.tgz#0abd0f549f69fc6659a254fe96786186b6f528fd" + integrity sha512-oSyFlqaTHCItVRGK5RmrmjB+CmaMOW7IaNA/kdxqhoa6d17j/5ce9O9eWXmV/KEdRwqpQA+Vqe8a8Bsybu4YnA== -diff@3.5.0, diff@^3.1.0, diff@^3.2.0: +diff@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== +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@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" @@ -992,6 +1211,20 @@ dir-glob@2.0.0: arrify "^1.0.1" path-type "^3.0.0" +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + dtrace-provider@~0.6: version "0.6.0" resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.6.0.tgz#0b078d5517937d873101452d9146737557b75e51" @@ -1024,13 +1257,25 @@ emoji-regex@^7.0.1: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== -end-of-stream@^1.0.0, end-of-stream@^1.1.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" - integrity sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q== +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +end-of-stream@^1.1.0, end-of-stream@^1.4.1: + 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== dependencies: once "^1.4.0" +enquirer@^2.3.5: + version "2.3.5" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.5.tgz#3ab2b838df0a9d8ab9e7dff235b0e8712ef92381" + integrity sha512-BNT1C08P9XD0vNg3J475yIUG+mVdp9T6towYFHUv897X0KoHBjB1shyrNmhmtHWKP17iSWgo7Gqh7BBuzLZMSA== + dependencies: + ansi-colors "^3.2.1" + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -1048,15 +1293,115 @@ escape-string-regexp@1.0.5, escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +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== + +eslint-scope@^5.1.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-utils@^2.0.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-visitor-keys@^1.1.0, eslint-visitor-keys@^1.2.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@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.3.1.tgz#76392bd7e44468d046149ba128d1566c59acbe19" + integrity sha512-cQC/xj9bhWUcyi/RuMbRtC3I0eW8MH0jhRELSvpKYkWep3C6YZ2OkvcvJVUeO6gcunABmzptbXBuDoXsjHmfTA== + dependencies: + "@babel/code-frame" "^7.0.0" + 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" + eslint-scope "^5.1.0" + eslint-utils "^2.0.0" + eslint-visitor-keys "^1.2.0" + espree "^7.1.0" + esquery "^1.2.0" + esutils "^2.0.2" + file-entry-cache "^5.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash "^4.17.14" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.1.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.1.0.tgz#a9c7f18a752056735bf1ba14cb1b70adc3a5ce1c" + integrity sha512-dcorZSyfmm4WTuTnE5Y7MEN1DyoPYy1ZR783QW1FJoenn7RailyWFsq/UL6ZAAA7uXurN9FIpYyUs3OfiIW+Qw== + dependencies: + acorn "^7.2.0" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.2.0" + esprima@^4.0.0, esprima@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== +esquery@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" + integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== + 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" + +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== + +estraverse@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.1.0.tgz#374309d39fd935ae500e7b92e8a6b4c720e59642" + integrity sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw== + esutils@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" - integrity sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs= + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== execa@^0.10.0: version "0.10.0" @@ -1071,18 +1416,20 @@ execa@^0.10.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -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== +execa@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.0.2.tgz#ad87fb7b2d9d564f70d2b62d511bee41d5cbb240" + integrity sha512-QI2zLa6CjGWdiQsmSkZoGtDx2N+cQIGb3yNolGTdjSQzydzLgYYf8LRuagp7S7fPimjcrzUDSUFd/MgzELMi4Q== 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" + 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" expand-brackets@^2.1.4: version "2.1.4" @@ -1147,29 +1494,28 @@ extsprintf@^1.2.0: integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= fancy-test@^1.4.3: - version "1.4.3" - resolved "https://registry.yarnpkg.com/fancy-test/-/fancy-test-1.4.3.tgz#c08123504cc48a6dce15ac08a916d6f3e91209af" - integrity sha512-Lt3mcQ0jn9Kg9JDmobVb4ZANiyT4e2VC5qbQvuzJVNYXyKjSgFWKn7bZN4BKei33v5jYWx28KlbDgsxuqnBRvg== + version "1.4.8" + resolved "https://registry.yarnpkg.com/fancy-test/-/fancy-test-1.4.8.tgz#995c3d684f045149b399ee16784a80fbb50298db" + integrity sha512-/uCv78YSAz4UOQ3ZptnxOq6qYhJDMtwFHQnsghzGl2g6uO2VNfJDKlyczqFpG+KueXe7phoeIS6hMU1x/qhizQ== dependencies: "@types/chai" "*" "@types/lodash" "*" "@types/mocha" "*" - "@types/nock" "*" "@types/node" "*" "@types/sinon" "*" - lodash "^4.17.11" + lodash "^4.17.13" mock-stdin "^0.3.1" stdout-stderr "^0.1.9" -fast-deep-equal@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49" - integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk= +fast-deep-equal@^3.1.1: + 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-glob@^2.0.2: - version "2.2.6" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.6.tgz#a5d5b697ec8deda468d85a74035290a025a95295" - integrity sha512-0BvMaZc1k9F+MeWWMe8pL6YltFzZYcJsYU7D4JyDA6PAczaXvxqQQ/z+mDF7/4Mw01DeUc+i3CTKajnkANkV4w== + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== dependencies: "@mrmlnc/readdir-enhanced" "^2.2.1" "@nodelib/fs.stat" "^1.1.2" @@ -1178,15 +1524,39 @@ fast-glob@^2.0.2: merge2 "^1.2.3" micromatch "^3.1.10" +fast-glob@^3.0.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3" + integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + fast-json-stable-stringify@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" - integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I= + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fastq@^1.6.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" + integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== + dependencies: + reusify "^1.0.4" faye-websocket@>=0.9.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" - integrity sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg= + version "0.11.3" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.3.tgz#5c0e9a8968e8912c286639fde977a8b209f2508e" + integrity sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA== dependencies: websocket-driver ">=0.5.1" @@ -1198,16 +1568,31 @@ faye-websocket@~0.9.1: websocket-driver ">=0.5.1" faye@^1.2.0: - version "1.2.4" - resolved "https://registry.yarnpkg.com/faye/-/faye-1.2.4.tgz#978ed8a58f1d481e5c1f98bacb8959de5ec5c643" - integrity sha1-l47YpY8dSB5cH5i6y4lZ3l7FxkM= + version "1.3.0" + resolved "https://registry.yarnpkg.com/faye/-/faye-1.3.0.tgz#a8139ad9c45eef4d5faaa52a23d2b92c38d7254b" + integrity sha512-l+IzAmEsT2OCVeGbLfZBpm8HeHQYVelkqKWNE0LA/k68jhVIT/qzHTXLygURrLpKweqiaTBCtzxxO5JTQ+dnFQ== dependencies: asap "*" csprng "*" faye-websocket ">=0.9.1" + safe-buffer "*" tough-cookie "*" tunnel-agent "*" +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@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" + integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== + dependencies: + flat-cache "^2.0.1" + fill-range@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" @@ -1218,7 +1603,14 @@ fill-range@^4.0.0: repeat-string "^1.6.1" to-regex-range "^2.1.0" -find-cache-dir@^2.0.0: +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +find-cache-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== @@ -1227,13 +1619,6 @@ find-cache-dir@^2.0.0: make-dir "^2.0.0" pkg-dir "^3.0.0" -find-up@^2.1.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@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" @@ -1241,6 +1626,35 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" +find-up@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.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@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" + integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== + dependencies: + flatted "^2.0.0" + rimraf "2.6.3" + write "1.0.3" + +flatted@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== + for-in@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" @@ -1298,30 +1712,50 @@ fs-extra@^7.0.0, fs-extra@^7.0.1: jsonfile "^4.0.0" universalify "^0.1.0" +fs-extra@^9.0.1: + 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== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= -get-caller-file@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" - integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +get-caller-file@^2.0.1: + version "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-func-name@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" integrity sha1-6td0q+5y4gQJQzoGY2YCPdaIekE= +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-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= -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== +get-stream@^5.0.0, get-stream@^5.1.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" @@ -1338,9 +1772,9 @@ getpass@^0.1.1: assert-plus "^1.0.0" github-slugger@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.2.1.tgz#47e904e70bf2dccd0014748142d31126cfd49508" - integrity sha512-SsZUjg/P03KPzQBt7OxJPasGw6NRO5uOgiZ5RGXVud5iSIZ0eNZeNp5rTwCxtavrRUa/A77j8mePVc5lEvk0KQ== + version "1.3.0" + resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.3.0.tgz#9bd0a95c5efdfc46005e82a906ef8e2a059124c9" + integrity sha512-gwJScWVNhFYSRDvURk/8yhcFBee6aFjye2a7Lhb2bUyRulpIoek9p0I9Kt7PT67d/nUlZbFu8L9RLiA0woQN8Q== dependencies: emoji-regex ">=6.0.0 <=6.1.1" @@ -1352,6 +1786,13 @@ glob-parent@^3.1.0: is-glob "^3.1.0" path-dirname "^1.0.0" +glob-parent@^5.0.0, glob-parent@^5.1.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-to-regexp@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" @@ -1381,9 +1822,9 @@ glob@^6.0.1: path-is-absolute "^1.0.0" glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: - version "7.1.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" - integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ== + 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" @@ -1397,7 +1838,28 @@ globals@^11.1.0: resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== -globby@^8, globby@^8.0.1: +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" + +globby@^10.0.1: + version "10.0.2" + resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.2.tgz#277593e745acaa4646c3ab411289ec47a0392543" + integrity sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg== + dependencies: + "@types/glob" "^7.1.1" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.0.3" + glob "^7.1.3" + ignore "^5.1.1" + merge2 "^1.2.3" + slash "^3.0.0" + +globby@^8: version "8.0.2" resolved "https://registry.yarnpkg.com/globby/-/globby-8.0.2.tgz#5697619ccd95c5275dbb2d6faa42087c1a941d8d" integrity sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w== @@ -1410,33 +1872,22 @@ globby@^8, globby@^8.0.1: pify "^3.0.0" slash "^1.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6: - version "4.1.15" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.4" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" + integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== growl@1.10.5: version "1.10.5" resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== -handlebars@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67" - integrity sha512-nvfrjqvt9xQ8Z/w0ijewdD/vvWDTOweBUm96NTr66Wfvo1mJenBLwcYmPs3TIBP5ruzYGD7Hx/DaM9RmhroGPw== - dependencies: - neo-async "^2.6.0" - optimist "^0.6.1" - source-map "^0.6.1" - optionalDependencies: - uglify-js "^3.1.4" - 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.0: +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== @@ -1454,6 +1905,11 @@ has-flag@^3.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= +has-flag@^4.0.0: + version "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" @@ -1498,14 +1954,19 @@ he@1.1.1: integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0= hosted-git-info@^2.1.4: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + version "2.8.8" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488" + integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== http-call@^5.1.2: - version "5.2.4" - resolved "https://registry.yarnpkg.com/http-call/-/http-call-5.2.4.tgz#42303c02db40cba29f94304be97102067ea34d06" - integrity sha512-VqnjJPcscbnPzuE9qpFj6a6KibDRQHfz4daszFH5s0FBg6+xncSiTNzvIAgz7mc2rzKC4Ncz4iQ4T4brWoccEw== + version "5.3.0" + resolved "https://registry.yarnpkg.com/http-call/-/http-call-5.3.0.tgz#4ded815b13f423de176eb0942d69c43b25b148db" + integrity sha512-ahwimsC23ICE4kPl9xTBjKB4inbRaeLyZeRunC/1Jy/Z6X8tv22MEAjK+KBOMSVLaqXPTTmd8638waVIKLGx2w== dependencies: content-type "^1.0.4" debug "^4.1.1" @@ -1514,10 +1975,10 @@ http-call@^5.1.2: parse-json "^4.0.0" tunnel-agent "^0.6.0" -http-parser-js@>=0.4.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.0.tgz#d65edbede84349d0dc30320815a15d39cc3cbbd8" - integrity sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w== +http-parser-js@>=0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.2.tgz#da2e31d237b393aae72ace43882dd7e270a8ff77" + integrity sha512-opCO9ASqg5Wy2FNo7A0sxy71yGbbkJJXLdgMK04Tcypw9jr2MgWbyubb0+WdmDmGnFflO7fRbqbaihh/ENDlRQ== http-signature@~1.2.0: version "1.2.0" @@ -1528,16 +1989,60 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.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== + +husky@^4.2.5: + version "4.2.5" + resolved "https://registry.yarnpkg.com/husky/-/husky-4.2.5.tgz#2b4f7622673a71579f901d9885ed448394b5fa36" + integrity sha512-SYZ95AjKcX7goYVZtVZF2i6XiZcHknw50iXvY7b0MiGoj5RwdgRQNEHdb+gPDPCXKlzwrybjFjkL6FOj8uRhZQ== + dependencies: + chalk "^4.0.0" + ci-info "^2.0.0" + compare-versions "^3.6.0" + cosmiconfig "^6.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" + hyperlinker@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/hyperlinker/-/hyperlinker-1.0.0.tgz#23dc9e38a206b208ee49bc2d6c8ef47027df0c0e" integrity sha512-Ty8UblRWFEcfSuIaajM34LdPXIhbs1ajEX/BBPv24J+enSVaEVY63xQ6lTO9VRYS5LAoghIG0IDJ+p+IPzKUQQ== +ieee754@^1.1.4: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + ignore@^3.3.5: version "3.3.10" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.10.tgz#0a97fb876986e8081c631160f8f9f389157f0043" integrity sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug== +ignore@^4.0.6: + version "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.1: + version "5.1.8" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +import-fresh@^3.0.0, import-fresh@^3.1.0: + 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== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -1548,6 +2053,11 @@ indent-string@^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" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -1556,20 +2066,10 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.1, inherits@~2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -invert-kv@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" - integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== - -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= +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, 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== is-accessor-descriptor@^0.1.6: version "0.1.6" @@ -1644,18 +2144,16 @@ is-extglob@^2.1.0, is-extglob@^2.1.1: resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= -is-fullwidth-code-point@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" - integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= - dependencies: - number-is-nan "^1.0.0" - is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= +is-fullwidth-code-point@^3.0.0: + version "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-glob@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" @@ -1663,7 +2161,7 @@ is-glob@^3.1.0: dependencies: is-extglob "^2.1.0" -is-glob@^4.0.0: +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== @@ -1677,22 +2175,37 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= +is-number@^7.0.0: + version "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-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +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-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-retry-allowed@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34" - integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ= + version "1.2.0" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" + integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== is-stream@^1.0.1, is-stream@^1.1.0: version "1.1.0" @@ -1704,7 +2217,7 @@ is-stream@^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== -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= @@ -1719,11 +2232,6 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= -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@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -1751,19 +2259,19 @@ isstream@~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@^2.0.3, istanbul-lib-coverage@^2.0.5: +istanbul-lib-coverage@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#675f0ab69503fad4b1d849f736baaca803344f49" integrity sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA== -istanbul-lib-hook@^2.0.3: +istanbul-lib-hook@^2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz#c95695f383d4f8f60df1f04252a9550e15b5b133" integrity sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA== dependencies: append-transform "^1.0.0" -istanbul-lib-instrument@^3.1.0: +istanbul-lib-instrument@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz#a5f63d91f0bbc0c3e479ef4c5de027335ec6d630" integrity sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA== @@ -1776,7 +2284,7 @@ istanbul-lib-instrument@^3.1.0: istanbul-lib-coverage "^2.0.5" semver "^6.0.0" -istanbul-lib-report@^2.0.4: +istanbul-lib-report@^2.0.8: version "2.0.8" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz#5a8113cd746d43c4889eba36ab10e7d50c9b4f33" integrity sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ== @@ -1785,7 +2293,7 @@ istanbul-lib-report@^2.0.4: make-dir "^2.1.0" supports-color "^6.1.0" -istanbul-lib-source-maps@^3.0.2: +istanbul-lib-source-maps@^3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz#284997c48211752ec486253da97e3879defba8c8" integrity sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw== @@ -1796,22 +2304,22 @@ istanbul-lib-source-maps@^3.0.2: rimraf "^2.6.3" source-map "^0.6.1" -istanbul-reports@^2.1.1: - version "2.2.4" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.4.tgz#4e0d0ddf0f0ad5b49a314069d31b4f06afe49ad3" - integrity sha512-QCHGyZEK0bfi9GR215QSm+NJwFKEShbtc7tfbUdLAEzn3kKhLDDZqvljn8rPZM9v8CEOhzL1nlYoO4r1ryl67w== +istanbul-reports@^2.2.4: + version "2.2.7" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz#5d939f6237d7b48393cc0959eab40cd4fd056931" + integrity sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg== dependencies: - handlebars "^4.1.2" + html-escaper "^2.0.0" js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.13.0: - version "3.13.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847" - integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw== +js-yaml@^3.13.1: + version "3.14.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" + integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== dependencies: argparse "^1.0.7" esprima "^4.0.0" @@ -1831,19 +2339,20 @@ jsesc@^2.5.1: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== -jsforce@1.8.5: - version "1.8.5" - resolved "https://registry.yarnpkg.com/jsforce/-/jsforce-1.8.5.tgz#9d5b876e82147c5803ddada2186f0c0a49937e79" - integrity sha1-nVuHboIUfFgD3a2iGG8MCkmTfnk= +jsforce@1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/jsforce/-/jsforce-1.9.3.tgz#caea681c0fd8dcea79459b81c2019f4425eacd12" + integrity sha512-NJiBoTfsSElVZnh1MO7zv8anDPdy6vBVG19SEJ5pQtE+QJKFksjy4tpXbyzVyBft5Lo6Npr1HIPUP+RkVd9weQ== dependencies: + base64-url "^2.2.0" co-prompt "^1.0.0" coffeescript "^1.10.0" commander "^2.9.0" - csv-parse "^1.1.1" + csv-parse "^4.6.3" csv-stringify "^1.0.4" faye "^1.2.0" inherits "^2.0.1" - lodash "^4.11.1" + lodash "^4.17.14" multistream "^2.0.5" opn "^5.3.0" promise "^7.1.1" @@ -1866,6 +2375,11 @@ json-schema@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" @@ -1878,10 +2392,19 @@ jsonfile@^4.0.0: 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" + integrity sha512-jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg== + dependencies: + universalify "^1.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + jsonschema@^1.2.4: - version "1.2.4" - resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.2.4.tgz#a46bac5d3506a254465bc548876e267c6d0d6464" - integrity sha512-lz1nOH69GbsVHeVgEdvyavc/33oymY1AZwtePMiMj4HZPMbP5OIKK3zT9INMWjwua/V4Z4yq7wSlBbSG+g4AEw== + version "1.2.6" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.2.6.tgz#52b0a8e9dc06bbae7295249d03e4b9faee8a0c0b" + integrity sha512-SqhURKZG07JyKKeo/ir24QnS4/BV7a6gQy93bUSe4lUdNp0QNpIz2c9elWJQ9dpc5cQYY6cvCzgRwy0MQCLyqA== jsonwebtoken@8.5.0: version "8.5.0" @@ -1909,11 +2432,6 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" -just-extend@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.0.2.tgz#f3f47f7dfca0f989c55410a7ebc8854b07108afc" - integrity sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw== - jwa@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" @@ -1956,16 +2474,57 @@ kind-of@^5.0.0: integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== kind-of@^6.0.0, kind-of@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" - integrity sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA== + 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== -lcid@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf" - integrity sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA== +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== dependencies: - invert-kv "^2.0.0" + prelude-ls "^1.2.1" + type-check "~0.4.0" + +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= + +lint-staged@^10.2.11: + version "10.2.11" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.2.11.tgz#713c80877f2dc8b609b05bc59020234e766c9720" + integrity sha512-LRRrSogzbixYaZItE2APaS4l2eJMjjf5MbclRZpLJtcQJShcvUzKXsNeZgsLIZ0H0+fg2tL4B59fU9wHIHtFIA== + dependencies: + chalk "^4.0.0" + cli-truncate "2.1.0" + commander "^5.1.0" + cosmiconfig "^6.0.0" + debug "^4.1.1" + dedent "^0.7.0" + enquirer "^2.3.5" + execa "^4.0.1" + listr2 "^2.1.0" + log-symbols "^4.0.0" + micromatch "^4.0.2" + normalize-path "^3.0.0" + please-upgrade-node "^3.2.0" + string-argv "0.3.1" + stringify-object "^3.3.0" + +listr2@^2.1.0: + version "2.1.8" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-2.1.8.tgz#8af7ebc70cdbe866ddbb6c80909142bd45758f1f" + integrity sha512-Op+hheiChfAphkJ5qUxZtHgyjlX9iNnAeFS/S134xw7mVSg0YVrQo1IY4/K+ElY6XgOPg2Ij4z07urUXR+YEew== + dependencies: + chalk "^4.0.0" + 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.5.5" + through "^2.3.8" load-json-file@^4.0.0: version "4.0.0" @@ -1977,24 +2536,15 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -load-json-file@^5.0.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" - integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== +load-json-file@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== dependencies: graceful-fs "^4.1.15" - parse-json "^4.0.0" - pify "^4.0.1" - strip-bom "^3.0.0" - type-fest "^0.3.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" + parse-json "^5.0.0" + strip-bom "^4.0.0" + type-fest "^0.6.0" locate-path@^3.0.0: version "3.0.0" @@ -2004,7 +2554,14 @@ locate-path@^3.0.0: p-locate "^3.0.0" path-exists "^3.0.0" -lodash._reinterpolate@~3.0.0: +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.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= @@ -2014,7 +2571,7 @@ lodash.flattendeep@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= -lodash.get@^4.4.2, lodash.get@~4.4.2: +lodash.get@~4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= @@ -2055,29 +2612,41 @@ lodash.once@^4.0.0: integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= lodash.template@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.4.0.tgz#e73a0385c8355591746e020b99679c690e68fba0" - integrity sha1-5zoDhcg1VZF0bgILmWecaQ5o+6A= + 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._reinterpolate "^3.0.0" lodash.templatesettings "^4.0.0" lodash.templatesettings@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.1.0.tgz#2b4d4e95ba440d915ff08bc899e4553666713316" - integrity sha1-K01OlbpEDZFf8IvImeRVNmZxMxY= + 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._reinterpolate "^3.0.0" -lodash@^4.11.1, lodash@^4.17.11: - version "4.17.11" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== +lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -lolex@^2.2.0, lolex@^2.3.2: - version "2.7.5" - resolved "https://registry.yarnpkg.com/lolex/-/lolex-2.7.5.tgz#113001d56bfc7e02d56e36291cc5c413d1aa0733" - integrity sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q== +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== + dependencies: + chalk "^4.0.0" + +log-update@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" + integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== + dependencies: + ansi-escapes "^4.3.0" + cli-cursor "^3.1.0" + slice-ansi "^4.0.0" + wrap-ansi "^6.2.0" lru-cache@^4.0.1: version "4.1.5" @@ -2087,13 +2656,6 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" -make-dir@^1.0.0, make-dir@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -2102,17 +2664,17 @@ make-dir@^2.0.0, make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-error@^1.1.1: - version "1.3.5" - resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.5.tgz#efe4e81f6db28cadd605c70f29c831b58ef776c8" - integrity sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g== - -map-age-cleaner@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== +make-dir@^3.0.0: + 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: - p-defer "^1.0.0" + semver "^6.0.0" + +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== map-cache@^0.2.2: version "0.2.2" @@ -2126,15 +2688,6 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -mem@^4.0.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/mem/-/mem-4.3.0.tgz#461af497bc4ae09608cdb2e60eefb69bff744178" - integrity sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w== - dependencies: - map-age-cleaner "^0.1.1" - mimic-fn "^2.0.0" - p-is-promise "^2.0.0" - merge-source-map@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" @@ -2142,10 +2695,15 @@ merge-source-map@^1.1.0: dependencies: source-map "^0.6.1" -merge2@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.2.3.tgz#7ee99dbd69bb6481689253f018488a1b902b0ed5" - integrity sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA== +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.2.3, merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^3.1.10: version "3.1.10" @@ -2166,19 +2724,27 @@ micromatch@^3.1.10: snapdragon "^0.8.1" to-regex "^3.0.2" -mime-db@1.40.0: - version "1.40.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32" - integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA== +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" + +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-types@^2.1.12, mime-types@~2.1.19: - version "2.1.24" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81" - integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ== + 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.40.0" + mime-db "1.44.0" -mimic-fn@^2.0.0: +mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== @@ -2195,26 +2761,43 @@ minimist@0.0.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0= -minimist@~0.0.1: - version "0.0.10" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" - integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8= +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== mixin-deep@^1.2.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" - integrity sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ== + 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@0.5.1, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: +mkdirp-classic@^0.5.2: + version "0.5.3" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" + integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== + +mkdirp@0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM= dependencies: minimist "0.0.8" +mkdirp@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + mocha@^5: version "5.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.2.0.tgz#6d8ae508f59167f940f2b5b3c4a612ae50c90ae6" @@ -2237,20 +2820,15 @@ mock-stdin@^0.3.1: resolved "https://registry.yarnpkg.com/mock-stdin/-/mock-stdin-0.3.1.tgz#c657d9642d90786435c64ca5e99bbd4d09bd7dd3" integrity sha1-xlfZZC2QeGQ1xkyl6Zu9TQm9fdM= -moment@^2.10.6: - version "2.24.0" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b" - integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg== - ms@2.0.0: version "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== + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== multistream@^2.0.5: version "2.1.1" @@ -2270,9 +2848,9 @@ mv@~2: rimraf "~2.4.0" nan@^2.0.8: - version "2.13.2" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.13.2.tgz#f51dc7ae66ba7d5d55e1e6d4d8092e802c9aefe7" - integrity sha512-TghvYc72wlMGMVMluVo9WRJc0mB8KxxF/gZ4YYFy7V2ZQX9l7rgbPg7vjS9mt6U5HXODVFVI2bOduCzwOMv/lw== + version "2.14.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" + integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== nanomatch@^1.2.9: version "1.2.13" @@ -2291,6 +2869,11 @@ nanomatch@^1.2.9: snapdragon "^0.8.1" to-regex "^3.0.1" +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + natural-orderby@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/natural-orderby/-/natural-orderby-2.0.3.tgz#8623bc518ba162f8ff1cdb8941d74deb0fdcc016" @@ -2301,27 +2884,16 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -neo-async@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.0.tgz#b9d15e4d71c6762908654b5183ed38b753340835" - integrity sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA== +nested-error-stacks@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz#0fbdcf3e13fe4994781280524f8b96b0cdff9c61" + integrity sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug== 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== -nise@^1.2.0: - version "1.4.10" - resolved "https://registry.yarnpkg.com/nise/-/nise-1.4.10.tgz#ae46a09a26436fae91a38a60919356ae6db143b6" - integrity sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA== - dependencies: - "@sinonjs/formatio" "^3.1.0" - "@sinonjs/text-encoding" "^0.7.1" - just-extend "^4.0.2" - lolex "^2.3.2" - path-to-regexp "^1.7.0" - normalize-package-data@^2.3.2, 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" @@ -2332,6 +2904,11 @@ normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + 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" @@ -2339,40 +2916,43 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.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= +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" -nyc@^13: - version "13.3.0" - resolved "https://registry.yarnpkg.com/nyc/-/nyc-13.3.0.tgz#da4dbe91a9c8b9ead3f4f3344c76f353e3c78c75" - integrity sha512-P+FwIuro2aFG6B0Esd9ZDWUd51uZrAEoGutqZxzrVmYl3qSfkLgcQpBPBjtDFsUQLFY1dvTQJPOyeqr8S9GF8w== +nyc@^14: + version "14.1.1" + resolved "https://registry.yarnpkg.com/nyc/-/nyc-14.1.1.tgz#151d64a6a9f9f5908a1b73233931e4a0a3075eeb" + integrity sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw== dependencies: archy "^1.0.0" - arrify "^1.0.1" - caching-transform "^3.0.1" + caching-transform "^3.0.2" convert-source-map "^1.6.0" - find-cache-dir "^2.0.0" + cp-file "^6.2.0" + find-cache-dir "^2.1.0" find-up "^3.0.0" foreground-child "^1.5.6" glob "^7.1.3" - istanbul-lib-coverage "^2.0.3" - istanbul-lib-hook "^2.0.3" - istanbul-lib-instrument "^3.1.0" - istanbul-lib-report "^2.0.4" - istanbul-lib-source-maps "^3.0.2" - istanbul-reports "^2.1.1" - make-dir "^1.3.0" + istanbul-lib-coverage "^2.0.5" + istanbul-lib-hook "^2.0.7" + istanbul-lib-instrument "^3.3.0" + istanbul-lib-report "^2.0.8" + istanbul-lib-source-maps "^3.0.6" + istanbul-reports "^2.2.4" + js-yaml "^3.13.1" + make-dir "^2.1.0" merge-source-map "^1.1.0" resolve-from "^4.0.0" rimraf "^2.6.3" signal-exit "^3.0.2" spawn-wrap "^1.4.2" - test-exclude "^5.1.0" + test-exclude "^5.2.3" uuid "^3.3.2" - yargs "^12.0.5" - yargs-parser "^11.1.1" + yargs "^13.2.2" + yargs-parser "^13.0.0" oauth-sign@~0.9.0: version "0.9.0" @@ -2388,6 +2968,11 @@ object-copy@^0.1.0: define-property "^0.2.5" kind-of "^3.0.3" +object-treeify@^1.1.4: + version "1.1.25" + resolved "https://registry.yarnpkg.com/object-treeify/-/object-treeify-1.1.25.tgz#eb634c397bfc6512a28f569809079c93f41fe6d0" + integrity sha512-6Abx0xlXDnYd50JkQefvoIly3jWOu8/PqH4lh8p2/aMFEx5TjsUGHt0H9NHfzt+pCwOhpPgNYofD8e2YywIXig== + object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" @@ -2409,6 +2994,18 @@ once@^1.3.0, once@^1.3.1, 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" + +opencollective-postinstall@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" + integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== + opn@^5.3.0: version "5.5.0" resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" @@ -2416,69 +3013,35 @@ opn@^5.3.0: dependencies: is-wsl "^1.1.0" -optimist@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" - integrity sha1-2j6nRob6IaGaERwybpDrFaAZZoY= +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== dependencies: - minimist "~0.0.1" - wordwrap "~0.0.2" + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= -os-locale@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-3.1.0.tgz#a802a6ee17f24c10483ab9935719cef4ed16bf1a" - integrity sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q== - dependencies: - execa "^1.0.0" - lcid "^2.0.0" - mem "^4.0.0" - -os-tmpdir@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= - 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-is-promise@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" - integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== - -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.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.0.tgz#417c9941e6027a9abcba5092dd2904e255b5fbc2" - integrity sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ== +p-limit@^2.0.0, p-limit@^2.2.0: + 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" -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= - dependencies: - p-limit "^1.1.0" - p-locate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" @@ -2486,10 +3049,19 @@ p-locate@^3.0.0: dependencies: p-limit "^2.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-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" p-try@^2.0.0: version "2.2.0" @@ -2506,6 +3078,13 @@ package-hash@^3.0.0: lodash.flattendeep "^4.4.0" release-zalgo "^1.0.0" +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + 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" @@ -2514,6 +3093,16 @@ parse-json@^4.0.0: 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" + integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + lines-and-columns "^1.1.6" + pascalcase@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" @@ -2537,6 +3126,11 @@ path-exists@^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" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" @@ -2547,18 +3141,16 @@ path-key@^2.0.0, path-key@^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" + 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== -path-to-regexp@^1.7.0: - version "1.7.0" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d" - integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30= - dependencies: - isarray "0.0.1" - path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -2566,6 +3158,11 @@ path-type@^3.0.0: 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" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + pathval@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0" @@ -2576,6 +3173,11 @@ 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.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== + pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" @@ -2586,13 +3188,6 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pkg-dir@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" - integrity sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s= - dependencies: - find-up "^2.1.0" - pkg-dir@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" @@ -2600,15 +3195,44 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + 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" + 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" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" + integrity sha512-7PtVymN48hGcO4fGjybyBSIWDsLU4H4XlvOHfq91pz9kkGlonzwTfYkaIEwiRg/dAJF9YlbsduBAgtYLi+8cFg== + process-nextick-args@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" - integrity sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw== + 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== promise@^7.1.1: version "7.3.1" @@ -2622,18 +3246,10 @@ pseudomap@^1.0.2: resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= -psl@^1.1.24, psl@^1.1.28: - version "1.1.31" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184" - integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw== - -pump@^1.0.0: - version "1.0.3" - resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" - integrity sha512-8k0JupWme55+9tCVE+FS5ULT3K6AbgqrGa58lTT49RpyfwwcGedHqaC5LlQNdEAumn/wFsu6aPwkuPMioy8kqw== - dependencies: - end-of-stream "^1.1.0" - once "^1.3.1" +psl@^1.1.24, 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" @@ -2654,23 +3270,23 @@ punycode@^2.1.0, punycode@^2.1.1: integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== qqjs@^0.3.10: - version "0.3.10" - resolved "https://registry.yarnpkg.com/qqjs/-/qqjs-0.3.10.tgz#ae3af7cb4c424242db4aa9b92c42d29fa9101562" - integrity sha1-rjr3y0xCQkLbSqm5LELSn6kQFWI= + version "0.3.11" + resolved "https://registry.yarnpkg.com/qqjs/-/qqjs-0.3.11.tgz#795b9f7d00807d75c391b1241b5be3077143d9ea" + integrity sha512-pB2X5AduTl78J+xRSxQiEmga1jQV0j43jOPs/MTgTLApGFEOn6NgdE2dEjp7nvDtjkIOZbvFIojAiYUx6ep3zg== dependencies: chalk "^2.4.1" - debug "^3.1.0" + debug "^4.1.1" execa "^0.10.0" fs-extra "^6.0.1" - get-stream "^3.0.0" + get-stream "^5.1.0" glob "^7.1.2" - globby "^8.0.1" + globby "^10.0.1" http-call "^5.1.2" - load-json-file "^5.0.0" - pkg-dir "^2.0.0" - tar-fs "^1.16.2" - tmp "^0.0.33" - write-json-file "^2.3.0" + load-json-file "^6.2.0" + pkg-dir "^4.2.0" + tar-fs "^2.0.0" + tmp "^0.1.0" + write-json-file "^4.1.1" qs@~6.5.2: version "6.5.2" @@ -2694,10 +3310,10 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -readable-stream@^2.0.5, readable-stream@^2.1.0, readable-stream@^2.3.0, readable-stream@^2.3.5: - version "2.3.6" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf" - integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw== +readable-stream@^2.0.5, readable-stream@^2.1.0: + 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== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -2707,6 +3323,15 @@ readable-stream@^2.0.5, readable-stream@^2.1.0, readable-stream@^2.3.0, readable string_decoder "~1.1.1" util-deprecate "~1.0.1" +readable-stream@^3.1.1, readable-stream@^3.4.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== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + redeyed@~2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/redeyed/-/redeyed-2.1.1.tgz#8984b5815d99cb220469c99eeeffe38913e6cc0b" @@ -2722,6 +3347,11 @@ regex-not@^1.0.0, regex-not@^1.0.2: extend-shallow "^3.0.2" safe-regex "^1.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== + release-zalgo@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/release-zalgo/-/release-zalgo-1.0.0.tgz#09700b7e5074329739330e535c5a90fb67851730" @@ -2740,9 +3370,9 @@ repeat-string@^1.6.1: integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= request@^2.72.0: - version "2.88.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" - integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== + 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" @@ -2751,7 +3381,7 @@ request@^2.72.0: extend "~3.0.2" forever-agent "~0.6.1" form-data "~2.3.2" - har-validator "~5.1.0" + har-validator "~5.1.3" http-signature "~1.2.0" is-typedarray "~1.0.0" isstream "~0.1.2" @@ -2761,7 +3391,7 @@ request@^2.72.0: performance-now "^2.1.0" qs "~6.5.2" safe-buffer "^5.1.2" - tough-cookie "~2.4.3" + tough-cookie "~2.5.0" tunnel-agent "^0.6.0" uuid "^3.3.2" @@ -2770,11 +3400,6 @@ require-directory@^2.1.1: resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= -require-main-filename@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" - integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= - 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" @@ -2791,24 +3416,44 @@ resolve-url@^0.2.1: integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= resolve@^1.10.0, resolve@^1.3.2: - version "1.10.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.10.1.tgz#664842ac960795bbe758221cdccda61fb64b5f18" - integrity sha512-KuIe4mf++td/eFb6wkaPbMDnP6kObCaEtIDuHOUED6MNUo4K670KZUHuuvYPZDxNF0WVLw49n06M2m2dXphEzA== + version "1.17.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" + integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== dependencies: path-parse "^1.0.6" +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + 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== -rimraf@^2.6.2, rimraf@^2.6.3: +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rimraf@2.6.3: version "2.6.3" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== dependencies: glob "^7.1.3" +rimraf@^2.6.2, rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + rimraf@~2.4.0: version "2.4.5" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" @@ -2816,7 +3461,24 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: +run-parallel@^1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" + integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q== + +rxjs@^6.5.5: + version "6.5.5" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.5.tgz#c5c884e3094c8cfee31bf27eb87e54ccfc87f9ec" + integrity sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ== + dependencies: + tslib "^1.9.0" + +safe-buffer@*, safe-buffer@>=5.1.0, safe-buffer@^5.0.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== @@ -2838,25 +3500,35 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -samsam@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50" - integrity sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg== - sax@>=0.6.0: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== +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-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.3.0, semver@^5.5.0, semver@^5.6.0: - version "5.7.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" - integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== semver@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-6.0.0.tgz#05e359ee571e5ad7ed641a6eec1e547ba52dea65" - integrity sha512-0UewU+9rFapKFnlbirLi3byoOuhrSsli/z/ihNnvM24vgF+8sNBiI1LZPBSH9wJKUwaUbw+s3hToDLCXkrghrQ== + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1: + version "7.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" + integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== sequin@*: version "0.1.1" @@ -2868,20 +3540,10 @@ 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@^0.4.3: - version "0.4.3" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" - integrity sha1-fbCPnT0i3H945Trzw79GZuzfzPE= - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.1" - to-object-path "^0.3.0" - -set-value@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" - integrity sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg== +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" @@ -2906,34 +3568,65 @@ shebang-command@^1.2.0: 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" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + 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== + signal-exit@^3.0.0, signal-exit@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" - integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0= - -sinon@5.0.7: - version "5.0.7" - resolved "https://registry.yarnpkg.com/sinon/-/sinon-5.0.7.tgz#3bded6a73613ccc9e512e20246ced69a27c27dab" - integrity sha512-GvNLrwpvLZ8jIMZBUhHGUZDq5wlUdceJWyHvZDmqBxnjazpxY1L0FNbGBX6VpcOEoQ8Q4XMWFzm2myJMvx+VjA== - dependencies: - "@sinonjs/formatio" "^2.0.0" - diff "^3.1.0" - lodash.get "^4.4.2" - lolex "^2.2.0" - nise "^1.2.0" - supports-color "^5.1.0" - type-detect "^4.0.5" + version "3.0.3" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" integrity sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU= +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== + dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" + is-fullwidth-code-point "^2.0.0" + +slice-ansi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" + integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^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" @@ -2964,28 +3657,28 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= +sort-keys@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.0.0.tgz#56dc5e256637bfe3fec8db0dc57c08b1a2be22d6" + integrity sha512-hlJLzrn/VN49uyNkZ8+9b+0q9DjmmYcYOnbMQtpkLrYpPwRApDPZfmqbUfJnAA3sb/nRib+nDot7Zi/1ER1fuA== dependencies: - is-plain-obj "^1.0.0" + is-plain-obj "^2.0.0" source-map-resolve@^0.5.0: - version "0.5.2" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259" - integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA== + 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.1" + 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.12" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" - integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== +source-map-support@^0.5.17: + version "0.5.19" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -3000,15 +3693,15 @@ source-map@^0.5.0, source-map@^0.5.6: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== spawn-wrap@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.4.2.tgz#cff58e73a8224617b6561abdc32586ea0c82248c" - integrity sha512-vMwR3OmmDhnxCVxM8M+xO/FtIp6Ju/mNaDfCMMW7FDcLRTPFWUswec4LXJHTJE2hwTI9O0YBfygu4DalFl7Ylg== + version "1.4.3" + resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.4.3.tgz#81b7670e170cca247d80bf5faf0cfb713bdcf848" + integrity sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw== dependencies: foreground-child "^1.5.6" mkdirp "^0.5.0" @@ -3018,30 +3711,30 @@ spawn-wrap@^1.4.2: which "^1.3.0" 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.4" - resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz#75ecd1a88de8c184ef015eafb51b5b48bfd11bb1" - integrity sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA== + 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== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" @@ -3079,23 +3772,19 @@ static-extend@^0.1.1: object-copy "^0.1.0" stdout-stderr@^0.1.9: - version "0.1.9" - resolved "https://registry.yarnpkg.com/stdout-stderr/-/stdout-stderr-0.1.9.tgz#9b48ee04eff955ee07776e27125d5524d9d02f57" - integrity sha1-m0juBO/5Ve4Hd24nEl1VJNnQL1c= + version "0.1.13" + resolved "https://registry.yarnpkg.com/stdout-stderr/-/stdout-stderr-0.1.13.tgz#54e3450f3d4c54086a49c0c7f8786a44d1844b6f" + integrity sha512-Xnt9/HHHYfjZ7NeQLvuQDyL1LnbsbddgMFKCuaQKwGCdJm8LnstZIXop+uOY36UR1UXXoHXfMbC1KlVdVd2JLA== dependencies: - debug "^3.1.0" - strip-ansi "^4.0.0" + debug "^4.1.1" + strip-ansi "^6.0.0" -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" - integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= - dependencies: - code-point-at "^1.0.0" - is-fullwidth-code-point "^1.0.0" - strip-ansi "^3.0.0" +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== -string-width@^2.0.0, string-width@^2.1.1: +string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -3112,6 +3801,22 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.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== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -3119,12 +3824,14 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0, strip-ansi@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= +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: - ansi-regex "^2.0.0" + get-own-enumerable-property-symbols "^3.0.0" + is-obj "^1.0.1" + is-regexp "^1.0.0" strip-ansi@^4.0.0: version "4.0.0" @@ -3133,23 +3840,45 @@ strip-ansi@^4.0.0: dependencies: ansi-regex "^3.0.0" -strip-ansi@^5.0.0, strip-ansi@^5.1.0: +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== dependencies: ansi-regex "^4.1.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-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" + 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" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-json-comments@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.0.tgz#7638d31422129ecf4457440009fba03f9f9ac180" + integrity sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w== + supports-color@5.4.0: version "5.4.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.4.0.tgz#1c6b337402c2137605efe19f10fec390f6faab54" @@ -3157,7 +3886,7 @@ supports-color@5.4.0: dependencies: has-flag "^3.0.0" -supports-color@^5.0.0, supports-color@^5.1.0, supports-color@^5.3.0, supports-color@^5.5.0: +supports-color@^5.0.0, supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== @@ -3171,6 +3900,13 @@ supports-color@^6.1.0: dependencies: has-flag "^3.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-hyperlinks@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-1.0.1.tgz#71daedf36cc1060ac5100c351bb3da48c29c0ef7" @@ -3179,30 +3915,38 @@ supports-hyperlinks@^1.0.1: has-flag "^2.0.0" supports-color "^5.0.0" -tar-fs@^1.16.2: - version "1.16.3" - resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-1.16.3.tgz#966a628841da2c4010406a82167cbd5e0c72d509" - integrity sha512-NvCeXpYx7OsmOh8zIOP/ebG55zZmxLE0etfWRbWok+q2Qo8x/vOR/IJT1taADXPe+jsiu9axDb3X4B+iIgNlKw== +table@^5.2.3: + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== dependencies: - chownr "^1.0.1" - mkdirp "^0.5.1" - pump "^1.0.0" - tar-stream "^1.1.2" + ajv "^6.10.2" + lodash "^4.17.14" + slice-ansi "^2.1.0" + string-width "^3.0.0" + +tar-fs@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.0.tgz#d1cdd121ab465ee0eb9ccde2d35049d3f3daf0d5" + integrity sha512-9uW5iDvrIMCVpvasdFHW0wJPez0K4JnMZtsuIeDI7HyMGJNxmDZDOCQROr7lXyS+iL/QMpj07qcjGYTSdRFXUg== + dependencies: + chownr "^1.1.1" + mkdirp-classic "^0.5.2" + pump "^3.0.0" + tar-stream "^2.0.0" -tar-stream@^1.1.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" - integrity sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A== +tar-stream@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.2.tgz#6d5ef1a7e5783a95ff70b69b97455a5968dc1325" + integrity sha512-UaF6FoJ32WqALZGOIAApXx+OdxhekNMChu6axLJR85zMMjXKWFGjbIRe+J6P4UnRGg9rAwWvbTT0oI7hD/Un7Q== dependencies: - bl "^1.0.0" - buffer-alloc "^1.2.0" - end-of-stream "^1.0.0" + bl "^4.0.1" + end-of-stream "^1.4.1" fs-constants "^1.0.0" - readable-stream "^2.3.0" - to-buffer "^1.1.1" - xtend "^4.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" -test-exclude@^5.1.0: +test-exclude@^5.2.3: version "5.2.3" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0" integrity sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g== @@ -3212,17 +3956,22 @@ test-exclude@^5.1.0: read-pkg-up "^4.0.0" require-main-filename "^2.0.0" -tmp@^0.0.33: - version "0.0.33" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== - dependencies: - os-tmpdir "~1.0.2" +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -to-buffer@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/to-buffer/-/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80" - integrity sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg== +through@^2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +tmp@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.1.0.tgz#ee434a4e22543082e294ba6201dcc6eafefa2877" + integrity sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw== + dependencies: + rimraf "^2.6.3" to-fast-properties@^2.0.0: version "2.0.0" @@ -3244,6 +3993,13 @@ to-regex-range@^2.1.0: 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" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + 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" @@ -3255,13 +4011,13 @@ to-regex@^3.0.1, to-regex@^3.0.2: safe-regex "^1.1.0" tough-cookie@*: - version "3.0.1" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2" - integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg== + 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" tough-cookie@~2.4.3: version "2.4.3" @@ -3271,31 +4027,34 @@ tough-cookie@~2.4.3: psl "^1.1.24" punycode "^1.4.1" +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" + treeify@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz#4e31c6a463accd0943879f30667c4fdaff411bb8" integrity sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A== -trim-right@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" - integrity sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM= - ts-node@^8: - version "8.1.0" - resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.1.0.tgz#8c4b37036abd448577db22a061fd7a67d47e658e" - integrity sha512-34jpuOrxDuf+O6iW1JpgTRDFynUZ1iEqtYruBqh35gICNjN8x+LpVcPAcwzLPi9VU6mdA3ym+x233nZmZp445A== + version "8.10.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-8.10.2.tgz#eee03764633b1234ddd37f8db9ec10b75ec7fb8d" + integrity sha512-ISJJGgkIpDdBhWVu3jufsWpK3Rzo7bdiIXJjQc0ynKxVOVcg2oIrf2H2cejminGrptVc6q6/uynAHNCuWGbpVA== dependencies: arg "^4.1.0" - diff "^3.1.0" + diff "^4.0.1" make-error "^1.1.1" - source-map-support "^0.5.6" - yn "^3.0.0" + source-map-support "^0.5.17" + yn "3.1.1" -tslib@^1, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.3: - version "1.9.3" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" - integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ== +tslib@^1, tslib@^1.10.0, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: + version "1.13.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" + integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== tslint-microsoft-contrib@^5: version "5.2.1" @@ -3305,17 +4064,17 @@ tslint-microsoft-contrib@^5: tsutils "^2.27.2 <2.29.0" tslint@^5: - version "5.16.0" - resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.16.0.tgz#ae61f9c5a98d295b9a4f4553b1b1e831c1984d67" - integrity sha512-UxG2yNxJ5pgGwmMzPMYh/CCnCnh0HfPgtlVRDs1ykZklufFBL1ZoTlWFRz2NQjcoEiDoRp+JyT0lhBbbH/obyA== + version "5.20.1" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.20.1.tgz#e401e8aeda0152bc44dd07e614034f3f80c67b7d" + integrity sha512-EcMxhzCFt8k+/UP5r8waCf/lzmeSyVlqxqMEDQE7rWYiQky8KpIBz1JAoYXfROHrPZ1XXd43q8yQnULOLiBRQg== dependencies: "@babel/code-frame" "^7.0.0" builtin-modules "^1.1.1" chalk "^2.3.0" commander "^2.12.1" - diff "^3.2.0" + diff "^4.0.1" glob "^7.1.1" - js-yaml "^3.13.0" + js-yaml "^3.13.1" minimatch "^3.0.4" mkdirp "^0.5.1" resolve "^1.3.2" @@ -3349,49 +4108,65 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= -type-detect@4.0.8, type-detect@^4.0.0, type-detect@^4.0.5: +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" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-detect@^4.0.0, type-detect@^4.0.5: version "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.3.0: - version "0.3.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" - integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== +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== -typescript@^3: - version "3.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.4.5.tgz#2d2618d10bb566572b8d7aad5180d84257d70a99" - integrity sha512-YycBxUb49UUhdNMU5aJ7z5Ej2XGmaIBL0x34vZ82fn3hGvD+bgrMrVDpatgz2f7YxUMJxMkbWxJZeAvDxVe7Vw== +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== -typescript@~3.3: - version "3.3.4000" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.3.4000.tgz#76b0f89cfdbf97827e1112d64f283f1151d6adf0" - integrity sha512-jjOcCZvpkl2+z7JFn0yBOoLQyLoIkNZAs/fYJkUG6VKy6zLPHJGfQJYFHzibB6GJaF/8QrcECtlQ5cpvRHSMEA== +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== -uglify-js@^3.1.4: - version "3.5.11" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.5.11.tgz#833442c0aa29b3a7d34344c7c63adaa3f3504f6a" - integrity sha512-izPJg8RsSyqxbdnqX36ExpbH3K7tDBsAU/VfNv89VkMFy3z39zFjunQGsSHOlGlyIfGLGprGeosgQno3bo2/Kg== +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== dependencies: - commander "~2.20.0" - source-map "~0.6.1" + is-typedarray "^1.0.0" + +typescript@3.9, typescript@^3: + version "3.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.5.tgz#586f0dba300cde8be52dd1ac4f7e1009c1b13f36" + integrity sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ== union-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" - integrity sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ= + 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 "^0.4.3" + set-value "^2.0.1" -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== +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + unset-value@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" @@ -3417,15 +4192,20 @@ use@^3.1.0: 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, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= uuid@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" - integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + 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== validate-npm-package-license@^3.0.1: version "3.0.4" @@ -3445,23 +4225,29 @@ verror@1.10.0: extsprintf "^1.2.0" websocket-driver@>=0.5.1: - version "0.7.0" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" - integrity sha1-DK+dLXVdk67gSdS90NP+LMoqJOs= + version "0.7.4" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" + integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== dependencies: - http-parser-js ">=0.4.0" + http-parser-js ">=0.5.1" + safe-buffer ">=5.1.0" websocket-extensions ">=0.1.1" websocket-extensions@>=0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" - integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== + version "0.1.4" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" + integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== 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-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, which@^1.3.0: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" @@ -3469,6 +4255,13 @@ which@^1.2.9, which@^1.3.0: dependencies: isexe "^2.0.0" +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== + dependencies: + isexe "^2.0.0" + widest-line@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" @@ -3476,18 +4269,10 @@ widest-line@^2.0.1: dependencies: string-width "^2.1.1" -wordwrap@~0.0.2: - version "0.0.3" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" - integrity sha1-o9XabNXAvAAI03I0u68b7WMFkQc= - -wrap-ansi@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" - integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= - dependencies: - string-width "^1.0.1" - strip-ansi "^3.0.1" +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== wrap-ansi@^4.0.0: version "4.0.0" @@ -3498,51 +4283,90 @@ wrap-ansi@^4.0.0: string-width "^2.1.1" strip-ansi "^4.0.0" +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write-file-atomic@^2.0.0, write-file-atomic@^2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.2.tgz#a7181706dfba17855d221140a9c06e15fcdd87b9" - integrity sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g== +write-file-atomic@^2.4.2: + version "2.4.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" signal-exit "^3.0.2" -write-json-file@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" - integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== dependencies: - detect-indent "^5.0.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - pify "^3.0.0" - sort-keys "^2.0.0" - write-file-atomic "^2.0.0" + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +write-json-file@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" + integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== + dependencies: + detect-indent "^6.0.0" + graceful-fs "^4.1.15" + is-plain-obj "^2.0.0" + make-dir "^3.0.0" + sort-keys "^4.0.0" + write-file-atomic "^3.0.0" + +write@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" + integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== + dependencies: + mkdirp "^0.5.1" xml2js@^0.4.16: - version "0.4.19" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" - integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== + version "0.4.23" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66" + integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug== dependencies: sax ">=0.6.0" - xmlbuilder "~9.0.1" - -xmlbuilder@~9.0.1: - version "9.0.7" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" - integrity sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0= + xmlbuilder "~11.0.0" -xtend@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" - integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68= +xmlbuilder@~11.0.0: + version "11.0.1" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-11.0.1.tgz#be9bae1c8a046e76b31127726347d0ad7002beb3" + integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA== -"y18n@^3.2.1 || ^4.0.0": +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== @@ -3552,33 +4376,36 @@ yallist@^2.1.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= -yargs-parser@^11.1.1: - version "11.1.1" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4" - integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ== +yaml@^1.7.2: + version "1.10.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" + integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== + +yargs-parser@^13.0.0, yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== dependencies: camelcase "^5.0.0" decamelize "^1.2.0" -yargs@^12.0.5: - version "12.0.5" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13" - integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw== +yargs@^13.2.2: + version "13.3.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== dependencies: - cliui "^4.0.0" - decamelize "^1.2.0" + cliui "^5.0.0" find-up "^3.0.0" - get-caller-file "^1.0.1" - os-locale "^3.0.0" + get-caller-file "^2.0.1" require-directory "^2.1.1" - require-main-filename "^1.0.1" + require-main-filename "^2.0.0" set-blocking "^2.0.0" - string-width "^2.0.0" + string-width "^3.0.0" which-module "^2.0.0" - y18n "^3.2.1 || ^4.0.0" - yargs-parser "^11.1.1" + y18n "^4.0.0" + yargs-parser "^13.1.2" -yn@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.0.tgz#fcbe2db63610361afcc5eb9e0ac91e976d046114" - integrity sha512-kKfnnYkbTfrAdd0xICNFw7Atm8nKpLcLv9AZGEt+kczL/WQVai4e2V6ZN8U/O+iI6WrNuJjNNOyu4zfhl9D3Hg== +yn@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" + integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==