From a36b1dafd61c5c7378743c8dc121a6c47fd97c71 Mon Sep 17 00:00:00 2001 From: qubiaobiao <3294694717@qq.com> Date: Mon, 25 Mar 2024 14:52:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=98=BE=E7=A4=BA=E6=95=88=E6=9E=9C=E5=85=A8?= =?UTF-8?q?=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 10 +- src/main/app.ts | 6 +- src/main/load-serialport.js | 12 +- src/render/assets/geojson/geo.js | 10 +- src/render/assets/img/beidou.png | Bin 0 -> 22837 bytes src/render/assets/img/galileo.png | Bin 0 -> 22837 bytes src/render/assets/img/glonass.png | Bin 0 -> 22837 bytes src/render/assets/img/gps.png | Bin 0 -> 22837 bytes src/render/assets/img/unbeidou.png | Bin 0 -> 10993 bytes src/render/assets/img/ungalileo.png | Bin 0 -> 10993 bytes src/render/assets/img/unglonass.png | Bin 0 -> 10993 bytes src/render/assets/img/ungps.png | Bin 0 -> 10993 bytes src/render/components/CenterCmp.vue | 34 +- src/render/components/Clock.vue | 9 +- src/render/components/Compass.vue | 9 +- src/render/components/Map.vue | 23 +- src/render/components/PlanisphereView.vue | 272 ++-- src/render/components/Ring.vue | 352 +++++- src/render/components/SNRView.vue | 230 ++-- src/render/components/WaterLevel.vue | 9 +- src/render/page/DataMonitorPage.vue | 230 +++- src/render/page/InfoMonitorPage.vue | 4 +- src/render/page/SignalMonitorPage.vue | 4 +- src/render/page/StateMonitorPage.vue | 8 +- yarn.lock | 1378 ++++++++++----------- 25 files changed, 1512 insertions(+), 1088 deletions(-) create mode 100644 src/render/assets/img/beidou.png create mode 100644 src/render/assets/img/galileo.png create mode 100644 src/render/assets/img/glonass.png create mode 100644 src/render/assets/img/gps.png create mode 100644 src/render/assets/img/unbeidou.png create mode 100644 src/render/assets/img/ungalileo.png create mode 100644 src/render/assets/img/unglonass.png create mode 100644 src/render/assets/img/ungps.png diff --git a/package.json b/package.json index ab3613b..11eb242 100644 --- a/package.json +++ b/package.json @@ -9,16 +9,18 @@ "build": "vite build", "serve": "vite preview", "electron:dev": "cross-env NODE_ENV=development electron index.js", - "electron:build": "rimraf dist && vite build && tsc -p tsconfig.electron.json && electron-builder" + "electron:build": "rimraf dist && vite build && tsc -p tsconfig.electron.json && electron-builder", + "fix-memory-limit": "cross-env LIMIT=10000 increase-memory-limit" }, "dependencies": { - "echarts": "^5.2.2", + "echarts": "^5.4.1", + "echarts-gl": "^2.0.9", "echarts-liquidfill": "^3.1.0", "electron-store": "^8.0.1", "nmea": "http://git.hwasmart.com/bd_group/node-nmea.git", - "serialport": "9.2.4", + "serialport": "10.5.0", "vue": "^3.0.5", - "vue-echarts": "^6.0.0" + "vue-echarts": "^6.6.9" }, "devDependencies": { "@vitejs/plugin-vue": "^1.1.5", diff --git a/src/main/app.ts b/src/main/app.ts index 3cfe893..cba8a18 100644 --- a/src/main/app.ts +++ b/src/main/app.ts @@ -116,11 +116,11 @@ async function launch() { createWindow('satellite-state-monitor-platform', displays[0]) } else { createWindow('satellite-data-monitor-platform', displays[0]) - await sleep(100); - createWindow('satellite-info-monitor-platform', displays[1]) await sleep(200); + createWindow('satellite-info-monitor-platform', displays[1]) + await sleep(400); createWindow('satellite-signal-monitor-platform', displays[2]) - await sleep(300); + await sleep(600); createWindow('satellite-state-monitor-platform', displays[3]) } diff --git a/src/main/load-serialport.js b/src/main/load-serialport.js index b97464b..4d246da 100644 --- a/src/main/load-serialport.js +++ b/src/main/load-serialport.js @@ -1,6 +1,6 @@ const { ipcMain } = require('electron') -const SerialPort = require('serialport') -const InterByteTimeout = require('@serialport/parser-inter-byte-timeout') +const { SerialPort } = require("serialport") +const { InterByteTimeoutParser } = require('@serialport/parser-inter-byte-timeout') const config = require('./config') const NMEAHandler = require('./api/NMEAHandler') @@ -52,9 +52,13 @@ SerialPort.list().then((ports, err) => { try { const { path, baudRate } = getSerialPortConstructorArguments(ports) console.log(path, baudRate, '=====================') - const serialPort = new SerialPort(path, { baudRate }) + const serialPort = new SerialPort({ path, baudRate }) - const parser = serialPort.pipe(new InterByteTimeout({interval: 30})) + const parser = serialPort.pipe(new InterByteTimeoutParser({interval: 30})) + + NMEAHandler.on('received' , (nmeaStr) => { + sendMsg('NMEA_RECEIVED', nmeaStr) + }) NMEAHandler.on('handled' , (nmeaObj) => { sendMsg('nmea', JSON.stringify(nmeaObj)) diff --git a/src/render/assets/geojson/geo.js b/src/render/assets/geojson/geo.js index 1e16359..c3b77d4 100644 --- a/src/render/assets/geojson/geo.js +++ b/src/render/assets/geojson/geo.js @@ -19,15 +19,15 @@ import { city as city_full } from "./city/citygeo_full" import { city as city_geo } from "./city/citygeo" export function intersect(checkPoint, polygonPoints) { - for (let j = 0; j < polygonPoints.features.length; j++) { + for (let j = 0; j < polygonPoints.features.length-1; j++) { var counter = 0; var i; var xinters; var p1, p2; - var pointCount = polygonPoints.features[j].geometry.coordinates[0][0].length; - p1 = polygonPoints.features[j].geometry.coordinates[0][0][0]; + var pointCount = polygonPoints.features[j].properties.name == "内蒙古自治区" ? polygonPoints.features[j].geometry.coordinates[0].length : polygonPoints.features[j].geometry.coordinates[0][0].length; + p1 = polygonPoints.features[j].properties.name == "内蒙古自治区" ? polygonPoints.features[j].geometry.coordinates[0][0] : polygonPoints.features[j].geometry.coordinates[0][0][0]; for (i = 1; i <= pointCount; i++) { - p2 = polygonPoints.features[j].geometry.coordinates[0][0][i % pointCount]; + p2 = polygonPoints.features[j].properties.name == "内蒙古自治区" ? polygonPoints.features[j].geometry.coordinates[0][i % pointCount] : polygonPoints.features[j].geometry.coordinates[0][0][i % pointCount]; if ( checkPoint[0] > Math.min(p1[0], p2[0]) && checkPoint[0] <= Math.max(p1[0], p2[0]) @@ -48,7 +48,7 @@ export function intersect(checkPoint, polygonPoints) { p1 = p2; } if (counter % 2 == 0) { - console.log(polygonPoints.features[j].properties.name) + console.log(counter) } else { return polygonPoints.features[j].properties.name; } diff --git a/src/render/assets/img/beidou.png b/src/render/assets/img/beidou.png new file mode 100644 index 0000000000000000000000000000000000000000..bf0831b7cf24a25bc2fa71b4f9b083111daab1f8 GIT binary patch literal 22837 zcmdUX2UJwa)^45CnVhqVDC(FKj-r?YDk>r(X3PmQVn)n4=Y$!=g|7r;$;?L zPR{nb0(;+FkZKXQds+J48i}LYtXS4>W$yt^^D3nsK09|-er~S%rTS9lu1w9NnU8H_ z?H#JE|GIxHX%@1$h5xHcYkLIVymvX4bq@R}^tSt&e0`MY79j7X6+`H<>DMDqwH@O6lif&JhR?38JF7SbW(tBHSrOu)dU{RQwAH%IuNj}d zj?9eAFS)f}H?Cl!Ps_@MA9R;iu|i_k{c--A!C$_-5KOwmoSb%b+|mBzO&A&dK{c?^ zTiM=z7EflWR?cjyX$7^U9W7qfZk*u8b+gsP65o0y23= z>+Q#r4lLA89x@^NM97-VWMSI|6BL6 z>)Thpw>jM*YhJ^`N?WwDjnl13!jc|I-G7&yO^!^8$z#}+HsLAJq;*VjomC!|>xtc{ z#tmmG2-$d5wYGIFhCJMQ@G~KozPSxJvdJ~*wv>?ed*|0Y*+yb@%_$+tX4ka}my%rB zA>#I}t*R!quxl&Mi1o7A=eDJdduWpXE8*Fb0*}4+J3iT+xz?bmb>>Hh0rRsbxr!s) z;;y@0S|Ss+xhr)XQrUl*{m?b9d>%<%x33ZU3<+$!A@-nm)-tD_KDX{pImjMuJ9hoR zz$!&`rZ_cQJ)m{jy0>?|8?Ml-xYVh^runCP3ZApmTAx2s$z#Rsy;Gk?HMSiXyJi2l zrygf22E_ip|M1hU-=;;8xhvKTi+$R_X5^~ZLk6r`+96_jxJR`+F2lZr`-QFb8&)Cw z=V)ioq_`pZ(yHvrSjQacphb4qBNwb&*C{+GyxkGsoGND=E=c>x7A|UVy}HlFBR$Ue z&T>%QoH5k@)VlDF3Dxo{SF9Z8JE*#i_#T&X%3W1-=cebFkOJ zmML~)b_G?-UN`>U`wZ#n*aYvb>(8yTUDsoS`reIOFmfVKxFj$ht_Z(=RVv0u-iHJdfS8IMbEZw zzZ+WrWkb*Hqqf;@o7g+NW@*hi&g<_xZ1&$AwmD{V=CRP;Q+u~coq5bM^q1bYzYGeS z8{e__Z^56B%AULYl6tg4?~6y9oOl#6J!Eb0LTp6rgP&Ul^^peFL_bv%M5IXGK zZTHocU2ZoVQ5fF##gs5XcI|Q7x()4rT9p$NEmC_%*P9*GtKHONBNIlhAG!PMa-Vg1d~2cC95P(86)-qKN@{bsnf9GNiD zYiL5__aoBAwHPvVOvASaZyvmrapk9no5t-JdEx1qXHgFx+^wCK@G9Y6&YEVayT-*0 zx$^qbTg~dlhdS)K)n#Rqm3Owh*)k_tw58h?MZ&hQmSHo)i@T|0aHi$0OT zo_%&&?eyQ7{QHsPJCEOt-Z}n*Q@YdIpHhC3_nPpgL5?QJB4hAQsH}FP4ew&g4MR@w; z2cLHz-g)?X@w&`QviKmP99oBcmtPM#g%-!foC*`q8$%iAs4 zJ+t;Ky%K-L=R?4iDlso&w#P^`aq8w}$=bEbtDj~TxfFI6MKITxFU;ln9`k<_j1yE6 zZWkVs_=#4FE{f|}wRCQ4CA02ZY0AclNv=hns$q@NM%CW&)cL-2w{t(wvic9I1yy`u zzh=o}=?A-*iSeqStOvhKmwoIMxh%2L829b2s<}=-)oggI?)RQ&dPPl+Qq+EtkkMB? z>hhYxwMSQ-Z~k`d?^B{jC5(*>i5!-*Gch*tSmOK{OO+i8w>m^QR+Z&0&$#*OX29~# zQ`yYO9gTKn>+$9A zgl-iaix%x%+@r&l{j2x)JasOyON$L(cZY2*ZThbH+;(N7m-Og3?RFzskC0k3*Sl{x zU!}NPSo;_66CS^w{JKuFO}jSjIuK$#X3LpcFYBMHajwV6TD3M>XUzOM{=VnNrS}yX zRa8@p-#SMw4tjdvOvs5~8<(JZM{3RJ@78}tV&LV#e$N|y7^(ZNs$#joWzOYwCxa7D z{`M+yM&H7ZK36+jbg8nkm+SPp4F-l>7(Qc6LCW0Z(aEQ`XoJ(kLwXmDotaj&CS+mC zp+oIzE$GvD^U+QBk|&%f>34pZ^N`KMd*_ecn%X~XUQO4{gA*nt966yp*)j2JdY|rt zQ|HKMj(_v!eV23hbF%}p4`xqDQ1rd}YnRJo+oV2OQeb`DvvBnn&%xunypP&9Ypi_D z!!r->KNR>4@yqT1;P-^LMf;i@D4n%?-oWHA?eSmEU3p#Y&5Nt=rq3?6Sy;ij`TP7$ zIhW4Xn$c(6yMP5+az*%c&{HnR~M*Ce-X8V2K8QrN7N#j2%Ba$K>-{@@q{N}kppmy3o!+W6`4>BEkX@5h93Gqb1ulKDZK zuI~CcT=S~HQnm8&)e|$17Ej6l<>;^ecdFc}bm`H|fWmmq@kejx<|pP~_;BZPrR_B| zt#!f0Ps@hgIsBxDqGjeBou-~*QL)-LWltkio8H3$L%I<%%a@SYg@mX$z$`+h)hFb8 z1R?(02yvabVeqYvs85G>Zr>(!217!+A3w$Dw3z+pkH**#8X(iw0JZCwc>Xs=%r)g9 z8%BJ1$ffW<@iES0P=NgT!zm3d+E3dQhjB9ecCcu2zxm^w<0~gUv3hLX%F7`|J+iEE z@J!LFtduV^>UMDy>yDL)-6IwL`2z|yR`SFC`YWE!IFDlt{S=z_)AsXy{WHc#^>-*(+3{|-;n(VY zZ|5?}Gom<4Rh_BNuH#nf9_m-&IDrv1!x4dS9M_D%MF58}EqSQTC+noMI8NP$T$0q_ zxU$~_llXphG5d{&nqG`h=#TzBLRJ`qwx{qu->+)Nlv=FfR_1Uv(atf&S)Yr2y{o*x zR_}F{7L8jp?(e|Ct@SG#<)M62xhSOlRA1(h;!$WCH`6oiCnkavL2h7#_H)e*ZB4S# zAWw}3ss2|y9i3;4IJ&^+$yx6CZ^@eP#Y26D_M4dUHnk%0$w+Ue&u{U_ zABxs108pk^hpDaOU=SAleuQPtz!2w1glrwhDcgv)khW-#XVVA_!U5014fK);YuS?H zN}mZGM7M$WSSYoKKzk*V&KsocDbvp)1%?^NoR%a4-<{pd_m{pEUlLE@n&;i9c*HwC zy;-hf&$Q5L6H_uIne{#ulQmQ>6Qpue{h32EeNerc^ks(szZN04{JQCSZwicjKdx%j zPp8uuT`j>^VF>rmWB@%Qe;9%qghEbaFo>z`YHTki7HoS&Kr=GM3I@?+3N{cI7{pds zjR>L8+2n-9GK@bX#FjVURMJ!u#BsTwgsm+CIj*p)w~OQ(=FJzyNa_OrqJW61Vty)< zK=uQ!C$mI0m}hTXZ>q41us-*$B)R49EyB{6g5;^*)7At=nmnE=)Lik#HpQdRWXN*n z5sFA5oj}`MJDxFY5zmYf^4b_7^$h(K@62x(&pmgSxV+lh(xv^QICnSxKBMBg;_*#+~?|5 z9!M~r2g5KhRK|^tHS97F5l`n2tEU9)Bm7+e!^vw2l0>yZZ@XYLc>{WV2oYVvI%>mu z=8mB`<jNL$+h}F zAD!af^z~1^F?F}3w&ARef>8L$*gjx@hERpz-HiSEz35L0poTFwh_iA2da|E4jOMc- zj)&ZFLM-9gN(reihUb6tYc{et7-G$s%0k0&PtyFjlx>LwVJ3oy{r*rVQrLCc!6HY~qK9U=~l6~=!y zj4QcXuj)+6cFg-ZIy9=FRy@_Gxq)cEX)iIRHrkKM<)3}B-b_zlz|>A8{o?EIZG7`w zr9qjYpXxj1XvPXA=qbHoP--J2y_xSk%nxl|+ZlCP-W=BxqUY$?PptU*M=?O)BTXVi zeNy1WmZE4Kl-f2taWIF<|`jgdl|GI@*+>1CPrH2VUk6q7K)Z9!2DD6QG|Tz6JXh;vGX1=bg^ZhY)iZ6wCpcNxHKK$Ins`+QKUOBf}h!FDNCMhuIS#;%o>Z3A{PGaW?d8b%i($O(85mQU4l@go(4?3U<#(qCN=+M zgcwttwu+(Lm7fz!d3+8YW`n(=;JC2V>Mr(*nG>5<2?G7W7q!i?sTZF*=-w$<^i2Ezw(QNC zpLb2+Y~he5_$jzabm};DA?u=F*qMxGzJh_R#6buFb-RgBz#FCw3{u8%*{MHEMSM!A zTz1jn4Fo8TEVYV+0mi@}Vi@YGbQv=V`14730Sv{}Luv~H9fcvq(K1)R=YT$PvA*op zT_b}CQiisWi6xj{Diiuh+H>6Z12zLBflz2_wPi9WI`5R-F`mzYnL-OeZSWyKmRS)F zpsFx5(4r#Rg?Olw4ufr%EVC*B9Y4AY8Nx0Mr{3;BJFK90Iw{8Nt=MiF64eRQw z&Oh-_ixZInzo=gDrJjqRM}7alsH z@&c<0*%UsMONI$Y3J!vy&5W2qb)wnKMDXL;`()pQ_aX4TOXKb80{;$|Duss?cFlWd zi4-UQty)uABKlG1TU~%>E)~@mSV0h^I)Zs92Jiu0zRfGx*9cn~A@7MvP|Qx&Nr3s> zOD2{IjEQpP;(xDjhCC1msVYj%MJ=rQ<~@tOwR@!@5~Q!J6~Tci{`b zmrS^*E#_lAeIy06s47D{fBuYMcSJ;Sp&*ugg@GPIZtzpMxzTrPIFS6ZOR%g440(&R zmmp%eI!6AeAt*E&MBB=thQkYO_2N_We_gV#V+u`C)Ib!HGA+La5>l3LfNH+#!Ke5` zv!N~aruEi-K?Lv$az`qH$EfEr{``r#_^EIaUnQx>le(6pVE`==iV!gwGn-wofFR1t z-*0&=gTUjJj#h}AQeRFhngtJBJ|xEjAzm_-unth9vL~yN@(Kg-2fwbeoydlV>QRD4Jk(Yq4t&|FwI)*8d#qPoAmrz1JOz<@c!!z5z(Bfp zY!^8ZIk%8lL#z$!8+7?(1=Uyszi^3%%;c=a0`z;-ivWi(&91cb*iNo2U z@EBjI&}kCde(?C~5WsiN6?cCaY#PUTHHHGGY5EX^y6!Sk*CpV0J~hp?JI(_OZPu|c zsQjw*ge6i$$z)N2_yO9N#i61y7;vB{TnvLL1`ER_EdWPY)wPZXp0%Zma~ce=kC~!R zab0glP^j6A1V(-Xo47XTaxDp$CtzQVV7X(AHEzWPty|i?Y#-9TdMO zXn+*>it67xS%Z(_IvnSSNKh?Td)gz?^V+m{!9+kV>=6!dpt4qi3ziMB{#G+SC_lys zF`P$u#}W<_j^eGBn8eVV)Pq56en)IXKEdpx-96H zo)^`yg8{T3n2PpF-k?Nii^#~f_nIWD3y0gfVT=p-%+Jj1;{``koYj1?s0umy=oZ^` zgriO8w4U2=ju|+iraR;=8Y74hEWo&T;Fqm&Dp_vu(VS#ZH(I5#`}C)XByO2~XWJf`XTD+lsir4^C+TK$^Z0)3DJo%WDEum? zmVAXmwu0UfDB>QcWh_8vDyP<`A`z#y!g$`oJ++)b=j&1L>jLmm_5~@d2^6rDSdb~8 zTWmB44?&++H>SO4n&CjIz9GV?1bnp;oo3-EC}&HA`vK>Qukd_mYk3W@s1L*A7rVWX zujg;OU1DIE!SX&11-!$Z=*v4wS@HS7wc!Zg2L|1A`T=)j7_x2#oA0Z6#_9#xJTj+75!E2di6&{h`>ES_y#%szwvIn{3AK`3AdPSidS{HNE;z2S+a+TM?BFkgWy4xS%A zl0~6FZ$|8_;nBLQ=>8p$PfffbjMWbnoE8Hp%ZUX1s5X-`UWkyAi{e1>B)}2UU3xhi zuxr>bjNbs>7RY%X@}5S-yk7H8gmvWIwtu$20C^e^V($j|{2anW82>(^#u6F$)725U zS%44lrRS5bPoXK58dDhUr-mt5THB+}?Q7Qz{UGta-9E{&X3k%~TDvarYFYBB>@$acZCP3kgM%t;jv>JpYVH1-oo|gT;GG?#UejsJHitE zWv!6g!=X5ZXaaxPr@AHd5h8_YwhE&4=brhvqM3qatjjTor9nY_?iS==-X0Qa1B0s? z2)3|TU(E>GvrxEp2(!lG7{+Jg`3U+8c9Qp26R_#e3+-Zc6RGN+-wM9GF8GbDZG*@v z9mCjJj|H8VOu7t_qpQNywOR!}Dj3!?Dcl$te`k=Q$F_s)&XjyA9I{mUeZg1AZz#$>5ih+-CNdwT2v0QHllyFe7DKYQqT8+A%W}-GMOF zu--rYY3W@&t9XiKlI-^TtM9h9nnem{hVLEFV=|UF+4@P8_e(GQ`GPhOL%HgbL|Khqy~+o_#t2Bsxy^WZ4oKz=6LA$2%dDP^s4oK zv^~pqN)b5)V>nLgh52JPt#uuah&u#&@L+B?No1b@uN|(}d45J1)>rfvF4FVi#|D#V z^k<jm$T3BIFXVi>$$C=@3Z?AK{v*Oqhig=ssp@2(b5YV+`xjYRUwu z9x0^!nN?xMy#{_8#2#!zlrOtDb*Y*1kP1d~8*Q6H@i!Kp2mxM`SU$Iw^k=`@j|O~t zcAs4c4ECAR@|&B|Qu)?;1sKG(?Txm4GN-i+f*_4hnI>WWV2!)5AMjkcVeD5VwyT+& zB@ie-xl$qIOtkF|I9DX*&l%h;gF&d?C^R`rIeQ4jliPO~-f=+6Lz4Th z#^_pZIb-Mm4lIUhg$mZku#o06DJ3VMs6%)GfQ6!a`)&~O5i{bu%yI_|bI(v6<-WtU z6ZR5Cg`5VCh>+aE#R2>iJmuQ!)A{p?HkDJ`q(cC0X#-m*xYU}<$D>?aRrGzu-h{$7 zBVE9NiaNs9l2Xt=%ak&aK(9war2PD?Y!fC1^IP$^!@#HfmSYh8W(x&sKNBUxD{#Fq zgrBEQ7Krupi%A&M67;Ys3tPZILx_;S3i(z!#Kjo~%qpG{g+%r~AxOnRjHqml5VLH>GR^sG}_FD7RU$?!#2 z1}VyR(^*51{H#5j-Qa23p6Xw1q42!7I4~kr6rPW}W@!b5VKbK^GUTTOAEm9)mJ468 z2O%)7OzbMc0Cm_h0S~i@-oxoj5I^uuQ$v4#M}VRq;^Ypf=p_te8e{!;B~n%0BzH2<+7~;-2OvR z)0joJE5NAZ*{=2;Fo1~rZ1o-ezRN6q;OW`(9i#cny+WLT`IEh_Ke6xto_ZPzf^R4n zU1e^3nVQjU@^GhU2>$x}d{-#AtWVY${m=~gAw5|FLzIlWUdeF~4A{SUqRSjU zlG%6`c-%9?x>RozQiW4U`_0Sr(z((}(ivJ;qS`90D67v2ObF%&tZs&dG%5ouXj3hc zzx^y3acfvDcvSYZF+%<}SDi~(8B&9MD^r)hGs^96xrnI?#Vu#*OAy-X-ojlhBB87T z9xOqj%651=Bo2nV+{8-+1;{gRBzr(HMKAlNyTLHI*931EKGld=F`xUnwRmZPH>|rL zQ~*WjrZT(q2Ixv+d4s6yF-sV%qa4T%9~9T6#hZ8kZ< zF-rFk;s`laT6O_{CByAB8pNn4^S#()2s%#nY&<`y?}+_H`w{QTPm)CGoWB@E?{SnM zXKP&O9J--U#rc}Y?4vj?y?V0+_E7luX{;5Q0fvw>E$pE1FM`{Gs!-507R4+C+eudG zVPC@|UhX{ehCh+x;I@rdBu=`7fZnIdzD=Zvph8jWK@LcP@`vKFOgQjRO^KmkTyIz9 z50vU#Y+K?5MJNOwe07A^f?Dv8bhV?93$DW;eFQ~pOTb1#FaD;W>?nJMKL@GK3S9U{ z$Na6XWC!FpB|OM(gJbQJI7k=45WgS-Ay3vXQ#T3WAnH$?f-g>#hjLWbQl#34&j&ie zkv_k6xGT|N+?{w?=7G=9j_yV1X1>=+9;Yc-j$$>~d!c%v$LV0f1X^luwk?Z^kUVE4f;7{PVmhZ@yv8rLhZ9JXgTCDyKPBS0$5J`MQ z*q8A+U+~dFh+?C2jqX;USMW4cT5q!o4Gr+E=s)|3P&4nTO{fQ8O4s|Vd-1ZBfcIlOEql%c(T`0 zkH;8pT}=$4eAGW5kQ<@eKwsCDZO!AW86jc>2DTJO@K9+jgg-*@mB=xEPvQ@-LgaAn z0IH|P=zoR?gkti~io=*q*n8$z&vO-{>Qi`qwZz_*g;d1GqJMRpyS6sySFKRhMJg*g zD=HzQVTgSKH~qQ+P{V52f1+bb`3FNvfa^;Z=oQnM z+-0BuMRWGP7=o8&;_i$0ka^fEATT__TL?k;c}OyUT!&MJC?o2>GK5H5!0$!6c1*PX z(eOYrL0p9PA$Z_N&~+zOnM5e6hry#&wt`uFWb%p&~5#W6+>=CNj5+4SNSGfuw zN#THH0)g1(E*wQGO5`0$`KvHTj7*?7`%rFy0Qi4F=Z|CI9B1_8JM|Pt;sj;7I|Iq6B=Z zK&Ue?h{;3f)j@e7&8N1}z^?>DZUbz9NGJfT4#=lAOT29lLu)HDGsp`lYBuwY-+VPU zm?Ztn77F4aN<#$X3KsCUyE*QwT>0l7@~a$YH2{X_jVqk}h~#FE-rB;mb1sItd4X@a ztEW%~gO_#_=}+p4qmpF|FV}3QL{y4(k@76(psi-G)4>4y$P1A-y6?fD(SVjl{ZP56 z9x0@9Q%L*G@N<^-t4P&COGR`yeDAT$|#!YRyPG2G=h@8^CY`hpAsy@I(Gkc+!K5zgSte}ll z%-%ZdNOE^qvuY!6GFj#4`8^74KN9w9IP9uhgmwvD)mE8m# z7{HnZ=wal~xQFtN!5f4^`l_i(p7P|Nil_RZct-j00BsP{gxjaw(|c1lacG2)?bq^U z`w!Qal!pFV_e7vvEkiN%o#@TZb71<=YQgmV20Ajy_=|>im_fe6`fq%`8i~|Kjb($V zv13@xE5JD2eyc|)vKB}tC`LnN)dn{97=Sdi$*$PxJK7lsCwxYAB&gZ1KsFrJRrDg6 z66HqOx3!iWXi9UK;dbzSk%M-E4%J!d7D>~b7bxMIsP2*)Ffw)w{==0TApL#_BQ~^6 z-w!b~|M5?G4O<`UAbD%?iPi)CpIz%Tf%|A7vTMDqv{@UkLhJT<)At6M9mNbKOTz_-am6|~;+poNCxK6Gd_Lt2sJK4!bd zF}rYZ%|*^%frze|bjxC$hj5C>g3KXhhVuw#25J8f zP{VK15XBsy_S5r?v5j^0_@;BuALEAl+`K)~z>n?;lY`$#QA4pmDZ+ZANl=*sO4|+c z2;C(dTQm<>C^HDD7?Cv`>=64Ljf;&E=N9idw)`auyZ@1mT{)Nkr#Q-68%%=j)>zVhTS&R4CqJZY)X zR+lq#kIhZ{7q5~U82Zs5w7+C!_lO=|cuCku*jxbGHYtSSl_Lnnqma)30hXsYO20e> zQpK3zndp~Cw>)~~$U*h-w{jTg7g~3U>a^?Mc-h*Ns?1Ur?Z?B+dD-1897-NrC`axX29Y5B^Ri8xSE22Ies-&juSUvT5`>3nmD0~(*he;B8CUlgA{SD=vgo8!^` z^61iWo({h*g_I7Z|3?Zp@JHpN^Qm5pFsHCaaE+AIaV3vmo=!hk3tgzHyzxi=MkGL}U+Cbe_<9BKap@*wGXCHw>azFrEj@jg`;K zshwEV%q!39P5vK-F?s}LltM(3{-p`?HtjbTgtp65oQV!Kppm{gy&v%YU4xj>Gtn`V z<4^sDNHNkcnCH>OGcSK&ndOYQIltFVG~oTXB^WZypY(3D!yl1h>@Y_xk6>v)%=>xA zYQ>lAu6wiY^=wDOJXAL{htmk5)sR^m__S*Ji$MQ@LH=5eQN`2sjP1XpOUF%omBaV{ zAfKN968m~b8l+`AD)ucIvHZh-{-sY-bww3#VC)Zz8ax$k{pR$ie!al>`hqI9$NZ=6 zO^eqDtO*Fm*MsS1TFz!@65LF2=7RqJQe_p%1Ec|~Qri@tik-ih`!9Sgni_(_e`*jq z?_1YzvTv0oE=7{iSD|0yZjq@m8_RL8uCanmJEbQs$ z@8_S!XdAKj*$4mmpVly}`$tNoZEWiLJ<0^lBF}_J`^_TPe4M6U3bg_326iw0w8m1u zxF+#wOmUy-lcwMNU;NV=hK2uBT^Ud6rhck$3aP=&A)QC@j4;cV|3}tjWkp%7zI7@xIj`e|$zy59Ov2Qjex>Q#D1)P+Ddd8Vy1r?Kj6OkFMFes`czw zwt#E??X0((ca!vHMfC>w445(zkHU(26_5LW;g8Q4_X_Iy29Nq9f=q3_U_b6L)Uc-c zMm$}kK~*Dy`a9%G8YDJ2ajjm#5C<=ZpyDizCzH-7xs^0EnR~FwPhx)}?*_9fUG~98mo_yax@t~3YOW7>1d1{=YryeV*t3-}}DLec$_>9WM4h`|Q2; z`r2!)z3GdfP9P2-)2A?dzLDznL`kygK>LjF6?B@}s+B zKOxo&OQnrQZx$HsB&)X>8GD`nEL|32GJEC$-#6;FUX=NMo8FgiSGDeijP$TC-&pB3 zGQa!K&mSen;!uj!hb2X3lcww#}lHq+Sl>w$t8vLxs;5BJXbJC^&_pFNSr&i3u) ztc(WE)vXhsCPXgUvN<)e{CPEVWCLMI{6$9_<1^QUPpboMR}ibONw2l>O+6+%h%`C| zH=2+}GgAKg-`2`V4k58yQkGhi5(6?k{<5c-bRPbudk*O=usAFwUom8_-7*{2>sJ!- z#wS4zY;7IMFZHr^9v^S4AFJseAh)GgbX!Z=R2$HsUsY5fda%0Jhmb3m4S^10d zo!WluJ^Xh3XH~uosXe#rkKM1dJ#A98tJQqdsJyptL0?_$(WR^BJZ==F+i!hf_x^>m zd~b^UTl5JrpSp00cY8kj=0N|ofvB6YcgIf`@ayFptUVXpyUN#OvK%oAIDfb6?He~b zMDb^s@{PZ(Kl~Qy3L()~r&c|ESvNmS)|x!^^qD*tWuZht*7w0XLgnaYc)DEvF81l#N!s~?844SPh&Y9!iASJ{* z{}cQ27j*PbnUvNV9ym3xrgjdyTH@`cZ&T}Gv{cfcW+D6DEcb;+f@|G7xu45L=J_-C zT{EgY^^}{z&0gb`pWKe0BZ)A}t23+FuFJj9D4n%>fqVMQ$gEE57U`V5S)BE1UzeR} zg;uxHO(sB#dUofwmt<76~S8Bt4nKo-!8ote_E_Q2n_Oej_&=-pz9bQ;z zTrFLp`{}l)>K?QHrg(Yfqshio^_wHzk7kGZl-iCguw0P$X!v7>v)=y3*T(Sd&i(+| zf=9ERU)Fnhz3*k;MTM^ydbSz8d%)lJcJ_N`d-|mnX{A=XzdoKlBYXMI>9fE0A2)G7 zo!;lKTVNAZm}Bg>_?_o(a6f$KymW7V$!mWc&TE&Jq`Q9?_VRoANr6wk{`uiqE*tkf z`p16L7ta+gI(V^l-@EJHos53+R${g8l}{~S+TFUlZT+Cmt(&(#9p9vHu-)L(Gro~_ zkF0;>!$%I89e?D>z5YewKX>nK40ig0UF-gy4vmJ+?-AK#eqV|d6%MLuu*E%5qb-FDL-FCL!v#;=E6%UXgq1?>nt|JvIJ zPrj|$s#;@EvHdfj{O!I6gV!8yc;u@ErVY;T+zVaWkq{!f?XZ5&tC4S2Obz=diKpi# zJ^7*k>o0y#5>*=Yb=0>5@BhIVHXQAhFS&HUuVq1tLCc4WM2ntZbhIPpr>LJ&e|n}X zx$9(C-%hx{=RUbnx7xM(wd&8RFK;|QhR*M`E9HTO)7IUNg9U&%0F@~idL{du@$RJEb6$V%P{yIS?~>2$x?w(2-S+dJ69@PIy1)CUOYgN`X@2hX zM?X%#>bQUI*;T(kclU*H`DAF{`_0$CJ+%K&-B|X`C&QD%-wdBVVY&Qo2W;~?oZf4^ zT>n<@iE|%DxO+bLj;iIB$g{zd{Vw^t&rcSew7&Y>$%UyMse4m()Opj-s?KS4D1W=Q zWz_UufH;CV#oS;{d}98|-$d(0^SQm;4?2s*Ux|N}JgM(Fd#S#z!JG3FzS&SaXLRn= zny0(hIqbVIyGi=(?6A2ir)FD!%Z`~@+s{j{8l`S1n)1KZd`z0&yDT=nYW};A?42|9 zk;&us&LxgRuT{RD_)O*qgEYo<7jOFE}@GP1%j^f?wtg+-fqmC}vT*Fx5butj(({+zzqDvc&Vif*2ZIdW&8>Xm zFQ?;n$CpPv@x(U<{aXg!YnuDb=S`FS3#UF9yF5GgGye+*D}%}c4Nd)@EPi71TV`)< zuJS$M8`l2x)hK>wYN6g%)07k0<$+b@f9tH;{N}x0>)&4b)pX&Pug}@!_|&SP>b0BS zmA8F#F8W+Wt|qWAH0X`dm@VC-SwWw+{qVz!Pi$S`vg>fp*>iDa<6*z7nZ0_~+BfdT z?7sL`$jA0`cD-F1Us_zIEcdAz=vxu+_QjNmE$?-8_4plcx^vt2cH!-~(#bb}JK}dD z=7o!`+vNs7&As>4jk#~X=hu_?eR9l1)*qFBH2oo3yn6ASx0;WYULO74^`Ij8+mBbB z3(@@a?BsH1r4?(LYw4YA!ve*3LL_q`z3uPlAt<8SOw+t9WD&c01Q$A{S) z*1d4!)MHnRQa-#MIQV_b@7=%uadq#<$0ww>eYZT(=KkBp(nSZ~%YW|s6L$wQ4}Lo@ zeBQE?$A#3pPhDTL@yy~KEAsNcwR`T~RR7j*t{+-^DDT^V=bvle+r4GdU%hwzs@GPX zSoh-jyyxd6j`$ycd-Cj9&&?gHWR*1YWELZ5|S z?f7>7{J93^Cq~z{d~@wk#i3c}n^HrBEw?}T@#a-c-}EczL)D#fy{RwH|5mo;@L0m# z9}gdKKeO=6{F;_6&)q9h|I~8%qq|jitFN9pF@LX}+KUeyyP#Tg=1}YMNza=py!y$> zZDZ4qwte?ByiKb$zCo`NlKdzkX`d1@B>>(cWTO)yLlK0y?;&K)hMjMp_JMyI`Lg#5 z!J8Qp6!6ngMl3Nh>b{H-=%c<5{{Am@aMdU(Kz(9L+6ZBSm^Qwi5Z;fkWsT8ZPZ~%a z+PxTS#sx5ujbR$_K94umY$b$M3r0dS`t=GCtUcZ*Gds1;@+hH&2=w0(LYhvU{&=4E ztj6yR4r=6TFSC)V5fim!`PeP}p={pANj984Ea5}VRb#$mSwew+yn-ma`64ktxox_h zBWw%C9A(`Ik(B7z@GZQvtU=F`x0+@RI`yN4u<>k@{+SI7KOiyPZmMLOTNN`4jck~r zqXwa0g`C&%svUg(%a>N&J$A>99c69V5a25zJh29TNo2ba0KAQaLMB+-9wf3rdxOv} zar)(dQu}9>Rwm z9@hUIkb5u}C`l3CnEw76X~mmH9kzcx$(KdH7M8fm(=bi^VJk;l7-F0 zo3UVQSrZVTTF4bbftVc23M5rvfRa>z@hw8ecstrn$pJ|Z`t`GW#QiL&DazCY=n!Uz z7;5wZqtqVk_$)#kmwW-yb~e!(aZbkWR!wuWSh!yma;I92=6gK4)FK)Htrq zHOplsXWn=3YqINmRZ7u2KaU)DQn`8NT`9j}s9CC)skT$QkYeI3w2^+s8RKk+d{GH? zAl=M15WH0A5sm>y3v!{4Y6Rmv3H=wC;dD!nE1R=E#_JTo!?zyvrbxae2lM}~ccK>acW1ei-`|YPk zn(qdIs7m30&@{Udgp>(B0$ql`I!I}SJ*G=%rQi+1RPyn&N>Lx-*Ye${M{w5t&5)6O z8b`ATLd51oVUSITWwWLH8VES;GO?`%^G3hATDZ7^kj|aggfZCU8>jp00+G8B>U6hR z6oXNbH+|*~fRR>WW4S5XEj39q`vKjFp9KAdFeZ)H2VO&h{V3KiqzEC?jv!2?q)Xg~ zc~1^eUD(C#;ab&S71n|bfEBU1Z!U!7<9*oM*msiBAT z(87mw`bVgJiGMKve|f--`wIAv9R3&T*)M!?-q6UjI_$|cNADH2yi!zM5;>W(+I3iZ zH&f)wDmD5{ik>GHYQmn>G=Z=(@zR?Oge>xZqEo(<5NR1(Cdb0rKH@u(0>Z>{`XgR| zX&O6|Fu(wTqZ&fCk$_=HzF&rSr{G7(u?5w;yDq@yM89NN28~*68WCUTO31<2is#+2 zCd7X0f>DVjB)?bVGaifa_mEb7NT^^gc2gE$T#2YyZjblvg7G-UpXH_RuE6+@2iQ8Q zf-qmmbn!6W^ERS<4G5)a62gt*2)Uat?-RmV#B`w$0lN0UddYb`TNo~ z(`qe&!C>tp``01+;FJFzpc(|1h8V-NfA{fuLx;x|1@jM0O%7kYbHeD<$*BSRJYp_1 zi^5?t6dDHu^cSa2C(2-Igyg&Fx9hR@rfX8KbikyY-T3$!ynn=zW81+HO`1G`Z^n0= zW`s8aq3oG`)T?8IxqUp9@DWkObU7h;HoHP)351*|IFicXJ2qBYE6Rrx=%&Bj*n*JV zTQYWCpNq5;sV0h4;2S1so^cFtfOpah0W1+(#UL2hGTkMhu5KI+nZkOWPPD0S+DS;l zD=|Nu9s=I#dy?^C;M0A_TBZP$OXQdFUZ@mCSl}T936TQE|821Dq`Kce@8I#`*Hr@- z?`&U?c1_>?afQ}1rS$sODEu#Uf53<@S8TgCGv0pZ4+~1pD~cO#x0tmSsXI+V8B=1- zz_c;E&?W-Gh-%tV-2?{kW@cBn5wgWAwc{G6P_1#TKdew{k_d5tl+r4ee;d5Y6 z>c`6VwS>&|u<)M%0X6!nJ_e?P2_deEQPdUF=2re#U!s1A4hSP1o$c_V!k5WnRSC(s_2~T&sR8EaRux5U) zIb}*n;^mD?N}nO*RX;!Dy)O~+mGIR^hc6PcJ~Ym%6U)($W}6C?%7sco?iAeQ^ss;d zw_fkjY(ic(e#QG<7#3(hQ~3uZZ+S*wK2e2uXgr;eOErJh>vmyWH6L{s<9MgMJbc9y(OT&o_7WKOT-b~Cw}4N( z{+~W~!O$_;n3Z7$`d6@x*nbEcNe&1x7|(%;p>dT+pYf(~NT=+tt?Fna%i>pyKbh)2 z^-S(`=94pJrnbP~e@owo@Bfd1;qAZmem<{SW*qX{+gFBK&Rze_sjfeyTQk9QuTV!Z2gYSUykb({6pSzm5NaDhxXMd4^Xfk%WVX3kYX?l! zy=b|cMF|-7i`U&(ZxC`jL|yQVB^GY36R1qVcphYcG5}#`D^mru4`>3}W03sLDJ6mF z(20tTMiJ=-i`UZ#Vjt9${YNVGT!3hX!9#)6O@ zjV=eu+X*@JX7S?A&mqifN&Db9OkVzPgSPR6thv1ArI6boc>9dBdEPK(dzfAY@DSD_ zWDEj6w%P)fWoRggIEe4#p@}fLj#R*3==azHjgUUeZ7&;%3E_(toAQFD=Z~csfM7apytiR5#wjQ60yGQ} zy%ax~2!+zGiDV*bryl8m)`zVjCz)z&Wu>7hx{i6_MSjJbC!5wBM0h)Z=$(E?H-q~R zWeB%)M#5#-aP30}RN-fokgfAm=FRZ&Zq7RT&5`k{Urx!ZMis(VHi1bJ6yk6!xQ8j9 z@B`roHBz-97VIgi=fD_|9iz|6F>t4_kITmU5kXBrP|ib?Hw}WRD(|%!f;#%*Rd3we+xxk$wqV_ZW`AeRYz@<=0{m)SNQE(6|71s6Km28M8=Q4S1}d1-2; zwuDTWOjapu@ZLrgtmB4pO-cSJ2qhhsl$j+%BV&Y?v3;OT7@IX&57Rr;9}) zs5g=lYB3}n7s62nsRb5h4K|D!B|8b3F+PK33;3+}zmA`)m$2;ltp=aYm>8*XA;Y8} zKldNX5YgyNzf0H*@!Z!8DfkS6K6}6|Qta4$y0Q3d!F2FKch*sD&pCi#T}&!Bgx>Ng z$8ivLnT>zoKnx)lQku8T0AX)64;0S>A-Q-RZUU;WDUsNZr(p1a>1}h2(VoGqrQQ+o z5xI<01U&dYl^OcQ@w_Aobxxc$x|A|ZeR7sPz6)hjl(e6cx6<(h>?Or)6JRc}r;HJL z_;^CcuM{QmkaS^yG1rvf`&{0RGe^H6CTSWBAX2`KIRKbUJav?quUizX9>Dunp=`<( z-$$|`BD4!_yfsS&ELG@bL-BsAU`JzmA)7Tr?F5n&O344fY!`bHLWWcO9lkvJCWAx z2Vr=oTbulABw^TAsasbk!oq~@OrlT&STA&n%h7Ja1|abV?}9j}K^Qic_aWJ+%b9(; zwqQV;CRE5r|3s3h-4pBCA{PCKg;2uUfl!f5owyi#NH$Y@CxMVj{mGQRC_>)&(66Kc z^XWS3A7Rvl{JE)#TLQt=^U!rQLS31`6i)&F>0!Y}3dYxuoV8Q+EVO>VV!gY*#d^sO zha8WIvRx|7q-BUmd{cH}O#~s|#qPQ@sS=Yzi_4C4CO_s6Oy6vijvKlQg*ypf$6w?3L(rl>++PaBmVEY9-0!~=vUtkvlfTXq;uiNp^gQI6uk63FZgvth zd$3z)hA$+IfHNZm1J>d*D6YYa+p9cL&Cpk-&fFLgtsQ`SKM5YcAGGUf5 z!OT6pZzMl6$$%e{*9mgkOrjli$ZR1&_(08gxisQm+AhB$tVi!yI^NKVQ7f!i~nh z=VSCF=Gn*Io-ic(ld{P^rp9qWBQHVX-}hn1_WfJid8RWt}29WYrS@gQXX>93!=1&L57CS!(qFsja=;c^cIsbIcR z4;oT@J@2SUhP^H0Ot}OSD>Bky^}Mj~VX~EaVQf1aJ(UQ=By5pp8x~#+ISs-4Vxbtn z;~;@pq7dRr+!$yCQ^J(Oh<{0W`w4kn}1^uFt^@;(kCe=bU+T9ornl@)EnE;B1M#@x*pqW*E zKl@DiL!P!>515;ZxT(~7c%*`mdCt~lJy@T-aI|j>^HtX$uN_T;W)yL26~Ig6Moj5C zxCo7vZayIw2RfY9h8B{27YNHNIT4m1_ez zVwifR7Z7tN*hg_8)}$RTkg8Zb^6p-|`~EquFn+*VwB z(Gs2pa!BIu5em_-i}XMk32`DW1bC7*oL*o(LNDA{73w3{Nt*!spg%j&ZldF>EXK6) zw__hUK*(Q-J&8I;pxBs|xYW2fZ_l^I;j~!!-*X(B5y1O zw3WEBwStKVhznVyi0J}>TZqMYC?ul6+|^_${C3rku^u+aDcvls9myla?qi30GrAFP z>@-i4U_q=(Y%*O61R~Wrvb7kePmuHIPaKFPUkjK*?t3A*+M_QbIK$+)1MyfUj)}#4 zdhP+nGre#DI`DlvN-ye0gccZQ#!}0;PLLM;Sx?r3rqz+U^hVx`rZ_67W)M4K2koQ} zt4)r&!qj=7V$7OA6bN6!7YmdDg)nqw7~c#9j1W9&LHk;gqn$5YkgJ`sHw?~DtH8kF ztntuiAvl4iuY1}dQ=p^d78+hf2B7GhBBdVa!W@_mdDISs&Jgua_aR{+KXmeLH5i^Pi8I&7 zI`!EcIT+4_umhth7^f1c7fZCu_;fKCa<^sVB-ZVFublOIs89L3fVnsCC zy;x644Za^nhNl_d^$O!cE$Wms_)aJnN@?K8jKf4J0Q<=RGXR*+6wm`Cq`y(no1QG< zy&y#{fHI2i6zPB!q=G32EF!9|SnS^mnd279usCzIg>A@KcXeL`v zylpT!% zQY-Zvm7|}d%5E+QfMqLbE((d10;&OgJQF`f$LYiFa18Hj5JUF>4ns~MNkS7?1H`b! zdb3Wb`wOmu72ZeVcq&b0V(0ZFzADs_P`7pNEtyH z1`I$6P6UadUK$RGt4JyO zc|*gu0S>Su6AkF!z&7(iK&y}}oi;^#JfF&!U^1#? zF`+s~2$dD$1Dok&4igx-7@FUxfjfW9fYtB9nSE`4pfVi&&A5FsAVPfDlVfR^s7CE0 z9R#!@jvNp`3gaZKJdJFJgl<4;a;&uVaVoJO&k*(dA)PVsqi|A)(t^73z6rqL9`$AjiK{fB0|P^d?(*2(C^xymv!i;V$`fY z;8tcE#RqBhK$??+fHcxgp7CY;5aAF;&S>{A(n4%#4h?R&o0{S)n>ICqz^EM3{efT+HPJZHv*am25V-GVv;ax!y zMx5^$X~-j+IU$YD*Rj^mVEhCti7na3oK#m!At8KVmmYBv_)}OL~}gKr6_% z1^Su6*^EP-l5qs}r3mZXQKyE&3-BSqN-(AbRA9%)~kl4%o-r5ktC3>Kqe&AEa~I?zsq*`j+zhLA>~Ag4JuMDSAWcr-=F;k!zql6p(fh&F-tr=|_< z_@1MiG;+tsMQ5&u|XBF89t6G5YZ{rAOzb1} zydH|&WA5tuzq;YU_{>Q773*1HAKpHS?3~d#0#|LPbn>^Q+cM6N&lsg z%I8VE&!Ppe5aC-P+8;i+PzRU%KH>ENAH*X;Nn(j4VloK@xn1>dE zTO}x{KRmziWVDeuqWNwH1k`$Y`4}gV7S!opMj6%3I8%nfV0Fppys<*G*b8u6ymndz z&^?xKxepeiw7_x(B>s9{clqKt&`H{t7l3tlNZX1Z0e(N$9n8{!fJ|;z#?JM}_YO>r zW-TD{3EI6iMaU#cm`5g=?bP;@<|Wmr+DIm2t8qQXb7Bx3oyQewaDHV?csWh_sZ1v_ z+OV)cy)HzL`QWH?By_${2aX@Szx!wq47r(hyK7-22IRy+DiDMl5}e?v5g{KD^#I26 zAf7mE(#8dh1hA2TUjtYy6j3h@c3+>m#n2{t2N0XMb{j@Em~m$uP{$sk9VeQs6~a(| z;1)x^cr8Pz$pU^jVy&W#hp*Vmw4&|{-GJn>xJYqequFCCxu2 zEVQg97{f;EHsew(exs=uOJGF3Iwd7MJR$APO0?-~or4DG6!2x^1skRWFkR!WJ)lcs z1C$-W!%Z3_gQlG8_@hd9EBMxPDsdqQ&6KN*=h_pJzCCNtfGJFxt$x`oK&D+5IK=^m zK_e8HuO0aU&_PzIXT)|)TQQGxKAL&q-0?|9Nip1&Aj^@whizA&cL$)DFf^P%e3XbHzmb9NGZao5}ZxsYR8Ay2fvR%yP9dd z#8&YV7K9fCGbfRNB zJ_SUGk+5xwN{*o>#{?6@>CE9%FoBUK8<8bpym(V{Um#{K1S;c!@LJY|21-mXvC(Qu zAH%9GQTKtoT6Y!mV8WP$L#Y=#PWLOA`oMobdUmrF4Yg3ZFI zG{8DGfCCVfs16uVfzA{8^9g`zR;%$OLF_gP0T#y9aYk4V31N>>dLna>0nCX>{_Iwf z!_9OKf30IJ^K5mvB#l~|5Z-sZ(09ea73r&DPg<cCnS&MOh`EI-Uxl6>JL5*!_D zF}=OP2eY+2B#+Nv`;_^BWrDM^5De)UtrLK-rdb|CulvN``QWQTaC$-H+zfdx`Z>zS z?}P#Y#dOzXGhivdM{g%44&;@hSimZ_ei95M*-Rh3Mnkq@s|3PG1lrSNAd=ww=rw-c zffm#&kz%O?K~$`o1!0-Z2=q3i{h_x;eX2fu??K$DCXoOn=>741316c1=Gs735Ecf= zi!8-^XX4B_13uWyp+8oP73xONBO^eXO`l)jwn903l z94n?U0owKZ$1V@|(k;V;xFRYf(QnalAM0CGtT#vPujVhTB~MTFLBwun9{9i8iU|Oq>|ZM>PZ? zBvc&fCuX!Sc@VsZZ`r_tYdyEGJ{Qu zxr_TOn){>{+<>{(XGl4A33Og=zXke3B8+8NU zj0=uC||QdfXk1F)YjY;6+%JkJC2I)yKs*zk#hY zun=*yc%{)wjMLB8u|Q1SNP_r6AezC%@K9y^!B0Po22Ol%i)s)En+wJQZ4ZD3fgvE8 zitYv4&3gcl2As6+Pl6E4(IZ@2y7|*UQM+k(Qx6~Ya;6d6Fy;{o`B?Oa`O&83D{w~z z8jZ+*0QoBFR-0)Vl#iXR9OD)6i8#ZAKg;w$w{RSxW@%jVYTfd#OLa3n|AnFA z7G(ad5&c3%M8^e+Rnt1Y77YDpS>n;xalPt9d1J9IUW*5HoT<~o<}fS`BPOGSrD9)P zL+X0jLAtiCsa#rRI+ghRGc2=5$kKpto~xG>8l22IBC;T!;B*P`;hT~6B21=WD8YgR zUg*@pVs_i^aUXRh6$Uob_wkT7c8jn4;^VeTo6=fYUrL0GY8 zmccmYArgCIFhXN1%AS{rljJp-kKD%mRg&86Fh)c(E_0)JO;?KA#Aw&l3f6j6_$q@d z;c=|;)U~It>a^z^LCoSPV0;eJ;Y^c&A2!GTptG_({pk0VWTdJ8;Q655r4p3|JqL-S z-h#TAG_uu%EYzRBO$I{Br^c8t5P11F%Pu=!fC+DVdH);}#7WLi#Vx3Spl9~RaFtlF z3u{BYFW!hbMooYwjnoR;v5rg_0`z111zy~Q1v`@hRWIK6Fg{d*kl^4%@qoh!^za=p zm1x~#YFe-o9EocGgpA%0WFa7sZyHh(_-;1ThQrx5(t1gKB!V}?JdOBspEk6+;}Qk% z=R-&(Ym7QBw6SGiKn7pTU|y2UxTssvUcee^JOBrTG`0)v;lj{#FwT9vq-sqBoEgF5 zs^2`^y4m&a;n^LKlTOp8Om-l*wd2uoYiIPc5IaqwAMc{^r`d2(u_j&Wj`3<(r!g<2 z$~vCR6^-|+wmkLzQL%4%`o}t-(R3yPYaS+R1}3DBl8~hKcP#kG^^#2U{RKpoa}B|Q%gyc9QbXRn1yI_mdpKzLKdoFYjbY-;<>Z93&( zq^C~xXbuQHD8xx>@LeE@5e1^oO?%R_d9IXkHEjl>OGO-Yx0y=fudx9x-5L|wIO=I^ zp?V+QXOeW_0=F0mltHvxG1>^5xDZzc3kB|UHz3+0-){6jCWJGtfZG_B-mDb7L`Et# z-scG|V&E^N@H~4A^>k7$N&r52nqa!A;}3XJ7gThtHCT$NDB(x=){Jy5y@LxzHU8 z4-_Ctyo1Jtj{xFbLZmbd1l}$-BwnZwsckt(B8ed>pcfG(h_Vdui@KRjRJfpD;k42M z1n07d{x~$m+R$3s69?1Q-s>^1AM`9Bj#AXwYVOz_3k<-k&1DAwx=24ejCN1f3@#%i z40l3+hnD;bK%Dd83{ZR0NI*!f7X|_Y4}FFbw3eh(Z%q@&bh8jRu2CS`dtgRno2DM` zH>>?rAe^b6N&IaPSejy(HG%K@lPGbgP{_~$0^4i5$f1RBgt<$!xclchxFIf}T$~YX)Ccw*X6oJ!xFYZtD zQAC6?ksJi;5EV{f;i4`+ah5+2PGp=_AwZ}bnWJRXRb$5nF^}O=OEZK+eD`(^*NF-c25*DKvH_X#^FB! z3j4H2x(!$bWlSeg^BL$b#rdBl;AZSrRv0fuFjn^fh6th4M!?%jwRH@pQq4|A-@$xd zHUaXca^#{WoKKrr!)a+qESPl0{7Qac0SLybWvP zmW`(I6_X}P92f$W@S_rc;A_StiPi!Z2|<#jnBSRUr(qFZANH@G8Ij+*Wq)e&jk=l- zh(5O%=^PA%;tfb2jxvN^Lj!`^NBsak1mNtR=f0Swx97c|`(694-EntQoJeS8Wozwa z#8{Ic@aX6ytemE>pE2Sv0nQs7skbC*6OGWz&%?vRGD$NmjAXdM7~{R&wsG0L&vE&< zZid4tOWdyS4|iUYPRPfiPj}qdNXXFWaE+`I+mBc;?<=FRMj1d!(!1NP+Kc^nHgzu--~ZkrEOvvYWD$HDa7t zVVn}~s!y+9Zxh`3M^_!~!_CR(YQ6d{BxC$2!u4Z*??!Kxr6;_l(v2D^)~Cu;%0yr= zn8*Y^Cf3^QHGcj3Lm2{8k{-!bCCk0NZy=QC!E!%d7RN*k&I zLpHx{@hAeOxeiwJZ!F1>>efng%=7)CeO@Mx*t08y5%VF8((NB^*UD4!#zjt2{J9F@DXx8{o@wx?s6tvu~9Y>(1anmoiSqpdEb*zM% zGB%XSQ`UkpX&h%(fs27d7xN6G;CEX8;N2ks1HxXibpS#5L0;mKiFA2Q^_iK#_cxt0 z#^NmClV;q-dw|j2yd8DHaTlds8@O69+Di~jJ9aQHEQp@@+Y#d8`J@S3Io!13>)^*_ zelM)jo%iUa5sv;{2vVmI80~|3|I35qPy`MK$r7vG#j zAo{E4TfuLFAVHY|*(waX%7Lf)Nv=WfI%WM0<$|MK!-%&V(^?L`EB26ZMLvJ9*% zPGvm@^T18^zy?pVz)9MpU5F&TZzgylX#>G@Xn8D;Rm%HHh&T63I;CEB^~GOFMuJ|I%!z5)%%C+>mr3flt7-1M=n9A6*ocJ+3JFxp?+? zW8Km7E|*Jn{Y^sg_vR){1itITpB*GYB9qkNYA{SUT_=`q?uxLhAlkpg@PGu@{Maqd)TitFzfcn_(cX$1Q zOv>onJFC&I$evcsDS^}TivOB-zk|j&o#ecRK*(yN5T+G)NYxhfj9sHcmxSfI-`Ib;e{SR zJKV;%#w8F#Cp8y6TpWBM=&CHE2cSJDKiYI3IEL|L|vgnB9w&J#v8SqWyn<+sVXEvSs`;(a}E7k=Q zB#5+EQN^sZhaNO(!bAaca`C=ek)~6O_sNW_${D63pKYB6LAhdna2kTZ1`Dn1J_tku z^3Na$>topFZGh~3;?Bl!j8oU~d-n2Z#7Vs~cbX02`y5RQe*p8B3%>LifOzpEB14Qf z!j~F=F>HgzR0Di&XQ`WX3Sbhwq@B7LN0OzRp#q`QwyJS`cR-0cM~UxQBOzD90_Gwn z>jkVvQpFT|MDX+7VyBMCRj0!*>zh6?E9u?T7w(aNU<9WB?>^uO9w4B7)DPf40%(Z# zq5Xgq)foIJsfmhPoDw4{9`aEh`ePGs=4|?oY-=5<-rZEOv&MKj@oi7JYAl13BLYZ3 zNyO(YZa#r<$YWL0EG>>sD{#XEXV$o6S_y*7kRZ3m_$DMqZ4DSAL`Y4*xLy*WP5|Ko zXOD|}3E7vs|KP$ZI%M&+J0gP(;GpT$qr*zBtjfwduRyRN_=T9YG%(28)C*w z1LVuPx!~{XzP_5dMbGKopAA2-{Oc~6f^K31dq_`=|6iVm?R0+nJgncZQLWRG7vblF zmVXsO;JeJr-KC|&c)LwDJ%YS&Zxs0n_ub7i!D7y_%$VZ+G zdkoUx+RM>6z?CC`j{jj1oIeLFCy9yBYLc31V!;TZf_UhFQLIdyOHUk!hek)#?YMP+ z@>g>U5RAAQWt)W}yIeBjG6w{&9j;Z+_d>f=!cBpJq=2{KfG1-(f>ZL9&+m60jXaNiU08MS6>Ou)ee6<|I@2RjW!!M z2ELQ1Q@G)Zd%a^Izx4X3BmyTTt|SThrxEQ5pfM!Y41`H1k+|&$H&Sq?-j%wCDbu8a zFl)(XH8faUtdY;QMXo4GuU?Z23D039f-!_^tt5}$+2!J8qx1ktq!z;Ht$R@jaUZh* zp>q*3S^*Z|BxN7q5H!3O3}JDPo-)h{*=Cq5X_1aM0?njn70xN5nCqhnfl)hUsts34 z_7)y7NVeJd;ScF+#;d9w@a2C<_`id055|L%{0}@-RcWeBf@6nitG6ch;IG%|U-&uf z#K9L|#vnbr+3o#S3HPQ^Th_$^rAzeiC5ua=s;sAtuO{3~;sW)2`52mmCf=+e*`~eY zD}i=JfKgo}pNHm<4rc8nOdD=(HPh4yvs7r6R-?TLmouR$!T>)^13FVTw zUrKmlL=UoHszQ)qt+BS5mqI)ys-Ez(ujf4f7+Lg%!;`u#dyafo|AlNa_|TX2b}hjQ zh;63Lo>oO0#-R@w{6F>FXUIQe%ft5nS4j2n!G$n{Lng$FknQU1ZOWiSazy-+Y41bd z{dMQ?HMQ%k#{JiS{z%GtncayTEfe`KZ@(2cn8qhK$p!~+_X#=XxUDqqEM)4(Px?

1C%W{GnYqV@sFoVYo5 zj8&^**04b>?|Agl)xQKW8uwa*MI`WvDb*dfid)CNr2i`qh*K>Riua%Y+x7qB9`et| hc`yy#L$Cu0LKy34^w{#-S84mpF9mp)Esfav{{he9dzJtI literal 0 HcmV?d00001 diff --git a/src/render/assets/img/glonass.png b/src/render/assets/img/glonass.png new file mode 100644 index 0000000000000000000000000000000000000000..63d87d27e2c549eea4539a42e0fc8ba14a14bf4e GIT binary patch literal 22837 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 sK(>8T5~d`u3?vLKM%vws^6h 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 WgsD!MmN+$p$nu#L-g#ajd;bq}soL8B literal 0 HcmV?d00001 diff --git a/src/render/assets/img/unbeidou.png b/src/render/assets/img/unbeidou.png new file mode 100644 index 0000000000000000000000000000000000000000..6fab9f85567a1048fcf0aa10c5123970535c0b87 GIT binary patch literal 10993 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 Kj!WAQnDpPV3XIJF literal 0 HcmV?d00001 diff --git a/src/render/assets/img/ungalileo.png b/src/render/assets/img/ungalileo.png new file mode 100644 index 0000000000000000000000000000000000000000..0ac05ba60b7296591f2ae7015421ef8f9fcefc41 GIT binary patch literal 10993 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 literal 0 HcmV?d00001 diff --git a/src/render/assets/img/unglonass.png b/src/render/assets/img/unglonass.png new file mode 100644 index 0000000000000000000000000000000000000000..3cf5b83cd8075573774785d0af4fb5e5bde7ae1b GIT binary patch literal 10993 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 TAOY#ws$=|^$-(KPX0G^OJK+>Z literal 0 HcmV?d00001 diff --git a/src/render/components/CenterCmp.vue b/src/render/components/CenterCmp.vue index 066ff64..75eef78 100644 --- a/src/render/components/CenterCmp.vue +++ b/src/render/components/CenterCmp.vue @@ -18,23 +18,23 @@

-  北 斗 {{ bd_satellite_count }} +  北 斗 {{ bd_satellite_count }}
- Galileo {{ ga_satellite_count }} + GLONASS {{ gl_satellite_count }}
- +
- {{ gp_satellite_count }} G P S + {{ gp_satellite_count }} G P S
- {{ gl_satellite_count }} GLONASS + {{ ga_satellite_count }} Galileo
@@ -45,7 +45,7 @@ import Ring from './Ring.vue' import Decoration1 from './Layout/Decoration1.vue' -import { ref, computed } from 'vue' +import { ref, computed, onMounted } from 'vue' const bd_satellite_count = ref(0) const gp_satellite_count = ref(0) @@ -66,6 +66,28 @@ const update = (bd_satellite_length: number, gp_satellite_length: number, gl_sat ring.value.update(bd_satellite_length, gp_satellite_length, gl_satellite_length, ga_satellite_length) } +let bdText, glText, gpText, gaText; + +onMounted(() => { + bdText = document.getElementById("fontBd"); + gpText = document.getElementById("fontGp"); + glText = document.getElementById("fontGl"); + gaText = document.getElementById("fontGa"); +}); + + +const changeColor = (change, id) => { + let idPie = [bdText, gpText, glText, gaText]; + let colorPie = ['#ff3232', '#00ffff', '#6600ff', '#00ff66']; + if(change){ + idPie[id].style.color = colorPie[id]; + }else{ + idPie.forEach(element => { + element.style.color = "#ffffff"; + }); + } +} + defineExpose({ update }) diff --git a/src/render/components/Clock.vue b/src/render/components/Clock.vue index 60ae8f7..96b8d00 100644 --- a/src/render/components/Clock.vue +++ b/src/render/components/Clock.vue @@ -1,5 +1,5 @@ \ No newline at end of file +defineExpose({ update }); + diff --git a/src/render/components/Ring.vue b/src/render/components/Ring.vue index 3d9936e..1f3fc7e 100644 --- a/src/render/components/Ring.vue +++ b/src/render/components/Ring.vue @@ -7,39 +7,252 @@ import { use } from "echarts/core"; import { CanvasRenderer } from "echarts/renderers"; import { LegendComponent } from "echarts/components"; import { PieChart } from "echarts/charts"; +import "echarts-gl"; import VChart from "vue-echarts"; import { ref, reactive, onMounted } from "vue"; -use([ - CanvasRenderer, - LegendComponent, - PieChart -]); +use([CanvasRenderer, LegendComponent, PieChart]); + +const emit = defineEmits(['changeColor']); + +const ring = ref(null); + +// 生成环形的曲面参数方程,用于 series-surface.parametricEquation +const getParametricEquation = ( + startRatio, + endRatio, + isSelected, + isHovered, + k, + height, + size +) => { + // 计算 + let midRatio = (startRatio + endRatio) / 2; + + let startRadian = startRatio * Math.PI * 2; + let endRadian = endRatio * Math.PI * 2; + let midRadian = midRatio * Math.PI * 2; + + // 如果只有一个环形,则不实现选中效果。 + if (startRatio === 0 && endRatio === 1) { + isSelected = false; + } + + // 通过环形内径/外径的值,换算出辅助参数 k(默认值 1/3) + k = typeof k !== "undefined" ? k : 1 / 3; + + // 计算选中效果分别在 x 轴、y 轴方向上的位移(未选中,则位移均为 0) + let offsetX = isSelected ? Math.cos(midRadian) * 0.2 : 0; + let offsetY = isSelected ? Math.sin(midRadian) * 0.2 : 0; + // 计算选中效果在 z 轴方向上的位移(未选中,位移均为 0) + let offsetZ = isSelected ? 0.15 : 0; + // 计算高亮效果的放大比例(未高亮,则比例为 1) + let hoverRate = isHovered ? size[0] : size[1]; + + // 返回曲面参数方程 + return { + u: { + min: -Math.PI, + max: Math.PI * 3, + step: Math.PI / 32, + }, + + v: { + min: 0, + max: Math.PI * 2, + step: Math.PI / 20, + }, + + x: function (u, v) { + if (u < startRadian) { + return offsetX + Math.cos(startRadian) * (1 + Math.cos(v) * k) * hoverRate; + } + if (u > endRadian) { + return offsetX + Math.cos(endRadian) * (1 + Math.cos(v) * k) * hoverRate; + } + return offsetX + Math.cos(u) * (1 + Math.cos(v) * k) * hoverRate; + }, + + y: function (u, v) { + if (u < startRadian) { + return offsetY + Math.sin(startRadian) * (1 + Math.cos(v) * k) * hoverRate; + } + if (u > endRadian) { + return offsetY + Math.sin(endRadian) * (1 + Math.cos(v) * k) * hoverRate; + } + return offsetY + Math.sin(u) * (1 + Math.cos(v) * k) * hoverRate; + }, + + z: function (u, v) { + if (u < -Math.PI * 0.5) { + return Math.sin(u); + } + if (u > Math.PI * 2.5) { + return Math.sin(u); + } + return Math.sin(v) > 0 ? 1 * height : -1; + }, + }; +}; + +const zeroEquation = getParametricEquation(0, 0, false, false, 1 / 2, 0, [0.8, 0.75]); const option = reactive({ legend: { - bottom: '10%', - left: 'center', - selectedMode: false, - itemGap: 12, - itemWidth: 35, - itemHeight: 20, - textStyle: { - color: 'white', - fontSize: 16 - } + bottom: '10%', + left: 'center', + selectedMode: false, + itemGap: 12, + itemWidth: 35, + itemHeight: 20, + textStyle: { + color: 'auto', + fontSize: 16 + } + }, + xAxis3D: { + min: -1, + max: 1, + }, + yAxis3D: { + min: -1, + max: 1, + }, + zAxis3D: { + min: -1, + max: 1, + }, + grid3D: { + show: false, + boxHeight: 20, // 厚度 + top: 0, + left: 0, + boxWidth: 100, + viewControl: { + //3d效果可以放大、旋转等,请自己去查看官方配置 + alpha: 45, // 角度 + beta: 135, // 环块开始位置角度 + rotateSensitivity: 0, + zoomSensitivity: 0, + panSensitivity: 0, + autoRotate: false + }, + light: { + main: { + color: "rgb(85, 84, 84)", // 主光源的颜色。 + shadow: true, // 主光源是否投射阴影 + alpha: 80, // 主光源绕 x 轴,即上下旋转的角度 + }, + }, }, - color: ['#FF801C', '#F5FF46', '#00FE65', '#00FEFF', '#ffa800', '#ff5b00', '#ff3000'], series: [ { + name: "北 斗", + type: "surface", + parametric: true, + wireframe: { + show: false, + }, + shading: "realistic", + itemStyle: { + color: "#ff3232", + opacity: 0.5, + }, + pieData: { + name: "北 斗", + value: 0, + startRatio: 0, + endRatio: 0, + }, + pieStatus: { + selected: false, + hovered: false, + }, + parametricEquation: zeroEquation, + }, + { + name: "G P S", + type: "surface", + parametric: true, + wireframe: { + show: false, + }, + shading: "realistic", + itemStyle: { + color: "#00ffff", + opacity: 0.5, + }, + pieData: { + name: "G P S", + value: 0, + startRatio: 0, + endRatio: 0, + }, + pieStatus: { + selected: false, + hovered: false, + }, + parametricEquation: zeroEquation, + }, + { + name: "GLONASS", + type: "surface", + parametric: true, + wireframe: { + show: false, + }, + shading: "realistic", + itemStyle: { + color: "#6600ff", + opacity: 0.5, + }, + pieData: { + name: "GLONASS", + value: 0, + startRatio: 0, + endRatio: 0, + }, + pieStatus: { + selected: false, + hovered: false, + }, + parametricEquation: zeroEquation, + }, + { + name: "Galileo", + type: "surface", + parametric: true, + wireframe: { + show: false, + }, + shading: "realistic", + itemStyle: { + color: "#00ff66", + opacity: 0.5, + }, + pieData: { + name: "Galileo", + value: 0, + startRatio: 0, + endRatio: 0, + }, + pieStatus: { + selected: false, + hovered: false, + }, + parametricEquation: zeroEquation, + }, + { + color: ['#ff323200', '#00ffff00', '#6600ff00', '#00ff6600'], type: 'pie', radius: ['40%', '70%'], startAngle: 180, silent: true, label: { show: false, - position: 'center' + position: 'center', }, emphasis: { scaleSize: 25, @@ -48,7 +261,9 @@ const option = reactive({ color: 'white', fontSize: '28', fontWeight: 'bold', - formatter: '{c}\n\n{b}' + formatter: '{c}\n\n{b}', + textBorderWidth: 1, + textShadowBlur: 24, } }, labelLine: { @@ -61,37 +276,84 @@ const option = reactive({ { value: 0, name: 'Galileo' } ] } - ] + ], }); -const ring = ref(null) -const COUNT = option.series[0].data.length -let highlightIndex = -1 -const highlight = () => { - ring.value.dispatchAction({ - type: 'downplay', - dataIndex: highlightIndex - }) +const getPie3D = (sumValue, pieValue, internalDiameterRatio, height, size) => { + let startValue = 0; + let endValue = 0; + // internalDiameterRatio(0~1之间的浮点数):内径/外径的值(默认值 1/2) + let k = + typeof internalDiameterRatio !== "undefined" + ? (1 - internalDiameterRatio) / (1 + internalDiameterRatio) + : 1 / 3; + // 向每个 series-surface 传入不同的参数方程 series-surface.parametricEquation,也就是实现每一个环形。 + for (let i = option.series.length - 2; i >= 0; i--) { + endValue = startValue + pieValue[i]; + option.series[i].pieData.startRatio = startValue / sumValue; + option.series[i].pieData.endRatio = endValue / sumValue; + option.series[i].parametricEquation = getParametricEquation( + option.series[i].pieData.startRatio, + option.series[i].pieData.endRatio, + option.series[i].pieStatus.selected, + option.series[i].pieStatus.hovered, + k, + height, + size + ); + startValue = endValue; + } +}; + +let highlightIndex = 0; +let reset = false; +const highlight = () => { + let colorPie = ['#ff3232', '#00ffff', '#6600ff', '#00ff66']; + reset = !reset; + for (let i = 0; i < option.series.length - 1; i++) { + option.series[i].itemStyle.opacity = 0.5; + option.series[i].pieStatus.selected = false; + option.series[i].pieStatus.hovered = false; + emit('changeColor',false); + ring.value.dispatchAction({ + type: 'downplay', + dataIndex: i + }) + } + if (reset) { + option.series[highlightIndex].itemStyle.opacity = 1; + option.series[highlightIndex].pieStatus.selected = true; + option.series[highlightIndex].pieStatus.hovered = true; + emit('changeColor',true,highlightIndex); + ring.value.dispatchAction({ + type: 'highlight', + dataIndex: highlightIndex + }) + option.series[4].emphasis.label.color = colorPie[highlightIndex]; + option.series[4].emphasis.label.textBorderColor = colorPie[highlightIndex]; + option.series[4].emphasis.label.textShadowColor = colorPie[highlightIndex]; + highlightIndex++; + if (highlightIndex >= option.series.length - 1) highlightIndex = 0; + } +}; - highlightIndex++ - if (highlightIndex >= COUNT) highlightIndex = 0 - - ring.value.dispatchAction({ - type: 'highlight', - dataIndex: highlightIndex - }) -} onMounted(() => { - setInterval(highlight, 3000) -}) + setInterval(highlight, 2500); +}); const update = (bd_val: number, gp_val: number, gl_val: number, ga_val: number) => { - option.series[0].data[0].value = bd_val - option.series[0].data[1].value = gp_val - option.series[0].data[2].value = gl_val - option.series[0].data[3].value = ga_val -} + option.series[0].pieData.value = bd_val; + option.series[1].pieData.value = gp_val; + option.series[2].pieData.value = gl_val; + option.series[3].pieData.value = ga_val; + option.series[4].data[0].value = bd_val; + option.series[4].data[1].value = gp_val; + option.series[4].data[2].value = gl_val; + option.series[4].data[3].value = ga_val; + let sum_val = bd_val + gp_val + gl_val + ga_val; + let pie_val = [bd_val, gp_val, gl_val, ga_val]; + getPie3D(sum_val, pie_val, 7 / 10, 1, [0.8, 0.75]); +}; - -defineExpose({ update }) - \ No newline at end of file +defineExpose({ update }); + diff --git a/src/render/components/SNRView.vue b/src/render/components/SNRView.vue index 1013e9c..bcf3434 100644 --- a/src/render/components/SNRView.vue +++ b/src/render/components/SNRView.vue @@ -5,154 +5,158 @@ \ No newline at end of file +defineExpose({ update }); + diff --git a/src/render/components/WaterLevel.vue b/src/render/components/WaterLevel.vue index e4e552c..5166f2e 100644 --- a/src/render/components/WaterLevel.vue +++ b/src/render/components/WaterLevel.vue @@ -1,9 +1,9 @@ \ No newline at end of file +.animationText { + font-size: 0.5rem; + line-height: 1rem; +} + diff --git a/src/render/page/InfoMonitorPage.vue b/src/render/page/InfoMonitorPage.vue index 0c83703..836d7f3 100644 --- a/src/render/page/InfoMonitorPage.vue +++ b/src/render/page/InfoMonitorPage.vue @@ -8,7 +8,7 @@ - +
@@ -21,7 +21,7 @@ - +
diff --git a/src/render/page/SignalMonitorPage.vue b/src/render/page/SignalMonitorPage.vue index 74789b0..3447775 100644 --- a/src/render/page/SignalMonitorPage.vue +++ b/src/render/page/SignalMonitorPage.vue @@ -4,10 +4,10 @@
- +
- +
diff --git a/src/render/page/StateMonitorPage.vue b/src/render/page/StateMonitorPage.vue index 141ce75..1920817 100644 --- a/src/render/page/StateMonitorPage.vue +++ b/src/render/page/StateMonitorPage.vue @@ -4,16 +4,16 @@
- +
- +
- +
- +
diff --git a/yarn.lock b/yarn.lock index 7ee8ec1..3864225 100644 --- a/yarn.lock +++ b/yarn.lock @@ -68,13 +68,25 @@ dir-compare "^2.4.0" fs-extra "^9.0.1" -"@malept/cross-spawn-promise@^1.1.0", "@malept/cross-spawn-promise@^1.1.1": +"@gar/promisify@^1.1.3": + version "1.1.3" + resolved "https://registry.npmmirror.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== + +"@malept/cross-spawn-promise@^1.1.0": version "1.1.1" resolved "https://registry.nlark.com/@malept/cross-spawn-promise/download/@malept/cross-spawn-promise-1.1.1.tgz#504af200af6b98e198bce768bc1730c6936ae01d" integrity sha1-UEryAK9rmOGYvOdovBcwxpNq4B0= dependencies: cross-spawn "^7.0.1" +"@malept/cross-spawn-promise@^2.0.0": + version "2.0.0" + resolved "https://registry.npmmirror.com/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz#d0772de1aa680a0bfb9ba2f32b4c828c7857cb9d" + integrity sha512-1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg== + dependencies: + cross-spawn "^7.0.1" + "@malept/flatpak-bundler@^0.4.0": version "0.4.0" resolved "https://registry.nlark.com/@malept/flatpak-bundler/download/@malept/flatpak-bundler-0.4.0.tgz#e8a32c30a95d20c2b1bb635cc580981a06389858" @@ -106,75 +118,104 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@serialport/binding-abstract@9.2.3": - version "9.2.3" - resolved "https://registry.npmmirror.com/@serialport/binding-abstract/download/@serialport/binding-abstract-9.2.3.tgz?cache=0&sync_timestamp=1632459687965&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fbinding-abstract%2Fdownload%2F%40serialport%2Fbinding-abstract-9.2.3.tgz#e7dd273357b6a698af7ad58db6f57f62443a0acb" - integrity sha1-590nM1e2ppivetWNtvV/YkQ6Css= +"@npmcli/fs@^2.1.0": + version "2.1.2" + resolved "https://registry.npmmirror.com/@npmcli/fs/-/fs-2.1.2.tgz#a9e2541a4a2fec2e69c29b35e6060973da79b865" + integrity sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ== dependencies: + "@gar/promisify" "^1.1.3" + semver "^7.3.5" + +"@npmcli/move-file@^2.0.0": + version "2.0.1" + resolved "https://registry.npmmirror.com/@npmcli/move-file/-/move-file-2.0.1.tgz#26f6bdc379d87f75e55739bab89db525b06100e4" + integrity sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@serialport/binding-mock@10.2.2": + version "10.2.2" + resolved "https://registry.npmmirror.com/@serialport/binding-mock/-/binding-mock-10.2.2.tgz#d322a8116a97806addda13c62f50e73d16125874" + integrity sha512-HAFzGhk9OuFMpuor7aT5G1ChPgn5qSsklTFOTUX72Rl6p0xwcSVsRtG/xaGp6bxpN7fI9D/S8THLBWbBgS6ldw== + dependencies: + "@serialport/bindings-interface" "^1.2.1" + debug "^4.3.3" + +"@serialport/bindings-cpp@10.8.0": + version "10.8.0" + resolved "https://registry.npmmirror.com/@serialport/bindings-cpp/-/bindings-cpp-10.8.0.tgz#79507b57022ac264e963e7fbf3647a3821569a20" + integrity sha512-OMQNJz5kJblbmZN5UgJXLwi2XNtVLxSKmq5VyWuXQVsUIJD4l9UGHnLPqM5LD9u3HPZgDI5w7iYN7gxkQNZJUw== + dependencies: + "@serialport/bindings-interface" "1.2.2" + "@serialport/parser-readline" "^10.2.1" debug "^4.3.2" + node-addon-api "^5.0.0" + node-gyp-build "^4.3.0" -"@serialport/binding-mock@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/binding-mock/download/@serialport/binding-mock-9.2.4.tgz?cache=0&sync_timestamp=1632854408220&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fbinding-mock%2Fdownload%2F%40serialport%2Fbinding-mock-9.2.4.tgz#8adf34742abcee80919e19f1266423ce1c9407e2" - integrity sha1-it80dCq87oCRnhnxJmQjzhyUB+I= +"@serialport/bindings-interface@1.2.2", "@serialport/bindings-interface@^1.2.1": + version "1.2.2" + resolved "https://registry.npmmirror.com/@serialport/bindings-interface/-/bindings-interface-1.2.2.tgz#c4ae9c1c85e26b02293f62f37435478d90baa460" + integrity sha512-CJaUd5bLvtM9c5dmO9rPBHPXTa9R2UwpkJ0wdh9JCYcbrPWsKz+ErvR0hBLeo7NPeiFdjFO4sonRljiw4d2XiA== + +"@serialport/parser-byte-length@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-byte-length/-/parser-byte-length-10.5.0.tgz#f3d4c1c7923222df2f3d3c7c8aaaa207fe373b49" + integrity sha512-eHhr4lHKboq1OagyaXAqkemQ1XyoqbLQC8XJbvccm95o476TmEdW5d7AElwZV28kWprPW68ZXdGF2VXCkJgS2w== + +"@serialport/parser-cctalk@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-cctalk/-/parser-cctalk-10.5.0.tgz#0ee88db0768a361b7cfb9a394b74e480c38e1992" + integrity sha512-Iwsdr03xmCKAiibLSr7b3w6ZUTBNiS+PwbDQXdKU/clutXjuoex83XvsOtYVcNZmwJlVNhAUbkG+FJzWwIa4DA== + +"@serialport/parser-delimiter@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-delimiter/-/parser-delimiter-10.5.0.tgz#b0d93100cdfd0619d020a427d652495073f3b828" + integrity sha512-/uR/yT3jmrcwnl2FJU/2ySvwgo5+XpksDUR4NF/nwTS5i3CcuKS+FKi/tLzy1k8F+rCx5JzpiK+koqPqOUWArA== + +"@serialport/parser-inter-byte-timeout@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-10.5.0.tgz#8665ee5e6138f794ac055e83ef2d1c3653a577c0" + integrity sha512-WPvVlSx98HmmUF9jjK6y9mMp3Wnv6JQA0cUxLeZBgS74TibOuYG3fuUxUWGJALgAXotOYMxfXSezJ/vSnQrkhQ== + +"@serialport/parser-packet-length@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-packet-length/-/parser-packet-length-10.5.0.tgz#4c4d733bdff8cc4749f2bd750e42e66f8f478def" + integrity sha512-jkpC/8w4/gUBRa2Teyn7URv1D7T//0lGj27/4u9AojpDVXsR6dtdcTG7b7dNirXDlOrSLvvN7aS5/GNaRlEByw== + +"@serialport/parser-readline@10.5.0", "@serialport/parser-readline@^10.2.1": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-readline/-/parser-readline-10.5.0.tgz#df23365ae7f45679b1735deae26f72ba42802862" + integrity sha512-0aXJknodcl94W9zSjvU+sLdXiyEG2rqjQmvBWZCr8wJZjWEtv3RgrnYiWq4i2OTOyC8C/oPK8ZjpBjQptRsoJQ== dependencies: - "@serialport/binding-abstract" "9.2.3" - debug "^4.3.2" + "@serialport/parser-delimiter" "10.5.0" -"@serialport/bindings@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/bindings/download/@serialport/bindings-9.2.4.tgz#3d5da86607b83b9990cbc3ea59b976194bb48acf" - integrity sha1-PV2oZge4O5mQy8PqWbl2GUu0is8= - dependencies: - "@serialport/binding-abstract" "9.2.3" - "@serialport/parser-readline" "9.2.4" - bindings "^1.5.0" - debug "^4.3.2" - nan "^2.15.0" - prebuild-install "^6.1.4" - -"@serialport/parser-byte-length@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-byte-length/download/@serialport/parser-byte-length-9.2.4.tgz?cache=0&sync_timestamp=1632854408038&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-byte-length%2Fdownload%2F%40serialport%2Fparser-byte-length-9.2.4.tgz#cccdf3a95018d838cee9e7aa86ab3b5ad9e6c00f" - integrity sha1-zM3zqVAY2DjO6eeqhqs7WtnmwA8= - -"@serialport/parser-cctalk@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-cctalk/download/@serialport/parser-cctalk-9.2.4.tgz?cache=0&sync_timestamp=1632854408651&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-cctalk%2Fdownload%2F%40serialport%2Fparser-cctalk-9.2.4.tgz#441533e6afc789e8cc5a017697632217bb33a861" - integrity sha1-RBUz5q/HiejMWgF2l2MiF7szqGE= - -"@serialport/parser-delimiter@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-delimiter/download/@serialport/parser-delimiter-9.2.4.tgz?cache=0&sync_timestamp=1632854408398&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-delimiter%2Fdownload%2F%40serialport%2Fparser-delimiter-9.2.4.tgz#7906162ab5601b52abe7bb011678248f0b50f6c0" - integrity sha1-eQYWKrVgG1Kr57sBFngkjwtQ9sA= - -"@serialport/parser-inter-byte-timeout@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-inter-byte-timeout/download/@serialport/parser-inter-byte-timeout-9.2.4.tgz?cache=0&sync_timestamp=1632854409798&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-inter-byte-timeout%2Fdownload%2F%40serialport%2Fparser-inter-byte-timeout-9.2.4.tgz#0ffb7f1449636f6363e894127d1f819b38e91c3c" - integrity sha1-D/t/FEljb2Nj6JQSfR+BmzjpHDw= - -"@serialport/parser-readline@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-readline/download/@serialport/parser-readline-9.2.4.tgz?cache=0&sync_timestamp=1632854408577&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-readline%2Fdownload%2F%40serialport%2Fparser-readline-9.2.4.tgz#15a4ec7e86ddc33ac84faac7bffd4560e4544ccb" - integrity sha1-FaTsfobdwzrIT6rHv/1FYORUTMs= - dependencies: - "@serialport/parser-delimiter" "9.2.4" - -"@serialport/parser-ready@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-ready/download/@serialport/parser-ready-9.2.4.tgz?cache=0&sync_timestamp=1632854408854&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-ready%2Fdownload%2F%40serialport%2Fparser-ready-9.2.4.tgz#e1fc93b9e3057972104db3f9311263397f420f25" - integrity sha1-4fyTueMFeXIQTbP5MRJjOX9CDyU= - -"@serialport/parser-regex@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/parser-regex/download/@serialport/parser-regex-9.2.4.tgz?cache=0&sync_timestamp=1632854409050&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fparser-regex%2Fdownload%2F%40serialport%2Fparser-regex-9.2.4.tgz#e232a84e00f3e8c366fc65ce20f8f4ac14960448" - integrity sha1-4jKoTgDz6MNm/GXOIPj0rBSWBEg= - -"@serialport/stream@9.2.4": - version "9.2.4" - resolved "https://registry.npmmirror.com/@serialport/stream/download/@serialport/stream-9.2.4.tgz?cache=0&sync_timestamp=1632854409380&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40serialport%2Fstream%2Fdownload%2F%40serialport%2Fstream-9.2.4.tgz#9fce093d0b46ed4599953b4fae81718e050d2b33" - integrity sha1-n84JPQtG7UWZlTtProFxjgUNKzM= +"@serialport/parser-ready@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-ready/-/parser-ready-10.5.0.tgz#1d9029f57b1abd664cb468e21bfccf7b44c6e8ea" + integrity sha512-QIf65LTvUoxqWWHBpgYOL+soldLIIyD1bwuWelukem2yDZVWwEjR288cLQ558BgYxH4U+jLAQahhqoyN1I7BaA== + +"@serialport/parser-regex@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-regex/-/parser-regex-10.5.0.tgz#f98eab6e3d9bc99086269e9acf39a82db36d245f" + integrity sha512-9jnr9+PCxRoLjtGs7uxwsFqvho+rxuJlW6ZWSB7oqfzshEZWXtTJgJRgac/RuLft4hRlrmRz5XU40i3uoL4HKw== + +"@serialport/parser-slip-encoder@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-slip-encoder/-/parser-slip-encoder-10.5.0.tgz#cb79ac0fda1fc87f049690ff7b498c787da67991" + integrity sha512-wP8m+uXQdkWSa//3n+VvfjLthlabwd9NiG6kegf0fYweLWio8j4pJRL7t9eTh2Lbc7zdxuO0r8ducFzO0m8CQw== + +"@serialport/parser-spacepacket@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/parser-spacepacket/-/parser-spacepacket-10.5.0.tgz#2fc077c0ec16a9532c511ad5f2ab12d588796bc7" + integrity sha512-BEZ/HAEMwOd8xfuJSeI/823IR/jtnThovh7ils90rXD4DPL1ZmrP4abAIEktwe42RobZjIPfA4PaVfyO0Fjfhg== + +"@serialport/stream@10.5.0": + version "10.5.0" + resolved "https://registry.npmmirror.com/@serialport/stream/-/stream-10.5.0.tgz#cda8fb3e8d03094b0962a3d14b73adfcd591be58" + integrity sha512-gbcUdvq9Kyv2HsnywS7QjnEB28g+6OGB5Z8TLP7X+UPpoMIWoUsoQIq5Kt0ZTgMoWn3JGM2lqwTsSHF+1qhniA== dependencies: + "@serialport/bindings-interface" "1.2.2" debug "^4.3.2" "@sindresorhus/is@^0.14.0": @@ -201,6 +242,11 @@ dependencies: defer-to-connect "^2.0.0" +"@tootallnate/once@2": + version "2.0.0" + resolved "https://registry.npmmirror.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" + integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== + "@types/cacheable-request@^6.0.1": version "6.0.2" resolved "https://registry.npmmirror.com/@types/cacheable-request/download/@types/cacheable-request-6.0.2.tgz?cache=0&sync_timestamp=1637264500656&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2F%40types%2Fcacheable-request%2Fdownload%2F%40types%2Fcacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9" @@ -405,10 +451,10 @@ JSONStream@0.7: jsonparse "0.0.5" through ">=2.2.7 <3" -abbrev@1: +abbrev@^1.0.0: version "1.1.1" - resolved "https://registry.nlark.com/abbrev/download/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg= + resolved "https://registry.npmmirror.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== acorn-node@^1.6.1: version "1.8.2" @@ -429,6 +475,28 @@ acorn@^7.0.0: resolved "https://registry.npmmirror.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1637225522161&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo= +agent-base@6, agent-base@^6.0.2: + version "6.0.2" + resolved "https://registry.npmmirror.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +agentkeepalive@^4.2.1: + version "4.5.0" + resolved "https://registry.npmmirror.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" + integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== + dependencies: + humanize-ms "^1.2.1" + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.npmmirror.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + ajv-formats@^2.1.1: version "2.1.1" resolved "https://registry.npmmirror.com/ajv-formats/download/ajv-formats-2.1.1.tgz?cache=0&sync_timestamp=1636312243183&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fajv-formats%2Fdownload%2Fajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" @@ -441,7 +509,7 @@ ajv-keywords@^3.4.1: resolved "https://registry.npmmirror.com/ajv-keywords/download/ajv-keywords-3.5.2.tgz?cache=0&sync_timestamp=1637523772179&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fajv-keywords%2Fdownload%2Fajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha1-MfKdpatuANHC0yms97WSlhTVAU0= -ajv@^6.10.0, ajv@^6.12.0, ajv@^6.12.3: +ajv@^6.10.0, ajv@^6.12.0: version "6.12.6" resolved "https://registry.npmmirror.com/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1637522318370&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fajv%2Fdownload%2Fajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ= @@ -468,11 +536,6 @@ ansi-align@^3.0.0: dependencies: string-width "^4.1.0" -ansi-regex@^2.0.0: - version "2.1.1" - resolved "https://registry.nlark.com/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - ansi-regex@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/ansi-regex/download/ansi-regex-3.0.0.tgz?cache=0&sync_timestamp=1631634988487&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-regex%2Fdownload%2Fansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" @@ -541,18 +604,18 @@ app-builder-lib@22.14.5: semver "^7.3.5" temp-file "^3.4.0" -aproba@^1.0.3: - version "1.2.0" - resolved "https://registry.nlark.com/aproba/download/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha1-aALmJk79GMeQobDVF/DyYnvyyUo= +"aproba@^1.0.3 || ^2.0.0": + version "2.0.0" + resolved "https://registry.npmmirror.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== -are-we-there-yet@~1.1.2: - version "1.1.7" - resolved "https://registry.nlark.com/are-we-there-yet/download/are-we-there-yet-1.1.7.tgz?cache=0&sync_timestamp=1630592961858&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fare-we-there-yet%2Fdownload%2Fare-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" - integrity sha1-sVR0qTKtq0/4pQ2a36fk6SbyEUY= +are-we-there-yet@^3.0.0: + version "3.0.1" + resolved "https://registry.npmmirror.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" + integrity sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg== dependencies: delegates "^1.0.0" - readable-stream "^2.0.6" + readable-stream "^3.6.0" arg@^4.1.0: version "4.1.3" @@ -581,14 +644,7 @@ asar@^3.0.3: optionalDependencies: "@types/glob" "^7.1.1" -asn1@~0.2.3: - version "0.2.6" - resolved "https://registry.npmmirror.com/asn1/download/asn1-0.2.6.tgz?cache=0&sync_timestamp=1635986760581&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fasn1%2Fdownload%2Fasn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" - integrity sha1-DTp7tuZOAqkMAwOzHykoaOoJoI0= - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: +assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.nlark.com/assert-plus/download/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= @@ -630,16 +686,6 @@ autoprefixer@^10.2.5: picocolors "^1.0.0" postcss-value-parser "^4.1.0" -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.nlark.com/aws-sign2/download/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= - -aws4@^1.8.0: - version "1.11.0" - resolved "https://registry.nlark.com/aws4/download/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" - integrity sha1-1h9G2DslGSUOJ4Ta9bCUeai0HFk= - balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" @@ -650,26 +696,12 @@ base64-js@^1.3.1, base64-js@^1.5.1: resolved "https://registry.nlark.com/base64-js/download/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha1-GxtEAWClv3rUC2UPCVljSBkDkwo= -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= - dependencies: - tweetnacl "^0.14.3" - binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.nlark.com/binary-extensions/download/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha1-dfUC7q+f/eQvyYgpZFvk6na9ni0= -bindings@^1.5.0: - version "1.5.0" - resolved "https://registry.nlark.com/bindings/download/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha1-EDU8npRTNLwFEabZCzj7x8nFBN8= - dependencies: - file-uri-to-path "1.0.0" - -bl@^4.0.3, bl@^4.1.0: +bl@^4.1.0: version "4.1.0" resolved "https://registry.nlark.com/bl/download/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" integrity sha1-RRU1JkGCvsL7vIOmKrmM8R2fezo= @@ -717,6 +749,13 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@^3.0.1, braces@~3.0.2: version "3.0.2" resolved "https://registry.nlark.com/braces/download/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -810,6 +849,30 @@ bytes@^3.0.0: resolved "https://registry.npmmirror.com/bytes/download/bytes-3.1.1.tgz?cache=0&sync_timestamp=1637015063162&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fbytes%2Fdownload%2Fbytes-3.1.1.tgz#3f018291cb4cbad9accb6e6970bca9c8889e879a" integrity sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg== +cacache@^16.1.0: + version "16.1.3" + resolved "https://registry.npmmirror.com/cacache/-/cacache-16.1.3.tgz#a02b9f34ecfaf9a78c9f4bc16fceb94d5d67a38e" + integrity sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ== + dependencies: + "@npmcli/fs" "^2.1.0" + "@npmcli/move-file" "^2.0.0" + chownr "^2.0.0" + fs-minipass "^2.1.0" + glob "^8.0.1" + infer-owner "^1.0.4" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + mkdirp "^1.0.4" + p-map "^4.0.0" + promise-inflight "^1.0.1" + rimraf "^3.0.2" + ssri "^9.0.0" + tar "^6.1.11" + unique-filename "^2.0.0" + cacheable-lookup@^5.0.3: version "5.0.4" resolved "https://registry.npmmirror.com/cacheable-lookup/download/cacheable-lookup-5.0.4.tgz?cache=0&sync_timestamp=1634548260787&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcacheable-lookup%2Fdownload%2Fcacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" @@ -861,11 +924,6 @@ caniuse-lite@^1.0.30001272, caniuse-lite@^1.0.30001280: resolved "https://registry.npmmirror.com/caniuse-lite/download/caniuse-lite-1.0.30001282.tgz?cache=0&sync_timestamp=1637135369618&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcaniuse-lite%2Fdownload%2Fcaniuse-lite-1.0.30001282.tgz#38c781ee0a90ccfe1fe7fefd00e43f5ffdcb96fd" integrity sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg== -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= - chalk@^2.0.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.nlark.com/chalk/download/chalk-2.4.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -875,7 +933,7 @@ chalk@^2.0.0, chalk@^2.4.2: escape-string-regexp "^1.0.5" supports-color "^5.3.0" -chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: +chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: version "4.1.2" resolved "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627646697260&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" integrity sha1-qsTit3NKdAhnrrFr8CqtVWoeegE= @@ -898,11 +956,6 @@ chokidar@^3.5.2: optionalDependencies: fsevents "~2.3.2" -chownr@^1.1.1, chownr@^1.1.4: - version "1.1.4" - resolved "https://registry.nlark.com/chownr/download/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha1-b8nXtC0ypYNZYzdmbn0ICE2izGs= - chownr@^2.0.0: version "2.0.0" resolved "https://registry.nlark.com/chownr/download/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" @@ -923,6 +976,16 @@ ci-info@^3.2.0: resolved "https://registry.npmmirror.com/ci-info/download/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== +claygl@^1.2.1: + version "1.3.0" + resolved "https://registry.npmmirror.com/claygl/-/claygl-1.3.0.tgz#7a6e2903210519ac358848f5d78070ed211685f3" + integrity sha512-+gGtJjT6SSHD2l2yC3MCubW/sCV40tZuSs5opdtn79vFSGUgp/lH139RNEQ6Jy078/L0aV8odCw8RSrUcMfLaQ== + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + cli-boxes@^2.2.1: version "2.2.1" resolved "https://registry.nlark.com/cli-boxes/download/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" @@ -969,11 +1032,6 @@ clone@^1.0.2: resolved "https://registry.nlark.com/clone/download/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= -code-point-at@^1.0.0: - version "1.1.0" - resolved "https://registry.npmmirror.com/code-point-at/download/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" - integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -1006,6 +1064,11 @@ color-string@^1.6.0: color-name "^1.0.0" simple-swizzle "^0.2.2" +color-support@^1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + color@^4.0.1: version "4.0.1" resolved "https://registry.nlark.com/color/download/color-4.0.1.tgz#21df44cd10245a91b1ccf5ba031609b0e10e7d67" @@ -1019,12 +1082,7 @@ colors@1.0.3: resolved "https://registry.nlark.com/colors/download/colors-1.0.3.tgz?cache=0&sync_timestamp=1622604546780&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcolors%2Fdownload%2Fcolors-1.0.3.tgz#0433f44d809680fdeb60ed260f1b0c262e82a40b" integrity sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs= -colors@^1.3.3: - version "1.4.0" - resolved "https://registry.nlark.com/colors/download/colors-1.4.0.tgz?cache=0&sync_timestamp=1622604546780&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fcolors%2Fdownload%2Fcolors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" - integrity sha1-xQSRR51MG9rtLJztMs98fcI2D3g= - -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha1-w9RaizT9cwYxoRCoolIGgrMdWn8= @@ -1104,10 +1162,10 @@ configstore@^5.0.1: write-file-atomic "^3.0.0" xdg-basedir "^4.0.0" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: +console-control-strings@^1.1.0: version "1.1.0" - resolved "https://registry.nlark.com/console-control-strings/download/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + resolved "https://registry.npmmirror.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== core-util-is@1.0.2: version "1.0.2" @@ -1183,13 +1241,6 @@ csstype@^2.6.8: resolved "https://registry.npmmirror.com/csstype/download/csstype-2.6.19.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcsstype%2Fdownload%2Fcsstype-2.6.19.tgz#feeb5aae89020bb389e1f63669a5ed490e391caa" integrity sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ== -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.nlark.com/dashdash/download/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= - dependencies: - assert-plus "^1.0.0" - debounce-fn@^4.0.0: version "4.0.0" resolved "https://registry.npm.taobao.org/debounce-fn/download/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" @@ -1197,6 +1248,13 @@ debounce-fn@^4.0.0: dependencies: mimic-fn "^3.0.0" +debug@4, debug@^4.3.3: + version "4.3.4" + resolved "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.npmmirror.com/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1636300872595&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" @@ -1204,13 +1262,6 @@ debug@^2.6.8, debug@^2.6.9: dependencies: ms "2.0.0" -debug@^3.2.6: - version "3.2.7" - resolved "https://registry.npmmirror.com/debug/download/debug-3.2.7.tgz?cache=0&sync_timestamp=1636300872595&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fdebug%2Fdownload%2Fdebug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" - integrity sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o= - dependencies: - ms "^2.1.1" - debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: version "4.3.2" resolved "https://registry.npmmirror.com/debug/download/debug-4.3.2.tgz?cache=0&sync_timestamp=1636300872595&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fdebug%2Fdownload%2Fdebug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" @@ -1225,13 +1276,6 @@ decompress-response@^3.3.0: dependencies: mimic-response "^1.0.0" -decompress-response@^4.2.0: - version "4.2.1" - resolved "https://registry.npm.taobao.org/decompress-response/download/decompress-response-4.2.1.tgz#414023cc7a302da25ce2ec82d0d5238ccafd8986" - integrity sha1-QUAjzHowLaJc4uyC0NUjjMr9iYY= - dependencies: - mimic-response "^2.0.0" - decompress-response@^6.0.0: version "6.0.0" resolved "https://registry.npm.taobao.org/decompress-response/download/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc" @@ -1283,10 +1327,10 @@ delegates@^1.0.0: resolved "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -detect-libc@^1.0.2, detect-libc@^1.0.3: - version "1.0.3" - resolved "https://registry.nlark.com/detect-libc/download/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" - integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= +detect-libc@^2.0.1: + version "2.0.2" + resolved "https://registry.npmmirror.com/detect-libc/-/detect-libc-2.0.2.tgz#8ccf2ba9315350e1241b88d0ac3b0e1fbd99605d" + integrity sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw== detect-node@^2.0.4: version "2.1.0" @@ -1385,26 +1429,26 @@ duplexer3@^0.1.4: resolved "https://registry.npmmirror.com/duplexer3/download/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.nlark.com/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= +echarts-gl@^2.0.9: + version "2.0.9" + resolved "https://registry.npmmirror.com/echarts-gl/-/echarts-gl-2.0.9.tgz#ee228a6c7520a6fb7bbb71ea94394f3637ade033" + integrity sha512-oKeMdkkkpJGWOzjgZUsF41DOh6cMsyrGGXimbjK2l6Xeq/dBQu4ShG2w2Dzrs/1bD27b2pLTGSaUzouY191gzA== dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" + claygl "^1.2.1" + zrender "^5.1.1" echarts-liquidfill@^3.1.0: version "3.1.0" resolved "https://registry.nlark.com/echarts-liquidfill/download/echarts-liquidfill-3.1.0.tgz#4ec70f3697382d0404c95fff9f3e8dd85c8377da" integrity sha1-TscPNpc4LQQEyV//nz6N2FyDd9o= -echarts@^5.2.2: - version "5.2.2" - resolved "https://registry.npmmirror.com/echarts/download/echarts-5.2.2.tgz#ec3c8b2a151cbba71ba3c2c7cf9b2f2047ce4370" - integrity sha1-7DyLKhUcu6cbo8LHz5svIEfOQ3A= +echarts@^5.4.1: + version "5.5.0" + resolved "https://registry.npmmirror.com/echarts/-/echarts-5.5.0.tgz#c13945a7f3acdd67c134d8a9ac67e917830113ac" + integrity sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw== dependencies: tslib "2.3.0" - zrender "5.2.1" + zrender "5.5.0" ejs@^3.1.6: version "3.1.6" @@ -1456,23 +1500,25 @@ electron-publish@22.14.5: lazy-val "^1.0.5" mime "^2.5.2" -electron-rebuild@2.3.5: - version "2.3.5" - resolved "https://registry.npmmirror.com/electron-rebuild/download/electron-rebuild-2.3.5.tgz#10dc38d1ffe1515ba2eef8b8be8e973ad1e1d597" - integrity sha1-ENw40f/hUVui7vi4vo6XOtHh1Zc= +electron-rebuild@^3.2.9: + version "3.2.9" + resolved "https://registry.npmmirror.com/electron-rebuild/-/electron-rebuild-3.2.9.tgz#ea372be15f591f8d6d978ee9bca6526dadbcf20f" + integrity sha512-FkEZNFViUem3P0RLYbZkUjC8LUFIK+wKq09GHoOITSJjfDAVQv964hwaNseTTWt58sITQX3/5fHNYcTefqaCWw== dependencies: - "@malept/cross-spawn-promise" "^1.1.1" - colors "^1.3.3" + "@malept/cross-spawn-promise" "^2.0.0" + chalk "^4.0.0" debug "^4.1.1" - detect-libc "^1.0.3" - fs-extra "^9.0.1" + detect-libc "^2.0.1" + fs-extra "^10.0.0" got "^11.7.0" - lzma-native "^6.0.1" - node-abi "^2.19.2" - node-gyp "^7.1.0" + lzma-native "^8.0.5" + node-abi "^3.0.0" + node-api-version "^0.1.4" + node-gyp "^9.0.0" ora "^5.1.0" + semver "^7.3.5" tar "^6.0.5" - yargs "^16.0.0" + yargs "^17.0.1" electron-store@^8.0.1: version "8.0.1" @@ -1506,7 +1552,14 @@ encodeurl@^1.0.2: resolved "https://registry.nlark.com/encodeurl/download/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= -end-of-stream@^1.1.0, end-of-stream@^1.4.1: +encoding@^0.1.13: + version "0.1.13" + resolved "https://registry.npmmirror.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + +end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.nlark.com/end-of-stream/download/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha1-WuZKX0UFe682JuwU2gyl5LJDHrA= @@ -1518,6 +1571,11 @@ env-paths@^2.2.0, env-paths@^2.2.1: resolved "https://registry.nlark.com/env-paths/download/env-paths-2.2.1.tgz?cache=0&sync_timestamp=1630095479786&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fenv-paths%2Fdownload%2Fenv-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha1-QgOZ1BbOH76bwKB8Yvpo1n/Q+PI= +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.npmmirror.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.nlark.com/error-ex/download/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -1663,15 +1721,10 @@ estree-walker@^2.0.2: resolved "https://registry.nlark.com/estree-walker/download/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" integrity sha1-UvAQF4wqTBF6d1fP6UKtt9LaTKw= -expand-template@^2.0.3: - version "2.0.3" - resolved "https://registry.npm.taobao.org/expand-template/download/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" - integrity sha1-bhSz/O4POmNA7LV9LokYaSBSpHw= - -extend@~3.0.2: - version "3.0.2" - resolved "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo= +exponential-backoff@^3.1.1: + version "3.1.1" + resolved "https://registry.npmmirror.com/exponential-backoff/-/exponential-backoff-3.1.1.tgz#64ac7526fe341ab18a39016cd22c787d01e00bf6" + integrity sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw== extract-zip@^1.0.3: version "1.7.0" @@ -1683,11 +1736,6 @@ extract-zip@^1.0.3: mkdirp "^0.5.4" yauzl "^2.10.0" -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.npmmirror.com/extsprintf/download/extsprintf-1.3.0.tgz?cache=0&sync_timestamp=1635889740043&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fextsprintf%2Fdownload%2Fextsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= - extsprintf@^1.2.0: version "1.4.1" resolved "https://registry.npmmirror.com/extsprintf/download/extsprintf-1.4.1.tgz?cache=0&sync_timestamp=1635889740043&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fextsprintf%2Fdownload%2Fextsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" @@ -1728,11 +1776,6 @@ fd-slicer@~1.1.0: dependencies: pend "~1.2.0" -file-uri-to-path@1.0.0: - version "1.0.0" - resolved "https://registry.nlark.com/file-uri-to-path/download/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha1-VTp7hEb/b2hDWcRF8eN6BdrMM90= - filelist@^1.0.1: version "1.0.2" resolved "https://registry.nlark.com/filelist/download/filelist-1.0.2.tgz#80202f21462d4d1c2e214119b1807c1bc0380e5b" @@ -1754,11 +1797,6 @@ find-up@^3.0.0: dependencies: locate-path "^3.0.0" -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.nlark.com/forever-agent/download/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= - form-data@^4.0.0: version "4.0.0" resolved "https://registry.npm.taobao.org/form-data/download/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" @@ -1768,25 +1806,11 @@ form-data@^4.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha1-3M5SwF9kTymManq5Nr1yTO/786Y= - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - fraction.js@^4.1.1: version "4.1.2" resolved "https://registry.npmmirror.com/fraction.js/download/fraction.js-4.1.2.tgz#13e420a92422b6cf244dff8690ed89401029fbe8" integrity sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA== -fs-constants@^1.0.0: - version "1.0.0" - resolved "https://registry.nlark.com/fs-constants/download/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" - integrity sha1-a+Dem+mYzhavivwkSXue6bfM2a0= - fs-extra@^10.0.0: version "10.0.0" resolved "https://registry.nlark.com/fs-extra/download/fs-extra-10.0.0.tgz#9ff61b655dde53fb34a82df84bb214ce802e17c1" @@ -1815,14 +1839,7 @@ fs-extra@^9.0.0, fs-extra@^9.0.1: jsonfile "^6.0.1" universalify "^2.0.0" -fs-minipass@^1.2.7: - version "1.2.7" - resolved "https://registry.nlark.com/fs-minipass/download/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" - integrity sha1-zP+FcIQef+QmVpPaiJNsVa7X98c= - dependencies: - minipass "^2.6.0" - -fs-minipass@^2.0.0: +fs-minipass@^2.0.0, fs-minipass@^2.1.0: version "2.1.0" resolved "https://registry.nlark.com/fs-minipass/download/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha1-f1A2/b8SxjwWkZDL5BmchSJx+fs= @@ -1844,19 +1861,19 @@ function-bind@^1.1.1: resolved "https://registry.nlark.com/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" integrity sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0= -gauge@~2.7.3: - version "2.7.4" - resolved "https://registry.npmmirror.com/gauge/download/gauge-2.7.4.tgz?cache=0&sync_timestamp=1636989400838&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fgauge%2Fdownload%2Fgauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" - integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= +gauge@^4.0.3: + version "4.0.4" + resolved "https://registry.npmmirror.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== dependencies: - aproba "^1.0.3" - console-control-strings "^1.0.0" - has-unicode "^2.0.0" - object-assign "^4.1.0" - signal-exit "^3.0.0" - string-width "^1.0.1" - strip-ansi "^3.0.1" - wide-align "^1.1.0" + aproba "^1.0.3 || ^2.0.0" + color-support "^1.1.3" + console-control-strings "^1.1.0" + has-unicode "^2.0.1" + signal-exit "^3.0.7" + string-width "^4.2.3" + strip-ansi "^6.0.1" + wide-align "^1.1.5" get-caller-file@^2.0.5: version "2.0.5" @@ -1877,18 +1894,6 @@ get-stream@^5.1.0: dependencies: pump "^3.0.0" -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.nlark.com/getpass/download/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= - dependencies: - assert-plus "^1.0.0" - -github-from-package@0.0.0: - version "0.0.0" - resolved "https://registry.npmmirror.com/github-from-package/download/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" - integrity sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4= - glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.npmmirror.com/glob-parent/download/glob-parent-5.1.2.tgz?cache=0&sync_timestamp=1632954501757&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fglob-parent%2Fdownload%2Fglob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -1915,6 +1920,17 @@ glob@^7.0.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^8.0.1: + version "8.1.0" + resolved "https://registry.npmmirror.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + global-agent@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/global-agent/download/global-agent-3.0.0.tgz?cache=0&sync_timestamp=1627082437079&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fglobal-agent%2Fdownload%2Fglobal-agent-3.0.0.tgz#ae7cd31bd3583b93c5a16437a1afe27cc33a1ab6" @@ -1985,29 +2001,21 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.3: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0: version "4.2.8" resolved "https://registry.npmmirror.com/graceful-fs/download/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" integrity sha1-5BK40z9eAGWTy9PO5t+fLOu+gCo= +graceful-fs@^4.2.6: + version "4.2.11" + resolved "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + "graceful-readlink@>= 1.0.0": version "1.0.1" resolved "https://registry.npm.taobao.org/graceful-readlink/download/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= -har-schema@^2.0.0: - version "2.0.0" - resolved "https://registry.nlark.com/har-schema/download/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= - -har-validator@~5.1.3: - version "5.1.5" - resolved "https://registry.npmmirror.com/har-validator/download/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" - integrity sha1-HwgDufjLIMD6E4It8ezds2veHv0= - dependencies: - ajv "^6.12.3" - har-schema "^2.0.0" - has-flag@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/has-flag/download/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" @@ -2018,10 +2026,10 @@ has-flag@^4.0.0: resolved "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" integrity sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s= -has-unicode@^2.0.0: +has-unicode@^2.0.1: version "2.0.1" - resolved "https://registry.nlark.com/has-unicode/download/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + resolved "https://registry.npmmirror.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== has-yarn@^2.1.0: version "2.1.0" @@ -2067,14 +2075,19 @@ http-cache-semantics@^4.0.0: resolved "https://registry.nlark.com/http-cache-semantics/download/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha1-SekcXL82yblLz81xwj1SSex045A= -http-signature@~1.2.0: - version "1.2.0" - resolved "https://registry.npmmirror.com/http-signature/download/http-signature-1.2.0.tgz?cache=0&sync_timestamp=1637178506486&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= +http-cache-semantics@^4.1.0: + version "4.1.1" + resolved "https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" + integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== + +http-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" + integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== dependencies: - assert-plus "^1.0.0" - jsprim "^1.2.2" - sshpk "^1.7.0" + "@tootallnate/once" "2" + agent-base "6" + debug "4" http2-wrapper@^1.0.0-beta.5.2: version "1.0.3" @@ -2084,6 +2097,21 @@ http2-wrapper@^1.0.0-beta.5.2: quick-lru "^5.1.1" resolve-alpn "^1.0.0" +https-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== + dependencies: + agent-base "6" + debug "4" + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== + dependencies: + ms "^2.0.0" + iconv-corefoundation@^1.1.6: version "1.1.6" resolved "https://registry.nlark.com/iconv-corefoundation/download/iconv-corefoundation-1.1.6.tgz#27c135470237f6f8d13462fa1f5eaf250523c29a" @@ -2092,13 +2120,6 @@ iconv-corefoundation@^1.1.6: cli-truncate "^1.1.0" node-addon-api "^1.6.3" -iconv-lite@^0.4.4: - version "0.4.24" - resolved "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&sync_timestamp=1621826342262&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha1-ICK0sl+93CHS9SSXSkdKr+czkIs= - dependencies: - safer-buffer ">= 2.1.2 < 3" - iconv-lite@^0.6.2: version "0.6.3" resolved "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.6.3.tgz?cache=0&sync_timestamp=1621826342262&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" @@ -2111,13 +2132,6 @@ ieee754@^1.1.13: resolved "https://registry.nlark.com/ieee754/download/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha1-jrehCmP/8l0VpXsAFYbRd9Gw01I= -ignore-walk@^3.0.1: - version "3.0.4" - resolved "https://registry.npmmirror.com/ignore-walk/download/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" - integrity sha1-yaCfabfHtHml10rBo8DUI20qYzU= - dependencies: - minimatch "^3.0.4" - import-cwd@^3.0.0: version "3.0.0" resolved "https://registry.nlark.com/import-cwd/download/import-cwd-3.0.0.tgz#20845547718015126ea9b3676b7592fb8bd4cf92" @@ -2150,6 +2164,16 @@ imurmurhash@^0.1.4: resolved "https://registry.nlark.com/imurmurhash/download/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.npmmirror.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -2173,6 +2197,14 @@ ini@^1.3.4, ini@~1.3.0: resolved "https://registry.nlark.com/ini/download/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha1-op2kJbSIBvNHZ6Tvzjlyaa8oQyw= +ip-address@^9.0.5: + version "9.0.5" + resolved "https://registry.npmmirror.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" + integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== + dependencies: + jsbn "1.1.0" + sprintf-js "^1.1.3" + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" @@ -2228,13 +2260,6 @@ is-extglob@^2.1.1: resolved "https://registry.nlark.com/is-extglob/download/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.nlark.com/is-fullwidth-code-point/download/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.nlark.com/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" @@ -2265,6 +2290,11 @@ is-interactive@^1.0.0: resolved "https://registry.nlark.com/is-interactive/download/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" integrity sha1-zqbmrlyHCnsKAAQHC3tYfgJSkS4= +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== + is-npm@^5.0.0: version "5.0.0" resolved "https://registry.nlark.com/is-npm/download/is-npm-5.0.0.tgz?cache=0&sync_timestamp=1631992770984&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fis-npm%2Fdownload%2Fis-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8" @@ -2285,7 +2315,7 @@ is-path-inside@^3.0.2: resolved "https://registry.nlark.com/is-path-inside/download/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha1-0jE2LlOgf/Kw4Op/7QSRYf/RYoM= -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= @@ -2322,11 +2352,6 @@ isexe@^2.0.0: resolved "https://registry.nlark.com/isexe/download/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.nlark.com/isstream/download/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= - jake@^10.6.1: version "10.8.2" resolved "https://registry.npm.taobao.org/jake/download/jake-10.8.2.tgz#ebc9de8558160a66d82d0eadc6a2e58fbc500a7b" @@ -2349,10 +2374,10 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.nlark.com/jsbn/download/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= +jsbn@1.1.0: + version "1.1.0" + resolved "https://registry.npmmirror.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== json-buffer@3.0.0: version "3.0.0" @@ -2384,12 +2409,7 @@ json-schema-typed@^7.0.3: resolved "https://registry.npm.taobao.org/json-schema-typed/download/json-schema-typed-7.0.3.tgz#23ff481b8b4eebcd2ca123b4fa0409e66469a2d9" integrity sha1-I/9IG4tO680soSO0+gQJ5mRpotk= -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.npmmirror.com/json-schema/download/json-schema-0.2.3.tgz?cache=0&sync_timestamp=1636423494254&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fjson-schema%2Fdownload%2Fjson-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= - -json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: +json-stringify-safe@^5.0.1: version "5.0.1" resolved "https://registry.nlark.com/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= @@ -2422,16 +2442,6 @@ jsonparse@0.0.5: resolved "https://registry.nlark.com/jsonparse/download/jsonparse-0.0.5.tgz#330542ad3f0a654665b778f3eb2d9a9fa507ac64" integrity sha1-MwVCrT8KZUZlt3jz6y2an6UHrGQ= -jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.npmmirror.com/jsprim/download/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.2.3" - verror "1.10.0" - keyv@^3.0.0: version "3.1.0" resolved "https://registry.npmmirror.com/keyv/download/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" @@ -2511,15 +2521,19 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lzma-native@^6.0.1: - version "6.0.1" - resolved "https://registry.nlark.com/lzma-native/download/lzma-native-6.0.1.tgz#eec231d31b9f9ba5aea5afc86326669f01dedb58" - integrity sha1-7sIx0xufm6Wupa/IYyZmnwHe21g= +lru-cache@^7.7.1: + version "7.18.3" + resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" + integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== + +lzma-native@^8.0.5: + version "8.0.6" + resolved "https://registry.npmmirror.com/lzma-native/-/lzma-native-8.0.6.tgz#3ea456209d643bafd9b5d911781bdf0b396b2665" + integrity sha512-09xfg67mkL2Lz20PrrDeNYZxzeW7ADtpYFbwSQh9U8+76RIzx5QsJBMy8qikv3hbUPfpy6hqwxt6FcGK81g9AA== dependencies: - node-addon-api "^1.6.0" - node-pre-gyp "^0.11.0" - readable-stream "^2.3.5" - rimraf "^2.7.1" + node-addon-api "^3.1.0" + node-gyp-build "^4.2.1" + readable-stream "^3.6.0" magic-string@^0.25.7: version "0.25.7" @@ -2540,6 +2554,28 @@ make-error@^1.1.1: resolved "https://registry.nlark.com/make-error/download/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha1-LrLjfqm2fEiR9oShOUeZr0hM96I= +make-fetch-happen@^10.0.3: + version "10.2.1" + resolved "https://registry.npmmirror.com/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz#f5e3835c5e9817b617f2770870d9492d28678164" + integrity sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w== + dependencies: + agentkeepalive "^4.2.1" + cacache "^16.1.0" + http-cache-semantics "^4.1.0" + http-proxy-agent "^5.0.0" + https-proxy-agent "^5.0.0" + is-lambda "^1.0.1" + lru-cache "^7.7.1" + minipass "^3.1.6" + minipass-collect "^1.0.2" + minipass-fetch "^2.0.3" + minipass-flush "^1.0.5" + minipass-pipeline "^1.2.4" + negotiator "^0.6.3" + promise-retry "^2.0.1" + socks-proxy-agent "^7.0.0" + ssri "^9.0.0" + matcher@^3.0.0: version "3.0.0" resolved "https://registry.npmmirror.com/matcher/download/matcher-3.0.0.tgz?cache=0&sync_timestamp=1633253783507&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmatcher%2Fdownload%2Fmatcher-3.0.0.tgz#bd9060f4c5b70aa8041ccc6f80368760994f30ca" @@ -2565,7 +2601,7 @@ mime-db@1.51.0: resolved "https://registry.npmmirror.com/mime-db/download/mime-db-1.51.0.tgz?cache=0&sync_timestamp=1636425951030&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-db%2Fdownload%2Fmime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== -mime-types@^2.1.12, mime-types@~2.1.19: +mime-types@^2.1.12: version "2.1.34" resolved "https://registry.npmmirror.com/mime-types/download/mime-types-2.1.34.tgz?cache=0&sync_timestamp=1636432244120&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-types%2Fdownload%2Fmime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== @@ -2592,11 +2628,6 @@ mimic-response@^1.0.0, mimic-response@^1.0.1: resolved "https://registry.nlark.com/mimic-response/download/mimic-response-1.0.1.tgz?cache=0&sync_timestamp=1628692524926&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmimic-response%2Fdownload%2Fmimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" integrity sha1-SSNTiHju9CBjy4o+OweYeBSHqxs= -mimic-response@^2.0.0: - version "2.1.0" - resolved "https://registry.nlark.com/mimic-response/download/mimic-response-2.1.0.tgz?cache=0&sync_timestamp=1628692524926&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmimic-response%2Fdownload%2Fmimic-response-2.1.0.tgz#d13763d35f613d09ec37ebb30bac0469c0ee8f43" - integrity sha1-0Tdj019hPQnsN+uzC6wEacDuj0M= - mimic-response@^3.1.0: version "3.1.0" resolved "https://registry.nlark.com/mimic-response/download/mimic-response-3.1.0.tgz?cache=0&sync_timestamp=1628692524926&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fmimic-response%2Fdownload%2Fmimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" @@ -2609,18 +2640,56 @@ minimatch@3.0.4, minimatch@^3.0.4: dependencies: brace-expansion "^1.1.7" -minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5: +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.npmmirror.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.1.1, minimist@^1.2.0, minimist@^1.2.5: version "1.2.5" resolved "https://registry.nlark.com/minimist/download/minimist-1.2.5.tgz?cache=0&sync_timestamp=1618847017774&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fminimist%2Fdownload%2Fminimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI= -minipass@^2.6.0, minipass@^2.9.0: - version "2.9.0" - resolved "https://registry.nlark.com/minipass/download/minipass-2.9.0.tgz?cache=0&sync_timestamp=1631656524071&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fminipass%2Fdownload%2Fminipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" - integrity sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY= +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.npmmirror.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== dependencies: - safe-buffer "^5.1.2" - yallist "^3.0.0" + minipass "^3.0.0" + +minipass-fetch@^2.0.3: + version "2.1.2" + resolved "https://registry.npmmirror.com/minipass-fetch/-/minipass-fetch-2.1.2.tgz#95560b50c472d81a3bc76f20ede80eaed76d8add" + integrity sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA== + dependencies: + minipass "^3.1.6" + minipass-sized "^1.0.3" + minizlib "^2.1.2" + optionalDependencies: + encoding "^0.1.13" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.npmmirror.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-pipeline@^1.2.4: + version "1.2.4" + resolved "https://registry.npmmirror.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.npmmirror.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" minipass@^3.0.0: version "3.1.5" @@ -2629,14 +2698,19 @@ minipass@^3.0.0: dependencies: yallist "^4.0.0" -minizlib@^1.3.3: - version "1.3.3" - resolved "https://registry.npm.taobao.org/minizlib/download/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" - integrity sha1-IpDeloGKNMKVUcio0wEha9Zahh0= +minipass@^3.1.1, minipass@^3.1.6: + version "3.3.6" + resolved "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== dependencies: - minipass "^2.9.0" + yallist "^4.0.0" -minizlib@^2.1.1: +minipass@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" + integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + +minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" resolved "https://registry.npm.taobao.org/minizlib/download/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha1-6Q00Zrogm5MkUVCKEc49NjIUWTE= @@ -2644,19 +2718,14 @@ minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: - version "0.5.3" - resolved "https://registry.npm.taobao.org/mkdirp-classic/download/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" - integrity sha1-+hDJEVzG2IZb4iG6R+6b7XhgERM= - -mkdirp@^0.5.1, mkdirp@^0.5.4, mkdirp@^0.5.5: +mkdirp@^0.5.4: version "0.5.5" resolved "https://registry.npmmirror.com/mkdirp/download/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8= dependencies: minimist "^1.2.5" -mkdirp@^1.0.3: +mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.npmmirror.com/mkdirp/download/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha1-PrXtYmInVteaXw4qIh3+utdcL34= @@ -2676,54 +2745,57 @@ ms@2.1.2: resolved "https://registry.npmmirror.com/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk= -ms@^2.1.1: +ms@^2.0.0: version "2.1.3" - resolved "https://registry.npmmirror.com/ms/download/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" - integrity sha1-V0yBOM4dK1hh8LRFedut1gxmFbI= - -nan@^2.15.0: - version "2.15.0" - resolved "https://registry.nlark.com/nan/download/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" - integrity sha1-PzSkc/8Y4VwbVia2KQO1rW5mX+4= + resolved "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== nanoid@^3.1.30: version "3.1.30" resolved "https://registry.npmmirror.com/nanoid/download/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362" integrity sha1-Y/k8xUjSoRPcXfvGO/oJ4rm2Q2I= -napi-build-utils@^1.0.1: - version "1.0.2" - resolved "https://registry.npm.taobao.org/napi-build-utils/download/napi-build-utils-1.0.2.tgz#b1fddc0b2c46e380a0b7a76f984dd47c41a13806" - integrity sha1-sf3cCyxG44Cgt6dvmE3UfEGhOAY= +negotiator@^0.6.3: + version "0.6.3" + resolved "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -needle@^2.2.1: - version "2.9.1" - resolved "https://registry.nlark.com/needle/download/needle-2.9.1.tgz?cache=0&sync_timestamp=1630674795023&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fneedle%2Fdownload%2Fneedle-2.9.1.tgz#22d1dffbe3490c2b83e301f7709b6736cd8f2684" - integrity sha1-ItHf++NJDCuD4wH3cJtnNs2PJoQ= - dependencies: - debug "^3.2.6" - iconv-lite "^0.4.4" - sax "^1.2.4" - -"nmea@git+https://e.coding.net/hwasmart/beidou-satellite-data-monitor/node-nmea.git": +"nmea@http://git.hwasmart.com/bd_group/node-nmea.git": version "0.1.2" - resolved "git+https://e.coding.net/hwasmart/beidou-satellite-data-monitor/node-nmea.git#51e75417822935c676166638d0e99d7a19fc5c4c" + resolved "http://git.hwasmart.com/bd_group/node-nmea.git#94f58cd552a9b122816996c21047e34687f7157c" dependencies: JSONStream "0.7" through ">=2.2.7 <3" -node-abi@^2.19.2, node-abi@^2.21.0: - version "2.30.1" - resolved "https://registry.npmmirror.com/node-abi/download/node-abi-2.30.1.tgz?cache=0&sync_timestamp=1637029661860&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnode-abi%2Fdownload%2Fnode-abi-2.30.1.tgz#c437d4b1fe0e285aaf290d45b45d4d7afedac4cf" - integrity sha1-xDfUsf4OKFqvKQ1FtF1Nev7axM8= +node-abi@^3.0.0: + version "3.56.0" + resolved "https://registry.npmmirror.com/node-abi/-/node-abi-3.56.0.tgz#ca807d5ff735ac6bbbd684ae3ff2debc1c2a40a7" + integrity sha512-fZjdhDOeRcaS+rcpve7XuwHBmktS1nS1gzgghwKUQQ8nTy2FdSDr6ZT8k6YhvlJeHmmQMYiT/IH9hfco5zeW2Q== dependencies: - semver "^5.4.1" + semver "^7.3.5" -node-addon-api@^1.6.0, node-addon-api@^1.6.3: +node-addon-api@^1.6.3: version "1.7.2" resolved "https://registry.nlark.com/node-addon-api/download/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" integrity sha1-PfMLlXILU8JOWZSLSVMrZiRE9U0= +node-addon-api@^3.1.0: + version "3.2.1" + resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" + integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== + +node-addon-api@^5.0.0: + version "5.1.0" + resolved "https://registry.npmmirror.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" + integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== + +node-api-version@^0.1.4: + version "0.1.4" + resolved "https://registry.npmmirror.com/node-api-version/-/node-api-version-0.1.4.tgz#1ed46a485e462d55d66b5aa1fe2821720dedf080" + integrity sha512-KGXihXdUChwJAOHO53bv9/vXcLmdUsZ6jIptbvYvkpKfth+r7jw44JkVxQFA3kX5nQjzjmGu1uAu/xNNLNlI5g== + dependencies: + semver "^7.3.5" + node-emoji@^1.11.0: version "1.11.0" resolved "https://registry.nlark.com/node-emoji/download/node-emoji-1.11.0.tgz#69a0150e6946e2f115e9d7ea4df7971e2628301c" @@ -2731,57 +2803,39 @@ node-emoji@^1.11.0: dependencies: lodash "^4.17.21" -node-gyp@^7.1.0: - version "7.1.2" - resolved "https://registry.npmmirror.com/node-gyp/download/node-gyp-7.1.2.tgz?cache=0&sync_timestamp=1637570066245&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnode-gyp%2Fdownload%2Fnode-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha1-IagQrrsYcSAlHDvOyXmvFYexiK4= +node-gyp-build@^4.2.1, node-gyp-build@^4.3.0: + version "4.8.0" + resolved "https://registry.npmmirror.com/node-gyp-build/-/node-gyp-build-4.8.0.tgz#3fee9c1731df4581a3f9ead74664369ff00d26dd" + integrity sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og== + +node-gyp@^9.0.0: + version "9.4.1" + resolved "https://registry.npmmirror.com/node-gyp/-/node-gyp-9.4.1.tgz#8a1023e0d6766ecb52764cc3a734b36ff275e185" + integrity sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ== dependencies: env-paths "^2.2.0" + exponential-backoff "^3.1.1" glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" + graceful-fs "^4.2.6" + make-fetch-happen "^10.0.3" + nopt "^6.0.0" + npmlog "^6.0.0" rimraf "^3.0.2" - semver "^7.3.2" - tar "^6.0.2" + semver "^7.3.5" + tar "^6.1.2" which "^2.0.2" -node-pre-gyp@^0.11.0: - version "0.11.0" - resolved "https://registry.npmmirror.com/node-pre-gyp/download/node-pre-gyp-0.11.0.tgz#db1f33215272f692cd38f03238e3e9b47c5dd054" - integrity sha1-2x8zIVJy9pLNOPAyOOPptHxd0FQ= - dependencies: - detect-libc "^1.0.2" - mkdirp "^0.5.1" - needle "^2.2.1" - nopt "^4.0.1" - npm-packlist "^1.1.6" - npmlog "^4.0.2" - rc "^1.2.7" - rimraf "^2.6.1" - semver "^5.3.0" - tar "^4" - node-releases@^2.0.1: version "2.0.1" resolved "https://registry.npmmirror.com/node-releases/download/node-releases-2.0.1.tgz?cache=0&sync_timestamp=1634806960337&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnode-releases%2Fdownload%2Fnode-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" integrity sha1-PR05XyBPHy8ppUNYuftnh2WtL8U= -nopt@^4.0.1: - version "4.0.3" - resolved "https://registry.npm.taobao.org/nopt/download/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha1-o3XK2dAv2SEnjZVMIlTVqlfhXkg= +nopt@^6.0.0: + version "6.0.0" + resolved "https://registry.npmmirror.com/nopt/-/nopt-6.0.0.tgz#245801d8ebf409c6df22ab9d95b65e1309cdb16d" + integrity sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g== dependencies: - abbrev "1" - osenv "^0.1.4" - -nopt@^5.0.0: - version "5.0.0" - resolved "https://registry.npm.taobao.org/nopt/download/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" - integrity sha1-UwlCu1ilEvzK/lP+IQ8TolNV3Ig= - dependencies: - abbrev "1" + abbrev "^1.0.0" normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" @@ -2803,13 +2857,6 @@ normalize-url@^6.0.1: resolved "https://registry.nlark.com/normalize-url/download/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" integrity sha1-QNCIW1Nd7/4/MUe+yHfQX+TFZoo= -npm-bundled@^1.0.1: - version "1.1.2" - resolved "https://registry.nlark.com/npm-bundled/download/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" - integrity sha1-lEx4eJvXOQNbcLqiylzDK42GC8E= - dependencies: - npm-normalize-package-bin "^1.0.1" - npm-conf@^1.1.3: version "1.1.3" resolved "https://registry.nlark.com/npm-conf/download/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9" @@ -2818,44 +2865,15 @@ npm-conf@^1.1.3: config-chain "^1.1.11" pify "^3.0.0" -npm-normalize-package-bin@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/npm-normalize-package-bin/download/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" - integrity sha1-bnmkHyP9I1wGIyGCKNp9nCO49uI= - -npm-packlist@^1.1.6: - version "1.4.8" - resolved "https://registry.nlark.com/npm-packlist/download/npm-packlist-1.4.8.tgz?cache=0&sync_timestamp=1629740697962&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fnpm-packlist%2Fdownload%2Fnpm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" - integrity sha1-Vu5swTW5+YrT1Rwcldoiu7my7z4= +npmlog@^6.0.0: + version "6.0.2" + resolved "https://registry.npmmirror.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== dependencies: - ignore-walk "^3.0.1" - npm-bundled "^1.0.1" - npm-normalize-package-bin "^1.0.1" - -npmlog@^4.0.1, npmlog@^4.0.2, npmlog@^4.1.2: - version "4.1.2" - resolved "https://registry.npmmirror.com/npmlog/download/npmlog-4.1.2.tgz?cache=0&sync_timestamp=1637084905324&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fnpmlog%2Fdownload%2Fnpmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" - integrity sha1-CKfyqL9zRgR3mp76StXMcXq7lUs= - dependencies: - are-we-there-yet "~1.1.2" - console-control-strings "~1.1.0" - gauge "~2.7.3" - set-blocking "~2.0.0" - -number-is-nan@^1.0.0: - version "1.0.1" - resolved "https://registry.npmmirror.com/number-is-nan/download/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" - integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= - -oauth-sign@~0.9.0: - version "0.9.0" - resolved "https://registry.nlark.com/oauth-sign/download/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU= - -object-assign@^4.1.0: - version "4.1.1" - resolved "https://registry.nlark.com/object-assign/download/object-assign-4.1.1.tgz?cache=0&sync_timestamp=1618847043548&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fobject-assign%2Fdownload%2Fobject-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + are-we-there-yet "^3.0.0" + console-control-strings "^1.1.0" + gauge "^4.0.3" + set-blocking "^2.0.0" object-hash@^2.2.0: version "2.2.0" @@ -2896,24 +2914,6 @@ ora@^5.1.0: strip-ansi "^6.0.0" wcwidth "^1.0.1" -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= - -os-tmpdir@^1.0.0: - version "1.0.2" - resolved "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.nlark.com/osenv/download/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha1-hc36+uso6Gd/QW4odZK18/SepBA= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - p-cancelable@^1.0.0: version "1.1.0" resolved "https://registry.nlark.com/p-cancelable/download/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" @@ -2938,6 +2938,13 @@ p-locate@^3.0.0: dependencies: p-limit "^2.0.0" +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.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" resolved "https://registry.npmmirror.com/p-try/download/p-try-2.2.0.tgz?cache=0&sync_timestamp=1633364397780&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fp-try%2Fdownload%2Fp-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" @@ -3000,11 +3007,6 @@ pend@~1.2.0: resolved "https://registry.npm.taobao.org/pend/download/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.nlark.com/performance-now/download/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= - picocolors@^1.0.0: version "1.0.0" resolved "https://registry.npmmirror.com/picocolors/download/picocolors-1.0.0.tgz?cache=0&sync_timestamp=1634093339035&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fpicocolors%2Fdownload%2Fpicocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -3086,25 +3088,6 @@ postcss@^8.1.10, postcss@^8.1.6, postcss@^8.2.1, postcss@^8.2.10, postcss@^8.3.8 picocolors "^1.0.0" source-map-js "^1.0.1" -prebuild-install@^6.1.4: - version "6.1.4" - resolved "https://registry.npmmirror.com/prebuild-install/download/prebuild-install-6.1.4.tgz?cache=0&sync_timestamp=1636716658500&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fprebuild-install%2Fdownload%2Fprebuild-install-6.1.4.tgz#ae3c0142ad611d58570b89af4986088a4937e00f" - integrity sha1-rjwBQq1hHVhXC4mvSYYIikk34A8= - dependencies: - detect-libc "^1.0.3" - expand-template "^2.0.3" - github-from-package "0.0.0" - minimist "^1.2.3" - mkdirp-classic "^0.5.3" - napi-build-utils "^1.0.1" - node-abi "^2.21.0" - npmlog "^4.0.1" - pump "^3.0.0" - rc "^1.2.7" - simple-get "^3.0.3" - tar-fs "^2.0.0" - tunnel-agent "^0.6.0" - prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.nlark.com/prepend-http/download/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" @@ -3125,16 +3108,24 @@ progress@^2.0.3: resolved "https://registry.npm.taobao.org/progress/download/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha1-foz42PW48jnBvGi+tOt4Vn1XLvg= +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.npmmirror.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + proto-list@~1.2.1: version "1.2.4" resolved "https://registry.nlark.com/proto-list/download/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= -psl@^1.1.28: - version "1.8.0" - resolved "https://registry.npm.taobao.org/psl/download/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha1-kyb4vPsBOtzABf3/BWrM4CDlHCQ= - pump@^3.0.0: version "3.0.0" resolved "https://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -3143,7 +3134,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0: version "2.1.1" resolved "https://registry.nlark.com/punycode/download/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha1-tYsBCsQMIsVldhbI0sLALHv0eew= @@ -3165,11 +3156,6 @@ purgecss@^4.0.3: postcss "^8.2.1" postcss-selector-parser "^6.0.2" -qs@~6.5.2: - version "6.5.2" - resolved "https://registry.nlark.com/qs/download/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" - integrity sha1-yzroBuh0BERYTvFUzo7pjUA/PjY= - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.nlark.com/queue-microtask/download/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -3180,7 +3166,7 @@ quick-lru@^5.1.1: resolved "https://registry.npmmirror.com/quick-lru/download/quick-lru-5.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fquick-lru%2Fdownload%2Fquick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932" integrity sha1-NmST5rPkKjpoheLpnRj4D7eoyTI= -rc@^1.2.7, rc@^1.2.8: +rc@^1.2.8: version "1.2.8" resolved "https://registry.npm.taobao.org/rc/download/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0= @@ -3201,7 +3187,7 @@ read-config-file@6.2.0: json5 "^2.2.0" lazy-val "^1.0.4" -readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.3.5: +readable-stream@^2.2.2: version "2.3.7" resolved "https://registry.nlark.com/readable-stream/download/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c= @@ -3214,7 +3200,7 @@ readable-stream@^2.0.6, readable-stream@^2.2.2, readable-stream@^2.3.5: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.1.1, readable-stream@^3.4.0: +readable-stream@^3.4.0: version "3.6.0" resolved "https://registry.nlark.com/readable-stream/download/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha1-M3u9o63AcGvT4CRCaihtS0sskZg= @@ -3223,6 +3209,15 @@ readable-stream@^3.1.1, readable-stream@^3.4.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@^3.6.0: + version "3.6.2" + resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.nlark.com/readdirp/download/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -3252,32 +3247,6 @@ registry-url@^5.0.0: dependencies: rc "^1.2.8" -request@^2.88.2: - version "2.88.2" - resolved "https://registry.npmmirror.com/request/download/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM= - dependencies: - aws-sign2 "~0.7.0" - aws4 "^1.8.0" - caseless "~0.12.0" - combined-stream "~1.0.6" - extend "~3.0.2" - forever-agent "~0.6.1" - form-data "~2.3.2" - har-validator "~5.1.3" - http-signature "~1.2.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - oauth-sign "~0.9.0" - performance-now "^2.1.0" - qs "~6.5.2" - safe-buffer "^5.1.2" - tough-cookie "~2.5.0" - tunnel-agent "^0.6.0" - uuid "^3.3.2" - require-directory@^2.1.1: version "2.1.1" resolved "https://registry.nlark.com/require-directory/download/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" @@ -3338,6 +3307,11 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.npmmirror.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== + reusify@^1.0.4: version "1.0.4" resolved "https://registry.nlark.com/reusify/download/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" @@ -3353,13 +3327,6 @@ rgba-regex@^1.0.0: resolved "https://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= -rimraf@^2.6.1, rimraf@^2.7.1: - version "2.7.1" - resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w= - dependencies: - glob "^7.1.3" - rimraf@^3.0.0, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" @@ -3393,17 +3360,17 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: - version "5.2.1" - resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1618847044058&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY= - safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1618847044058&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0= -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1618847044058&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY= + +"safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.nlark.com/safer-buffer/download/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo= @@ -3432,11 +3399,6 @@ semver-diff@^3.1.1: dependencies: semver "^6.3.0" -semver@^5.3.0, semver@^5.4.1: - version "5.7.1" - resolved "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha1-qVT5Ma66UI0we78Gnv8MAclhFvc= - semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -3456,27 +3418,30 @@ serialize-error@^7.0.1: dependencies: type-fest "^0.13.1" -serialport@9.2.4: - version "9.2.4" - resolved "https://registry.npmmirror.com/serialport/download/serialport-9.2.4.tgz#ea95a32897286c8eadeaa700c215376fc5604c49" - integrity sha1-6pWjKJcobI6t6qcAwhU3b8VgTEk= +serialport@10.5.0: + version "10.5.0" + resolved "https://registry.npmmirror.com/serialport/-/serialport-10.5.0.tgz#b85f614def6e8914e5865c798b0555330903a0f8" + integrity sha512-7OYLDsu5i6bbv3lU81pGy076xe0JwpK6b49G6RjNvGibstUqQkI+I3/X491yBGtf4gaqUdOgoU1/5KZ/XxL4dw== dependencies: - "@serialport/binding-mock" "9.2.4" - "@serialport/bindings" "9.2.4" - "@serialport/parser-byte-length" "9.2.4" - "@serialport/parser-cctalk" "9.2.4" - "@serialport/parser-delimiter" "9.2.4" - "@serialport/parser-inter-byte-timeout" "9.2.4" - "@serialport/parser-readline" "9.2.4" - "@serialport/parser-ready" "9.2.4" - "@serialport/parser-regex" "9.2.4" - "@serialport/stream" "9.2.4" - debug "^4.3.2" + "@serialport/binding-mock" "10.2.2" + "@serialport/bindings-cpp" "10.8.0" + "@serialport/parser-byte-length" "10.5.0" + "@serialport/parser-cctalk" "10.5.0" + "@serialport/parser-delimiter" "10.5.0" + "@serialport/parser-inter-byte-timeout" "10.5.0" + "@serialport/parser-packet-length" "10.5.0" + "@serialport/parser-readline" "10.5.0" + "@serialport/parser-ready" "10.5.0" + "@serialport/parser-regex" "10.5.0" + "@serialport/parser-slip-encoder" "10.5.0" + "@serialport/parser-spacepacket" "10.5.0" + "@serialport/stream" "10.5.0" + debug "^4.3.3" -set-blocking@~2.0.0: +set-blocking@^2.0.0: version "2.0.0" - resolved "https://registry.npmmirror.com/set-blocking/download/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + resolved "https://registry.npmmirror.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== shebang-command@^2.0.0: version "2.0.0" @@ -3490,24 +3455,15 @@ shebang-regex@^3.0.0: resolved "https://registry.nlark.com/shebang-regex/download/shebang-regex-3.0.0.tgz?cache=0&sync_timestamp=1628896299850&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fshebang-regex%2Fdownload%2Fshebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI= -signal-exit@^3.0.0, signal-exit@^3.0.2: +signal-exit@^3.0.2: version "3.0.6" resolved "https://registry.npmmirror.com/signal-exit/download/signal-exit-3.0.6.tgz?cache=0&sync_timestamp=1637255687504&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fsignal-exit%2Fdownload%2Fsignal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== -simple-concat@^1.0.0: - version "1.0.1" - resolved "https://registry.npm.taobao.org/simple-concat/download/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" - integrity sha1-9Gl2CCujXCJj8cirXt/ibEHJVS8= - -simple-get@^3.0.3: - version "3.1.0" - resolved "https://registry.npm.taobao.org/simple-get/download/simple-get-3.1.0.tgz#b45be062435e50d159540b576202ceec40b9c6b3" - integrity sha1-tFvgYkNeUNFZVAtXYgLO7EC5xrM= - dependencies: - decompress-response "^4.2.0" - once "^1.3.1" - simple-concat "^1.0.0" +signal-exit@^3.0.7: + version "3.0.7" + resolved "https://registry.npmmirror.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== simple-swizzle@^0.2.2: version "0.2.2" @@ -3523,11 +3479,28 @@ slice-ansi@^1.0.0: dependencies: is-fullwidth-code-point "^2.0.0" -smart-buffer@^4.0.2: +smart-buffer@^4.0.2, smart-buffer@^4.2.0: version "4.2.0" resolved "https://registry.nlark.com/smart-buffer/download/smart-buffer-4.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsmart-buffer%2Fdownload%2Fsmart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha1-bh1x+k8YwF99D/IW3RakgdDo2a4= +socks-proxy-agent@^7.0.0: + version "7.0.0" + resolved "https://registry.npmmirror.com/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz#dc069ecf34436621acb41e3efa66ca1b5fed15b6" + integrity sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww== + dependencies: + agent-base "^6.0.2" + debug "^4.3.3" + socks "^2.6.2" + +socks@^2.6.2: + version "2.8.1" + resolved "https://registry.npmmirror.com/socks/-/socks-2.8.1.tgz#22c7d9dd7882649043cba0eafb49ae144e3457af" + integrity sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ== + dependencies: + ip-address "^9.0.5" + smart-buffer "^4.2.0" + source-map-js@^1.0.1: version "1.0.1" resolved "https://registry.npmmirror.com/source-map-js/download/source-map-js-1.0.1.tgz?cache=0&sync_timestamp=1636400772640&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fsource-map-js%2Fdownload%2Fsource-map-js-1.0.1.tgz#a1741c131e3c77d048252adfa24e23b908670caf" @@ -3556,36 +3529,24 @@ sprintf-js@^1.1.2: resolved "https://registry.nlark.com/sprintf-js/download/sprintf-js-1.1.2.tgz?cache=0&sync_timestamp=1618847174560&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsprintf-js%2Fdownload%2Fsprintf-js-1.1.2.tgz#da1765262bf8c0f571749f2ad6c26300207ae673" integrity sha1-2hdlJiv4wPVxdJ8q1sJjACB65nM= -sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.nlark.com/sshpk/download/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha1-+2YcC+8ps520B2nuOfpwCT1vaHc= +sprintf-js@^1.1.3: + version "1.1.3" + resolved "https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" + integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== + +ssri@^9.0.0: + version "9.0.1" + resolved "https://registry.npmmirror.com/ssri/-/ssri-9.0.1.tgz#544d4c357a8d7b71a19700074b6883fcb4eae057" + integrity sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q== dependencies: - asn1 "~0.2.3" - assert-plus "^1.0.0" - bcrypt-pbkdf "^1.0.0" - dashdash "^1.12.0" - ecc-jsbn "~0.1.1" - getpass "^0.1.1" - jsbn "~0.1.0" - safer-buffer "^2.0.2" - tweetnacl "~0.14.0" + minipass "^3.1.1" stat-mode@^1.0.0: version "1.0.0" resolved "https://registry.nlark.com/stat-mode/download/stat-mode-1.0.0.tgz#68b55cb61ea639ff57136f36b216a291800d1465" integrity sha1-aLVcth6mOf9XE282shaikYANFGU= -string-width@^1.0.1: - version "1.0.2" - resolved "https://registry.npmmirror.com/string-width/download/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-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2: +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.npmmirror.com/string-width/download/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA= @@ -3616,13 +3577,6 @@ 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.npmmirror.com/strip-ansi/download/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - strip-ansi@^4.0.0: version "4.0.0" resolved "https://registry.npmmirror.com/strip-ansi/download/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" @@ -3701,41 +3655,7 @@ tailwindcss@^2.1.1: resolve "^1.20.0" tmp "^0.2.1" -tar-fs@^2.0.0: - version "2.1.1" - resolved "https://registry.npm.taobao.org/tar-fs/download/tar-fs-2.1.1.tgz#489a15ab85f1f0befabb370b7de4f9eb5cbe8784" - integrity sha1-SJoVq4Xx8L76uzcLfeT561y+h4Q= - dependencies: - chownr "^1.1.1" - mkdirp-classic "^0.5.2" - pump "^3.0.0" - tar-stream "^2.1.4" - -tar-stream@^2.1.4: - version "2.2.0" - resolved "https://registry.nlark.com/tar-stream/download/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" - integrity sha1-rK2EwoQTawYNw/qmRHSqmuvXcoc= - dependencies: - bl "^4.0.3" - end-of-stream "^1.4.1" - fs-constants "^1.0.0" - inherits "^2.0.3" - readable-stream "^3.1.1" - -tar@^4: - version "4.4.19" - resolved "https://registry.nlark.com/tar/download/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" - integrity sha1-Lk1yY98m8rkU3uEMglqxMhI3QvM= - dependencies: - chownr "^1.1.4" - fs-minipass "^1.2.7" - minipass "^2.9.0" - minizlib "^1.3.3" - mkdirp "^0.5.5" - safe-buffer "^5.2.1" - yallist "^3.1.1" - -tar@^6.0.2, tar@^6.0.5: +tar@^6.0.5: version "6.1.11" resolved "https://registry.nlark.com/tar/download/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" integrity sha1-Z2CjjwA6+hsv/Q/+npq70Oqz1iE= @@ -3747,6 +3667,18 @@ tar@^6.0.2, tar@^6.0.5: mkdirp "^1.0.3" yallist "^4.0.0" +tar@^6.1.11, tar@^6.1.2: + version "6.2.0" + resolved "https://registry.npmmirror.com/tar/-/tar-6.2.0.tgz#b14ce49a79cb1cd23bc9b016302dea5474493f73" + integrity sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ== + dependencies: + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^5.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" + temp-file@^3.4.0: version "3.4.0" resolved "https://registry.nlark.com/temp-file/download/temp-file-3.4.0.tgz#766ea28911c683996c248ef1a20eea04d51652c7" @@ -3786,14 +3718,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha1-zZ+yoKodWhK0c72fuW+j3P9lreI= - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - truncate-utf8-bytes@^1.0.0: version "1.0.2" resolved "https://registry.npm.taobao.org/truncate-utf8-bytes/download/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" @@ -3818,23 +3742,11 @@ tslib@2.3.0: resolved "https://registry.nlark.com/tslib/download/tslib-2.3.0.tgz?cache=0&sync_timestamp=1628722556410&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ftslib%2Fdownload%2Ftslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e" integrity sha1-gDuM2rPhK6WBpMpByIObuw2ssJ4= -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.nlark.com/tunnel-agent/download/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= - dependencies: - safe-buffer "^5.0.1" - tunnel@^0.0.6: version "0.0.6" resolved "https://registry.nlark.com/tunnel/download/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c" integrity sha1-cvExSzSlsZLbASMk3yzFh8pH+Sw= -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - type-fest@^0.13.1: version "0.13.1" resolved "https://registry.npmmirror.com/type-fest/download/type-fest-0.13.1.tgz?cache=0&sync_timestamp=1637149872065&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ftype-fest%2Fdownload%2Ftype-fest-0.13.1.tgz#0172cb5bce80b0bd542ea348db50c7e21834d934" @@ -3867,6 +3779,20 @@ typescript@^4.2.3: resolved "https://registry.npmmirror.com/typescript/download/typescript-4.5.2.tgz#8ac1fba9f52256fdb06fb89e4122fa6a346c2998" integrity sha512-5BlMof9H1yGt0P8/WF+wPNw6GfctgGjXp5hkblpyT+8rkASSmkUKMXrxR0Xg8ThVCi/JnHQiKXeBaEwCeQwMFw== +unique-filename@^2.0.0: + version "2.0.1" + resolved "https://registry.npmmirror.com/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" + integrity sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A== + dependencies: + unique-slug "^3.0.0" + +unique-slug@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/unique-slug/-/unique-slug-3.0.0.tgz#6d347cf57c8a7a7a6044aabd0e2d74e4d76dc7c9" + integrity sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w== + dependencies: + imurmurhash "^0.1.4" + unique-string@^2.0.0: version "2.0.0" resolved "https://registry.npm.taobao.org/unique-string/download/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" @@ -3928,20 +3854,6 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.nlark.com/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -uuid@^3.3.2: - version "3.4.0" - resolved "https://registry.npmmirror.com/uuid/download/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4= - -verror@1.10.0: - version "1.10.0" - resolved "https://registry.npmmirror.com/verror/download/verror-1.10.0.tgz?cache=0&sync_timestamp=1635885078723&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fverror%2Fdownload%2Fverror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - verror@^1.10.0: version "1.10.1" resolved "https://registry.npmmirror.com/verror/download/verror-1.10.1.tgz?cache=0&sync_timestamp=1635885078723&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fverror%2Fdownload%2Fverror-1.10.1.tgz#4bf09eeccf4563b109ed4b3d458380c972b0cdeb" @@ -3963,18 +3875,18 @@ vite@^2.0.5: optionalDependencies: fsevents "~2.3.2" -vue-demi@^0.11.2: - version "0.11.4" - resolved "https://registry.npmmirror.com/vue-demi/download/vue-demi-0.11.4.tgz#6101992fe4724cf5634018a16e953f3052e94e2a" - integrity sha1-YQGZL+RyTPVjQBihbpU/MFLpTio= +vue-demi@^0.13.11: + version "0.13.11" + resolved "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.11.tgz#7d90369bdae8974d87b1973564ad390182410d99" + integrity sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A== -vue-echarts@^6.0.0: - version "6.0.0" - resolved "https://registry.npmmirror.com/vue-echarts/download/vue-echarts-6.0.0.tgz#480263fc6ed2125b886bb1b7f05bf9273edee552" - integrity sha1-SAJj/G7SEluIa7G38Fv5Jz7e5VI= +vue-echarts@^6.6.9: + version "6.6.9" + resolved "https://registry.npmmirror.com/vue-echarts/-/vue-echarts-6.6.9.tgz#151372ecd086db985dafeeebd3ea83c8d4d2846b" + integrity sha512-mojIq3ZvsjabeVmDthhAUDV8Kgf2Rr/X4lV4da7gEFd1fP05gcSJ0j7wa7HQkW5LlFmF2gdCJ8p4Chas6NNIQQ== dependencies: resize-detector "^0.3.0" - vue-demi "^0.11.2" + vue-demi "^0.13.11" vue@^3.0.5: version "3.2.22" @@ -4001,10 +3913,10 @@ which@^2.0.1, which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.0: +wide-align@^1.1.5: version "1.1.5" - resolved "https://registry.npmmirror.com/wide-align/download/wide-align-1.1.5.tgz?cache=0&sync_timestamp=1634307502489&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fwide-align%2Fdownload%2Fwide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" - integrity sha1-3x1MIGhUNp7PPJpImPGyP72dFdM= + resolved "https://registry.npmmirror.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== dependencies: string-width "^1.0.2 || 2 || 3 || 4" @@ -4064,11 +3976,6 @@ y18n@^5.0.5: resolved "https://registry.nlark.com/y18n/download/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha1-f0k00PfKjFb5UxSTndzS3ZHOHVU= -yallist@^3.0.0, yallist@^3.1.1: - version "3.1.1" - resolved "https://registry.nlark.com/yallist/download/yallist-3.1.1.tgz?cache=0&sync_timestamp=1622604530774&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fyallist%2Fdownload%2Fyallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha1-27fa+b/YusmrRev2ArjLrQ1dCP0= - yallist@^4.0.0: version "4.0.0" resolved "https://registry.nlark.com/yallist/download/yallist-4.0.0.tgz?cache=0&sync_timestamp=1622604530774&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fyallist%2Fdownload%2Fyallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" @@ -4084,19 +3991,6 @@ yargs-parser@^20.2.2: resolved "https://registry.npmmirror.com/yargs-parser/download/yargs-parser-20.2.9.tgz?cache=0&sync_timestamp=1637030983058&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fyargs-parser%2Fdownload%2Fyargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha1-LrfcOwKJcY/ClfNidThFxBoMlO4= -yargs@^16.0.0: - version "16.2.0" - resolved "https://registry.npmmirror.com/yargs/download/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha1-HIK/D2tqZur85+8w43b0mhJHf2Y= - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - yargs@^17.0.1: version "17.2.1" resolved "https://registry.npmmirror.com/yargs/download/yargs-17.2.1.tgz#e2c95b9796a0e1f7f3bf4427863b42e0418191ea" @@ -4123,9 +4017,9 @@ yn@3.1.1: resolved "https://registry.nlark.com/yn/download/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" integrity sha1-HodAGgnXZ8HV6rJqbkwYUYLS61A= -zrender@5.2.1: - version "5.2.1" - resolved "https://registry.nlark.com/zrender/download/zrender-5.2.1.tgz#5f4bbda915ba6d412b0b19dc2431beaad05417bb" - integrity sha1-X0u9qRW6bUErCxncJDG+qtBUF7s= +zrender@5.5.0, zrender@^5.1.1: + version "5.5.0" + resolved "https://registry.npmmirror.com/zrender/-/zrender-5.5.0.tgz#54d0d6c4eda81a96d9f60a9cd74dc48ea026bc1e" + integrity sha512-O3MilSi/9mwoovx77m6ROZM7sXShR/O/JIanvzTwjN3FORfLSr81PsUGd7jlaYOeds9d8tw82oP44+3YucVo+w== dependencies: tslib "2.3.0"