##// END OF EJS Templates
`Subscribable` is made compatible with rxjs, added map, filter and scan...
cin -
r102:c65ea2350b1a v1.3
parent child
Show More
@@ -0,0 +1,13
1 import * as t from "tap";
2 import { Baz } from "./mock/Baz";
3
4 t.comment("Declare tests");
5
6 const baz = new Baz();
7
8 const data: string[] = [];
9 baz.writeHello(data);
10 t.pass("Test complete");
11
12 // tslint:disable-next-line: no-console
13 t.comment(data.join("\n"));
@@ -0,0 +1,52
1 import { observe } from "./observable";
2 import * as t from "tap";
3
4 const subj1 = observe<number>(({ next, complete }) => {
5 next(1);
6 complete();
7 next(2);
8 });
9
10 const consumer1 = {
11 sum: 0,
12 next(v: number) {
13 this.sum += v;
14 }
15 }
16
17 subj1.subscribe(consumer1);
18 t.equal(consumer1.sum, 1, "Should get only one value");
19
20 subj1.subscribe(consumer1);
21 t.equal(consumer1.sum, 2, "Should get the value again");
22
23 const consumer2 = {
24 value: 0,
25 completed: false,
26 next(v: number) { this.value = v; },
27 complete() { this.completed = true; }
28 };
29
30 let maps = 0;
31
32 subj1
33 .map(v => {
34 t.comment("map1: " + v * 2);
35 maps++;
36 return v * 2;
37 })
38 .map (v => {
39 t.comment("map2: " + v * 2);
40 maps++;
41 return v * 2;
42 })
43 .map(v => {
44 t.comment("map3: " + v * 2);
45 maps++;
46 return v * 2
47 })
48 .subscribe(consumer2);
49
50 t.equal(consumer2.value, 8, "Should map");
51 t.equal(maps, 3, "The map chain should not be executed after completion");
52 t.ok(consumer2.completed, "The completion signal should pass through"); No newline at end of file
1 NO CONTENT: new file 100644
NO CONTENT: new file 100644
This diff has been collapsed as it changes many lines, (6917 lines changed) Show them Hide them
@@ -1,2610 +1,9343
1 {
1 {
2 "name": "@implab/djx",
2 "name": "@implab/djx",
3 "version": "0.0.1-dev",
3 "version": "0.0.1-dev",
4 "lockfileVersion": 2,
4 "lockfileVersion": 2,
5 "requires": true,
5 "requires": true,
6 "packages": {
6 "packages": {
7 "": {
7 "": {
8 "name": "@implab/djx",
8 "name": "@implab/djx",
9 "version": "0.0.1-dev",
9 "version": "0.0.1-dev",
10 "license": "BSD-2-Clause",
10 "license": "BSD-2-Clause",
11 "devDependencies": {
11 "devDependencies": {
12 "@implab/core-amd": "^1.4.0",
12 "@implab/core-amd": "^1.4.0",
13 "@implab/dojo-typings": "1.0.0",
13 "@implab/dojo-typings": "1.0.0",
14 "@types/chai": "4.1.3",
14 "@types/chai": "4.1.3",
15 "@types/requirejs": "2.1.31",
15 "@types/requirejs": "2.1.31",
16 "@types/tap": "15.0.7",
16 "@types/yaml": "1.2.0",
17 "@types/yaml": "1.2.0",
17 "dojo": "1.16.0",
18 "dojo": "1.16.0",
18 "eslint": "6.8.0",
19 "eslint": "6.8.0",
19 "requirejs": "2.3.6",
20 "requirejs": "2.3.6",
21 "tap": "16.3.0",
20 "tslint": "^6.1.3",
22 "tslint": "^6.1.3",
21 "typescript": "4.7.4",
23 "typescript": "4.8.2",
22 "yaml": "~1.7.2"
24 "yaml": "~1.7.2"
23 },
25 },
24 "peerDependencies": {
26 "peerDependencies": {
25 "@implab/core-amd": "^1.4.0",
27 "@implab/core-amd": "^1.4.0",
26 "dojo": "^1.10.0"
28 "dojo": "^1.10.0"
27 }
29 }
28 },
30 },
31 "node_modules/@ampproject/remapping": {
32 "version": "2.2.0",
33 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
34 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
35 "dev": true,
36 "dependencies": {
37 "@jridgewell/gen-mapping": "^0.1.0",
38 "@jridgewell/trace-mapping": "^0.3.9"
39 },
40 "engines": {
41 "node": ">=6.0.0"
42 }
43 },
29 "node_modules/@babel/code-frame": {
44 "node_modules/@babel/code-frame": {
30 "version": "7.8.3",
45 "version": "7.18.6",
31 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
46 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
32 "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==",
47 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
33 "dev": true,
48 "dev": true,
34 "dependencies": {
49 "dependencies": {
35 "@babel/highlight": "^7.8.3"
50 "@babel/highlight": "^7.18.6"
51 },
52 "engines": {
53 "node": ">=6.9.0"
54 }
55 },
56 "node_modules/@babel/compat-data": {
57 "version": "7.19.0",
58 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.0.tgz",
59 "integrity": "sha512-y5rqgTTPTmaF5e2nVhOxw+Ur9HDJLsWb6U/KpgUzRZEdPfE6VOubXBKLdbcUTijzRptednSBDQbYZBOSqJxpJw==",
60 "dev": true,
61 "engines": {
62 "node": ">=6.9.0"
63 }
64 },
65 "node_modules/@babel/core": {
66 "version": "7.19.0",
67 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.19.0.tgz",
68 "integrity": "sha512-reM4+U7B9ss148rh2n1Qs9ASS+w94irYXga7c2jaQv9RVzpS7Mv1a9rnYYwuDa45G+DkORt9g6An2k/V4d9LbQ==",
69 "dev": true,
70 "dependencies": {
71 "@ampproject/remapping": "^2.1.0",
72 "@babel/code-frame": "^7.18.6",
73 "@babel/generator": "^7.19.0",
74 "@babel/helper-compilation-targets": "^7.19.0",
75 "@babel/helper-module-transforms": "^7.19.0",
76 "@babel/helpers": "^7.19.0",
77 "@babel/parser": "^7.19.0",
78 "@babel/template": "^7.18.10",
79 "@babel/traverse": "^7.19.0",
80 "@babel/types": "^7.19.0",
81 "convert-source-map": "^1.7.0",
82 "debug": "^4.1.0",
83 "gensync": "^1.0.0-beta.2",
84 "json5": "^2.2.1",
85 "semver": "^6.3.0"
86 },
87 "engines": {
88 "node": ">=6.9.0"
89 },
90 "funding": {
91 "type": "opencollective",
92 "url": "https://opencollective.com/babel"
93 }
94 },
95 "node_modules/@babel/generator": {
96 "version": "7.19.0",
97 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.19.0.tgz",
98 "integrity": "sha512-S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg==",
99 "dev": true,
100 "dependencies": {
101 "@babel/types": "^7.19.0",
102 "@jridgewell/gen-mapping": "^0.3.2",
103 "jsesc": "^2.5.1"
104 },
105 "engines": {
106 "node": ">=6.9.0"
107 }
108 },
109 "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
110 "version": "0.3.2",
111 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
112 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
113 "dev": true,
114 "dependencies": {
115 "@jridgewell/set-array": "^1.0.1",
116 "@jridgewell/sourcemap-codec": "^1.4.10",
117 "@jridgewell/trace-mapping": "^0.3.9"
118 },
119 "engines": {
120 "node": ">=6.0.0"
121 }
122 },
123 "node_modules/@babel/helper-compilation-targets": {
124 "version": "7.19.0",
125 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.0.tgz",
126 "integrity": "sha512-Ai5bNWXIvwDvWM7njqsG3feMlL9hCVQsPYXodsZyLwshYkZVJt59Gftau4VrE8S9IT9asd2uSP1hG6wCNw+sXA==",
127 "dev": true,
128 "dependencies": {
129 "@babel/compat-data": "^7.19.0",
130 "@babel/helper-validator-option": "^7.18.6",
131 "browserslist": "^4.20.2",
132 "semver": "^6.3.0"
133 },
134 "engines": {
135 "node": ">=6.9.0"
136 },
137 "peerDependencies": {
138 "@babel/core": "^7.0.0"
139 }
140 },
141 "node_modules/@babel/helper-environment-visitor": {
142 "version": "7.18.9",
143 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
144 "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
145 "dev": true,
146 "engines": {
147 "node": ">=6.9.0"
148 }
149 },
150 "node_modules/@babel/helper-function-name": {
151 "version": "7.19.0",
152 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
153 "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
154 "dev": true,
155 "dependencies": {
156 "@babel/template": "^7.18.10",
157 "@babel/types": "^7.19.0"
158 },
159 "engines": {
160 "node": ">=6.9.0"
161 }
162 },
163 "node_modules/@babel/helper-hoist-variables": {
164 "version": "7.18.6",
165 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
166 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
167 "dev": true,
168 "dependencies": {
169 "@babel/types": "^7.18.6"
170 },
171 "engines": {
172 "node": ">=6.9.0"
173 }
174 },
175 "node_modules/@babel/helper-module-imports": {
176 "version": "7.18.6",
177 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
178 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
179 "dev": true,
180 "dependencies": {
181 "@babel/types": "^7.18.6"
182 },
183 "engines": {
184 "node": ">=6.9.0"
185 }
186 },
187 "node_modules/@babel/helper-module-transforms": {
188 "version": "7.19.0",
189 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz",
190 "integrity": "sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==",
191 "dev": true,
192 "dependencies": {
193 "@babel/helper-environment-visitor": "^7.18.9",
194 "@babel/helper-module-imports": "^7.18.6",
195 "@babel/helper-simple-access": "^7.18.6",
196 "@babel/helper-split-export-declaration": "^7.18.6",
197 "@babel/helper-validator-identifier": "^7.18.6",
198 "@babel/template": "^7.18.10",
199 "@babel/traverse": "^7.19.0",
200 "@babel/types": "^7.19.0"
201 },
202 "engines": {
203 "node": ">=6.9.0"
204 }
205 },
206 "node_modules/@babel/helper-simple-access": {
207 "version": "7.18.6",
208 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
209 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
210 "dev": true,
211 "dependencies": {
212 "@babel/types": "^7.18.6"
213 },
214 "engines": {
215 "node": ">=6.9.0"
216 }
217 },
218 "node_modules/@babel/helper-split-export-declaration": {
219 "version": "7.18.6",
220 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
221 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
222 "dev": true,
223 "dependencies": {
224 "@babel/types": "^7.18.6"
225 },
226 "engines": {
227 "node": ">=6.9.0"
228 }
229 },
230 "node_modules/@babel/helper-string-parser": {
231 "version": "7.18.10",
232 "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
233 "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
234 "dev": true,
235 "engines": {
236 "node": ">=6.9.0"
237 }
238 },
239 "node_modules/@babel/helper-validator-identifier": {
240 "version": "7.18.6",
241 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
242 "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==",
243 "dev": true,
244 "engines": {
245 "node": ">=6.9.0"
246 }
247 },
248 "node_modules/@babel/helper-validator-option": {
249 "version": "7.18.6",
250 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
251 "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
252 "dev": true,
253 "engines": {
254 "node": ">=6.9.0"
255 }
256 },
257 "node_modules/@babel/helpers": {
258 "version": "7.19.0",
259 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.19.0.tgz",
260 "integrity": "sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==",
261 "dev": true,
262 "dependencies": {
263 "@babel/template": "^7.18.10",
264 "@babel/traverse": "^7.19.0",
265 "@babel/types": "^7.19.0"
266 },
267 "engines": {
268 "node": ">=6.9.0"
36 }
269 }
37 },
270 },
38 "node_modules/@babel/highlight": {
271 "node_modules/@babel/highlight": {
39 "version": "7.8.3",
272 "version": "7.18.6",
40 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz",
273 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
41 "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==",
274 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
42 "dev": true,
275 "dev": true,
43 "dependencies": {
276 "dependencies": {
277 "@babel/helper-validator-identifier": "^7.18.6",
44 "chalk": "^2.0.0",
278 "chalk": "^2.0.0",
45 "esutils": "^2.0.2",
46 "js-tokens": "^4.0.0"
279 "js-tokens": "^4.0.0"
280 },
281 "engines": {
282 "node": ">=6.9.0"
283 }
284 },
285 "node_modules/@babel/parser": {
286 "version": "7.19.0",
287 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.19.0.tgz",
288 "integrity": "sha512-74bEXKX2h+8rrfQUfsBfuZZHzsEs6Eql4pqy/T4Nn6Y9wNPggQOqD6z6pn5Bl8ZfysKouFZT/UXEH94ummEeQw==",
289 "dev": true,
290 "bin": {
291 "parser": "bin/babel-parser.js"
292 },
293 "engines": {
294 "node": ">=6.0.0"
47 }
295 }
48 },
296 },
49 "node_modules/@babel/runtime": {
297 "node_modules/@babel/runtime": {
50 "version": "7.8.3",
298 "version": "7.8.3",
51 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
299 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
52 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
300 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
53 "dev": true,
301 "dev": true,
54 "dependencies": {
302 "dependencies": {
55 "regenerator-runtime": "^0.13.2"
303 "regenerator-runtime": "^0.13.2"
56 }
304 }
57 },
305 },
306 "node_modules/@babel/template": {
307 "version": "7.18.10",
308 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
309 "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
310 "dev": true,
311 "dependencies": {
312 "@babel/code-frame": "^7.18.6",
313 "@babel/parser": "^7.18.10",
314 "@babel/types": "^7.18.10"
315 },
316 "engines": {
317 "node": ">=6.9.0"
318 }
319 },
320 "node_modules/@babel/traverse": {
321 "version": "7.19.0",
322 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.0.tgz",
323 "integrity": "sha512-4pKpFRDh+utd2mbRC8JLnlsMUii3PMHjpL6a0SZ4NMZy7YFP9aXORxEhdMVOc9CpWtDF09IkciQLEhK7Ml7gRA==",
324 "dev": true,
325 "dependencies": {
326 "@babel/code-frame": "^7.18.6",
327 "@babel/generator": "^7.19.0",
328 "@babel/helper-environment-visitor": "^7.18.9",
329 "@babel/helper-function-name": "^7.19.0",
330 "@babel/helper-hoist-variables": "^7.18.6",
331 "@babel/helper-split-export-declaration": "^7.18.6",
332 "@babel/parser": "^7.19.0",
333 "@babel/types": "^7.19.0",
334 "debug": "^4.1.0",
335 "globals": "^11.1.0"
336 },
337 "engines": {
338 "node": ">=6.9.0"
339 }
340 },
341 "node_modules/@babel/traverse/node_modules/globals": {
342 "version": "11.12.0",
343 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
344 "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
345 "dev": true,
346 "engines": {
347 "node": ">=4"
348 }
349 },
350 "node_modules/@babel/types": {
351 "version": "7.19.0",
352 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.19.0.tgz",
353 "integrity": "sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==",
354 "dev": true,
355 "dependencies": {
356 "@babel/helper-string-parser": "^7.18.10",
357 "@babel/helper-validator-identifier": "^7.18.6",
358 "to-fast-properties": "^2.0.0"
359 },
360 "engines": {
361 "node": ">=6.9.0"
362 }
363 },
58 "node_modules/@implab/core-amd": {
364 "node_modules/@implab/core-amd": {
59 "version": "1.4.0",
365 "version": "1.4.0",
60 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.0.tgz",
366 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.0.tgz",
61 "integrity": "sha512-gaJX1mhri7YpmXDTAYELZnmTznzXYpk2AI7Decsttdi6xY+bqGgH24q0AFcKrx8RY2jfsFXxDdf0fITz2HpBbw==",
367 "integrity": "sha512-gaJX1mhri7YpmXDTAYELZnmTznzXYpk2AI7Decsttdi6xY+bqGgH24q0AFcKrx8RY2jfsFXxDdf0fITz2HpBbw==",
62 "dev": true
368 "dev": true
63 },
369 },
64 "node_modules/@implab/dojo-typings": {
370 "node_modules/@implab/dojo-typings": {
65 "version": "1.0.0",
371 "version": "1.0.0",
66 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.0.tgz",
372 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.0.tgz",
67 "integrity": "sha512-B2kvlKJgvyIQAl/k1pVyNmtp4ADvBDCs4Lw/qfBC+Sz/ft4c7EuRXmN/+2dhWrd6A5SMjEgex5oeq6Ja2ntrig==",
373 "integrity": "sha512-B2kvlKJgvyIQAl/k1pVyNmtp4ADvBDCs4Lw/qfBC+Sz/ft4c7EuRXmN/+2dhWrd6A5SMjEgex5oeq6Ja2ntrig==",
68 "dev": true
374 "dev": true
69 },
375 },
376 "node_modules/@istanbuljs/load-nyc-config": {
377 "version": "1.1.0",
378 "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
379 "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
380 "dev": true,
381 "dependencies": {
382 "camelcase": "^5.3.1",
383 "find-up": "^4.1.0",
384 "get-package-type": "^0.1.0",
385 "js-yaml": "^3.13.1",
386 "resolve-from": "^5.0.0"
387 },
388 "engines": {
389 "node": ">=8"
390 }
391 },
392 "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": {
393 "version": "5.0.0",
394 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
395 "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
396 "dev": true,
397 "engines": {
398 "node": ">=8"
399 }
400 },
401 "node_modules/@istanbuljs/schema": {
402 "version": "0.1.3",
403 "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
404 "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
405 "dev": true,
406 "engines": {
407 "node": ">=8"
408 }
409 },
410 "node_modules/@jridgewell/gen-mapping": {
411 "version": "0.1.1",
412 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
413 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
414 "dev": true,
415 "dependencies": {
416 "@jridgewell/set-array": "^1.0.0",
417 "@jridgewell/sourcemap-codec": "^1.4.10"
418 },
419 "engines": {
420 "node": ">=6.0.0"
421 }
422 },
423 "node_modules/@jridgewell/resolve-uri": {
424 "version": "3.1.0",
425 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
426 "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
427 "dev": true,
428 "engines": {
429 "node": ">=6.0.0"
430 }
431 },
432 "node_modules/@jridgewell/set-array": {
433 "version": "1.1.2",
434 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
435 "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
436 "dev": true,
437 "engines": {
438 "node": ">=6.0.0"
439 }
440 },
441 "node_modules/@jridgewell/sourcemap-codec": {
442 "version": "1.4.14",
443 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
444 "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
445 "dev": true
446 },
447 "node_modules/@jridgewell/trace-mapping": {
448 "version": "0.3.15",
449 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz",
450 "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==",
451 "dev": true,
452 "dependencies": {
453 "@jridgewell/resolve-uri": "^3.0.3",
454 "@jridgewell/sourcemap-codec": "^1.4.10"
455 }
456 },
70 "node_modules/@types/chai": {
457 "node_modules/@types/chai": {
71 "version": "4.1.3",
458 "version": "4.1.3",
72 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
459 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
73 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
460 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
74 "dev": true
461 "dev": true
75 },
462 },
463 "node_modules/@types/node": {
464 "version": "18.7.15",
465 "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.15.tgz",
466 "integrity": "sha512-XnjpaI8Bgc3eBag2Aw4t2Uj/49lLBSStHWfqKvIuXD7FIrZyMLWp8KuAFHAqxMZYTF9l08N1ctUn9YNybZJVmQ==",
467 "dev": true
468 },
76 "node_modules/@types/requirejs": {
469 "node_modules/@types/requirejs": {
77 "version": "2.1.31",
470 "version": "2.1.31",
78 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
471 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
79 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
472 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
80 "dev": true
473 "dev": true
81 },
474 },
475 "node_modules/@types/tap": {
476 "version": "15.0.7",
477 "resolved": "https://registry.npmjs.org/@types/tap/-/tap-15.0.7.tgz",
478 "integrity": "sha512-TTMajw4gxQfFgYbhXhy/Tb2OiNcwS+4oP/9yp1/GdU0pFJo3wtnkYhRgmQy39ksh+rnoa0VrPHJ4Tuv2cLNQ5A==",
479 "dev": true,
480 "dependencies": {
481 "@types/node": "*"
482 }
483 },
82 "node_modules/@types/yaml": {
484 "node_modules/@types/yaml": {
83 "version": "1.2.0",
485 "version": "1.2.0",
84 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
486 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
85 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
487 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
86 "dev": true
488 "dev": true
87 },
489 },
88 "node_modules/acorn": {
490 "node_modules/acorn": {
89 "version": "7.4.0",
491 "version": "7.4.0",
90 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
492 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
91 "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
493 "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
92 "dev": true,
494 "dev": true,
93 "bin": {
495 "bin": {
94 "acorn": "bin/acorn"
496 "acorn": "bin/acorn"
95 },
497 },
96 "engines": {
498 "engines": {
97 "node": ">=0.4.0"
499 "node": ">=0.4.0"
98 }
500 }
99 },
501 },
100 "node_modules/acorn-jsx": {
502 "node_modules/acorn-jsx": {
101 "version": "5.1.0",
503 "version": "5.1.0",
102 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
504 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
103 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
505 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
104 "dev": true
506 "dev": true
105 },
507 },
508 "node_modules/aggregate-error": {
509 "version": "3.1.0",
510 "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
511 "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
512 "dev": true,
513 "dependencies": {
514 "clean-stack": "^2.0.0",
515 "indent-string": "^4.0.0"
516 },
517 "engines": {
518 "node": ">=8"
519 }
520 },
106 "node_modules/ajv": {
521 "node_modules/ajv": {
107 "version": "6.11.0",
522 "version": "6.11.0",
108 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
523 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
109 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
524 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
110 "dev": true,
525 "dev": true,
111 "dependencies": {
526 "dependencies": {
112 "fast-deep-equal": "^3.1.1",
527 "fast-deep-equal": "^3.1.1",
113 "fast-json-stable-stringify": "^2.0.0",
528 "fast-json-stable-stringify": "^2.0.0",
114 "json-schema-traverse": "^0.4.1",
529 "json-schema-traverse": "^0.4.1",
115 "uri-js": "^4.2.2"
530 "uri-js": "^4.2.2"
116 }
531 }
117 },
532 },
118 "node_modules/ansi-escapes": {
533 "node_modules/ansi-escapes": {
119 "version": "4.3.0",
534 "version": "4.3.0",
120 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
535 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
121 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
536 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
122 "dev": true,
537 "dev": true,
123 "dependencies": {
538 "dependencies": {
124 "type-fest": "^0.8.1"
539 "type-fest": "^0.8.1"
125 },
540 },
126 "engines": {
541 "engines": {
127 "node": ">=8"
542 "node": ">=8"
128 }
543 }
129 },
544 },
130 "node_modules/ansi-regex": {
545 "node_modules/ansi-regex": {
131 "version": "5.0.0",
546 "version": "5.0.1",
132 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
547 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
133 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
548 "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
134 "dev": true,
549 "dev": true,
135 "engines": {
550 "engines": {
136 "node": ">=8"
551 "node": ">=8"
137 }
552 }
138 },
553 },
139 "node_modules/ansi-styles": {
554 "node_modules/ansi-styles": {
140 "version": "3.2.1",
555 "version": "3.2.1",
141 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
556 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
142 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
557 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
143 "dev": true,
558 "dev": true,
144 "dependencies": {
559 "dependencies": {
145 "color-convert": "^1.9.0"
560 "color-convert": "^1.9.0"
146 },
561 },
147 "engines": {
562 "engines": {
148 "node": ">=4"
563 "node": ">=4"
149 }
564 }
150 },
565 },
566 "node_modules/anymatch": {
567 "version": "3.1.2",
568 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
569 "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
570 "dev": true,
571 "dependencies": {
572 "normalize-path": "^3.0.0",
573 "picomatch": "^2.0.4"
574 },
575 "engines": {
576 "node": ">= 8"
577 }
578 },
579 "node_modules/append-transform": {
580 "version": "2.0.0",
581 "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
582 "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
583 "dev": true,
584 "dependencies": {
585 "default-require-extensions": "^3.0.0"
586 },
587 "engines": {
588 "node": ">=8"
589 }
590 },
591 "node_modules/archy": {
592 "version": "1.0.0",
593 "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
594 "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==",
595 "dev": true
596 },
151 "node_modules/argparse": {
597 "node_modules/argparse": {
152 "version": "1.0.10",
598 "version": "1.0.10",
153 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
599 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
154 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
600 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
155 "dev": true,
601 "dev": true,
156 "dependencies": {
602 "dependencies": {
157 "sprintf-js": "~1.0.2"
603 "sprintf-js": "~1.0.2"
158 }
604 }
159 },
605 },
160 "node_modules/astral-regex": {
606 "node_modules/astral-regex": {
161 "version": "1.0.0",
607 "version": "1.0.0",
162 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
608 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
163 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
609 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
164 "dev": true,
610 "dev": true,
165 "engines": {
611 "engines": {
166 "node": ">=4"
612 "node": ">=4"
167 }
613 }
168 },
614 },
615 "node_modules/async-hook-domain": {
616 "version": "2.0.4",
617 "resolved": "https://registry.npmjs.org/async-hook-domain/-/async-hook-domain-2.0.4.tgz",
618 "integrity": "sha512-14LjCmlK1PK8eDtTezR6WX8TMaYNIzBIsd2D1sGoGjgx0BuNMMoSdk7i/drlbtamy0AWv9yv2tkB+ASdmeqFIw==",
619 "dev": true,
620 "engines": {
621 "node": ">=10"
622 }
623 },
169 "node_modules/balanced-match": {
624 "node_modules/balanced-match": {
170 "version": "1.0.0",
625 "version": "1.0.0",
171 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
626 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
172 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
627 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
173 "dev": true
628 "dev": true
174 },
629 },
630 "node_modules/binary-extensions": {
631 "version": "2.2.0",
632 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
633 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
634 "dev": true,
635 "engines": {
636 "node": ">=8"
637 }
638 },
639 "node_modules/bind-obj-methods": {
640 "version": "3.0.0",
641 "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-3.0.0.tgz",
642 "integrity": "sha512-nLEaaz3/sEzNSyPWRsN9HNsqwk1AUyECtGj+XwGdIi3xABnEqecvXtIJ0wehQXuuER5uZ/5fTs2usONgYjG+iw==",
643 "dev": true,
644 "engines": {
645 "node": ">=10"
646 }
647 },
175 "node_modules/brace-expansion": {
648 "node_modules/brace-expansion": {
176 "version": "1.1.11",
649 "version": "1.1.11",
177 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
650 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
178 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
651 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
179 "dev": true,
652 "dev": true,
180 "dependencies": {
653 "dependencies": {
181 "balanced-match": "^1.0.0",
654 "balanced-match": "^1.0.0",
182 "concat-map": "0.0.1"
655 "concat-map": "0.0.1"
183 }
656 }
184 },
657 },
658 "node_modules/braces": {
659 "version": "3.0.2",
660 "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
661 "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
662 "dev": true,
663 "dependencies": {
664 "fill-range": "^7.0.1"
665 },
666 "engines": {
667 "node": ">=8"
668 }
669 },
670 "node_modules/browserslist": {
671 "version": "4.21.3",
672 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
673 "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
674 "dev": true,
675 "funding": [
676 {
677 "type": "opencollective",
678 "url": "https://opencollective.com/browserslist"
679 },
680 {
681 "type": "tidelift",
682 "url": "https://tidelift.com/funding/github/npm/browserslist"
683 }
684 ],
685 "dependencies": {
686 "caniuse-lite": "^1.0.30001370",
687 "electron-to-chromium": "^1.4.202",
688 "node-releases": "^2.0.6",
689 "update-browserslist-db": "^1.0.5"
690 },
691 "bin": {
692 "browserslist": "cli.js"
693 },
694 "engines": {
695 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
696 }
697 },
698 "node_modules/buffer-from": {
699 "version": "1.1.2",
700 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
701 "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
702 "dev": true
703 },
185 "node_modules/builtin-modules": {
704 "node_modules/builtin-modules": {
186 "version": "1.1.1",
705 "version": "1.1.1",
187 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
706 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
188 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
707 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
189 "dev": true,
708 "dev": true,
190 "engines": {
709 "engines": {
191 "node": ">=0.10.0"
710 "node": ">=0.10.0"
192 }
711 }
193 },
712 },
713 "node_modules/caching-transform": {
714 "version": "4.0.0",
715 "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz",
716 "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==",
717 "dev": true,
718 "dependencies": {
719 "hasha": "^5.0.0",
720 "make-dir": "^3.0.0",
721 "package-hash": "^4.0.0",
722 "write-file-atomic": "^3.0.0"
723 },
724 "engines": {
725 "node": ">=8"
726 }
727 },
194 "node_modules/callsites": {
728 "node_modules/callsites": {
195 "version": "3.1.0",
729 "version": "3.1.0",
196 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
730 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
197 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
731 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
198 "dev": true,
732 "dev": true,
199 "engines": {
733 "engines": {
200 "node": ">=6"
734 "node": ">=6"
201 }
735 }
202 },
736 },
737 "node_modules/camelcase": {
738 "version": "5.3.1",
739 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
740 "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
741 "dev": true,
742 "engines": {
743 "node": ">=6"
744 }
745 },
746 "node_modules/caniuse-lite": {
747 "version": "1.0.30001390",
748 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001390.tgz",
749 "integrity": "sha512-sS4CaUM+/+vqQUlCvCJ2WtDlV81aWtHhqeEVkLokVJJa3ViN4zDxAGfq9R8i1m90uGHxo99cy10Od+lvn3hf0g==",
750 "dev": true,
751 "funding": [
752 {
753 "type": "opencollective",
754 "url": "https://opencollective.com/browserslist"
755 },
756 {
757 "type": "tidelift",
758 "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
759 }
760 ]
761 },
203 "node_modules/chalk": {
762 "node_modules/chalk": {
204 "version": "2.4.2",
763 "version": "2.4.2",
205 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
764 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
206 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
765 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
207 "dev": true,
766 "dev": true,
208 "dependencies": {
767 "dependencies": {
209 "ansi-styles": "^3.2.1",
768 "ansi-styles": "^3.2.1",
210 "escape-string-regexp": "^1.0.5",
769 "escape-string-regexp": "^1.0.5",
211 "supports-color": "^5.3.0"
770 "supports-color": "^5.3.0"
212 },
771 },
213 "engines": {
772 "engines": {
214 "node": ">=4"
773 "node": ">=4"
215 }
774 }
216 },
775 },
217 "node_modules/chardet": {
776 "node_modules/chardet": {
218 "version": "0.7.0",
777 "version": "0.7.0",
219 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
778 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
220 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
779 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
221 "dev": true
780 "dev": true
222 },
781 },
782 "node_modules/chokidar": {
783 "version": "3.5.3",
784 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
785 "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
786 "dev": true,
787 "funding": [
788 {
789 "type": "individual",
790 "url": "https://paulmillr.com/funding/"
791 }
792 ],
793 "dependencies": {
794 "anymatch": "~3.1.2",
795 "braces": "~3.0.2",
796 "glob-parent": "~5.1.2",
797 "is-binary-path": "~2.1.0",
798 "is-glob": "~4.0.1",
799 "normalize-path": "~3.0.0",
800 "readdirp": "~3.6.0"
801 },
802 "engines": {
803 "node": ">= 8.10.0"
804 },
805 "optionalDependencies": {
806 "fsevents": "~2.3.2"
807 }
808 },
809 "node_modules/clean-stack": {
810 "version": "2.2.0",
811 "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
812 "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
813 "dev": true,
814 "engines": {
815 "node": ">=6"
816 }
817 },
223 "node_modules/cli-cursor": {
818 "node_modules/cli-cursor": {
224 "version": "3.1.0",
819 "version": "3.1.0",
225 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
820 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
226 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
821 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
227 "dev": true,
822 "dev": true,
228 "dependencies": {
823 "dependencies": {
229 "restore-cursor": "^3.1.0"
824 "restore-cursor": "^3.1.0"
230 },
825 },
231 "engines": {
826 "engines": {
232 "node": ">=8"
827 "node": ">=8"
233 }
828 }
234 },
829 },
235 "node_modules/cli-width": {
830 "node_modules/cli-width": {
236 "version": "2.2.0",
831 "version": "2.2.0",
237 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
832 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
238 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
833 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
239 "dev": true
834 "dev": true
240 },
835 },
836 "node_modules/cliui": {
837 "version": "7.0.4",
838 "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
839 "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
840 "dev": true,
841 "dependencies": {
842 "string-width": "^4.2.0",
843 "strip-ansi": "^6.0.0",
844 "wrap-ansi": "^7.0.0"
845 }
846 },
847 "node_modules/cliui/node_modules/strip-ansi": {
848 "version": "6.0.1",
849 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
850 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
851 "dev": true,
852 "dependencies": {
853 "ansi-regex": "^5.0.1"
854 },
855 "engines": {
856 "node": ">=8"
857 }
858 },
241 "node_modules/color-convert": {
859 "node_modules/color-convert": {
242 "version": "1.9.3",
860 "version": "1.9.3",
243 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
861 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
244 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
862 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
245 "dev": true,
863 "dev": true,
246 "dependencies": {
864 "dependencies": {
247 "color-name": "1.1.3"
865 "color-name": "1.1.3"
248 }
866 }
249 },
867 },
250 "node_modules/color-name": {
868 "node_modules/color-name": {
251 "version": "1.1.3",
869 "version": "1.1.3",
252 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
870 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
253 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
871 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
254 "dev": true
872 "dev": true
255 },
873 },
874 "node_modules/color-support": {
875 "version": "1.1.3",
876 "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
877 "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
878 "dev": true,
879 "bin": {
880 "color-support": "bin.js"
881 }
882 },
256 "node_modules/commander": {
883 "node_modules/commander": {
257 "version": "2.20.3",
884 "version": "2.20.3",
258 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
885 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
259 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
886 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
260 "dev": true
887 "dev": true
261 },
888 },
889 "node_modules/commondir": {
890 "version": "1.0.1",
891 "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
892 "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
893 "dev": true
894 },
262 "node_modules/concat-map": {
895 "node_modules/concat-map": {
263 "version": "0.0.1",
896 "version": "0.0.1",
264 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
897 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
265 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
898 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
266 "dev": true
899 "dev": true
267 },
900 },
901 "node_modules/convert-source-map": {
902 "version": "1.8.0",
903 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
904 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
905 "dev": true,
906 "dependencies": {
907 "safe-buffer": "~5.1.1"
908 }
909 },
268 "node_modules/cross-spawn": {
910 "node_modules/cross-spawn": {
269 "version": "6.0.5",
911 "version": "6.0.5",
270 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
912 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
271 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
913 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
272 "dev": true,
914 "dev": true,
273 "dependencies": {
915 "dependencies": {
274 "nice-try": "^1.0.4",
916 "nice-try": "^1.0.4",
275 "path-key": "^2.0.1",
917 "path-key": "^2.0.1",
276 "semver": "^5.5.0",
918 "semver": "^5.5.0",
277 "shebang-command": "^1.2.0",
919 "shebang-command": "^1.2.0",
278 "which": "^1.2.9"
920 "which": "^1.2.9"
279 },
921 },
280 "engines": {
922 "engines": {
281 "node": ">=4.8"
923 "node": ">=4.8"
282 }
924 }
283 },
925 },
284 "node_modules/cross-spawn/node_modules/semver": {
926 "node_modules/cross-spawn/node_modules/semver": {
285 "version": "5.7.1",
927 "version": "5.7.1",
286 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
928 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
287 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
929 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
288 "dev": true,
930 "dev": true,
289 "bin": {
931 "bin": {
290 "semver": "bin/semver"
932 "semver": "bin/semver"
291 }
933 }
292 },
934 },
293 "node_modules/debug": {
935 "node_modules/debug": {
294 "version": "4.1.1",
936 "version": "4.1.1",
295 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
937 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
296 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
938 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
297 "dev": true,
939 "dev": true,
298 "dependencies": {
940 "dependencies": {
299 "ms": "^2.1.1"
941 "ms": "^2.1.1"
300 }
942 }
301 },
943 },
944 "node_modules/decamelize": {
945 "version": "1.2.0",
946 "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
947 "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
948 "dev": true,
949 "engines": {
950 "node": ">=0.10.0"
951 }
952 },
302 "node_modules/deep-is": {
953 "node_modules/deep-is": {
303 "version": "0.1.3",
954 "version": "0.1.3",
304 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
955 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
305 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
956 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
306 "dev": true
957 "dev": true
307 },
958 },
959 "node_modules/default-require-extensions": {
960 "version": "3.0.0",
961 "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz",
962 "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==",
963 "dev": true,
964 "dependencies": {
965 "strip-bom": "^4.0.0"
966 },
967 "engines": {
968 "node": ">=8"
969 }
970 },
308 "node_modules/diff": {
971 "node_modules/diff": {
309 "version": "4.0.2",
972 "version": "4.0.2",
310 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
973 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
311 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
974 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
312 "dev": true,
975 "dev": true,
313 "engines": {
976 "engines": {
314 "node": ">=0.3.1"
977 "node": ">=0.3.1"
315 }
978 }
316 },
979 },
317 "node_modules/doctrine": {
980 "node_modules/doctrine": {
318 "version": "3.0.0",
981 "version": "3.0.0",
319 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
982 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
320 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
983 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
321 "dev": true,
984 "dev": true,
322 "dependencies": {
985 "dependencies": {
323 "esutils": "^2.0.2"
986 "esutils": "^2.0.2"
324 },
987 },
325 "engines": {
988 "engines": {
326 "node": ">=6.0.0"
989 "node": ">=6.0.0"
327 }
990 }
328 },
991 },
329 "node_modules/dojo": {
992 "node_modules/dojo": {
330 "version": "1.16.0",
993 "version": "1.16.0",
331 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
994 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
332 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
995 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
333 "dev": true
996 "dev": true
334 },
997 },
998 "node_modules/electron-to-chromium": {
999 "version": "1.4.243",
1000 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.243.tgz",
1001 "integrity": "sha512-BgLD2gBX43OSXwlT01oYRRD5NIB4n3okTRxkzEAC6G0SZG4TTlyrWMjbOo0fajCwqwpRtMHXQNMjtRN6qpNtfw==",
1002 "dev": true
1003 },
335 "node_modules/emoji-regex": {
1004 "node_modules/emoji-regex": {
336 "version": "8.0.0",
1005 "version": "8.0.0",
337 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
1006 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
338 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
1007 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
339 "dev": true
1008 "dev": true
340 },
1009 },
1010 "node_modules/es6-error": {
1011 "version": "4.1.1",
1012 "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
1013 "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
1014 "dev": true
1015 },
1016 "node_modules/escalade": {
1017 "version": "3.1.1",
1018 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
1019 "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
1020 "dev": true,
1021 "engines": {
1022 "node": ">=6"
1023 }
1024 },
341 "node_modules/escape-string-regexp": {
1025 "node_modules/escape-string-regexp": {
342 "version": "1.0.5",
1026 "version": "1.0.5",
343 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1027 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
344 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1028 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
345 "dev": true,
1029 "dev": true,
346 "engines": {
1030 "engines": {
347 "node": ">=0.8.0"
1031 "node": ">=0.8.0"
348 }
1032 }
349 },
1033 },
350 "node_modules/eslint": {
1034 "node_modules/eslint": {
351 "version": "6.8.0",
1035 "version": "6.8.0",
352 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
1036 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
353 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
1037 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
354 "dev": true,
1038 "dev": true,
355 "dependencies": {
1039 "dependencies": {
356 "@babel/code-frame": "^7.0.0",
1040 "@babel/code-frame": "^7.0.0",
357 "ajv": "^6.10.0",
1041 "ajv": "^6.10.0",
358 "chalk": "^2.1.0",
1042 "chalk": "^2.1.0",
359 "cross-spawn": "^6.0.5",
1043 "cross-spawn": "^6.0.5",
360 "debug": "^4.0.1",
1044 "debug": "^4.0.1",
361 "doctrine": "^3.0.0",
1045 "doctrine": "^3.0.0",
362 "eslint-scope": "^5.0.0",
1046 "eslint-scope": "^5.0.0",
363 "eslint-utils": "^1.4.3",
1047 "eslint-utils": "^1.4.3",
364 "eslint-visitor-keys": "^1.1.0",
1048 "eslint-visitor-keys": "^1.1.0",
365 "espree": "^6.1.2",
1049 "espree": "^6.1.2",
366 "esquery": "^1.0.1",
1050 "esquery": "^1.0.1",
367 "esutils": "^2.0.2",
1051 "esutils": "^2.0.2",
368 "file-entry-cache": "^5.0.1",
1052 "file-entry-cache": "^5.0.1",
369 "functional-red-black-tree": "^1.0.1",
1053 "functional-red-black-tree": "^1.0.1",
370 "glob-parent": "^5.0.0",
1054 "glob-parent": "^5.0.0",
371 "globals": "^12.1.0",
1055 "globals": "^12.1.0",
372 "ignore": "^4.0.6",
1056 "ignore": "^4.0.6",
373 "import-fresh": "^3.0.0",
1057 "import-fresh": "^3.0.0",
374 "imurmurhash": "^0.1.4",
1058 "imurmurhash": "^0.1.4",
375 "inquirer": "^7.0.0",
1059 "inquirer": "^7.0.0",
376 "is-glob": "^4.0.0",
1060 "is-glob": "^4.0.0",
377 "js-yaml": "^3.13.1",
1061 "js-yaml": "^3.13.1",
378 "json-stable-stringify-without-jsonify": "^1.0.1",
1062 "json-stable-stringify-without-jsonify": "^1.0.1",
379 "levn": "^0.3.0",
1063 "levn": "^0.3.0",
380 "lodash": "^4.17.14",
1064 "lodash": "^4.17.14",
381 "minimatch": "^3.0.4",
1065 "minimatch": "^3.0.4",
382 "mkdirp": "^0.5.1",
1066 "mkdirp": "^0.5.1",
383 "natural-compare": "^1.4.0",
1067 "natural-compare": "^1.4.0",
384 "optionator": "^0.8.3",
1068 "optionator": "^0.8.3",
385 "progress": "^2.0.0",
1069 "progress": "^2.0.0",
386 "regexpp": "^2.0.1",
1070 "regexpp": "^2.0.1",
387 "semver": "^6.1.2",
1071 "semver": "^6.1.2",
388 "strip-ansi": "^5.2.0",
1072 "strip-ansi": "^5.2.0",
389 "strip-json-comments": "^3.0.1",
1073 "strip-json-comments": "^3.0.1",
390 "table": "^5.2.3",
1074 "table": "^5.2.3",
391 "text-table": "^0.2.0",
1075 "text-table": "^0.2.0",
392 "v8-compile-cache": "^2.0.3"
1076 "v8-compile-cache": "^2.0.3"
393 },
1077 },
394 "bin": {
1078 "bin": {
395 "eslint": "bin/eslint.js"
1079 "eslint": "bin/eslint.js"
396 },
1080 },
397 "engines": {
1081 "engines": {
398 "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
1082 "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
399 }
1083 }
400 },
1084 },
401 "node_modules/eslint-scope": {
1085 "node_modules/eslint-scope": {
402 "version": "5.0.0",
1086 "version": "5.0.0",
403 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
1087 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
404 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
1088 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
405 "dev": true,
1089 "dev": true,
406 "dependencies": {
1090 "dependencies": {
407 "esrecurse": "^4.1.0",
1091 "esrecurse": "^4.1.0",
408 "estraverse": "^4.1.1"
1092 "estraverse": "^4.1.1"
409 },
1093 },
410 "engines": {
1094 "engines": {
411 "node": ">=8.0.0"
1095 "node": ">=8.0.0"
412 }
1096 }
413 },
1097 },
414 "node_modules/eslint-utils": {
1098 "node_modules/eslint-utils": {
415 "version": "1.4.3",
1099 "version": "1.4.3",
416 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
1100 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
417 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
1101 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
418 "dev": true,
1102 "dev": true,
419 "dependencies": {
1103 "dependencies": {
420 "eslint-visitor-keys": "^1.1.0"
1104 "eslint-visitor-keys": "^1.1.0"
421 },
1105 },
422 "engines": {
1106 "engines": {
423 "node": ">=6"
1107 "node": ">=6"
424 }
1108 }
425 },
1109 },
426 "node_modules/eslint-visitor-keys": {
1110 "node_modules/eslint-visitor-keys": {
427 "version": "1.1.0",
1111 "version": "1.1.0",
428 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
1112 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
429 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
1113 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
430 "dev": true,
1114 "dev": true,
431 "engines": {
1115 "engines": {
432 "node": ">=4"
1116 "node": ">=4"
433 }
1117 }
434 },
1118 },
435 "node_modules/espree": {
1119 "node_modules/espree": {
436 "version": "6.1.2",
1120 "version": "6.1.2",
437 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
1121 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
438 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
1122 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
439 "dev": true,
1123 "dev": true,
440 "dependencies": {
1124 "dependencies": {
441 "acorn": "^7.1.0",
1125 "acorn": "^7.1.0",
442 "acorn-jsx": "^5.1.0",
1126 "acorn-jsx": "^5.1.0",
443 "eslint-visitor-keys": "^1.1.0"
1127 "eslint-visitor-keys": "^1.1.0"
444 },
1128 },
445 "engines": {
1129 "engines": {
446 "node": ">=6.0.0"
1130 "node": ">=6.0.0"
447 }
1131 }
448 },
1132 },
449 "node_modules/esprima": {
1133 "node_modules/esprima": {
450 "version": "4.0.1",
1134 "version": "4.0.1",
451 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
1135 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
452 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
1136 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
453 "dev": true,
1137 "dev": true,
454 "bin": {
1138 "bin": {
455 "esparse": "bin/esparse.js",
1139 "esparse": "bin/esparse.js",
456 "esvalidate": "bin/esvalidate.js"
1140 "esvalidate": "bin/esvalidate.js"
457 },
1141 },
458 "engines": {
1142 "engines": {
459 "node": ">=4"
1143 "node": ">=4"
460 }
1144 }
461 },
1145 },
462 "node_modules/esquery": {
1146 "node_modules/esquery": {
463 "version": "1.0.1",
1147 "version": "1.0.1",
464 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
1148 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
465 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
1149 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
466 "dev": true,
1150 "dev": true,
467 "dependencies": {
1151 "dependencies": {
468 "estraverse": "^4.0.0"
1152 "estraverse": "^4.0.0"
469 },
1153 },
470 "engines": {
1154 "engines": {
471 "node": ">=0.6"
1155 "node": ">=0.6"
472 }
1156 }
473 },
1157 },
474 "node_modules/esrecurse": {
1158 "node_modules/esrecurse": {
475 "version": "4.2.1",
1159 "version": "4.2.1",
476 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
1160 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
477 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
1161 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
478 "dev": true,
1162 "dev": true,
479 "dependencies": {
1163 "dependencies": {
480 "estraverse": "^4.1.0"
1164 "estraverse": "^4.1.0"
481 },
1165 },
482 "engines": {
1166 "engines": {
483 "node": ">=4.0"
1167 "node": ">=4.0"
484 }
1168 }
485 },
1169 },
486 "node_modules/estraverse": {
1170 "node_modules/estraverse": {
487 "version": "4.3.0",
1171 "version": "4.3.0",
488 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
1172 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
489 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
1173 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
490 "dev": true,
1174 "dev": true,
491 "engines": {
1175 "engines": {
492 "node": ">=4.0"
1176 "node": ">=4.0"
493 }
1177 }
494 },
1178 },
495 "node_modules/esutils": {
1179 "node_modules/esutils": {
496 "version": "2.0.3",
1180 "version": "2.0.3",
497 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1181 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
498 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1182 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
499 "dev": true,
1183 "dev": true,
500 "engines": {
1184 "engines": {
501 "node": ">=0.10.0"
1185 "node": ">=0.10.0"
502 }
1186 }
503 },
1187 },
1188 "node_modules/events-to-array": {
1189 "version": "1.1.2",
1190 "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz",
1191 "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==",
1192 "dev": true
1193 },
504 "node_modules/external-editor": {
1194 "node_modules/external-editor": {
505 "version": "3.1.0",
1195 "version": "3.1.0",
506 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
1196 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
507 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
1197 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
508 "dev": true,
1198 "dev": true,
509 "dependencies": {
1199 "dependencies": {
510 "chardet": "^0.7.0",
1200 "chardet": "^0.7.0",
511 "iconv-lite": "^0.4.24",
1201 "iconv-lite": "^0.4.24",
512 "tmp": "^0.0.33"
1202 "tmp": "^0.0.33"
513 },
1203 },
514 "engines": {
1204 "engines": {
515 "node": ">=4"
1205 "node": ">=4"
516 }
1206 }
517 },
1207 },
518 "node_modules/fast-deep-equal": {
1208 "node_modules/fast-deep-equal": {
519 "version": "3.1.1",
1209 "version": "3.1.1",
520 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
1210 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
521 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
1211 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
522 "dev": true
1212 "dev": true
523 },
1213 },
524 "node_modules/fast-json-stable-stringify": {
1214 "node_modules/fast-json-stable-stringify": {
525 "version": "2.1.0",
1215 "version": "2.1.0",
526 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1216 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
527 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
1217 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
528 "dev": true
1218 "dev": true
529 },
1219 },
530 "node_modules/fast-levenshtein": {
1220 "node_modules/fast-levenshtein": {
531 "version": "2.0.6",
1221 "version": "2.0.6",
532 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1222 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
533 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
1223 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
534 "dev": true
1224 "dev": true
535 },
1225 },
536 "node_modules/figures": {
1226 "node_modules/figures": {
537 "version": "3.1.0",
1227 "version": "3.1.0",
538 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
1228 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
539 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
1229 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
540 "dev": true,
1230 "dev": true,
541 "dependencies": {
1231 "dependencies": {
542 "escape-string-regexp": "^1.0.5"
1232 "escape-string-regexp": "^1.0.5"
543 },
1233 },
544 "engines": {
1234 "engines": {
545 "node": ">=8"
1235 "node": ">=8"
546 }
1236 }
547 },
1237 },
548 "node_modules/file-entry-cache": {
1238 "node_modules/file-entry-cache": {
549 "version": "5.0.1",
1239 "version": "5.0.1",
550 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
1240 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
551 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
1241 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
552 "dev": true,
1242 "dev": true,
553 "dependencies": {
1243 "dependencies": {
554 "flat-cache": "^2.0.1"
1244 "flat-cache": "^2.0.1"
555 },
1245 },
556 "engines": {
1246 "engines": {
557 "node": ">=4"
1247 "node": ">=4"
558 }
1248 }
559 },
1249 },
1250 "node_modules/fill-range": {
1251 "version": "7.0.1",
1252 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1253 "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1254 "dev": true,
1255 "dependencies": {
1256 "to-regex-range": "^5.0.1"
1257 },
1258 "engines": {
1259 "node": ">=8"
1260 }
1261 },
1262 "node_modules/find-cache-dir": {
1263 "version": "3.3.2",
1264 "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
1265 "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
1266 "dev": true,
1267 "dependencies": {
1268 "commondir": "^1.0.1",
1269 "make-dir": "^3.0.2",
1270 "pkg-dir": "^4.1.0"
1271 },
1272 "engines": {
1273 "node": ">=8"
1274 },
1275 "funding": {
1276 "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
1277 }
1278 },
1279 "node_modules/find-up": {
1280 "version": "4.1.0",
1281 "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
1282 "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
1283 "dev": true,
1284 "dependencies": {
1285 "locate-path": "^5.0.0",
1286 "path-exists": "^4.0.0"
1287 },
1288 "engines": {
1289 "node": ">=8"
1290 }
1291 },
1292 "node_modules/findit": {
1293 "version": "2.0.0",
1294 "resolved": "https://registry.npmjs.org/findit/-/findit-2.0.0.tgz",
1295 "integrity": "sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg==",
1296 "dev": true
1297 },
560 "node_modules/flat-cache": {
1298 "node_modules/flat-cache": {
561 "version": "2.0.1",
1299 "version": "2.0.1",
562 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
1300 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
563 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
1301 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
564 "dev": true,
1302 "dev": true,
565 "dependencies": {
1303 "dependencies": {
566 "flatted": "^2.0.0",
1304 "flatted": "^2.0.0",
567 "rimraf": "2.6.3",
1305 "rimraf": "2.6.3",
568 "write": "1.0.3"
1306 "write": "1.0.3"
569 },
1307 },
570 "engines": {
1308 "engines": {
571 "node": ">=4"
1309 "node": ">=4"
572 }
1310 }
573 },
1311 },
574 "node_modules/flatted": {
1312 "node_modules/flatted": {
575 "version": "2.0.1",
1313 "version": "2.0.1",
576 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
1314 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
577 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
1315 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
578 "dev": true
1316 "dev": true
579 },
1317 },
1318 "node_modules/foreground-child": {
1319 "version": "2.0.0",
1320 "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
1321 "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==",
1322 "dev": true,
1323 "dependencies": {
1324 "cross-spawn": "^7.0.0",
1325 "signal-exit": "^3.0.2"
1326 },
1327 "engines": {
1328 "node": ">=8.0.0"
1329 }
1330 },
1331 "node_modules/foreground-child/node_modules/cross-spawn": {
1332 "version": "7.0.3",
1333 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
1334 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
1335 "dev": true,
1336 "dependencies": {
1337 "path-key": "^3.1.0",
1338 "shebang-command": "^2.0.0",
1339 "which": "^2.0.1"
1340 },
1341 "engines": {
1342 "node": ">= 8"
1343 }
1344 },
1345 "node_modules/foreground-child/node_modules/path-key": {
1346 "version": "3.1.1",
1347 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1348 "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1349 "dev": true,
1350 "engines": {
1351 "node": ">=8"
1352 }
1353 },
1354 "node_modules/foreground-child/node_modules/shebang-command": {
1355 "version": "2.0.0",
1356 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1357 "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1358 "dev": true,
1359 "dependencies": {
1360 "shebang-regex": "^3.0.0"
1361 },
1362 "engines": {
1363 "node": ">=8"
1364 }
1365 },
1366 "node_modules/foreground-child/node_modules/shebang-regex": {
1367 "version": "3.0.0",
1368 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1369 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1370 "dev": true,
1371 "engines": {
1372 "node": ">=8"
1373 }
1374 },
1375 "node_modules/foreground-child/node_modules/which": {
1376 "version": "2.0.2",
1377 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1378 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1379 "dev": true,
1380 "dependencies": {
1381 "isexe": "^2.0.0"
1382 },
1383 "bin": {
1384 "node-which": "bin/node-which"
1385 },
1386 "engines": {
1387 "node": ">= 8"
1388 }
1389 },
1390 "node_modules/fromentries": {
1391 "version": "1.3.2",
1392 "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz",
1393 "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==",
1394 "dev": true,
1395 "funding": [
1396 {
1397 "type": "github",
1398 "url": "https://github.com/sponsors/feross"
1399 },
1400 {
1401 "type": "patreon",
1402 "url": "https://www.patreon.com/feross"
1403 },
1404 {
1405 "type": "consulting",
1406 "url": "https://feross.org/support"
1407 }
1408 ]
1409 },
1410 "node_modules/fs-exists-cached": {
1411 "version": "1.0.0",
1412 "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz",
1413 "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==",
1414 "dev": true
1415 },
580 "node_modules/fs.realpath": {
1416 "node_modules/fs.realpath": {
581 "version": "1.0.0",
1417 "version": "1.0.0",
582 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1418 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
583 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1419 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
584 "dev": true
1420 "dev": true
585 },
1421 },
1422 "node_modules/fsevents": {
1423 "version": "2.3.2",
1424 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
1425 "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
1426 "dev": true,
1427 "hasInstallScript": true,
1428 "optional": true,
1429 "os": [
1430 "darwin"
1431 ],
1432 "engines": {
1433 "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1434 }
1435 },
1436 "node_modules/function-loop": {
1437 "version": "2.0.1",
1438 "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz",
1439 "integrity": "sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==",
1440 "dev": true
1441 },
586 "node_modules/functional-red-black-tree": {
1442 "node_modules/functional-red-black-tree": {
587 "version": "1.0.1",
1443 "version": "1.0.1",
588 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
1444 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
589 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
1445 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
590 "dev": true
1446 "dev": true
591 },
1447 },
1448 "node_modules/gensync": {
1449 "version": "1.0.0-beta.2",
1450 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
1451 "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
1452 "dev": true,
1453 "engines": {
1454 "node": ">=6.9.0"
1455 }
1456 },
1457 "node_modules/get-caller-file": {
1458 "version": "2.0.5",
1459 "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
1460 "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
1461 "dev": true,
1462 "engines": {
1463 "node": "6.* || 8.* || >= 10.*"
1464 }
1465 },
1466 "node_modules/get-package-type": {
1467 "version": "0.1.0",
1468 "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
1469 "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
1470 "dev": true,
1471 "engines": {
1472 "node": ">=8.0.0"
1473 }
1474 },
592 "node_modules/glob": {
1475 "node_modules/glob": {
593 "version": "7.1.6",
1476 "version": "7.2.3",
594 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
1477 "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
595 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
1478 "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
596 "dev": true,
1479 "dev": true,
597 "dependencies": {
1480 "dependencies": {
598 "fs.realpath": "^1.0.0",
1481 "fs.realpath": "^1.0.0",
599 "inflight": "^1.0.4",
1482 "inflight": "^1.0.4",
600 "inherits": "2",
1483 "inherits": "2",
601 "minimatch": "^3.0.4",
1484 "minimatch": "^3.1.1",
602 "once": "^1.3.0",
1485 "once": "^1.3.0",
603 "path-is-absolute": "^1.0.0"
1486 "path-is-absolute": "^1.0.0"
604 },
1487 },
605 "engines": {
1488 "engines": {
606 "node": "*"
1489 "node": "*"
1490 },
1491 "funding": {
1492 "url": "https://github.com/sponsors/isaacs"
607 }
1493 }
608 },
1494 },
609 "node_modules/glob-parent": {
1495 "node_modules/glob-parent": {
610 "version": "5.1.0",
1496 "version": "5.1.2",
611 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
1497 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
612 "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
1498 "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
613 "dev": true,
1499 "dev": true,
614 "dependencies": {
1500 "dependencies": {
615 "is-glob": "^4.0.1"
1501 "is-glob": "^4.0.1"
616 },
1502 },
617 "engines": {
1503 "engines": {
618 "node": ">= 6"
1504 "node": ">= 6"
619 }
1505 }
620 },
1506 },
621 "node_modules/globals": {
1507 "node_modules/globals": {
622 "version": "12.3.0",
1508 "version": "12.3.0",
623 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
1509 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
624 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
1510 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
625 "dev": true,
1511 "dev": true,
626 "dependencies": {
1512 "dependencies": {
627 "type-fest": "^0.8.1"
1513 "type-fest": "^0.8.1"
628 },
1514 },
629 "engines": {
1515 "engines": {
630 "node": ">=8"
1516 "node": ">=8"
631 }
1517 }
632 },
1518 },
1519 "node_modules/graceful-fs": {
1520 "version": "4.2.10",
1521 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
1522 "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
1523 "dev": true
1524 },
633 "node_modules/has-flag": {
1525 "node_modules/has-flag": {
634 "version": "3.0.0",
1526 "version": "3.0.0",
635 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1527 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
636 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1528 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
637 "dev": true,
1529 "dev": true,
638 "engines": {
1530 "engines": {
639 "node": ">=4"
1531 "node": ">=4"
640 }
1532 }
641 },
1533 },
1534 "node_modules/hasha": {
1535 "version": "5.2.2",
1536 "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz",
1537 "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==",
1538 "dev": true,
1539 "dependencies": {
1540 "is-stream": "^2.0.0",
1541 "type-fest": "^0.8.0"
1542 },
1543 "engines": {
1544 "node": ">=8"
1545 },
1546 "funding": {
1547 "url": "https://github.com/sponsors/sindresorhus"
1548 }
1549 },
1550 "node_modules/html-escaper": {
1551 "version": "2.0.2",
1552 "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
1553 "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
1554 "dev": true
1555 },
642 "node_modules/iconv-lite": {
1556 "node_modules/iconv-lite": {
643 "version": "0.4.24",
1557 "version": "0.4.24",
644 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1558 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
645 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1559 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
646 "dev": true,
1560 "dev": true,
647 "dependencies": {
1561 "dependencies": {
648 "safer-buffer": ">= 2.1.2 < 3"
1562 "safer-buffer": ">= 2.1.2 < 3"
649 },
1563 },
650 "engines": {
1564 "engines": {
651 "node": ">=0.10.0"
1565 "node": ">=0.10.0"
652 }
1566 }
653 },
1567 },
654 "node_modules/ignore": {
1568 "node_modules/ignore": {
655 "version": "4.0.6",
1569 "version": "4.0.6",
656 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
1570 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
657 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
1571 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
658 "dev": true,
1572 "dev": true,
659 "engines": {
1573 "engines": {
660 "node": ">= 4"
1574 "node": ">= 4"
661 }
1575 }
662 },
1576 },
663 "node_modules/import-fresh": {
1577 "node_modules/import-fresh": {
664 "version": "3.2.1",
1578 "version": "3.2.1",
665 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
1579 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
666 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
1580 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
667 "dev": true,
1581 "dev": true,
668 "dependencies": {
1582 "dependencies": {
669 "parent-module": "^1.0.0",
1583 "parent-module": "^1.0.0",
670 "resolve-from": "^4.0.0"
1584 "resolve-from": "^4.0.0"
671 },
1585 },
672 "engines": {
1586 "engines": {
673 "node": ">=6"
1587 "node": ">=6"
674 }
1588 }
675 },
1589 },
676 "node_modules/imurmurhash": {
1590 "node_modules/imurmurhash": {
677 "version": "0.1.4",
1591 "version": "0.1.4",
678 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1592 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
679 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
1593 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
680 "dev": true,
1594 "dev": true,
681 "engines": {
1595 "engines": {
682 "node": ">=0.8.19"
1596 "node": ">=0.8.19"
683 }
1597 }
684 },
1598 },
1599 "node_modules/indent-string": {
1600 "version": "4.0.0",
1601 "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
1602 "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
1603 "dev": true,
1604 "engines": {
1605 "node": ">=8"
1606 }
1607 },
685 "node_modules/inflight": {
1608 "node_modules/inflight": {
686 "version": "1.0.6",
1609 "version": "1.0.6",
687 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1610 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
688 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1611 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
689 "dev": true,
1612 "dev": true,
690 "dependencies": {
1613 "dependencies": {
691 "once": "^1.3.0",
1614 "once": "^1.3.0",
692 "wrappy": "1"
1615 "wrappy": "1"
693 }
1616 }
694 },
1617 },
695 "node_modules/inherits": {
1618 "node_modules/inherits": {
696 "version": "2.0.4",
1619 "version": "2.0.4",
697 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1620 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
698 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1621 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
699 "dev": true
1622 "dev": true
700 },
1623 },
701 "node_modules/inquirer": {
1624 "node_modules/inquirer": {
702 "version": "7.0.3",
1625 "version": "7.0.3",
703 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
1626 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
704 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
1627 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
705 "dev": true,
1628 "dev": true,
706 "dependencies": {
1629 "dependencies": {
707 "ansi-escapes": "^4.2.1",
1630 "ansi-escapes": "^4.2.1",
708 "chalk": "^2.4.2",
1631 "chalk": "^2.4.2",
709 "cli-cursor": "^3.1.0",
1632 "cli-cursor": "^3.1.0",
710 "cli-width": "^2.0.0",
1633 "cli-width": "^2.0.0",
711 "external-editor": "^3.0.3",
1634 "external-editor": "^3.0.3",
712 "figures": "^3.0.0",
1635 "figures": "^3.0.0",
713 "lodash": "^4.17.15",
1636 "lodash": "^4.17.15",
714 "mute-stream": "0.0.8",
1637 "mute-stream": "0.0.8",
715 "run-async": "^2.2.0",
1638 "run-async": "^2.2.0",
716 "rxjs": "^6.5.3",
1639 "rxjs": "^6.5.3",
717 "string-width": "^4.1.0",
1640 "string-width": "^4.1.0",
718 "strip-ansi": "^5.1.0",
1641 "strip-ansi": "^5.1.0",
719 "through": "^2.3.6"
1642 "through": "^2.3.6"
720 },
1643 },
721 "engines": {
1644 "engines": {
722 "node": ">=6.0.0"
1645 "node": ">=6.0.0"
723 }
1646 }
724 },
1647 },
1648 "node_modules/is-binary-path": {
1649 "version": "2.1.0",
1650 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1651 "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1652 "dev": true,
1653 "dependencies": {
1654 "binary-extensions": "^2.0.0"
1655 },
1656 "engines": {
1657 "node": ">=8"
1658 }
1659 },
725 "node_modules/is-extglob": {
1660 "node_modules/is-extglob": {
726 "version": "2.1.1",
1661 "version": "2.1.1",
727 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1662 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
728 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
1663 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
729 "dev": true,
1664 "dev": true,
730 "engines": {
1665 "engines": {
731 "node": ">=0.10.0"
1666 "node": ">=0.10.0"
732 }
1667 }
733 },
1668 },
734 "node_modules/is-fullwidth-code-point": {
1669 "node_modules/is-fullwidth-code-point": {
735 "version": "3.0.0",
1670 "version": "3.0.0",
736 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
1671 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
737 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
1672 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
738 "dev": true,
1673 "dev": true,
739 "engines": {
1674 "engines": {
740 "node": ">=8"
1675 "node": ">=8"
741 }
1676 }
742 },
1677 },
743 "node_modules/is-glob": {
1678 "node_modules/is-glob": {
744 "version": "4.0.1",
1679 "version": "4.0.1",
745 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
1680 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
746 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
1681 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
747 "dev": true,
1682 "dev": true,
748 "dependencies": {
1683 "dependencies": {
749 "is-extglob": "^2.1.1"
1684 "is-extglob": "^2.1.1"
750 },
1685 },
751 "engines": {
1686 "engines": {
752 "node": ">=0.10.0"
1687 "node": ">=0.10.0"
753 }
1688 }
754 },
1689 },
1690 "node_modules/is-number": {
1691 "version": "7.0.0",
1692 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1693 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1694 "dev": true,
1695 "engines": {
1696 "node": ">=0.12.0"
1697 }
1698 },
755 "node_modules/is-promise": {
1699 "node_modules/is-promise": {
756 "version": "2.1.0",
1700 "version": "2.1.0",
757 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
1701 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
758 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
1702 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
759 "dev": true
1703 "dev": true
760 },
1704 },
1705 "node_modules/is-stream": {
1706 "version": "2.0.1",
1707 "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
1708 "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
1709 "dev": true,
1710 "engines": {
1711 "node": ">=8"
1712 },
1713 "funding": {
1714 "url": "https://github.com/sponsors/sindresorhus"
1715 }
1716 },
1717 "node_modules/is-typedarray": {
1718 "version": "1.0.0",
1719 "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
1720 "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
1721 "dev": true
1722 },
1723 "node_modules/is-windows": {
1724 "version": "1.0.2",
1725 "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
1726 "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
1727 "dev": true,
1728 "engines": {
1729 "node": ">=0.10.0"
1730 }
1731 },
761 "node_modules/isexe": {
1732 "node_modules/isexe": {
762 "version": "2.0.0",
1733 "version": "2.0.0",
763 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1734 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
764 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
1735 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
765 "dev": true
1736 "dev": true
766 },
1737 },
1738 "node_modules/istanbul-lib-coverage": {
1739 "version": "3.2.0",
1740 "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
1741 "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==",
1742 "dev": true,
1743 "engines": {
1744 "node": ">=8"
1745 }
1746 },
1747 "node_modules/istanbul-lib-hook": {
1748 "version": "3.0.0",
1749 "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz",
1750 "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==",
1751 "dev": true,
1752 "dependencies": {
1753 "append-transform": "^2.0.0"
1754 },
1755 "engines": {
1756 "node": ">=8"
1757 }
1758 },
1759 "node_modules/istanbul-lib-instrument": {
1760 "version": "4.0.3",
1761 "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
1762 "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
1763 "dev": true,
1764 "dependencies": {
1765 "@babel/core": "^7.7.5",
1766 "@istanbuljs/schema": "^0.1.2",
1767 "istanbul-lib-coverage": "^3.0.0",
1768 "semver": "^6.3.0"
1769 },
1770 "engines": {
1771 "node": ">=8"
1772 }
1773 },
1774 "node_modules/istanbul-lib-processinfo": {
1775 "version": "2.0.3",
1776 "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz",
1777 "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==",
1778 "dev": true,
1779 "dependencies": {
1780 "archy": "^1.0.0",
1781 "cross-spawn": "^7.0.3",
1782 "istanbul-lib-coverage": "^3.2.0",
1783 "p-map": "^3.0.0",
1784 "rimraf": "^3.0.0",
1785 "uuid": "^8.3.2"
1786 },
1787 "engines": {
1788 "node": ">=8"
1789 }
1790 },
1791 "node_modules/istanbul-lib-processinfo/node_modules/cross-spawn": {
1792 "version": "7.0.3",
1793 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
1794 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
1795 "dev": true,
1796 "dependencies": {
1797 "path-key": "^3.1.0",
1798 "shebang-command": "^2.0.0",
1799 "which": "^2.0.1"
1800 },
1801 "engines": {
1802 "node": ">= 8"
1803 }
1804 },
1805 "node_modules/istanbul-lib-processinfo/node_modules/path-key": {
1806 "version": "3.1.1",
1807 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
1808 "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
1809 "dev": true,
1810 "engines": {
1811 "node": ">=8"
1812 }
1813 },
1814 "node_modules/istanbul-lib-processinfo/node_modules/rimraf": {
1815 "version": "3.0.2",
1816 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
1817 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1818 "dev": true,
1819 "dependencies": {
1820 "glob": "^7.1.3"
1821 },
1822 "bin": {
1823 "rimraf": "bin.js"
1824 },
1825 "funding": {
1826 "url": "https://github.com/sponsors/isaacs"
1827 }
1828 },
1829 "node_modules/istanbul-lib-processinfo/node_modules/shebang-command": {
1830 "version": "2.0.0",
1831 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
1832 "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1833 "dev": true,
1834 "dependencies": {
1835 "shebang-regex": "^3.0.0"
1836 },
1837 "engines": {
1838 "node": ">=8"
1839 }
1840 },
1841 "node_modules/istanbul-lib-processinfo/node_modules/shebang-regex": {
1842 "version": "3.0.0",
1843 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
1844 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1845 "dev": true,
1846 "engines": {
1847 "node": ">=8"
1848 }
1849 },
1850 "node_modules/istanbul-lib-processinfo/node_modules/which": {
1851 "version": "2.0.2",
1852 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1853 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1854 "dev": true,
1855 "dependencies": {
1856 "isexe": "^2.0.0"
1857 },
1858 "bin": {
1859 "node-which": "bin/node-which"
1860 },
1861 "engines": {
1862 "node": ">= 8"
1863 }
1864 },
1865 "node_modules/istanbul-lib-report": {
1866 "version": "3.0.0",
1867 "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
1868 "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
1869 "dev": true,
1870 "dependencies": {
1871 "istanbul-lib-coverage": "^3.0.0",
1872 "make-dir": "^3.0.0",
1873 "supports-color": "^7.1.0"
1874 },
1875 "engines": {
1876 "node": ">=8"
1877 }
1878 },
1879 "node_modules/istanbul-lib-report/node_modules/has-flag": {
1880 "version": "4.0.0",
1881 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1882 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1883 "dev": true,
1884 "engines": {
1885 "node": ">=8"
1886 }
1887 },
1888 "node_modules/istanbul-lib-report/node_modules/supports-color": {
1889 "version": "7.2.0",
1890 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1891 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1892 "dev": true,
1893 "dependencies": {
1894 "has-flag": "^4.0.0"
1895 },
1896 "engines": {
1897 "node": ">=8"
1898 }
1899 },
1900 "node_modules/istanbul-lib-source-maps": {
1901 "version": "4.0.1",
1902 "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
1903 "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
1904 "dev": true,
1905 "dependencies": {
1906 "debug": "^4.1.1",
1907 "istanbul-lib-coverage": "^3.0.0",
1908 "source-map": "^0.6.1"
1909 },
1910 "engines": {
1911 "node": ">=10"
1912 }
1913 },
1914 "node_modules/istanbul-reports": {
1915 "version": "3.1.5",
1916 "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz",
1917 "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==",
1918 "dev": true,
1919 "dependencies": {
1920 "html-escaper": "^2.0.0",
1921 "istanbul-lib-report": "^3.0.0"
1922 },
1923 "engines": {
1924 "node": ">=8"
1925 }
1926 },
1927 "node_modules/jackspeak": {
1928 "version": "1.4.1",
1929 "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-1.4.1.tgz",
1930 "integrity": "sha512-npN8f+M4+IQ8xD3CcWi3U62VQwKlT3Tj4GxbdT/fYTmeogD9eBF9OFdpoFG/VPNoshRjPUijdkp/p2XrzUHaVg==",
1931 "dev": true,
1932 "dependencies": {
1933 "cliui": "^7.0.4"
1934 },
1935 "engines": {
1936 "node": ">=8"
1937 }
1938 },
767 "node_modules/js-tokens": {
1939 "node_modules/js-tokens": {
768 "version": "4.0.0",
1940 "version": "4.0.0",
769 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1941 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
770 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
1942 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
771 "dev": true
1943 "dev": true
772 },
1944 },
773 "node_modules/js-yaml": {
1945 "node_modules/js-yaml": {
774 "version": "3.13.1",
1946 "version": "3.13.1",
775 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
1947 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
776 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
1948 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
777 "dev": true,
1949 "dev": true,
778 "dependencies": {
1950 "dependencies": {
779 "argparse": "^1.0.7",
1951 "argparse": "^1.0.7",
780 "esprima": "^4.0.0"
1952 "esprima": "^4.0.0"
781 },
1953 },
782 "bin": {
1954 "bin": {
783 "js-yaml": "bin/js-yaml.js"
1955 "js-yaml": "bin/js-yaml.js"
784 }
1956 }
785 },
1957 },
1958 "node_modules/jsesc": {
1959 "version": "2.5.2",
1960 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
1961 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
1962 "dev": true,
1963 "bin": {
1964 "jsesc": "bin/jsesc"
1965 },
1966 "engines": {
1967 "node": ">=4"
1968 }
1969 },
786 "node_modules/json-schema-traverse": {
1970 "node_modules/json-schema-traverse": {
787 "version": "0.4.1",
1971 "version": "0.4.1",
788 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1972 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
789 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
1973 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
790 "dev": true
1974 "dev": true
791 },
1975 },
792 "node_modules/json-stable-stringify-without-jsonify": {
1976 "node_modules/json-stable-stringify-without-jsonify": {
793 "version": "1.0.1",
1977 "version": "1.0.1",
794 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1978 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
795 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
1979 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
796 "dev": true
1980 "dev": true
797 },
1981 },
1982 "node_modules/json5": {
1983 "version": "2.2.1",
1984 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
1985 "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
1986 "dev": true,
1987 "bin": {
1988 "json5": "lib/cli.js"
1989 },
1990 "engines": {
1991 "node": ">=6"
1992 }
1993 },
798 "node_modules/levn": {
1994 "node_modules/levn": {
799 "version": "0.3.0",
1995 "version": "0.3.0",
800 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
1996 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
801 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
1997 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
802 "dev": true,
1998 "dev": true,
803 "dependencies": {
1999 "dependencies": {
804 "prelude-ls": "~1.1.2",
2000 "prelude-ls": "~1.1.2",
805 "type-check": "~0.3.2"
2001 "type-check": "~0.3.2"
806 },
2002 },
807 "engines": {
2003 "engines": {
808 "node": ">= 0.8.0"
2004 "node": ">= 0.8.0"
809 }
2005 }
810 },
2006 },
2007 "node_modules/libtap": {
2008 "version": "1.4.0",
2009 "resolved": "https://registry.npmjs.org/libtap/-/libtap-1.4.0.tgz",
2010 "integrity": "sha512-STLFynswQ2A6W14JkabgGetBNk6INL1REgJ9UeNKw5llXroC2cGLgKTqavv0sl8OLVztLLipVKMcQ7yeUcqpmg==",
2011 "dev": true,
2012 "dependencies": {
2013 "async-hook-domain": "^2.0.4",
2014 "bind-obj-methods": "^3.0.0",
2015 "diff": "^4.0.2",
2016 "function-loop": "^2.0.1",
2017 "minipass": "^3.1.5",
2018 "own-or": "^1.0.0",
2019 "own-or-env": "^1.0.2",
2020 "signal-exit": "^3.0.4",
2021 "stack-utils": "^2.0.4",
2022 "tap-parser": "^11.0.0",
2023 "tap-yaml": "^1.0.0",
2024 "tcompare": "^5.0.6",
2025 "trivial-deferred": "^1.0.1"
2026 },
2027 "engines": {
2028 "node": ">=10"
2029 },
2030 "funding": {
2031 "url": "https://github.com/sponsors/isaacs"
2032 }
2033 },
2034 "node_modules/locate-path": {
2035 "version": "5.0.0",
2036 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
2037 "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
2038 "dev": true,
2039 "dependencies": {
2040 "p-locate": "^4.1.0"
2041 },
2042 "engines": {
2043 "node": ">=8"
2044 }
2045 },
811 "node_modules/lodash": {
2046 "node_modules/lodash": {
812 "version": "4.17.20",
2047 "version": "4.17.20",
813 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
2048 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
814 "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
2049 "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
815 "dev": true
2050 "dev": true
816 },
2051 },
2052 "node_modules/lodash.flattendeep": {
2053 "version": "4.4.0",
2054 "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz",
2055 "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
2056 "dev": true
2057 },
2058 "node_modules/make-dir": {
2059 "version": "3.1.0",
2060 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
2061 "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
2062 "dev": true,
2063 "dependencies": {
2064 "semver": "^6.0.0"
2065 },
2066 "engines": {
2067 "node": ">=8"
2068 },
2069 "funding": {
2070 "url": "https://github.com/sponsors/sindresorhus"
2071 }
2072 },
817 "node_modules/mimic-fn": {
2073 "node_modules/mimic-fn": {
818 "version": "2.1.0",
2074 "version": "2.1.0",
819 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
2075 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
820 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
2076 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
821 "dev": true,
2077 "dev": true,
822 "engines": {
2078 "engines": {
823 "node": ">=6"
2079 "node": ">=6"
824 }
2080 }
825 },
2081 },
826 "node_modules/minimatch": {
2082 "node_modules/minimatch": {
827 "version": "3.0.4",
2083 "version": "3.1.2",
828 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
2084 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
829 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
2085 "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
830 "dev": true,
2086 "dev": true,
831 "dependencies": {
2087 "dependencies": {
832 "brace-expansion": "^1.1.7"
2088 "brace-expansion": "^1.1.7"
833 },
2089 },
834 "engines": {
2090 "engines": {
835 "node": "*"
2091 "node": "*"
836 }
2092 }
837 },
2093 },
2094 "node_modules/minimist": {
2095 "version": "1.2.6",
2096 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
2097 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
2098 "dev": true
2099 },
2100 "node_modules/minipass": {
2101 "version": "3.3.4",
2102 "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz",
2103 "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==",
2104 "dev": true,
2105 "dependencies": {
2106 "yallist": "^4.0.0"
2107 },
2108 "engines": {
2109 "node": ">=8"
2110 }
2111 },
838 "node_modules/mkdirp": {
2112 "node_modules/mkdirp": {
839 "version": "0.5.5",
2113 "version": "0.5.5",
840 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
2114 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
841 "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
2115 "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
842 "dev": true,
2116 "dev": true,
843 "dependencies": {
2117 "dependencies": {
844 "minimist": "^1.2.5"
2118 "minimist": "^1.2.5"
845 },
2119 },
846 "bin": {
2120 "bin": {
847 "mkdirp": "bin/cmd.js"
2121 "mkdirp": "bin/cmd.js"
848 }
2122 }
849 },
2123 },
850 "node_modules/mkdirp/node_modules/minimist": {
851 "version": "1.2.5",
852 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
853 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
854 "dev": true
855 },
856 "node_modules/ms": {
2124 "node_modules/ms": {
857 "version": "2.1.2",
2125 "version": "2.1.2",
858 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2126 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
859 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
2127 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
860 "dev": true
2128 "dev": true
861 },
2129 },
862 "node_modules/mute-stream": {
2130 "node_modules/mute-stream": {
863 "version": "0.0.8",
2131 "version": "0.0.8",
864 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
2132 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
865 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
2133 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
866 "dev": true
2134 "dev": true
867 },
2135 },
868 "node_modules/natural-compare": {
2136 "node_modules/natural-compare": {
869 "version": "1.4.0",
2137 "version": "1.4.0",
870 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
2138 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
871 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
2139 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
872 "dev": true
2140 "dev": true
873 },
2141 },
874 "node_modules/nice-try": {
2142 "node_modules/nice-try": {
875 "version": "1.0.5",
2143 "version": "1.0.5",
876 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
2144 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
877 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
2145 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
878 "dev": true
2146 "dev": true
879 },
2147 },
2148 "node_modules/node-preload": {
2149 "version": "0.2.1",
2150 "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz",
2151 "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==",
2152 "dev": true,
2153 "dependencies": {
2154 "process-on-spawn": "^1.0.0"
2155 },
2156 "engines": {
2157 "node": ">=8"
2158 }
2159 },
2160 "node_modules/node-releases": {
2161 "version": "2.0.6",
2162 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
2163 "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
2164 "dev": true
2165 },
2166 "node_modules/normalize-path": {
2167 "version": "3.0.0",
2168 "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
2169 "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
2170 "dev": true,
2171 "engines": {
2172 "node": ">=0.10.0"
2173 }
2174 },
2175 "node_modules/nyc": {
2176 "version": "15.1.0",
2177 "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz",
2178 "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==",
2179 "dev": true,
2180 "dependencies": {
2181 "@istanbuljs/load-nyc-config": "^1.0.0",
2182 "@istanbuljs/schema": "^0.1.2",
2183 "caching-transform": "^4.0.0",
2184 "convert-source-map": "^1.7.0",
2185 "decamelize": "^1.2.0",
2186 "find-cache-dir": "^3.2.0",
2187 "find-up": "^4.1.0",
2188 "foreground-child": "^2.0.0",
2189 "get-package-type": "^0.1.0",
2190 "glob": "^7.1.6",
2191 "istanbul-lib-coverage": "^3.0.0",
2192 "istanbul-lib-hook": "^3.0.0",
2193 "istanbul-lib-instrument": "^4.0.0",
2194 "istanbul-lib-processinfo": "^2.0.2",
2195 "istanbul-lib-report": "^3.0.0",
2196 "istanbul-lib-source-maps": "^4.0.0",
2197 "istanbul-reports": "^3.0.2",
2198 "make-dir": "^3.0.0",
2199 "node-preload": "^0.2.1",
2200 "p-map": "^3.0.0",
2201 "process-on-spawn": "^1.0.0",
2202 "resolve-from": "^5.0.0",
2203 "rimraf": "^3.0.0",
2204 "signal-exit": "^3.0.2",
2205 "spawn-wrap": "^2.0.0",
2206 "test-exclude": "^6.0.0",
2207 "yargs": "^15.0.2"
2208 },
2209 "bin": {
2210 "nyc": "bin/nyc.js"
2211 },
2212 "engines": {
2213 "node": ">=8.9"
2214 }
2215 },
2216 "node_modules/nyc/node_modules/resolve-from": {
2217 "version": "5.0.0",
2218 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
2219 "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
2220 "dev": true,
2221 "engines": {
2222 "node": ">=8"
2223 }
2224 },
2225 "node_modules/nyc/node_modules/rimraf": {
2226 "version": "3.0.2",
2227 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
2228 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
2229 "dev": true,
2230 "dependencies": {
2231 "glob": "^7.1.3"
2232 },
2233 "bin": {
2234 "rimraf": "bin.js"
2235 },
2236 "funding": {
2237 "url": "https://github.com/sponsors/isaacs"
2238 }
2239 },
880 "node_modules/once": {
2240 "node_modules/once": {
881 "version": "1.4.0",
2241 "version": "1.4.0",
882 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
2242 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
883 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
2243 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
884 "dev": true,
2244 "dev": true,
885 "dependencies": {
2245 "dependencies": {
886 "wrappy": "1"
2246 "wrappy": "1"
887 }
2247 }
888 },
2248 },
889 "node_modules/onetime": {
2249 "node_modules/onetime": {
890 "version": "5.1.0",
2250 "version": "5.1.0",
891 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
2251 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
892 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
2252 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
893 "dev": true,
2253 "dev": true,
894 "dependencies": {
2254 "dependencies": {
895 "mimic-fn": "^2.1.0"
2255 "mimic-fn": "^2.1.0"
896 },
2256 },
897 "engines": {
2257 "engines": {
898 "node": ">=6"
2258 "node": ">=6"
899 }
2259 }
900 },
2260 },
2261 "node_modules/opener": {
2262 "version": "1.5.2",
2263 "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
2264 "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
2265 "dev": true,
2266 "bin": {
2267 "opener": "bin/opener-bin.js"
2268 }
2269 },
901 "node_modules/optionator": {
2270 "node_modules/optionator": {
902 "version": "0.8.3",
2271 "version": "0.8.3",
903 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
2272 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
904 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
2273 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
905 "dev": true,
2274 "dev": true,
906 "dependencies": {
2275 "dependencies": {
907 "deep-is": "~0.1.3",
2276 "deep-is": "~0.1.3",
908 "fast-levenshtein": "~2.0.6",
2277 "fast-levenshtein": "~2.0.6",
909 "levn": "~0.3.0",
2278 "levn": "~0.3.0",
910 "prelude-ls": "~1.1.2",
2279 "prelude-ls": "~1.1.2",
911 "type-check": "~0.3.2",
2280 "type-check": "~0.3.2",
912 "word-wrap": "~1.2.3"
2281 "word-wrap": "~1.2.3"
913 },
2282 },
914 "engines": {
2283 "engines": {
915 "node": ">= 0.8.0"
2284 "node": ">= 0.8.0"
916 }
2285 }
917 },
2286 },
918 "node_modules/os-tmpdir": {
2287 "node_modules/os-tmpdir": {
919 "version": "1.0.2",
2288 "version": "1.0.2",
920 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
2289 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
921 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
2290 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
922 "dev": true,
2291 "dev": true,
923 "engines": {
2292 "engines": {
924 "node": ">=0.10.0"
2293 "node": ">=0.10.0"
925 }
2294 }
926 },
2295 },
2296 "node_modules/own-or": {
2297 "version": "1.0.0",
2298 "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz",
2299 "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==",
2300 "dev": true
2301 },
2302 "node_modules/own-or-env": {
2303 "version": "1.0.2",
2304 "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz",
2305 "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==",
2306 "dev": true,
2307 "dependencies": {
2308 "own-or": "^1.0.0"
2309 }
2310 },
2311 "node_modules/p-limit": {
2312 "version": "2.3.0",
2313 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
2314 "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
2315 "dev": true,
2316 "dependencies": {
2317 "p-try": "^2.0.0"
2318 },
2319 "engines": {
2320 "node": ">=6"
2321 },
2322 "funding": {
2323 "url": "https://github.com/sponsors/sindresorhus"
2324 }
2325 },
2326 "node_modules/p-locate": {
2327 "version": "4.1.0",
2328 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
2329 "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
2330 "dev": true,
2331 "dependencies": {
2332 "p-limit": "^2.2.0"
2333 },
2334 "engines": {
2335 "node": ">=8"
2336 }
2337 },
2338 "node_modules/p-map": {
2339 "version": "3.0.0",
2340 "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz",
2341 "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==",
2342 "dev": true,
2343 "dependencies": {
2344 "aggregate-error": "^3.0.0"
2345 },
2346 "engines": {
2347 "node": ">=8"
2348 }
2349 },
2350 "node_modules/p-try": {
2351 "version": "2.2.0",
2352 "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
2353 "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
2354 "dev": true,
2355 "engines": {
2356 "node": ">=6"
2357 }
2358 },
2359 "node_modules/package-hash": {
2360 "version": "4.0.0",
2361 "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz",
2362 "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==",
2363 "dev": true,
2364 "dependencies": {
2365 "graceful-fs": "^4.1.15",
2366 "hasha": "^5.0.0",
2367 "lodash.flattendeep": "^4.4.0",
2368 "release-zalgo": "^1.0.0"
2369 },
2370 "engines": {
2371 "node": ">=8"
2372 }
2373 },
927 "node_modules/parent-module": {
2374 "node_modules/parent-module": {
928 "version": "1.0.1",
2375 "version": "1.0.1",
929 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2376 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
930 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2377 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
931 "dev": true,
2378 "dev": true,
932 "dependencies": {
2379 "dependencies": {
933 "callsites": "^3.0.0"
2380 "callsites": "^3.0.0"
934 },
2381 },
935 "engines": {
2382 "engines": {
936 "node": ">=6"
2383 "node": ">=6"
937 }
2384 }
938 },
2385 },
2386 "node_modules/path-exists": {
2387 "version": "4.0.0",
2388 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
2389 "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
2390 "dev": true,
2391 "engines": {
2392 "node": ">=8"
2393 }
2394 },
939 "node_modules/path-is-absolute": {
2395 "node_modules/path-is-absolute": {
940 "version": "1.0.1",
2396 "version": "1.0.1",
941 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2397 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
942 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
2398 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
943 "dev": true,
2399 "dev": true,
944 "engines": {
2400 "engines": {
945 "node": ">=0.10.0"
2401 "node": ">=0.10.0"
946 }
2402 }
947 },
2403 },
948 "node_modules/path-key": {
2404 "node_modules/path-key": {
949 "version": "2.0.1",
2405 "version": "2.0.1",
950 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
2406 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
951 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
2407 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
952 "dev": true,
2408 "dev": true,
953 "engines": {
2409 "engines": {
954 "node": ">=4"
2410 "node": ">=4"
955 }
2411 }
956 },
2412 },
957 "node_modules/path-parse": {
2413 "node_modules/path-parse": {
958 "version": "1.0.6",
2414 "version": "1.0.7",
959 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
2415 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
960 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
2416 "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
961 "dev": true
2417 "dev": true
2418 },
2419 "node_modules/picocolors": {
2420 "version": "1.0.0",
2421 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
2422 "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
2423 "dev": true
2424 },
2425 "node_modules/picomatch": {
2426 "version": "2.3.1",
2427 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
2428 "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
2429 "dev": true,
2430 "engines": {
2431 "node": ">=8.6"
2432 },
2433 "funding": {
2434 "url": "https://github.com/sponsors/jonschlinkert"
2435 }
2436 },
2437 "node_modules/pkg-dir": {
2438 "version": "4.2.0",
2439 "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
2440 "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
2441 "dev": true,
2442 "dependencies": {
2443 "find-up": "^4.0.0"
2444 },
2445 "engines": {
2446 "node": ">=8"
2447 }
962 },
2448 },
963 "node_modules/prelude-ls": {
2449 "node_modules/prelude-ls": {
964 "version": "1.1.2",
2450 "version": "1.1.2",
965 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
2451 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
966 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
2452 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
967 "dev": true,
2453 "dev": true,
968 "engines": {
2454 "engines": {
969 "node": ">= 0.8.0"
2455 "node": ">= 0.8.0"
970 }
2456 }
971 },
2457 },
2458 "node_modules/process-on-spawn": {
2459 "version": "1.0.0",
2460 "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz",
2461 "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==",
2462 "dev": true,
2463 "dependencies": {
2464 "fromentries": "^1.2.0"
2465 },
2466 "engines": {
2467 "node": ">=8"
2468 }
2469 },
972 "node_modules/progress": {
2470 "node_modules/progress": {
973 "version": "2.0.3",
2471 "version": "2.0.3",
974 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
2472 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
975 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
2473 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
976 "dev": true,
2474 "dev": true,
977 "engines": {
2475 "engines": {
978 "node": ">=0.4.0"
2476 "node": ">=0.4.0"
979 }
2477 }
980 },
2478 },
981 "node_modules/punycode": {
2479 "node_modules/punycode": {
982 "version": "2.1.1",
2480 "version": "2.1.1",
983 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
2481 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
984 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
2482 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
985 "dev": true,
2483 "dev": true,
986 "engines": {
2484 "engines": {
987 "node": ">=6"
2485 "node": ">=6"
988 }
2486 }
989 },
2487 },
2488 "node_modules/readdirp": {
2489 "version": "3.6.0",
2490 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
2491 "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
2492 "dev": true,
2493 "dependencies": {
2494 "picomatch": "^2.2.1"
2495 },
2496 "engines": {
2497 "node": ">=8.10.0"
2498 }
2499 },
990 "node_modules/regenerator-runtime": {
2500 "node_modules/regenerator-runtime": {
991 "version": "0.13.3",
2501 "version": "0.13.3",
992 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
2502 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
993 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
2503 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
994 "dev": true
2504 "dev": true
995 },
2505 },
996 "node_modules/regexpp": {
2506 "node_modules/regexpp": {
997 "version": "2.0.1",
2507 "version": "2.0.1",
998 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
2508 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
999 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
2509 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
1000 "dev": true,
2510 "dev": true,
1001 "engines": {
2511 "engines": {
1002 "node": ">=6.5.0"
2512 "node": ">=6.5.0"
1003 }
2513 }
1004 },
2514 },
2515 "node_modules/release-zalgo": {
2516 "version": "1.0.0",
2517 "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz",
2518 "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==",
2519 "dev": true,
2520 "dependencies": {
2521 "es6-error": "^4.0.1"
2522 },
2523 "engines": {
2524 "node": ">=4"
2525 }
2526 },
2527 "node_modules/require-directory": {
2528 "version": "2.1.1",
2529 "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
2530 "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
2531 "dev": true,
2532 "engines": {
2533 "node": ">=0.10.0"
2534 }
2535 },
2536 "node_modules/require-main-filename": {
2537 "version": "2.0.0",
2538 "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
2539 "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
2540 "dev": true
2541 },
1005 "node_modules/requirejs": {
2542 "node_modules/requirejs": {
1006 "version": "2.3.6",
2543 "version": "2.3.6",
1007 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
2544 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
1008 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
2545 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
1009 "dev": true,
2546 "dev": true,
1010 "bin": {
2547 "bin": {
1011 "r_js": "bin/r.js",
2548 "r_js": "bin/r.js",
1012 "r.js": "bin/r.js"
2549 "r.js": "bin/r.js"
1013 },
2550 },
1014 "engines": {
2551 "engines": {
1015 "node": ">=0.4.0"
2552 "node": ">=0.4.0"
1016 }
2553 }
1017 },
2554 },
1018 "node_modules/resolve": {
2555 "node_modules/resolve": {
1019 "version": "1.17.0",
2556 "version": "1.17.0",
1020 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
2557 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
1021 "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
2558 "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
1022 "dev": true,
2559 "dev": true,
1023 "dependencies": {
2560 "dependencies": {
1024 "path-parse": "^1.0.6"
2561 "path-parse": "^1.0.6"
1025 }
2562 }
1026 },
2563 },
1027 "node_modules/resolve-from": {
2564 "node_modules/resolve-from": {
1028 "version": "4.0.0",
2565 "version": "4.0.0",
1029 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2566 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
1030 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
2567 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
1031 "dev": true,
2568 "dev": true,
1032 "engines": {
2569 "engines": {
1033 "node": ">=4"
2570 "node": ">=4"
1034 }
2571 }
1035 },
2572 },
1036 "node_modules/restore-cursor": {
2573 "node_modules/restore-cursor": {
1037 "version": "3.1.0",
2574 "version": "3.1.0",
1038 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
2575 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
1039 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
2576 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
1040 "dev": true,
2577 "dev": true,
1041 "dependencies": {
2578 "dependencies": {
1042 "onetime": "^5.1.0",
2579 "onetime": "^5.1.0",
1043 "signal-exit": "^3.0.2"
2580 "signal-exit": "^3.0.2"
1044 },
2581 },
1045 "engines": {
2582 "engines": {
1046 "node": ">=8"
2583 "node": ">=8"
1047 }
2584 }
1048 },
2585 },
1049 "node_modules/rimraf": {
2586 "node_modules/rimraf": {
1050 "version": "2.6.3",
2587 "version": "2.6.3",
1051 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
2588 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
1052 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
2589 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
1053 "dev": true,
2590 "dev": true,
1054 "dependencies": {
2591 "dependencies": {
1055 "glob": "^7.1.3"
2592 "glob": "^7.1.3"
1056 },
2593 },
1057 "bin": {
2594 "bin": {
1058 "rimraf": "bin.js"
2595 "rimraf": "bin.js"
1059 }
2596 }
1060 },
2597 },
1061 "node_modules/run-async": {
2598 "node_modules/run-async": {
1062 "version": "2.3.0",
2599 "version": "2.3.0",
1063 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
2600 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
1064 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
2601 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
1065 "dev": true,
2602 "dev": true,
1066 "dependencies": {
2603 "dependencies": {
1067 "is-promise": "^2.1.0"
2604 "is-promise": "^2.1.0"
1068 },
2605 },
1069 "engines": {
2606 "engines": {
1070 "node": ">=0.12.0"
2607 "node": ">=0.12.0"
1071 }
2608 }
1072 },
2609 },
1073 "node_modules/rxjs": {
2610 "node_modules/rxjs": {
1074 "version": "6.5.4",
2611 "version": "6.5.4",
1075 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
2612 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
1076 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
2613 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
1077 "dev": true,
2614 "dev": true,
1078 "dependencies": {
2615 "dependencies": {
1079 "tslib": "^1.9.0"
2616 "tslib": "^1.9.0"
1080 },
2617 },
1081 "engines": {
2618 "engines": {
1082 "npm": ">=2.0.0"
2619 "npm": ">=2.0.0"
1083 }
2620 }
1084 },
2621 },
2622 "node_modules/safe-buffer": {
2623 "version": "5.1.2",
2624 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
2625 "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
2626 "dev": true
2627 },
1085 "node_modules/safer-buffer": {
2628 "node_modules/safer-buffer": {
1086 "version": "2.1.2",
2629 "version": "2.1.2",
1087 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
2630 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
1088 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
2631 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
1089 "dev": true
2632 "dev": true
1090 },
2633 },
1091 "node_modules/semver": {
2634 "node_modules/semver": {
1092 "version": "6.3.0",
2635 "version": "6.3.0",
1093 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2636 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
1094 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2637 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
1095 "dev": true,
2638 "dev": true,
1096 "bin": {
2639 "bin": {
1097 "semver": "bin/semver.js"
2640 "semver": "bin/semver.js"
1098 }
2641 }
1099 },
2642 },
2643 "node_modules/set-blocking": {
2644 "version": "2.0.0",
2645 "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
2646 "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
2647 "dev": true
2648 },
1100 "node_modules/shebang-command": {
2649 "node_modules/shebang-command": {
1101 "version": "1.2.0",
2650 "version": "1.2.0",
1102 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
2651 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
1103 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
2652 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
1104 "dev": true,
2653 "dev": true,
1105 "dependencies": {
2654 "dependencies": {
1106 "shebang-regex": "^1.0.0"
2655 "shebang-regex": "^1.0.0"
1107 },
2656 },
1108 "engines": {
2657 "engines": {
1109 "node": ">=0.10.0"
2658 "node": ">=0.10.0"
1110 }
2659 }
1111 },
2660 },
1112 "node_modules/shebang-regex": {
2661 "node_modules/shebang-regex": {
1113 "version": "1.0.0",
2662 "version": "1.0.0",
1114 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
2663 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
1115 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
2664 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
1116 "dev": true,
2665 "dev": true,
1117 "engines": {
2666 "engines": {
1118 "node": ">=0.10.0"
2667 "node": ">=0.10.0"
1119 }
2668 }
1120 },
2669 },
1121 "node_modules/signal-exit": {
2670 "node_modules/signal-exit": {
1122 "version": "3.0.2",
2671 "version": "3.0.7",
1123 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
2672 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
1124 "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
2673 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
1125 "dev": true
2674 "dev": true
1126 },
2675 },
1127 "node_modules/slice-ansi": {
2676 "node_modules/slice-ansi": {
1128 "version": "2.1.0",
2677 "version": "2.1.0",
1129 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
2678 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
1130 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
2679 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
1131 "dev": true,
2680 "dev": true,
1132 "dependencies": {
2681 "dependencies": {
1133 "ansi-styles": "^3.2.0",
2682 "ansi-styles": "^3.2.0",
1134 "astral-regex": "^1.0.0",
2683 "astral-regex": "^1.0.0",
1135 "is-fullwidth-code-point": "^2.0.0"
2684 "is-fullwidth-code-point": "^2.0.0"
1136 },
2685 },
1137 "engines": {
2686 "engines": {
1138 "node": ">=6"
2687 "node": ">=6"
1139 }
2688 }
1140 },
2689 },
1141 "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": {
2690 "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": {
1142 "version": "2.0.0",
2691 "version": "2.0.0",
1143 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2692 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1144 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2693 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1145 "dev": true,
2694 "dev": true,
1146 "engines": {
2695 "engines": {
1147 "node": ">=4"
2696 "node": ">=4"
1148 }
2697 }
1149 },
2698 },
2699 "node_modules/source-map": {
2700 "version": "0.6.1",
2701 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
2702 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
2703 "dev": true,
2704 "engines": {
2705 "node": ">=0.10.0"
2706 }
2707 },
2708 "node_modules/source-map-support": {
2709 "version": "0.5.21",
2710 "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
2711 "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
2712 "dev": true,
2713 "dependencies": {
2714 "buffer-from": "^1.0.0",
2715 "source-map": "^0.6.0"
2716 }
2717 },
2718 "node_modules/spawn-wrap": {
2719 "version": "2.0.0",
2720 "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz",
2721 "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==",
2722 "dev": true,
2723 "dependencies": {
2724 "foreground-child": "^2.0.0",
2725 "is-windows": "^1.0.2",
2726 "make-dir": "^3.0.0",
2727 "rimraf": "^3.0.0",
2728 "signal-exit": "^3.0.2",
2729 "which": "^2.0.1"
2730 },
2731 "engines": {
2732 "node": ">=8"
2733 }
2734 },
2735 "node_modules/spawn-wrap/node_modules/rimraf": {
2736 "version": "3.0.2",
2737 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
2738 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
2739 "dev": true,
2740 "dependencies": {
2741 "glob": "^7.1.3"
2742 },
2743 "bin": {
2744 "rimraf": "bin.js"
2745 },
2746 "funding": {
2747 "url": "https://github.com/sponsors/isaacs"
2748 }
2749 },
2750 "node_modules/spawn-wrap/node_modules/which": {
2751 "version": "2.0.2",
2752 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
2753 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2754 "dev": true,
2755 "dependencies": {
2756 "isexe": "^2.0.0"
2757 },
2758 "bin": {
2759 "node-which": "bin/node-which"
2760 },
2761 "engines": {
2762 "node": ">= 8"
2763 }
2764 },
1150 "node_modules/sprintf-js": {
2765 "node_modules/sprintf-js": {
1151 "version": "1.0.3",
2766 "version": "1.0.3",
1152 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
2767 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
1153 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
2768 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
1154 "dev": true
2769 "dev": true
1155 },
2770 },
2771 "node_modules/stack-utils": {
2772 "version": "2.0.5",
2773 "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz",
2774 "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==",
2775 "dev": true,
2776 "dependencies": {
2777 "escape-string-regexp": "^2.0.0"
2778 },
2779 "engines": {
2780 "node": ">=10"
2781 }
2782 },
2783 "node_modules/stack-utils/node_modules/escape-string-regexp": {
2784 "version": "2.0.0",
2785 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
2786 "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
2787 "dev": true,
2788 "engines": {
2789 "node": ">=8"
2790 }
2791 },
1156 "node_modules/string-width": {
2792 "node_modules/string-width": {
1157 "version": "4.2.0",
2793 "version": "4.2.0",
1158 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
2794 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
1159 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
2795 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
1160 "dev": true,
2796 "dev": true,
1161 "dependencies": {
2797 "dependencies": {
1162 "emoji-regex": "^8.0.0",
2798 "emoji-regex": "^8.0.0",
1163 "is-fullwidth-code-point": "^3.0.0",
2799 "is-fullwidth-code-point": "^3.0.0",
1164 "strip-ansi": "^6.0.0"
2800 "strip-ansi": "^6.0.0"
1165 },
2801 },
1166 "engines": {
2802 "engines": {
1167 "node": ">=8"
2803 "node": ">=8"
1168 }
2804 }
1169 },
2805 },
1170 "node_modules/string-width/node_modules/strip-ansi": {
2806 "node_modules/string-width/node_modules/strip-ansi": {
1171 "version": "6.0.0",
2807 "version": "6.0.0",
1172 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
2808 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
1173 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
2809 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
1174 "dev": true,
2810 "dev": true,
1175 "dependencies": {
2811 "dependencies": {
1176 "ansi-regex": "^5.0.0"
2812 "ansi-regex": "^5.0.0"
1177 },
2813 },
1178 "engines": {
2814 "engines": {
1179 "node": ">=8"
2815 "node": ">=8"
1180 }
2816 }
1181 },
2817 },
1182 "node_modules/strip-ansi": {
2818 "node_modules/strip-ansi": {
1183 "version": "5.2.0",
2819 "version": "5.2.0",
1184 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
2820 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
1185 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
2821 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
1186 "dev": true,
2822 "dev": true,
1187 "dependencies": {
2823 "dependencies": {
1188 "ansi-regex": "^4.1.0"
2824 "ansi-regex": "^4.1.0"
1189 },
2825 },
1190 "engines": {
2826 "engines": {
1191 "node": ">=6"
2827 "node": ">=6"
1192 }
2828 }
1193 },
2829 },
1194 "node_modules/strip-ansi/node_modules/ansi-regex": {
2830 "node_modules/strip-ansi/node_modules/ansi-regex": {
1195 "version": "4.1.0",
2831 "version": "4.1.0",
1196 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
2832 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
1197 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
2833 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
1198 "dev": true,
2834 "dev": true,
1199 "engines": {
2835 "engines": {
1200 "node": ">=6"
2836 "node": ">=6"
1201 }
2837 }
1202 },
2838 },
2839 "node_modules/strip-bom": {
2840 "version": "4.0.0",
2841 "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
2842 "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
2843 "dev": true,
2844 "engines": {
2845 "node": ">=8"
2846 }
2847 },
1203 "node_modules/strip-json-comments": {
2848 "node_modules/strip-json-comments": {
1204 "version": "3.0.1",
2849 "version": "3.0.1",
1205 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
2850 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
1206 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
2851 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
1207 "dev": true,
2852 "dev": true,
1208 "engines": {
2853 "engines": {
1209 "node": ">=8"
2854 "node": ">=8"
1210 }
2855 }
1211 },
2856 },
1212 "node_modules/supports-color": {
2857 "node_modules/supports-color": {
1213 "version": "5.5.0",
2858 "version": "5.5.0",
1214 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2859 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
1215 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2860 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
1216 "dev": true,
2861 "dev": true,
1217 "dependencies": {
2862 "dependencies": {
1218 "has-flag": "^3.0.0"
2863 "has-flag": "^3.0.0"
1219 },
2864 },
1220 "engines": {
2865 "engines": {
1221 "node": ">=4"
2866 "node": ">=4"
1222 }
2867 }
1223 },
2868 },
1224 "node_modules/table": {
2869 "node_modules/table": {
1225 "version": "5.4.6",
2870 "version": "5.4.6",
1226 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
2871 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
1227 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
2872 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
1228 "dev": true,
2873 "dev": true,
1229 "dependencies": {
2874 "dependencies": {
1230 "ajv": "^6.10.2",
2875 "ajv": "^6.10.2",
1231 "lodash": "^4.17.14",
2876 "lodash": "^4.17.14",
1232 "slice-ansi": "^2.1.0",
2877 "slice-ansi": "^2.1.0",
1233 "string-width": "^3.0.0"
2878 "string-width": "^3.0.0"
1234 },
2879 },
1235 "engines": {
2880 "engines": {
1236 "node": ">=6.0.0"
2881 "node": ">=6.0.0"
1237 }
2882 }
1238 },
2883 },
1239 "node_modules/table/node_modules/emoji-regex": {
2884 "node_modules/table/node_modules/emoji-regex": {
1240 "version": "7.0.3",
2885 "version": "7.0.3",
1241 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
2886 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
1242 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
2887 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
1243 "dev": true
2888 "dev": true
1244 },
2889 },
1245 "node_modules/table/node_modules/is-fullwidth-code-point": {
2890 "node_modules/table/node_modules/is-fullwidth-code-point": {
1246 "version": "2.0.0",
2891 "version": "2.0.0",
1247 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2892 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1248 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2893 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1249 "dev": true,
2894 "dev": true,
1250 "engines": {
2895 "engines": {
1251 "node": ">=4"
2896 "node": ">=4"
1252 }
2897 }
1253 },
2898 },
1254 "node_modules/table/node_modules/string-width": {
2899 "node_modules/table/node_modules/string-width": {
1255 "version": "3.1.0",
2900 "version": "3.1.0",
1256 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
2901 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
1257 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
2902 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
1258 "dev": true,
2903 "dev": true,
1259 "dependencies": {
2904 "dependencies": {
1260 "emoji-regex": "^7.0.1",
2905 "emoji-regex": "^7.0.1",
1261 "is-fullwidth-code-point": "^2.0.0",
2906 "is-fullwidth-code-point": "^2.0.0",
1262 "strip-ansi": "^5.1.0"
2907 "strip-ansi": "^5.1.0"
1263 },
2908 },
1264 "engines": {
2909 "engines": {
1265 "node": ">=6"
2910 "node": ">=6"
1266 }
2911 }
1267 },
2912 },
2913 "node_modules/tap": {
2914 "version": "16.3.0",
2915 "resolved": "https://registry.npmjs.org/tap/-/tap-16.3.0.tgz",
2916 "integrity": "sha512-J9GffPUAbX6FnWbQ/jj7ktzd9nnDFP1fH44OzidqOmxUfZ1hPLMOvpS99LnDiP0H2mO8GY3kGN5XoY0xIKbNFA==",
2917 "bundleDependencies": [
2918 "ink",
2919 "treport",
2920 "@types/react",
2921 "@isaacs/import-jsx",
2922 "react"
2923 ],
2924 "dev": true,
2925 "dependencies": {
2926 "@isaacs/import-jsx": "^4.0.1",
2927 "@types/react": "^17",
2928 "chokidar": "^3.3.0",
2929 "findit": "^2.0.0",
2930 "foreground-child": "^2.0.0",
2931 "fs-exists-cached": "^1.0.0",
2932 "glob": "^7.1.6",
2933 "ink": "^3.2.0",
2934 "isexe": "^2.0.0",
2935 "istanbul-lib-processinfo": "^2.0.2",
2936 "jackspeak": "^1.4.1",
2937 "libtap": "^1.4.0",
2938 "minipass": "^3.1.1",
2939 "mkdirp": "^1.0.4",
2940 "nyc": "^15.1.0",
2941 "opener": "^1.5.1",
2942 "react": "^17.0.2",
2943 "rimraf": "^3.0.0",
2944 "signal-exit": "^3.0.6",
2945 "source-map-support": "^0.5.16",
2946 "tap-mocha-reporter": "^5.0.3",
2947 "tap-parser": "^11.0.1",
2948 "tap-yaml": "^1.0.0",
2949 "tcompare": "^5.0.7",
2950 "treport": "^3.0.3",
2951 "which": "^2.0.2"
2952 },
2953 "bin": {
2954 "tap": "bin/run.js"
2955 },
2956 "engines": {
2957 "node": ">=12"
2958 },
2959 "funding": {
2960 "url": "https://github.com/sponsors/isaacs"
2961 },
2962 "peerDependencies": {
2963 "coveralls": "^3.1.1",
2964 "flow-remove-types": ">=2.112.0",
2965 "ts-node": ">=8.5.2",
2966 "typescript": ">=3.7.2"
2967 },
2968 "peerDependenciesMeta": {
2969 "coveralls": {
2970 "optional": true
2971 },
2972 "flow-remove-types": {
2973 "optional": true
2974 },
2975 "ts-node": {
2976 "optional": true
2977 },
2978 "typescript": {
2979 "optional": true
2980 }
2981 }
2982 },
2983 "node_modules/tap-mocha-reporter": {
2984 "version": "5.0.3",
2985 "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-5.0.3.tgz",
2986 "integrity": "sha512-6zlGkaV4J+XMRFkN0X+yuw6xHbE9jyCZ3WUKfw4KxMyRGOpYSRuuQTRJyWX88WWuLdVTuFbxzwXhXuS2XE6o0g==",
2987 "dev": true,
2988 "dependencies": {
2989 "color-support": "^1.1.0",
2990 "debug": "^4.1.1",
2991 "diff": "^4.0.1",
2992 "escape-string-regexp": "^2.0.0",
2993 "glob": "^7.0.5",
2994 "tap-parser": "^11.0.0",
2995 "tap-yaml": "^1.0.0",
2996 "unicode-length": "^2.0.2"
2997 },
2998 "bin": {
2999 "tap-mocha-reporter": "index.js"
3000 },
3001 "engines": {
3002 "node": ">= 8"
3003 }
3004 },
3005 "node_modules/tap-mocha-reporter/node_modules/escape-string-regexp": {
3006 "version": "2.0.0",
3007 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
3008 "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
3009 "dev": true,
3010 "engines": {
3011 "node": ">=8"
3012 }
3013 },
3014 "node_modules/tap-parser": {
3015 "version": "11.0.1",
3016 "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-11.0.1.tgz",
3017 "integrity": "sha512-5ow0oyFOnXVSALYdidMX94u0GEjIlgc/BPFYLx0yRh9hb8+cFGNJqJzDJlUqbLOwx8+NBrIbxCWkIQi7555c0w==",
3018 "dev": true,
3019 "dependencies": {
3020 "events-to-array": "^1.0.1",
3021 "minipass": "^3.1.6",
3022 "tap-yaml": "^1.0.0"
3023 },
3024 "bin": {
3025 "tap-parser": "bin/cmd.js"
3026 },
3027 "engines": {
3028 "node": ">= 8"
3029 }
3030 },
3031 "node_modules/tap-yaml": {
3032 "version": "1.0.0",
3033 "resolved": "https://registry.npmjs.org/tap-yaml/-/tap-yaml-1.0.0.tgz",
3034 "integrity": "sha512-Rxbx4EnrWkYk0/ztcm5u3/VznbyFJpyXO12dDBHKWiDVxy7O2Qw6MRrwO5H6Ww0U5YhRY/4C/VzWmFPhBQc4qQ==",
3035 "dev": true,
3036 "dependencies": {
3037 "yaml": "^1.5.0"
3038 }
3039 },
3040 "node_modules/tap/node_modules/@ampproject/remapping": {
3041 "version": "2.1.2",
3042 "dev": true,
3043 "inBundle": true,
3044 "license": "Apache-2.0",
3045 "dependencies": {
3046 "@jridgewell/trace-mapping": "^0.3.0"
3047 },
3048 "engines": {
3049 "node": ">=6.0.0"
3050 }
3051 },
3052 "node_modules/tap/node_modules/@babel/code-frame": {
3053 "version": "7.16.7",
3054 "dev": true,
3055 "inBundle": true,
3056 "license": "MIT",
3057 "dependencies": {
3058 "@babel/highlight": "^7.16.7"
3059 },
3060 "engines": {
3061 "node": ">=6.9.0"
3062 }
3063 },
3064 "node_modules/tap/node_modules/@babel/compat-data": {
3065 "version": "7.17.7",
3066 "dev": true,
3067 "inBundle": true,
3068 "license": "MIT",
3069 "engines": {
3070 "node": ">=6.9.0"
3071 }
3072 },
3073 "node_modules/tap/node_modules/@babel/core": {
3074 "version": "7.17.8",
3075 "dev": true,
3076 "inBundle": true,
3077 "license": "MIT",
3078 "dependencies": {
3079 "@ampproject/remapping": "^2.1.0",
3080 "@babel/code-frame": "^7.16.7",
3081 "@babel/generator": "^7.17.7",
3082 "@babel/helper-compilation-targets": "^7.17.7",
3083 "@babel/helper-module-transforms": "^7.17.7",
3084 "@babel/helpers": "^7.17.8",
3085 "@babel/parser": "^7.17.8",
3086 "@babel/template": "^7.16.7",
3087 "@babel/traverse": "^7.17.3",
3088 "@babel/types": "^7.17.0",
3089 "convert-source-map": "^1.7.0",
3090 "debug": "^4.1.0",
3091 "gensync": "^1.0.0-beta.2",
3092 "json5": "^2.1.2",
3093 "semver": "^6.3.0"
3094 },
3095 "engines": {
3096 "node": ">=6.9.0"
3097 },
3098 "funding": {
3099 "type": "opencollective",
3100 "url": "https://opencollective.com/babel"
3101 }
3102 },
3103 "node_modules/tap/node_modules/@babel/generator": {
3104 "version": "7.17.7",
3105 "dev": true,
3106 "inBundle": true,
3107 "license": "MIT",
3108 "dependencies": {
3109 "@babel/types": "^7.17.0",
3110 "jsesc": "^2.5.1",
3111 "source-map": "^0.5.0"
3112 },
3113 "engines": {
3114 "node": ">=6.9.0"
3115 }
3116 },
3117 "node_modules/tap/node_modules/@babel/helper-annotate-as-pure": {
3118 "version": "7.16.7",
3119 "dev": true,
3120 "inBundle": true,
3121 "license": "MIT",
3122 "dependencies": {
3123 "@babel/types": "^7.16.7"
3124 },
3125 "engines": {
3126 "node": ">=6.9.0"
3127 }
3128 },
3129 "node_modules/tap/node_modules/@babel/helper-compilation-targets": {
3130 "version": "7.17.7",
3131 "dev": true,
3132 "inBundle": true,
3133 "license": "MIT",
3134 "dependencies": {
3135 "@babel/compat-data": "^7.17.7",
3136 "@babel/helper-validator-option": "^7.16.7",
3137 "browserslist": "^4.17.5",
3138 "semver": "^6.3.0"
3139 },
3140 "engines": {
3141 "node": ">=6.9.0"
3142 },
3143 "peerDependencies": {
3144 "@babel/core": "^7.0.0"
3145 }
3146 },
3147 "node_modules/tap/node_modules/@babel/helper-environment-visitor": {
3148 "version": "7.16.7",
3149 "dev": true,
3150 "inBundle": true,
3151 "license": "MIT",
3152 "dependencies": {
3153 "@babel/types": "^7.16.7"
3154 },
3155 "engines": {
3156 "node": ">=6.9.0"
3157 }
3158 },
3159 "node_modules/tap/node_modules/@babel/helper-function-name": {
3160 "version": "7.16.7",
3161 "dev": true,
3162 "inBundle": true,
3163 "license": "MIT",
3164 "dependencies": {
3165 "@babel/helper-get-function-arity": "^7.16.7",
3166 "@babel/template": "^7.16.7",
3167 "@babel/types": "^7.16.7"
3168 },
3169 "engines": {
3170 "node": ">=6.9.0"
3171 }
3172 },
3173 "node_modules/tap/node_modules/@babel/helper-get-function-arity": {
3174 "version": "7.16.7",
3175 "dev": true,
3176 "inBundle": true,
3177 "license": "MIT",
3178 "dependencies": {
3179 "@babel/types": "^7.16.7"
3180 },
3181 "engines": {
3182 "node": ">=6.9.0"
3183 }
3184 },
3185 "node_modules/tap/node_modules/@babel/helper-hoist-variables": {
3186 "version": "7.16.7",
3187 "dev": true,
3188 "inBundle": true,
3189 "license": "MIT",
3190 "dependencies": {
3191 "@babel/types": "^7.16.7"
3192 },
3193 "engines": {
3194 "node": ">=6.9.0"
3195 }
3196 },
3197 "node_modules/tap/node_modules/@babel/helper-module-imports": {
3198 "version": "7.16.7",
3199 "dev": true,
3200 "inBundle": true,
3201 "license": "MIT",
3202 "dependencies": {
3203 "@babel/types": "^7.16.7"
3204 },
3205 "engines": {
3206 "node": ">=6.9.0"
3207 }
3208 },
3209 "node_modules/tap/node_modules/@babel/helper-module-transforms": {
3210 "version": "7.17.7",
3211 "dev": true,
3212 "inBundle": true,
3213 "license": "MIT",
3214 "dependencies": {
3215 "@babel/helper-environment-visitor": "^7.16.7",
3216 "@babel/helper-module-imports": "^7.16.7",
3217 "@babel/helper-simple-access": "^7.17.7",
3218 "@babel/helper-split-export-declaration": "^7.16.7",
3219 "@babel/helper-validator-identifier": "^7.16.7",
3220 "@babel/template": "^7.16.7",
3221 "@babel/traverse": "^7.17.3",
3222 "@babel/types": "^7.17.0"
3223 },
3224 "engines": {
3225 "node": ">=6.9.0"
3226 }
3227 },
3228 "node_modules/tap/node_modules/@babel/helper-plugin-utils": {
3229 "version": "7.16.7",
3230 "dev": true,
3231 "inBundle": true,
3232 "license": "MIT",
3233 "engines": {
3234 "node": ">=6.9.0"
3235 }
3236 },
3237 "node_modules/tap/node_modules/@babel/helper-simple-access": {
3238 "version": "7.17.7",
3239 "dev": true,
3240 "inBundle": true,
3241 "license": "MIT",
3242 "dependencies": {
3243 "@babel/types": "^7.17.0"
3244 },
3245 "engines": {
3246 "node": ">=6.9.0"
3247 }
3248 },
3249 "node_modules/tap/node_modules/@babel/helper-split-export-declaration": {
3250 "version": "7.16.7",
3251 "dev": true,
3252 "inBundle": true,
3253 "license": "MIT",
3254 "dependencies": {
3255 "@babel/types": "^7.16.7"
3256 },
3257 "engines": {
3258 "node": ">=6.9.0"
3259 }
3260 },
3261 "node_modules/tap/node_modules/@babel/helper-validator-identifier": {
3262 "version": "7.16.7",
3263 "dev": true,
3264 "inBundle": true,
3265 "license": "MIT",
3266 "engines": {
3267 "node": ">=6.9.0"
3268 }
3269 },
3270 "node_modules/tap/node_modules/@babel/helper-validator-option": {
3271 "version": "7.16.7",
3272 "dev": true,
3273 "inBundle": true,
3274 "license": "MIT",
3275 "engines": {
3276 "node": ">=6.9.0"
3277 }
3278 },
3279 "node_modules/tap/node_modules/@babel/helpers": {
3280 "version": "7.17.8",
3281 "dev": true,
3282 "inBundle": true,
3283 "license": "MIT",
3284 "dependencies": {
3285 "@babel/template": "^7.16.7",
3286 "@babel/traverse": "^7.17.3",
3287 "@babel/types": "^7.17.0"
3288 },
3289 "engines": {
3290 "node": ">=6.9.0"
3291 }
3292 },
3293 "node_modules/tap/node_modules/@babel/highlight": {
3294 "version": "7.16.10",
3295 "dev": true,
3296 "inBundle": true,
3297 "license": "MIT",
3298 "dependencies": {
3299 "@babel/helper-validator-identifier": "^7.16.7",
3300 "chalk": "^2.0.0",
3301 "js-tokens": "^4.0.0"
3302 },
3303 "engines": {
3304 "node": ">=6.9.0"
3305 }
3306 },
3307 "node_modules/tap/node_modules/@babel/parser": {
3308 "version": "7.17.8",
3309 "dev": true,
3310 "inBundle": true,
3311 "license": "MIT",
3312 "bin": {
3313 "parser": "bin/babel-parser.js"
3314 },
3315 "engines": {
3316 "node": ">=6.0.0"
3317 }
3318 },
3319 "node_modules/tap/node_modules/@babel/plugin-proposal-object-rest-spread": {
3320 "version": "7.17.3",
3321 "dev": true,
3322 "inBundle": true,
3323 "license": "MIT",
3324 "dependencies": {
3325 "@babel/compat-data": "^7.17.0",
3326 "@babel/helper-compilation-targets": "^7.16.7",
3327 "@babel/helper-plugin-utils": "^7.16.7",
3328 "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
3329 "@babel/plugin-transform-parameters": "^7.16.7"
3330 },
3331 "engines": {
3332 "node": ">=6.9.0"
3333 },
3334 "peerDependencies": {
3335 "@babel/core": "^7.0.0-0"
3336 }
3337 },
3338 "node_modules/tap/node_modules/@babel/plugin-syntax-jsx": {
3339 "version": "7.16.7",
3340 "dev": true,
3341 "inBundle": true,
3342 "license": "MIT",
3343 "dependencies": {
3344 "@babel/helper-plugin-utils": "^7.16.7"
3345 },
3346 "engines": {
3347 "node": ">=6.9.0"
3348 },
3349 "peerDependencies": {
3350 "@babel/core": "^7.0.0-0"
3351 }
3352 },
3353 "node_modules/tap/node_modules/@babel/plugin-syntax-object-rest-spread": {
3354 "version": "7.8.3",
3355 "dev": true,
3356 "inBundle": true,
3357 "license": "MIT",
3358 "dependencies": {
3359 "@babel/helper-plugin-utils": "^7.8.0"
3360 },
3361 "peerDependencies": {
3362 "@babel/core": "^7.0.0-0"
3363 }
3364 },
3365 "node_modules/tap/node_modules/@babel/plugin-transform-destructuring": {
3366 "version": "7.17.7",
3367 "dev": true,
3368 "inBundle": true,
3369 "license": "MIT",
3370 "dependencies": {
3371 "@babel/helper-plugin-utils": "^7.16.7"
3372 },
3373 "engines": {
3374 "node": ">=6.9.0"
3375 },
3376 "peerDependencies": {
3377 "@babel/core": "^7.0.0-0"
3378 }
3379 },
3380 "node_modules/tap/node_modules/@babel/plugin-transform-parameters": {
3381 "version": "7.16.7",
3382 "dev": true,
3383 "inBundle": true,
3384 "license": "MIT",
3385 "dependencies": {
3386 "@babel/helper-plugin-utils": "^7.16.7"
3387 },
3388 "engines": {
3389 "node": ">=6.9.0"
3390 },
3391 "peerDependencies": {
3392 "@babel/core": "^7.0.0-0"
3393 }
3394 },
3395 "node_modules/tap/node_modules/@babel/plugin-transform-react-jsx": {
3396 "version": "7.17.3",
3397 "dev": true,
3398 "inBundle": true,
3399 "license": "MIT",
3400 "dependencies": {
3401 "@babel/helper-annotate-as-pure": "^7.16.7",
3402 "@babel/helper-module-imports": "^7.16.7",
3403 "@babel/helper-plugin-utils": "^7.16.7",
3404 "@babel/plugin-syntax-jsx": "^7.16.7",
3405 "@babel/types": "^7.17.0"
3406 },
3407 "engines": {
3408 "node": ">=6.9.0"
3409 },
3410 "peerDependencies": {
3411 "@babel/core": "^7.0.0-0"
3412 }
3413 },
3414 "node_modules/tap/node_modules/@babel/template": {
3415 "version": "7.16.7",
3416 "dev": true,
3417 "inBundle": true,
3418 "license": "MIT",
3419 "dependencies": {
3420 "@babel/code-frame": "^7.16.7",
3421 "@babel/parser": "^7.16.7",
3422 "@babel/types": "^7.16.7"
3423 },
3424 "engines": {
3425 "node": ">=6.9.0"
3426 }
3427 },
3428 "node_modules/tap/node_modules/@babel/traverse": {
3429 "version": "7.17.3",
3430 "dev": true,
3431 "inBundle": true,
3432 "license": "MIT",
3433 "dependencies": {
3434 "@babel/code-frame": "^7.16.7",
3435 "@babel/generator": "^7.17.3",
3436 "@babel/helper-environment-visitor": "^7.16.7",
3437 "@babel/helper-function-name": "^7.16.7",
3438 "@babel/helper-hoist-variables": "^7.16.7",
3439 "@babel/helper-split-export-declaration": "^7.16.7",
3440 "@babel/parser": "^7.17.3",
3441 "@babel/types": "^7.17.0",
3442 "debug": "^4.1.0",
3443 "globals": "^11.1.0"
3444 },
3445 "engines": {
3446 "node": ">=6.9.0"
3447 }
3448 },
3449 "node_modules/tap/node_modules/@babel/types": {
3450 "version": "7.17.0",
3451 "dev": true,
3452 "inBundle": true,
3453 "license": "MIT",
3454 "dependencies": {
3455 "@babel/helper-validator-identifier": "^7.16.7",
3456 "to-fast-properties": "^2.0.0"
3457 },
3458 "engines": {
3459 "node": ">=6.9.0"
3460 }
3461 },
3462 "node_modules/tap/node_modules/@isaacs/import-jsx": {
3463 "version": "4.0.1",
3464 "dev": true,
3465 "inBundle": true,
3466 "license": "MIT",
3467 "dependencies": {
3468 "@babel/core": "^7.5.5",
3469 "@babel/plugin-proposal-object-rest-spread": "^7.5.5",
3470 "@babel/plugin-transform-destructuring": "^7.5.0",
3471 "@babel/plugin-transform-react-jsx": "^7.3.0",
3472 "caller-path": "^3.0.1",
3473 "find-cache-dir": "^3.2.0",
3474 "make-dir": "^3.0.2",
3475 "resolve-from": "^3.0.0",
3476 "rimraf": "^3.0.0"
3477 },
3478 "engines": {
3479 "node": ">=10"
3480 }
3481 },
3482 "node_modules/tap/node_modules/@jridgewell/resolve-uri": {
3483 "version": "3.0.5",
3484 "dev": true,
3485 "inBundle": true,
3486 "license": "MIT",
3487 "engines": {
3488 "node": ">=6.0.0"
3489 }
3490 },
3491 "node_modules/tap/node_modules/@jridgewell/sourcemap-codec": {
3492 "version": "1.4.11",
3493 "dev": true,
3494 "inBundle": true,
3495 "license": "MIT"
3496 },
3497 "node_modules/tap/node_modules/@jridgewell/trace-mapping": {
3498 "version": "0.3.4",
3499 "dev": true,
3500 "inBundle": true,
3501 "license": "MIT",
3502 "dependencies": {
3503 "@jridgewell/resolve-uri": "^3.0.3",
3504 "@jridgewell/sourcemap-codec": "^1.4.10"
3505 }
3506 },
3507 "node_modules/tap/node_modules/@types/prop-types": {
3508 "version": "15.7.4",
3509 "dev": true,
3510 "inBundle": true,
3511 "license": "MIT"
3512 },
3513 "node_modules/tap/node_modules/@types/react": {
3514 "version": "17.0.41",
3515 "dev": true,
3516 "inBundle": true,
3517 "license": "MIT",
3518 "dependencies": {
3519 "@types/prop-types": "*",
3520 "@types/scheduler": "*",
3521 "csstype": "^3.0.2"
3522 }
3523 },
3524 "node_modules/tap/node_modules/@types/scheduler": {
3525 "version": "0.16.2",
3526 "dev": true,
3527 "inBundle": true,
3528 "license": "MIT"
3529 },
3530 "node_modules/tap/node_modules/@types/yoga-layout": {
3531 "version": "1.9.2",
3532 "dev": true,
3533 "inBundle": true,
3534 "license": "MIT"
3535 },
3536 "node_modules/tap/node_modules/ansi-escapes": {
3537 "version": "4.3.2",
3538 "dev": true,
3539 "inBundle": true,
3540 "license": "MIT",
3541 "dependencies": {
3542 "type-fest": "^0.21.3"
3543 },
3544 "engines": {
3545 "node": ">=8"
3546 },
3547 "funding": {
3548 "url": "https://github.com/sponsors/sindresorhus"
3549 }
3550 },
3551 "node_modules/tap/node_modules/ansi-escapes/node_modules/type-fest": {
3552 "version": "0.21.3",
3553 "dev": true,
3554 "inBundle": true,
3555 "license": "(MIT OR CC0-1.0)",
3556 "engines": {
3557 "node": ">=10"
3558 },
3559 "funding": {
3560 "url": "https://github.com/sponsors/sindresorhus"
3561 }
3562 },
3563 "node_modules/tap/node_modules/ansi-regex": {
3564 "version": "5.0.1",
3565 "dev": true,
3566 "inBundle": true,
3567 "license": "MIT",
3568 "engines": {
3569 "node": ">=8"
3570 }
3571 },
3572 "node_modules/tap/node_modules/ansi-styles": {
3573 "version": "3.2.1",
3574 "dev": true,
3575 "inBundle": true,
3576 "license": "MIT",
3577 "dependencies": {
3578 "color-convert": "^1.9.0"
3579 },
3580 "engines": {
3581 "node": ">=4"
3582 }
3583 },
3584 "node_modules/tap/node_modules/ansicolors": {
3585 "version": "0.3.2",
3586 "dev": true,
3587 "inBundle": true,
3588 "license": "MIT"
3589 },
3590 "node_modules/tap/node_modules/astral-regex": {
3591 "version": "2.0.0",
3592 "dev": true,
3593 "inBundle": true,
3594 "license": "MIT",
3595 "engines": {
3596 "node": ">=8"
3597 }
3598 },
3599 "node_modules/tap/node_modules/auto-bind": {
3600 "version": "4.0.0",
3601 "dev": true,
3602 "inBundle": true,
3603 "license": "MIT",
3604 "engines": {
3605 "node": ">=8"
3606 },
3607 "funding": {
3608 "url": "https://github.com/sponsors/sindresorhus"
3609 }
3610 },
3611 "node_modules/tap/node_modules/balanced-match": {
3612 "version": "1.0.2",
3613 "dev": true,
3614 "inBundle": true,
3615 "license": "MIT"
3616 },
3617 "node_modules/tap/node_modules/brace-expansion": {
3618 "version": "1.1.11",
3619 "dev": true,
3620 "inBundle": true,
3621 "license": "MIT",
3622 "dependencies": {
3623 "balanced-match": "^1.0.0",
3624 "concat-map": "0.0.1"
3625 }
3626 },
3627 "node_modules/tap/node_modules/browserslist": {
3628 "version": "4.20.2",
3629 "dev": true,
3630 "funding": [
3631 {
3632 "type": "opencollective",
3633 "url": "https://opencollective.com/browserslist"
3634 },
3635 {
3636 "type": "tidelift",
3637 "url": "https://tidelift.com/funding/github/npm/browserslist"
3638 }
3639 ],
3640 "inBundle": true,
3641 "license": "MIT",
3642 "dependencies": {
3643 "caniuse-lite": "^1.0.30001317",
3644 "electron-to-chromium": "^1.4.84",
3645 "escalade": "^3.1.1",
3646 "node-releases": "^2.0.2",
3647 "picocolors": "^1.0.0"
3648 },
3649 "bin": {
3650 "browserslist": "cli.js"
3651 },
3652 "engines": {
3653 "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
3654 }
3655 },
3656 "node_modules/tap/node_modules/caller-callsite": {
3657 "version": "4.1.0",
3658 "dev": true,
3659 "inBundle": true,
3660 "license": "MIT",
3661 "dependencies": {
3662 "callsites": "^3.1.0"
3663 },
3664 "engines": {
3665 "node": ">=8"
3666 }
3667 },
3668 "node_modules/tap/node_modules/caller-path": {
3669 "version": "3.0.1",
3670 "dev": true,
3671 "inBundle": true,
3672 "license": "MIT",
3673 "dependencies": {
3674 "caller-callsite": "^4.1.0"
3675 },
3676 "engines": {
3677 "node": ">=8"
3678 }
3679 },
3680 "node_modules/tap/node_modules/callsites": {
3681 "version": "3.1.0",
3682 "dev": true,
3683 "inBundle": true,
3684 "license": "MIT",
3685 "engines": {
3686 "node": ">=6"
3687 }
3688 },
3689 "node_modules/tap/node_modules/caniuse-lite": {
3690 "version": "1.0.30001319",
3691 "dev": true,
3692 "funding": [
3693 {
3694 "type": "opencollective",
3695 "url": "https://opencollective.com/browserslist"
3696 },
3697 {
3698 "type": "tidelift",
3699 "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
3700 }
3701 ],
3702 "inBundle": true,
3703 "license": "CC-BY-4.0"
3704 },
3705 "node_modules/tap/node_modules/cardinal": {
3706 "version": "2.1.1",
3707 "dev": true,
3708 "inBundle": true,
3709 "license": "MIT",
3710 "dependencies": {
3711 "ansicolors": "~0.3.2",
3712 "redeyed": "~2.1.0"
3713 },
3714 "bin": {
3715 "cdl": "bin/cdl.js"
3716 }
3717 },
3718 "node_modules/tap/node_modules/chalk": {
3719 "version": "2.4.2",
3720 "dev": true,
3721 "inBundle": true,
3722 "license": "MIT",
3723 "dependencies": {
3724 "ansi-styles": "^3.2.1",
3725 "escape-string-regexp": "^1.0.5",
3726 "supports-color": "^5.3.0"
3727 },
3728 "engines": {
3729 "node": ">=4"
3730 }
3731 },
3732 "node_modules/tap/node_modules/ci-info": {
3733 "version": "2.0.0",
3734 "dev": true,
3735 "inBundle": true,
3736 "license": "MIT"
3737 },
3738 "node_modules/tap/node_modules/cli-boxes": {
3739 "version": "2.2.1",
3740 "dev": true,
3741 "inBundle": true,
3742 "license": "MIT",
3743 "engines": {
3744 "node": ">=6"
3745 },
3746 "funding": {
3747 "url": "https://github.com/sponsors/sindresorhus"
3748 }
3749 },
3750 "node_modules/tap/node_modules/cli-cursor": {
3751 "version": "3.1.0",
3752 "dev": true,
3753 "inBundle": true,
3754 "license": "MIT",
3755 "dependencies": {
3756 "restore-cursor": "^3.1.0"
3757 },
3758 "engines": {
3759 "node": ">=8"
3760 }
3761 },
3762 "node_modules/tap/node_modules/cli-truncate": {
3763 "version": "2.1.0",
3764 "dev": true,
3765 "inBundle": true,
3766 "license": "MIT",
3767 "dependencies": {
3768 "slice-ansi": "^3.0.0",
3769 "string-width": "^4.2.0"
3770 },
3771 "engines": {
3772 "node": ">=8"
3773 },
3774 "funding": {
3775 "url": "https://github.com/sponsors/sindresorhus"
3776 }
3777 },
3778 "node_modules/tap/node_modules/code-excerpt": {
3779 "version": "3.0.0",
3780 "dev": true,
3781 "inBundle": true,
3782 "license": "MIT",
3783 "dependencies": {
3784 "convert-to-spaces": "^1.0.1"
3785 },
3786 "engines": {
3787 "node": ">=10"
3788 }
3789 },
3790 "node_modules/tap/node_modules/color-convert": {
3791 "version": "1.9.3",
3792 "dev": true,
3793 "inBundle": true,
3794 "license": "MIT",
3795 "dependencies": {
3796 "color-name": "1.1.3"
3797 }
3798 },
3799 "node_modules/tap/node_modules/color-name": {
3800 "version": "1.1.3",
3801 "dev": true,
3802 "inBundle": true,
3803 "license": "MIT"
3804 },
3805 "node_modules/tap/node_modules/commondir": {
3806 "version": "1.0.1",
3807 "dev": true,
3808 "inBundle": true,
3809 "license": "MIT"
3810 },
3811 "node_modules/tap/node_modules/concat-map": {
3812 "version": "0.0.1",
3813 "dev": true,
3814 "inBundle": true,
3815 "license": "MIT"
3816 },
3817 "node_modules/tap/node_modules/convert-source-map": {
3818 "version": "1.8.0",
3819 "dev": true,
3820 "inBundle": true,
3821 "license": "MIT",
3822 "dependencies": {
3823 "safe-buffer": "~5.1.1"
3824 }
3825 },
3826 "node_modules/tap/node_modules/convert-to-spaces": {
3827 "version": "1.0.2",
3828 "dev": true,
3829 "inBundle": true,
3830 "license": "MIT",
3831 "engines": {
3832 "node": ">= 4"
3833 }
3834 },
3835 "node_modules/tap/node_modules/csstype": {
3836 "version": "3.0.11",
3837 "dev": true,
3838 "inBundle": true,
3839 "license": "MIT"
3840 },
3841 "node_modules/tap/node_modules/debug": {
3842 "version": "4.3.4",
3843 "dev": true,
3844 "inBundle": true,
3845 "license": "MIT",
3846 "dependencies": {
3847 "ms": "2.1.2"
3848 },
3849 "engines": {
3850 "node": ">=6.0"
3851 },
3852 "peerDependenciesMeta": {
3853 "supports-color": {
3854 "optional": true
3855 }
3856 }
3857 },
3858 "node_modules/tap/node_modules/electron-to-chromium": {
3859 "version": "1.4.89",
3860 "dev": true,
3861 "inBundle": true,
3862 "license": "ISC"
3863 },
3864 "node_modules/tap/node_modules/emoji-regex": {
3865 "version": "8.0.0",
3866 "dev": true,
3867 "inBundle": true,
3868 "license": "MIT"
3869 },
3870 "node_modules/tap/node_modules/escalade": {
3871 "version": "3.1.1",
3872 "dev": true,
3873 "inBundle": true,
3874 "license": "MIT",
3875 "engines": {
3876 "node": ">=6"
3877 }
3878 },
3879 "node_modules/tap/node_modules/escape-string-regexp": {
3880 "version": "1.0.5",
3881 "dev": true,
3882 "inBundle": true,
3883 "license": "MIT",
3884 "engines": {
3885 "node": ">=0.8.0"
3886 }
3887 },
3888 "node_modules/tap/node_modules/esprima": {
3889 "version": "4.0.1",
3890 "dev": true,
3891 "inBundle": true,
3892 "license": "BSD-2-Clause",
3893 "bin": {
3894 "esparse": "bin/esparse.js",
3895 "esvalidate": "bin/esvalidate.js"
3896 },
3897 "engines": {
3898 "node": ">=4"
3899 }
3900 },
3901 "node_modules/tap/node_modules/events-to-array": {
3902 "version": "1.1.2",
3903 "dev": true,
3904 "inBundle": true,
3905 "license": "ISC"
3906 },
3907 "node_modules/tap/node_modules/find-cache-dir": {
3908 "version": "3.3.2",
3909 "dev": true,
3910 "inBundle": true,
3911 "license": "MIT",
3912 "dependencies": {
3913 "commondir": "^1.0.1",
3914 "make-dir": "^3.0.2",
3915 "pkg-dir": "^4.1.0"
3916 },
3917 "engines": {
3918 "node": ">=8"
3919 },
3920 "funding": {
3921 "url": "https://github.com/avajs/find-cache-dir?sponsor=1"
3922 }
3923 },
3924 "node_modules/tap/node_modules/find-up": {
3925 "version": "4.1.0",
3926 "dev": true,
3927 "inBundle": true,
3928 "license": "MIT",
3929 "dependencies": {
3930 "locate-path": "^5.0.0",
3931 "path-exists": "^4.0.0"
3932 },
3933 "engines": {
3934 "node": ">=8"
3935 }
3936 },
3937 "node_modules/tap/node_modules/fs.realpath": {
3938 "version": "1.0.0",
3939 "dev": true,
3940 "inBundle": true,
3941 "license": "ISC"
3942 },
3943 "node_modules/tap/node_modules/gensync": {
3944 "version": "1.0.0-beta.2",
3945 "dev": true,
3946 "inBundle": true,
3947 "license": "MIT",
3948 "engines": {
3949 "node": ">=6.9.0"
3950 }
3951 },
3952 "node_modules/tap/node_modules/glob": {
3953 "version": "7.2.0",
3954 "dev": true,
3955 "inBundle": true,
3956 "license": "ISC",
3957 "dependencies": {
3958 "fs.realpath": "^1.0.0",
3959 "inflight": "^1.0.4",
3960 "inherits": "2",
3961 "minimatch": "^3.0.4",
3962 "once": "^1.3.0",
3963 "path-is-absolute": "^1.0.0"
3964 },
3965 "engines": {
3966 "node": "*"
3967 },
3968 "funding": {
3969 "url": "https://github.com/sponsors/isaacs"
3970 }
3971 },
3972 "node_modules/tap/node_modules/globals": {
3973 "version": "11.12.0",
3974 "dev": true,
3975 "inBundle": true,
3976 "license": "MIT",
3977 "engines": {
3978 "node": ">=4"
3979 }
3980 },
3981 "node_modules/tap/node_modules/has-flag": {
3982 "version": "3.0.0",
3983 "dev": true,
3984 "inBundle": true,
3985 "license": "MIT",
3986 "engines": {
3987 "node": ">=4"
3988 }
3989 },
3990 "node_modules/tap/node_modules/indent-string": {
3991 "version": "4.0.0",
3992 "dev": true,
3993 "inBundle": true,
3994 "license": "MIT",
3995 "engines": {
3996 "node": ">=8"
3997 }
3998 },
3999 "node_modules/tap/node_modules/inflight": {
4000 "version": "1.0.6",
4001 "dev": true,
4002 "inBundle": true,
4003 "license": "ISC",
4004 "dependencies": {
4005 "once": "^1.3.0",
4006 "wrappy": "1"
4007 }
4008 },
4009 "node_modules/tap/node_modules/inherits": {
4010 "version": "2.0.4",
4011 "dev": true,
4012 "inBundle": true,
4013 "license": "ISC"
4014 },
4015 "node_modules/tap/node_modules/ink": {
4016 "version": "3.2.0",
4017 "dev": true,
4018 "inBundle": true,
4019 "license": "MIT",
4020 "dependencies": {
4021 "ansi-escapes": "^4.2.1",
4022 "auto-bind": "4.0.0",
4023 "chalk": "^4.1.0",
4024 "cli-boxes": "^2.2.0",
4025 "cli-cursor": "^3.1.0",
4026 "cli-truncate": "^2.1.0",
4027 "code-excerpt": "^3.0.0",
4028 "indent-string": "^4.0.0",
4029 "is-ci": "^2.0.0",
4030 "lodash": "^4.17.20",
4031 "patch-console": "^1.0.0",
4032 "react-devtools-core": "^4.19.1",
4033 "react-reconciler": "^0.26.2",
4034 "scheduler": "^0.20.2",
4035 "signal-exit": "^3.0.2",
4036 "slice-ansi": "^3.0.0",
4037 "stack-utils": "^2.0.2",
4038 "string-width": "^4.2.2",
4039 "type-fest": "^0.12.0",
4040 "widest-line": "^3.1.0",
4041 "wrap-ansi": "^6.2.0",
4042 "ws": "^7.5.5",
4043 "yoga-layout-prebuilt": "^1.9.6"
4044 },
4045 "engines": {
4046 "node": ">=10"
4047 },
4048 "peerDependencies": {
4049 "@types/react": ">=16.8.0",
4050 "react": ">=16.8.0"
4051 },
4052 "peerDependenciesMeta": {
4053 "@types/react": {
4054 "optional": true
4055 }
4056 }
4057 },
4058 "node_modules/tap/node_modules/ink/node_modules/ansi-styles": {
4059 "version": "4.3.0",
4060 "dev": true,
4061 "inBundle": true,
4062 "license": "MIT",
4063 "dependencies": {
4064 "color-convert": "^2.0.1"
4065 },
4066 "engines": {
4067 "node": ">=8"
4068 },
4069 "funding": {
4070 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4071 }
4072 },
4073 "node_modules/tap/node_modules/ink/node_modules/chalk": {
4074 "version": "4.1.2",
4075 "dev": true,
4076 "inBundle": true,
4077 "license": "MIT",
4078 "dependencies": {
4079 "ansi-styles": "^4.1.0",
4080 "supports-color": "^7.1.0"
4081 },
4082 "engines": {
4083 "node": ">=10"
4084 },
4085 "funding": {
4086 "url": "https://github.com/chalk/chalk?sponsor=1"
4087 }
4088 },
4089 "node_modules/tap/node_modules/ink/node_modules/color-convert": {
4090 "version": "2.0.1",
4091 "dev": true,
4092 "inBundle": true,
4093 "license": "MIT",
4094 "dependencies": {
4095 "color-name": "~1.1.4"
4096 },
4097 "engines": {
4098 "node": ">=7.0.0"
4099 }
4100 },
4101 "node_modules/tap/node_modules/ink/node_modules/color-name": {
4102 "version": "1.1.4",
4103 "dev": true,
4104 "inBundle": true,
4105 "license": "MIT"
4106 },
4107 "node_modules/tap/node_modules/ink/node_modules/has-flag": {
4108 "version": "4.0.0",
4109 "dev": true,
4110 "inBundle": true,
4111 "license": "MIT",
4112 "engines": {
4113 "node": ">=8"
4114 }
4115 },
4116 "node_modules/tap/node_modules/ink/node_modules/supports-color": {
4117 "version": "7.2.0",
4118 "dev": true,
4119 "inBundle": true,
4120 "license": "MIT",
4121 "dependencies": {
4122 "has-flag": "^4.0.0"
4123 },
4124 "engines": {
4125 "node": ">=8"
4126 }
4127 },
4128 "node_modules/tap/node_modules/is-ci": {
4129 "version": "2.0.0",
4130 "dev": true,
4131 "inBundle": true,
4132 "license": "MIT",
4133 "dependencies": {
4134 "ci-info": "^2.0.0"
4135 },
4136 "bin": {
4137 "is-ci": "bin.js"
4138 }
4139 },
4140 "node_modules/tap/node_modules/is-fullwidth-code-point": {
4141 "version": "3.0.0",
4142 "dev": true,
4143 "inBundle": true,
4144 "license": "MIT",
4145 "engines": {
4146 "node": ">=8"
4147 }
4148 },
4149 "node_modules/tap/node_modules/js-tokens": {
4150 "version": "4.0.0",
4151 "dev": true,
4152 "inBundle": true,
4153 "license": "MIT"
4154 },
4155 "node_modules/tap/node_modules/jsesc": {
4156 "version": "2.5.2",
4157 "dev": true,
4158 "inBundle": true,
4159 "license": "MIT",
4160 "bin": {
4161 "jsesc": "bin/jsesc"
4162 },
4163 "engines": {
4164 "node": ">=4"
4165 }
4166 },
4167 "node_modules/tap/node_modules/json5": {
4168 "version": "2.2.1",
4169 "dev": true,
4170 "inBundle": true,
4171 "license": "MIT",
4172 "bin": {
4173 "json5": "lib/cli.js"
4174 },
4175 "engines": {
4176 "node": ">=6"
4177 }
4178 },
4179 "node_modules/tap/node_modules/locate-path": {
4180 "version": "5.0.0",
4181 "dev": true,
4182 "inBundle": true,
4183 "license": "MIT",
4184 "dependencies": {
4185 "p-locate": "^4.1.0"
4186 },
4187 "engines": {
4188 "node": ">=8"
4189 }
4190 },
4191 "node_modules/tap/node_modules/lodash": {
4192 "version": "4.17.21",
4193 "dev": true,
4194 "inBundle": true,
4195 "license": "MIT"
4196 },
4197 "node_modules/tap/node_modules/loose-envify": {
4198 "version": "1.4.0",
4199 "dev": true,
4200 "inBundle": true,
4201 "license": "MIT",
4202 "dependencies": {
4203 "js-tokens": "^3.0.0 || ^4.0.0"
4204 },
4205 "bin": {
4206 "loose-envify": "cli.js"
4207 }
4208 },
4209 "node_modules/tap/node_modules/make-dir": {
4210 "version": "3.1.0",
4211 "dev": true,
4212 "inBundle": true,
4213 "license": "MIT",
4214 "dependencies": {
4215 "semver": "^6.0.0"
4216 },
4217 "engines": {
4218 "node": ">=8"
4219 },
4220 "funding": {
4221 "url": "https://github.com/sponsors/sindresorhus"
4222 }
4223 },
4224 "node_modules/tap/node_modules/mimic-fn": {
4225 "version": "2.1.0",
4226 "dev": true,
4227 "inBundle": true,
4228 "license": "MIT",
4229 "engines": {
4230 "node": ">=6"
4231 }
4232 },
4233 "node_modules/tap/node_modules/minimatch": {
4234 "version": "3.1.2",
4235 "dev": true,
4236 "inBundle": true,
4237 "license": "ISC",
4238 "dependencies": {
4239 "brace-expansion": "^1.1.7"
4240 },
4241 "engines": {
4242 "node": "*"
4243 }
4244 },
4245 "node_modules/tap/node_modules/minipass": {
4246 "version": "3.1.6",
4247 "dev": true,
4248 "inBundle": true,
4249 "license": "ISC",
4250 "dependencies": {
4251 "yallist": "^4.0.0"
4252 },
4253 "engines": {
4254 "node": ">=8"
4255 }
4256 },
4257 "node_modules/tap/node_modules/mkdirp": {
4258 "version": "1.0.4",
4259 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
4260 "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
4261 "dev": true,
4262 "bin": {
4263 "mkdirp": "bin/cmd.js"
4264 },
4265 "engines": {
4266 "node": ">=10"
4267 }
4268 },
4269 "node_modules/tap/node_modules/ms": {
4270 "version": "2.1.2",
4271 "dev": true,
4272 "inBundle": true,
4273 "license": "MIT"
4274 },
4275 "node_modules/tap/node_modules/node-releases": {
4276 "version": "2.0.2",
4277 "dev": true,
4278 "inBundle": true,
4279 "license": "MIT"
4280 },
4281 "node_modules/tap/node_modules/object-assign": {
4282 "version": "4.1.1",
4283 "dev": true,
4284 "inBundle": true,
4285 "license": "MIT",
4286 "engines": {
4287 "node": ">=0.10.0"
4288 }
4289 },
4290 "node_modules/tap/node_modules/once": {
4291 "version": "1.4.0",
4292 "dev": true,
4293 "inBundle": true,
4294 "license": "ISC",
4295 "dependencies": {
4296 "wrappy": "1"
4297 }
4298 },
4299 "node_modules/tap/node_modules/onetime": {
4300 "version": "5.1.2",
4301 "dev": true,
4302 "inBundle": true,
4303 "license": "MIT",
4304 "dependencies": {
4305 "mimic-fn": "^2.1.0"
4306 },
4307 "engines": {
4308 "node": ">=6"
4309 },
4310 "funding": {
4311 "url": "https://github.com/sponsors/sindresorhus"
4312 }
4313 },
4314 "node_modules/tap/node_modules/p-limit": {
4315 "version": "2.3.0",
4316 "dev": true,
4317 "inBundle": true,
4318 "license": "MIT",
4319 "dependencies": {
4320 "p-try": "^2.0.0"
4321 },
4322 "engines": {
4323 "node": ">=6"
4324 },
4325 "funding": {
4326 "url": "https://github.com/sponsors/sindresorhus"
4327 }
4328 },
4329 "node_modules/tap/node_modules/p-locate": {
4330 "version": "4.1.0",
4331 "dev": true,
4332 "inBundle": true,
4333 "license": "MIT",
4334 "dependencies": {
4335 "p-limit": "^2.2.0"
4336 },
4337 "engines": {
4338 "node": ">=8"
4339 }
4340 },
4341 "node_modules/tap/node_modules/p-try": {
4342 "version": "2.2.0",
4343 "dev": true,
4344 "inBundle": true,
4345 "license": "MIT",
4346 "engines": {
4347 "node": ">=6"
4348 }
4349 },
4350 "node_modules/tap/node_modules/patch-console": {
4351 "version": "1.0.0",
4352 "dev": true,
4353 "inBundle": true,
4354 "license": "MIT",
4355 "engines": {
4356 "node": ">=10"
4357 }
4358 },
4359 "node_modules/tap/node_modules/path-exists": {
4360 "version": "4.0.0",
4361 "dev": true,
4362 "inBundle": true,
4363 "license": "MIT",
4364 "engines": {
4365 "node": ">=8"
4366 }
4367 },
4368 "node_modules/tap/node_modules/path-is-absolute": {
4369 "version": "1.0.1",
4370 "dev": true,
4371 "inBundle": true,
4372 "license": "MIT",
4373 "engines": {
4374 "node": ">=0.10.0"
4375 }
4376 },
4377 "node_modules/tap/node_modules/picocolors": {
4378 "version": "1.0.0",
4379 "dev": true,
4380 "inBundle": true,
4381 "license": "ISC"
4382 },
4383 "node_modules/tap/node_modules/pkg-dir": {
4384 "version": "4.2.0",
4385 "dev": true,
4386 "inBundle": true,
4387 "license": "MIT",
4388 "dependencies": {
4389 "find-up": "^4.0.0"
4390 },
4391 "engines": {
4392 "node": ">=8"
4393 }
4394 },
4395 "node_modules/tap/node_modules/punycode": {
4396 "version": "2.1.1",
4397 "dev": true,
4398 "inBundle": true,
4399 "license": "MIT",
4400 "engines": {
4401 "node": ">=6"
4402 }
4403 },
4404 "node_modules/tap/node_modules/react": {
4405 "version": "17.0.2",
4406 "dev": true,
4407 "inBundle": true,
4408 "license": "MIT",
4409 "dependencies": {
4410 "loose-envify": "^1.1.0",
4411 "object-assign": "^4.1.1"
4412 },
4413 "engines": {
4414 "node": ">=0.10.0"
4415 }
4416 },
4417 "node_modules/tap/node_modules/react-devtools-core": {
4418 "version": "4.24.1",
4419 "dev": true,
4420 "inBundle": true,
4421 "license": "MIT",
4422 "dependencies": {
4423 "shell-quote": "^1.6.1",
4424 "ws": "^7"
4425 }
4426 },
4427 "node_modules/tap/node_modules/react-reconciler": {
4428 "version": "0.26.2",
4429 "dev": true,
4430 "inBundle": true,
4431 "license": "MIT",
4432 "dependencies": {
4433 "loose-envify": "^1.1.0",
4434 "object-assign": "^4.1.1",
4435 "scheduler": "^0.20.2"
4436 },
4437 "engines": {
4438 "node": ">=0.10.0"
4439 },
4440 "peerDependencies": {
4441 "react": "^17.0.2"
4442 }
4443 },
4444 "node_modules/tap/node_modules/redeyed": {
4445 "version": "2.1.1",
4446 "dev": true,
4447 "inBundle": true,
4448 "license": "MIT",
4449 "dependencies": {
4450 "esprima": "~4.0.0"
4451 }
4452 },
4453 "node_modules/tap/node_modules/resolve-from": {
4454 "version": "3.0.0",
4455 "dev": true,
4456 "inBundle": true,
4457 "license": "MIT",
4458 "engines": {
4459 "node": ">=4"
4460 }
4461 },
4462 "node_modules/tap/node_modules/restore-cursor": {
4463 "version": "3.1.0",
4464 "dev": true,
4465 "inBundle": true,
4466 "license": "MIT",
4467 "dependencies": {
4468 "onetime": "^5.1.0",
4469 "signal-exit": "^3.0.2"
4470 },
4471 "engines": {
4472 "node": ">=8"
4473 }
4474 },
4475 "node_modules/tap/node_modules/rimraf": {
4476 "version": "3.0.2",
4477 "dev": true,
4478 "inBundle": true,
4479 "license": "ISC",
4480 "dependencies": {
4481 "glob": "^7.1.3"
4482 },
4483 "bin": {
4484 "rimraf": "bin.js"
4485 },
4486 "funding": {
4487 "url": "https://github.com/sponsors/isaacs"
4488 }
4489 },
4490 "node_modules/tap/node_modules/safe-buffer": {
4491 "version": "5.1.2",
4492 "dev": true,
4493 "inBundle": true,
4494 "license": "MIT"
4495 },
4496 "node_modules/tap/node_modules/scheduler": {
4497 "version": "0.20.2",
4498 "dev": true,
4499 "inBundle": true,
4500 "license": "MIT",
4501 "dependencies": {
4502 "loose-envify": "^1.1.0",
4503 "object-assign": "^4.1.1"
4504 }
4505 },
4506 "node_modules/tap/node_modules/semver": {
4507 "version": "6.3.0",
4508 "dev": true,
4509 "inBundle": true,
4510 "license": "ISC",
4511 "bin": {
4512 "semver": "bin/semver.js"
4513 }
4514 },
4515 "node_modules/tap/node_modules/shell-quote": {
4516 "version": "1.7.3",
4517 "dev": true,
4518 "inBundle": true,
4519 "license": "MIT"
4520 },
4521 "node_modules/tap/node_modules/signal-exit": {
4522 "version": "3.0.7",
4523 "dev": true,
4524 "inBundle": true,
4525 "license": "ISC"
4526 },
4527 "node_modules/tap/node_modules/slice-ansi": {
4528 "version": "3.0.0",
4529 "dev": true,
4530 "inBundle": true,
4531 "license": "MIT",
4532 "dependencies": {
4533 "ansi-styles": "^4.0.0",
4534 "astral-regex": "^2.0.0",
4535 "is-fullwidth-code-point": "^3.0.0"
4536 },
4537 "engines": {
4538 "node": ">=8"
4539 }
4540 },
4541 "node_modules/tap/node_modules/slice-ansi/node_modules/ansi-styles": {
4542 "version": "4.3.0",
4543 "dev": true,
4544 "inBundle": true,
4545 "license": "MIT",
4546 "dependencies": {
4547 "color-convert": "^2.0.1"
4548 },
4549 "engines": {
4550 "node": ">=8"
4551 },
4552 "funding": {
4553 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4554 }
4555 },
4556 "node_modules/tap/node_modules/slice-ansi/node_modules/color-convert": {
4557 "version": "2.0.1",
4558 "dev": true,
4559 "inBundle": true,
4560 "license": "MIT",
4561 "dependencies": {
4562 "color-name": "~1.1.4"
4563 },
4564 "engines": {
4565 "node": ">=7.0.0"
4566 }
4567 },
4568 "node_modules/tap/node_modules/slice-ansi/node_modules/color-name": {
4569 "version": "1.1.4",
4570 "dev": true,
4571 "inBundle": true,
4572 "license": "MIT"
4573 },
4574 "node_modules/tap/node_modules/source-map": {
4575 "version": "0.5.7",
4576 "dev": true,
4577 "inBundle": true,
4578 "license": "BSD-3-Clause",
4579 "engines": {
4580 "node": ">=0.10.0"
4581 }
4582 },
4583 "node_modules/tap/node_modules/stack-utils": {
4584 "version": "2.0.5",
4585 "dev": true,
4586 "inBundle": true,
4587 "license": "MIT",
4588 "dependencies": {
4589 "escape-string-regexp": "^2.0.0"
4590 },
4591 "engines": {
4592 "node": ">=10"
4593 }
4594 },
4595 "node_modules/tap/node_modules/stack-utils/node_modules/escape-string-regexp": {
4596 "version": "2.0.0",
4597 "dev": true,
4598 "inBundle": true,
4599 "license": "MIT",
4600 "engines": {
4601 "node": ">=8"
4602 }
4603 },
4604 "node_modules/tap/node_modules/string-width": {
4605 "version": "4.2.3",
4606 "dev": true,
4607 "inBundle": true,
4608 "license": "MIT",
4609 "dependencies": {
4610 "emoji-regex": "^8.0.0",
4611 "is-fullwidth-code-point": "^3.0.0",
4612 "strip-ansi": "^6.0.1"
4613 },
4614 "engines": {
4615 "node": ">=8"
4616 }
4617 },
4618 "node_modules/tap/node_modules/strip-ansi": {
4619 "version": "6.0.1",
4620 "dev": true,
4621 "inBundle": true,
4622 "license": "MIT",
4623 "dependencies": {
4624 "ansi-regex": "^5.0.1"
4625 },
4626 "engines": {
4627 "node": ">=8"
4628 }
4629 },
4630 "node_modules/tap/node_modules/supports-color": {
4631 "version": "5.5.0",
4632 "dev": true,
4633 "inBundle": true,
4634 "license": "MIT",
4635 "dependencies": {
4636 "has-flag": "^3.0.0"
4637 },
4638 "engines": {
4639 "node": ">=4"
4640 }
4641 },
4642 "node_modules/tap/node_modules/tap-parser": {
4643 "version": "11.0.1",
4644 "dev": true,
4645 "inBundle": true,
4646 "license": "MIT",
4647 "dependencies": {
4648 "events-to-array": "^1.0.1",
4649 "minipass": "^3.1.6",
4650 "tap-yaml": "^1.0.0"
4651 },
4652 "bin": {
4653 "tap-parser": "bin/cmd.js"
4654 },
4655 "engines": {
4656 "node": ">= 8"
4657 }
4658 },
4659 "node_modules/tap/node_modules/tap-yaml": {
4660 "version": "1.0.0",
4661 "dev": true,
4662 "inBundle": true,
4663 "license": "ISC",
4664 "dependencies": {
4665 "yaml": "^1.5.0"
4666 }
4667 },
4668 "node_modules/tap/node_modules/to-fast-properties": {
4669 "version": "2.0.0",
4670 "dev": true,
4671 "inBundle": true,
4672 "license": "MIT",
4673 "engines": {
4674 "node": ">=4"
4675 }
4676 },
4677 "node_modules/tap/node_modules/treport": {
4678 "version": "3.0.3",
4679 "dev": true,
4680 "inBundle": true,
4681 "license": "ISC",
4682 "dependencies": {
4683 "@isaacs/import-jsx": "^4.0.1",
4684 "cardinal": "^2.1.1",
4685 "chalk": "^3.0.0",
4686 "ink": "^3.2.0",
4687 "ms": "^2.1.2",
4688 "tap-parser": "^11.0.0",
4689 "unicode-length": "^2.0.2"
4690 },
4691 "peerDependencies": {
4692 "react": "^17.0.2"
4693 }
4694 },
4695 "node_modules/tap/node_modules/treport/node_modules/ansi-styles": {
4696 "version": "4.3.0",
4697 "dev": true,
4698 "inBundle": true,
4699 "license": "MIT",
4700 "dependencies": {
4701 "color-convert": "^2.0.1"
4702 },
4703 "engines": {
4704 "node": ">=8"
4705 },
4706 "funding": {
4707 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4708 }
4709 },
4710 "node_modules/tap/node_modules/treport/node_modules/chalk": {
4711 "version": "3.0.0",
4712 "dev": true,
4713 "inBundle": true,
4714 "license": "MIT",
4715 "dependencies": {
4716 "ansi-styles": "^4.1.0",
4717 "supports-color": "^7.1.0"
4718 },
4719 "engines": {
4720 "node": ">=8"
4721 }
4722 },
4723 "node_modules/tap/node_modules/treport/node_modules/color-convert": {
4724 "version": "2.0.1",
4725 "dev": true,
4726 "inBundle": true,
4727 "license": "MIT",
4728 "dependencies": {
4729 "color-name": "~1.1.4"
4730 },
4731 "engines": {
4732 "node": ">=7.0.0"
4733 }
4734 },
4735 "node_modules/tap/node_modules/treport/node_modules/color-name": {
4736 "version": "1.1.4",
4737 "dev": true,
4738 "inBundle": true,
4739 "license": "MIT"
4740 },
4741 "node_modules/tap/node_modules/treport/node_modules/has-flag": {
4742 "version": "4.0.0",
4743 "dev": true,
4744 "inBundle": true,
4745 "license": "MIT",
4746 "engines": {
4747 "node": ">=8"
4748 }
4749 },
4750 "node_modules/tap/node_modules/treport/node_modules/supports-color": {
4751 "version": "7.2.0",
4752 "dev": true,
4753 "inBundle": true,
4754 "license": "MIT",
4755 "dependencies": {
4756 "has-flag": "^4.0.0"
4757 },
4758 "engines": {
4759 "node": ">=8"
4760 }
4761 },
4762 "node_modules/tap/node_modules/type-fest": {
4763 "version": "0.12.0",
4764 "dev": true,
4765 "inBundle": true,
4766 "license": "(MIT OR CC0-1.0)",
4767 "engines": {
4768 "node": ">=10"
4769 },
4770 "funding": {
4771 "url": "https://github.com/sponsors/sindresorhus"
4772 }
4773 },
4774 "node_modules/tap/node_modules/unicode-length": {
4775 "version": "2.0.2",
4776 "dev": true,
4777 "inBundle": true,
4778 "license": "MIT",
4779 "dependencies": {
4780 "punycode": "^2.0.0",
4781 "strip-ansi": "^3.0.1"
4782 }
4783 },
4784 "node_modules/tap/node_modules/unicode-length/node_modules/ansi-regex": {
4785 "version": "2.1.1",
4786 "dev": true,
4787 "inBundle": true,
4788 "license": "MIT",
4789 "engines": {
4790 "node": ">=0.10.0"
4791 }
4792 },
4793 "node_modules/tap/node_modules/unicode-length/node_modules/strip-ansi": {
4794 "version": "3.0.1",
4795 "dev": true,
4796 "inBundle": true,
4797 "license": "MIT",
4798 "dependencies": {
4799 "ansi-regex": "^2.0.0"
4800 },
4801 "engines": {
4802 "node": ">=0.10.0"
4803 }
4804 },
4805 "node_modules/tap/node_modules/which": {
4806 "version": "2.0.2",
4807 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
4808 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
4809 "dev": true,
4810 "dependencies": {
4811 "isexe": "^2.0.0"
4812 },
4813 "bin": {
4814 "node-which": "bin/node-which"
4815 },
4816 "engines": {
4817 "node": ">= 8"
4818 }
4819 },
4820 "node_modules/tap/node_modules/widest-line": {
4821 "version": "3.1.0",
4822 "dev": true,
4823 "inBundle": true,
4824 "license": "MIT",
4825 "dependencies": {
4826 "string-width": "^4.0.0"
4827 },
4828 "engines": {
4829 "node": ">=8"
4830 }
4831 },
4832 "node_modules/tap/node_modules/wrap-ansi": {
4833 "version": "6.2.0",
4834 "dev": true,
4835 "inBundle": true,
4836 "license": "MIT",
4837 "dependencies": {
4838 "ansi-styles": "^4.0.0",
4839 "string-width": "^4.1.0",
4840 "strip-ansi": "^6.0.0"
4841 },
4842 "engines": {
4843 "node": ">=8"
4844 }
4845 },
4846 "node_modules/tap/node_modules/wrap-ansi/node_modules/ansi-styles": {
4847 "version": "4.3.0",
4848 "dev": true,
4849 "inBundle": true,
4850 "license": "MIT",
4851 "dependencies": {
4852 "color-convert": "^2.0.1"
4853 },
4854 "engines": {
4855 "node": ">=8"
4856 },
4857 "funding": {
4858 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
4859 }
4860 },
4861 "node_modules/tap/node_modules/wrap-ansi/node_modules/color-convert": {
4862 "version": "2.0.1",
4863 "dev": true,
4864 "inBundle": true,
4865 "license": "MIT",
4866 "dependencies": {
4867 "color-name": "~1.1.4"
4868 },
4869 "engines": {
4870 "node": ">=7.0.0"
4871 }
4872 },
4873 "node_modules/tap/node_modules/wrap-ansi/node_modules/color-name": {
4874 "version": "1.1.4",
4875 "dev": true,
4876 "inBundle": true,
4877 "license": "MIT"
4878 },
4879 "node_modules/tap/node_modules/wrappy": {
4880 "version": "1.0.2",
4881 "dev": true,
4882 "inBundle": true,
4883 "license": "ISC"
4884 },
4885 "node_modules/tap/node_modules/ws": {
4886 "version": "7.5.7",
4887 "dev": true,
4888 "inBundle": true,
4889 "license": "MIT",
4890 "engines": {
4891 "node": ">=8.3.0"
4892 },
4893 "peerDependencies": {
4894 "bufferutil": "^4.0.1",
4895 "utf-8-validate": "^5.0.2"
4896 },
4897 "peerDependenciesMeta": {
4898 "bufferutil": {
4899 "optional": true
4900 },
4901 "utf-8-validate": {
4902 "optional": true
4903 }
4904 }
4905 },
4906 "node_modules/tap/node_modules/yallist": {
4907 "version": "4.0.0",
4908 "dev": true,
4909 "inBundle": true,
4910 "license": "ISC"
4911 },
4912 "node_modules/tap/node_modules/yaml": {
4913 "version": "1.10.2",
4914 "dev": true,
4915 "inBundle": true,
4916 "license": "ISC",
4917 "engines": {
4918 "node": ">= 6"
4919 }
4920 },
4921 "node_modules/tap/node_modules/yoga-layout-prebuilt": {
4922 "version": "1.10.0",
4923 "dev": true,
4924 "inBundle": true,
4925 "license": "MIT",
4926 "dependencies": {
4927 "@types/yoga-layout": "1.9.2"
4928 },
4929 "engines": {
4930 "node": ">=8"
4931 }
4932 },
4933 "node_modules/tcompare": {
4934 "version": "5.0.7",
4935 "resolved": "https://registry.npmjs.org/tcompare/-/tcompare-5.0.7.tgz",
4936 "integrity": "sha512-d9iddt6YYGgyxJw5bjsN7UJUO1kGOtjSlNy/4PoGYAjQS5pAT/hzIoLf1bZCw+uUxRmZJh7Yy1aA7xKVRT9B4w==",
4937 "dev": true,
4938 "dependencies": {
4939 "diff": "^4.0.2"
4940 },
4941 "engines": {
4942 "node": ">=10"
4943 }
4944 },
4945 "node_modules/test-exclude": {
4946 "version": "6.0.0",
4947 "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
4948 "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
4949 "dev": true,
4950 "dependencies": {
4951 "@istanbuljs/schema": "^0.1.2",
4952 "glob": "^7.1.4",
4953 "minimatch": "^3.0.4"
4954 },
4955 "engines": {
4956 "node": ">=8"
4957 }
4958 },
1268 "node_modules/text-table": {
4959 "node_modules/text-table": {
1269 "version": "0.2.0",
4960 "version": "0.2.0",
1270 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
4961 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1271 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
4962 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1272 "dev": true
4963 "dev": true
1273 },
4964 },
1274 "node_modules/through": {
4965 "node_modules/through": {
1275 "version": "2.3.8",
4966 "version": "2.3.8",
1276 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
4967 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
1277 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
4968 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
1278 "dev": true
4969 "dev": true
1279 },
4970 },
1280 "node_modules/tmp": {
4971 "node_modules/tmp": {
1281 "version": "0.0.33",
4972 "version": "0.0.33",
1282 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
4973 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
1283 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
4974 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
1284 "dev": true,
4975 "dev": true,
1285 "dependencies": {
4976 "dependencies": {
1286 "os-tmpdir": "~1.0.2"
4977 "os-tmpdir": "~1.0.2"
1287 },
4978 },
1288 "engines": {
4979 "engines": {
1289 "node": ">=0.6.0"
4980 "node": ">=0.6.0"
1290 }
4981 }
1291 },
4982 },
4983 "node_modules/to-fast-properties": {
4984 "version": "2.0.0",
4985 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
4986 "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
4987 "dev": true,
4988 "engines": {
4989 "node": ">=4"
4990 }
4991 },
4992 "node_modules/to-regex-range": {
4993 "version": "5.0.1",
4994 "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
4995 "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
4996 "dev": true,
4997 "dependencies": {
4998 "is-number": "^7.0.0"
4999 },
5000 "engines": {
5001 "node": ">=8.0"
5002 }
5003 },
5004 "node_modules/trivial-deferred": {
5005 "version": "1.0.1",
5006 "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz",
5007 "integrity": "sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw==",
5008 "dev": true
5009 },
1292 "node_modules/tslib": {
5010 "node_modules/tslib": {
1293 "version": "1.10.0",
5011 "version": "1.10.0",
1294 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
5012 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
1295 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
5013 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
1296 "dev": true
5014 "dev": true
1297 },
5015 },
1298 "node_modules/tslint": {
5016 "node_modules/tslint": {
1299 "version": "6.1.3",
5017 "version": "6.1.3",
1300 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz",
5018 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz",
1301 "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==",
5019 "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==",
1302 "dev": true,
5020 "dev": true,
1303 "dependencies": {
5021 "dependencies": {
1304 "@babel/code-frame": "^7.0.0",
5022 "@babel/code-frame": "^7.0.0",
1305 "builtin-modules": "^1.1.1",
5023 "builtin-modules": "^1.1.1",
1306 "chalk": "^2.3.0",
5024 "chalk": "^2.3.0",
1307 "commander": "^2.12.1",
5025 "commander": "^2.12.1",
1308 "diff": "^4.0.1",
5026 "diff": "^4.0.1",
1309 "glob": "^7.1.1",
5027 "glob": "^7.1.1",
1310 "js-yaml": "^3.13.1",
5028 "js-yaml": "^3.13.1",
1311 "minimatch": "^3.0.4",
5029 "minimatch": "^3.0.4",
1312 "mkdirp": "^0.5.3",
5030 "mkdirp": "^0.5.3",
1313 "resolve": "^1.3.2",
5031 "resolve": "^1.3.2",
1314 "semver": "^5.3.0",
5032 "semver": "^5.3.0",
1315 "tslib": "^1.13.0",
5033 "tslib": "^1.13.0",
1316 "tsutils": "^2.29.0"
5034 "tsutils": "^2.29.0"
1317 },
5035 },
1318 "bin": {
5036 "bin": {
1319 "tslint": "bin/tslint"
5037 "tslint": "bin/tslint"
1320 },
5038 },
1321 "engines": {
5039 "engines": {
1322 "node": ">=4.8.0"
5040 "node": ">=4.8.0"
1323 }
5041 }
1324 },
5042 },
1325 "node_modules/tslint/node_modules/semver": {
5043 "node_modules/tslint/node_modules/semver": {
1326 "version": "5.7.1",
5044 "version": "5.7.1",
1327 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
5045 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
1328 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
5046 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
1329 "dev": true,
5047 "dev": true,
1330 "bin": {
5048 "bin": {
1331 "semver": "bin/semver"
5049 "semver": "bin/semver"
1332 }
5050 }
1333 },
5051 },
1334 "node_modules/tslint/node_modules/tslib": {
5052 "node_modules/tslint/node_modules/tslib": {
1335 "version": "1.13.0",
5053 "version": "1.13.0",
1336 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
5054 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
1337 "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
5055 "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
1338 "dev": true
5056 "dev": true
1339 },
5057 },
1340 "node_modules/tsutils": {
5058 "node_modules/tsutils": {
1341 "version": "2.29.0",
5059 "version": "2.29.0",
1342 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
5060 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
1343 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
5061 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
1344 "dev": true,
5062 "dev": true,
1345 "dependencies": {
5063 "dependencies": {
1346 "tslib": "^1.8.1"
5064 "tslib": "^1.8.1"
1347 }
5065 }
1348 },
5066 },
1349 "node_modules/type-check": {
5067 "node_modules/type-check": {
1350 "version": "0.3.2",
5068 "version": "0.3.2",
1351 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
5069 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
1352 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
5070 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
1353 "dev": true,
5071 "dev": true,
1354 "dependencies": {
5072 "dependencies": {
1355 "prelude-ls": "~1.1.2"
5073 "prelude-ls": "~1.1.2"
1356 },
5074 },
1357 "engines": {
5075 "engines": {
1358 "node": ">= 0.8.0"
5076 "node": ">= 0.8.0"
1359 }
5077 }
1360 },
5078 },
1361 "node_modules/type-fest": {
5079 "node_modules/type-fest": {
1362 "version": "0.8.1",
5080 "version": "0.8.1",
1363 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
5081 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
1364 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
5082 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
1365 "dev": true,
5083 "dev": true,
1366 "engines": {
5084 "engines": {
1367 "node": ">=8"
5085 "node": ">=8"
1368 }
5086 }
1369 },
5087 },
5088 "node_modules/typedarray-to-buffer": {
5089 "version": "3.1.5",
5090 "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
5091 "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
5092 "dev": true,
5093 "dependencies": {
5094 "is-typedarray": "^1.0.0"
5095 }
5096 },
1370 "node_modules/typescript": {
5097 "node_modules/typescript": {
1371 "version": "4.7.4",
5098 "version": "4.8.2",
1372 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
5099 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
1373 "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
5100 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
1374 "dev": true,
5101 "dev": true,
1375 "bin": {
5102 "bin": {
1376 "tsc": "bin/tsc",
5103 "tsc": "bin/tsc",
1377 "tsserver": "bin/tsserver"
5104 "tsserver": "bin/tsserver"
1378 },
5105 },
1379 "engines": {
5106 "engines": {
1380 "node": ">=4.2.0"
5107 "node": ">=4.2.0"
1381 }
5108 }
1382 },
5109 },
5110 "node_modules/unicode-length": {
5111 "version": "2.1.0",
5112 "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.1.0.tgz",
5113 "integrity": "sha512-4bV582zTV9Q02RXBxSUMiuN/KHo5w4aTojuKTNT96DIKps/SIawFp7cS5Mu25VuY1AioGXrmYyzKZUzh8OqoUw==",
5114 "dev": true,
5115 "dependencies": {
5116 "punycode": "^2.0.0"
5117 }
5118 },
5119 "node_modules/update-browserslist-db": {
5120 "version": "1.0.7",
5121 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.7.tgz",
5122 "integrity": "sha512-iN/XYesmZ2RmmWAiI4Z5rq0YqSiv0brj9Ce9CfhNE4xIW2h+MFxcgkxIzZ+ShkFPUkjU3gQ+3oypadD3RAMtrg==",
5123 "dev": true,
5124 "funding": [
5125 {
5126 "type": "opencollective",
5127 "url": "https://opencollective.com/browserslist"
5128 },
5129 {
5130 "type": "tidelift",
5131 "url": "https://tidelift.com/funding/github/npm/browserslist"
5132 }
5133 ],
5134 "dependencies": {
5135 "escalade": "^3.1.1",
5136 "picocolors": "^1.0.0"
5137 },
5138 "bin": {
5139 "browserslist-lint": "cli.js"
5140 },
5141 "peerDependencies": {
5142 "browserslist": ">= 4.21.0"
5143 }
5144 },
1383 "node_modules/uri-js": {
5145 "node_modules/uri-js": {
1384 "version": "4.2.2",
5146 "version": "4.2.2",
1385 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
5147 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
1386 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
5148 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
1387 "dev": true,
5149 "dev": true,
1388 "dependencies": {
5150 "dependencies": {
1389 "punycode": "^2.1.0"
5151 "punycode": "^2.1.0"
1390 }
5152 }
1391 },
5153 },
5154 "node_modules/uuid": {
5155 "version": "8.3.2",
5156 "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
5157 "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
5158 "dev": true,
5159 "bin": {
5160 "uuid": "dist/bin/uuid"
5161 }
5162 },
1392 "node_modules/v8-compile-cache": {
5163 "node_modules/v8-compile-cache": {
1393 "version": "2.1.0",
5164 "version": "2.1.0",
1394 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
5165 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
1395 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
5166 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
1396 "dev": true
5167 "dev": true
1397 },
5168 },
1398 "node_modules/which": {
5169 "node_modules/which": {
1399 "version": "1.3.1",
5170 "version": "1.3.1",
1400 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
5171 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
1401 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
5172 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
1402 "dev": true,
5173 "dev": true,
1403 "dependencies": {
5174 "dependencies": {
1404 "isexe": "^2.0.0"
5175 "isexe": "^2.0.0"
1405 },
5176 },
1406 "bin": {
5177 "bin": {
1407 "which": "bin/which"
5178 "which": "bin/which"
1408 }
5179 }
1409 },
5180 },
5181 "node_modules/which-module": {
5182 "version": "2.0.0",
5183 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
5184 "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==",
5185 "dev": true
5186 },
1410 "node_modules/word-wrap": {
5187 "node_modules/word-wrap": {
1411 "version": "1.2.3",
5188 "version": "1.2.3",
1412 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
5189 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
1413 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
5190 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
1414 "dev": true,
5191 "dev": true,
1415 "engines": {
5192 "engines": {
1416 "node": ">=0.10.0"
5193 "node": ">=0.10.0"
1417 }
5194 }
1418 },
5195 },
5196 "node_modules/wrap-ansi": {
5197 "version": "7.0.0",
5198 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
5199 "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
5200 "dev": true,
5201 "dependencies": {
5202 "ansi-styles": "^4.0.0",
5203 "string-width": "^4.1.0",
5204 "strip-ansi": "^6.0.0"
5205 },
5206 "engines": {
5207 "node": ">=10"
5208 },
5209 "funding": {
5210 "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
5211 }
5212 },
5213 "node_modules/wrap-ansi/node_modules/ansi-styles": {
5214 "version": "4.3.0",
5215 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
5216 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
5217 "dev": true,
5218 "dependencies": {
5219 "color-convert": "^2.0.1"
5220 },
5221 "engines": {
5222 "node": ">=8"
5223 },
5224 "funding": {
5225 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
5226 }
5227 },
5228 "node_modules/wrap-ansi/node_modules/color-convert": {
5229 "version": "2.0.1",
5230 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
5231 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
5232 "dev": true,
5233 "dependencies": {
5234 "color-name": "~1.1.4"
5235 },
5236 "engines": {
5237 "node": ">=7.0.0"
5238 }
5239 },
5240 "node_modules/wrap-ansi/node_modules/color-name": {
5241 "version": "1.1.4",
5242 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
5243 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
5244 "dev": true
5245 },
5246 "node_modules/wrap-ansi/node_modules/strip-ansi": {
5247 "version": "6.0.1",
5248 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
5249 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
5250 "dev": true,
5251 "dependencies": {
5252 "ansi-regex": "^5.0.1"
5253 },
5254 "engines": {
5255 "node": ">=8"
5256 }
5257 },
1419 "node_modules/wrappy": {
5258 "node_modules/wrappy": {
1420 "version": "1.0.2",
5259 "version": "1.0.2",
1421 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
5260 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1422 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
5261 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1423 "dev": true
5262 "dev": true
1424 },
5263 },
1425 "node_modules/write": {
5264 "node_modules/write": {
1426 "version": "1.0.3",
5265 "version": "1.0.3",
1427 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
5266 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
1428 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
5267 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
1429 "dev": true,
5268 "dev": true,
1430 "dependencies": {
5269 "dependencies": {
1431 "mkdirp": "^0.5.1"
5270 "mkdirp": "^0.5.1"
1432 },
5271 },
1433 "engines": {
5272 "engines": {
1434 "node": ">=4"
5273 "node": ">=4"
1435 }
5274 }
1436 },
5275 },
5276 "node_modules/write-file-atomic": {
5277 "version": "3.0.3",
5278 "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
5279 "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
5280 "dev": true,
5281 "dependencies": {
5282 "imurmurhash": "^0.1.4",
5283 "is-typedarray": "^1.0.0",
5284 "signal-exit": "^3.0.2",
5285 "typedarray-to-buffer": "^3.1.5"
5286 }
5287 },
5288 "node_modules/y18n": {
5289 "version": "4.0.3",
5290 "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
5291 "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
5292 "dev": true
5293 },
5294 "node_modules/yallist": {
5295 "version": "4.0.0",
5296 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
5297 "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
5298 "dev": true
5299 },
1437 "node_modules/yaml": {
5300 "node_modules/yaml": {
1438 "version": "1.7.2",
5301 "version": "1.7.2",
1439 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
5302 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
1440 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
5303 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
1441 "dev": true,
5304 "dev": true,
1442 "dependencies": {
5305 "dependencies": {
1443 "@babel/runtime": "^7.6.3"
5306 "@babel/runtime": "^7.6.3"
1444 },
5307 },
1445 "engines": {
5308 "engines": {
1446 "node": ">= 6"
5309 "node": ">= 6"
1447 }
5310 }
1448 }
5311 },
1449 },
5312 "node_modules/yargs": {
1450 "dependencies": {
5313 "version": "15.4.1",
5314 "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
5315 "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
5316 "dev": true,
5317 "dependencies": {
5318 "cliui": "^6.0.0",
5319 "decamelize": "^1.2.0",
5320 "find-up": "^4.1.0",
5321 "get-caller-file": "^2.0.1",
5322 "require-directory": "^2.1.1",
5323 "require-main-filename": "^2.0.0",
5324 "set-blocking": "^2.0.0",
5325 "string-width": "^4.2.0",
5326 "which-module": "^2.0.0",
5327 "y18n": "^4.0.0",
5328 "yargs-parser": "^18.1.2"
5329 },
5330 "engines": {
5331 "node": ">=8"
5332 }
5333 },
5334 "node_modules/yargs-parser": {
5335 "version": "18.1.3",
5336 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
5337 "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
5338 "dev": true,
5339 "dependencies": {
5340 "camelcase": "^5.0.0",
5341 "decamelize": "^1.2.0"
5342 },
5343 "engines": {
5344 "node": ">=6"
5345 }
5346 },
5347 "node_modules/yargs/node_modules/ansi-styles": {
5348 "version": "4.3.0",
5349 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
5350 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
5351 "dev": true,
5352 "dependencies": {
5353 "color-convert": "^2.0.1"
5354 },
5355 "engines": {
5356 "node": ">=8"
5357 },
5358 "funding": {
5359 "url": "https://github.com/chalk/ansi-styles?sponsor=1"
5360 }
5361 },
5362 "node_modules/yargs/node_modules/cliui": {
5363 "version": "6.0.0",
5364 "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
5365 "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
5366 "dev": true,
5367 "dependencies": {
5368 "string-width": "^4.2.0",
5369 "strip-ansi": "^6.0.0",
5370 "wrap-ansi": "^6.2.0"
5371 }
5372 },
5373 "node_modules/yargs/node_modules/color-convert": {
5374 "version": "2.0.1",
5375 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
5376 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
5377 "dev": true,
5378 "dependencies": {
5379 "color-name": "~1.1.4"
5380 },
5381 "engines": {
5382 "node": ">=7.0.0"
5383 }
5384 },
5385 "node_modules/yargs/node_modules/color-name": {
5386 "version": "1.1.4",
5387 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
5388 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
5389 "dev": true
5390 },
5391 "node_modules/yargs/node_modules/strip-ansi": {
5392 "version": "6.0.1",
5393 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
5394 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
5395 "dev": true,
5396 "dependencies": {
5397 "ansi-regex": "^5.0.1"
5398 },
5399 "engines": {
5400 "node": ">=8"
5401 }
5402 },
5403 "node_modules/yargs/node_modules/wrap-ansi": {
5404 "version": "6.2.0",
5405 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
5406 "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
5407 "dev": true,
5408 "dependencies": {
5409 "ansi-styles": "^4.0.0",
5410 "string-width": "^4.1.0",
5411 "strip-ansi": "^6.0.0"
5412 },
5413 "engines": {
5414 "node": ">=8"
5415 }
5416 }
5417 },
5418 "dependencies": {
5419 "@ampproject/remapping": {
5420 "version": "2.2.0",
5421 "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz",
5422 "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
5423 "dev": true,
5424 "requires": {
5425 "@jridgewell/gen-mapping": "^0.1.0",
5426 "@jridgewell/trace-mapping": "^0.3.9"
5427 }
5428 },
1451 "@babel/code-frame": {
5429 "@babel/code-frame": {
1452 "version": "7.8.3",
5430 "version": "7.18.6",
1453 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
5431 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz",
1454 "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==",
5432 "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
1455 "dev": true,
5433 "dev": true,
1456 "requires": {
5434 "requires": {
1457 "@babel/highlight": "^7.8.3"
5435 "@babel/highlight": "^7.18.6"
5436 }
5437 },
5438 "@babel/compat-data": {
5439 "version": "7.19.0",
5440 "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.19.0.tgz",
5441 "integrity": "sha512-y5rqgTTPTmaF5e2nVhOxw+Ur9HDJLsWb6U/KpgUzRZEdPfE6VOubXBKLdbcUTijzRptednSBDQbYZBOSqJxpJw==",
5442 "dev": true
5443 },
5444 "@babel/core": {
5445 "version": "7.19.0",
5446 "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.19.0.tgz",
5447 "integrity": "sha512-reM4+U7B9ss148rh2n1Qs9ASS+w94irYXga7c2jaQv9RVzpS7Mv1a9rnYYwuDa45G+DkORt9g6An2k/V4d9LbQ==",
5448 "dev": true,
5449 "requires": {
5450 "@ampproject/remapping": "^2.1.0",
5451 "@babel/code-frame": "^7.18.6",
5452 "@babel/generator": "^7.19.0",
5453 "@babel/helper-compilation-targets": "^7.19.0",
5454 "@babel/helper-module-transforms": "^7.19.0",
5455 "@babel/helpers": "^7.19.0",
5456 "@babel/parser": "^7.19.0",
5457 "@babel/template": "^7.18.10",
5458 "@babel/traverse": "^7.19.0",
5459 "@babel/types": "^7.19.0",
5460 "convert-source-map": "^1.7.0",
5461 "debug": "^4.1.0",
5462 "gensync": "^1.0.0-beta.2",
5463 "json5": "^2.2.1",
5464 "semver": "^6.3.0"
5465 }
5466 },
5467 "@babel/generator": {
5468 "version": "7.19.0",
5469 "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.19.0.tgz",
5470 "integrity": "sha512-S1ahxf1gZ2dpoiFgA+ohK9DIpz50bJ0CWs7Zlzb54Z4sG8qmdIrGrVqmy1sAtTVRb+9CU6U8VqT9L0Zj7hxHVg==",
5471 "dev": true,
5472 "requires": {
5473 "@babel/types": "^7.19.0",
5474 "@jridgewell/gen-mapping": "^0.3.2",
5475 "jsesc": "^2.5.1"
5476 },
5477 "dependencies": {
5478 "@jridgewell/gen-mapping": {
5479 "version": "0.3.2",
5480 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
5481 "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
5482 "dev": true,
5483 "requires": {
5484 "@jridgewell/set-array": "^1.0.1",
5485 "@jridgewell/sourcemap-codec": "^1.4.10",
5486 "@jridgewell/trace-mapping": "^0.3.9"
5487 }
5488 }
5489 }
5490 },
5491 "@babel/helper-compilation-targets": {
5492 "version": "7.19.0",
5493 "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.19.0.tgz",
5494 "integrity": "sha512-Ai5bNWXIvwDvWM7njqsG3feMlL9hCVQsPYXodsZyLwshYkZVJt59Gftau4VrE8S9IT9asd2uSP1hG6wCNw+sXA==",
5495 "dev": true,
5496 "requires": {
5497 "@babel/compat-data": "^7.19.0",
5498 "@babel/helper-validator-option": "^7.18.6",
5499 "browserslist": "^4.20.2",
5500 "semver": "^6.3.0"
5501 }
5502 },
5503 "@babel/helper-environment-visitor": {
5504 "version": "7.18.9",
5505 "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
5506 "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
5507 "dev": true
5508 },
5509 "@babel/helper-function-name": {
5510 "version": "7.19.0",
5511 "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz",
5512 "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==",
5513 "dev": true,
5514 "requires": {
5515 "@babel/template": "^7.18.10",
5516 "@babel/types": "^7.19.0"
5517 }
5518 },
5519 "@babel/helper-hoist-variables": {
5520 "version": "7.18.6",
5521 "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
5522 "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
5523 "dev": true,
5524 "requires": {
5525 "@babel/types": "^7.18.6"
5526 }
5527 },
5528 "@babel/helper-module-imports": {
5529 "version": "7.18.6",
5530 "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
5531 "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
5532 "dev": true,
5533 "requires": {
5534 "@babel/types": "^7.18.6"
5535 }
5536 },
5537 "@babel/helper-module-transforms": {
5538 "version": "7.19.0",
5539 "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.19.0.tgz",
5540 "integrity": "sha512-3HBZ377Fe14RbLIA+ac3sY4PTgpxHVkFrESaWhoI5PuyXPBBX8+C34qblV9G89ZtycGJCmCI/Ut+VUDK4bltNQ==",
5541 "dev": true,
5542 "requires": {
5543 "@babel/helper-environment-visitor": "^7.18.9",
5544 "@babel/helper-module-imports": "^7.18.6",
5545 "@babel/helper-simple-access": "^7.18.6",
5546 "@babel/helper-split-export-declaration": "^7.18.6",
5547 "@babel/helper-validator-identifier": "^7.18.6",
5548 "@babel/template": "^7.18.10",
5549 "@babel/traverse": "^7.19.0",
5550 "@babel/types": "^7.19.0"
5551 }
5552 },
5553 "@babel/helper-simple-access": {
5554 "version": "7.18.6",
5555 "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.18.6.tgz",
5556 "integrity": "sha512-iNpIgTgyAvDQpDj76POqg+YEt8fPxx3yaNBg3S30dxNKm2SWfYhD0TGrK/Eu9wHpUW63VQU894TsTg+GLbUa1g==",
5557 "dev": true,
5558 "requires": {
5559 "@babel/types": "^7.18.6"
5560 }
5561 },
5562 "@babel/helper-split-export-declaration": {
5563 "version": "7.18.6",
5564 "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
5565 "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
5566 "dev": true,
5567 "requires": {
5568 "@babel/types": "^7.18.6"
5569 }
5570 },
5571 "@babel/helper-string-parser": {
5572 "version": "7.18.10",
5573 "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz",
5574 "integrity": "sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw==",
5575 "dev": true
5576 },
5577 "@babel/helper-validator-identifier": {
5578 "version": "7.18.6",
5579 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz",
5580 "integrity": "sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g==",
5581 "dev": true
5582 },
5583 "@babel/helper-validator-option": {
5584 "version": "7.18.6",
5585 "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz",
5586 "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==",
5587 "dev": true
5588 },
5589 "@babel/helpers": {
5590 "version": "7.19.0",
5591 "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.19.0.tgz",
5592 "integrity": "sha512-DRBCKGwIEdqY3+rPJgG/dKfQy9+08rHIAJx8q2p+HSWP87s2HCrQmaAMMyMll2kIXKCW0cO1RdQskx15Xakftg==",
5593 "dev": true,
5594 "requires": {
5595 "@babel/template": "^7.18.10",
5596 "@babel/traverse": "^7.19.0",
5597 "@babel/types": "^7.19.0"
1458 }
5598 }
1459 },
5599 },
1460 "@babel/highlight": {
5600 "@babel/highlight": {
1461 "version": "7.8.3",
5601 "version": "7.18.6",
1462 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz",
5602 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz",
1463 "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==",
5603 "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
1464 "dev": true,
5604 "dev": true,
1465 "requires": {
5605 "requires": {
5606 "@babel/helper-validator-identifier": "^7.18.6",
1466 "chalk": "^2.0.0",
5607 "chalk": "^2.0.0",
1467 "esutils": "^2.0.2",
1468 "js-tokens": "^4.0.0"
5608 "js-tokens": "^4.0.0"
1469 }
5609 }
1470 },
5610 },
5611 "@babel/parser": {
5612 "version": "7.19.0",
5613 "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.19.0.tgz",
5614 "integrity": "sha512-74bEXKX2h+8rrfQUfsBfuZZHzsEs6Eql4pqy/T4Nn6Y9wNPggQOqD6z6pn5Bl8ZfysKouFZT/UXEH94ummEeQw==",
5615 "dev": true
5616 },
1471 "@babel/runtime": {
5617 "@babel/runtime": {
1472 "version": "7.8.3",
5618 "version": "7.8.3",
1473 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
5619 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
1474 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
5620 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
1475 "dev": true,
5621 "dev": true,
1476 "requires": {
5622 "requires": {
1477 "regenerator-runtime": "^0.13.2"
5623 "regenerator-runtime": "^0.13.2"
1478 }
5624 }
1479 },
5625 },
5626 "@babel/template": {
5627 "version": "7.18.10",
5628 "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz",
5629 "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==",
5630 "dev": true,
5631 "requires": {
5632 "@babel/code-frame": "^7.18.6",
5633 "@babel/parser": "^7.18.10",
5634 "@babel/types": "^7.18.10"
5635 }
5636 },
5637 "@babel/traverse": {
5638 "version": "7.19.0",
5639 "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.19.0.tgz",
5640 "integrity": "sha512-4pKpFRDh+utd2mbRC8JLnlsMUii3PMHjpL6a0SZ4NMZy7YFP9aXORxEhdMVOc9CpWtDF09IkciQLEhK7Ml7gRA==",
5641 "dev": true,
5642 "requires": {
5643 "@babel/code-frame": "^7.18.6",
5644 "@babel/generator": "^7.19.0",
5645 "@babel/helper-environment-visitor": "^7.18.9",
5646 "@babel/helper-function-name": "^7.19.0",
5647 "@babel/helper-hoist-variables": "^7.18.6",
5648 "@babel/helper-split-export-declaration": "^7.18.6",
5649 "@babel/parser": "^7.19.0",
5650 "@babel/types": "^7.19.0",
5651 "debug": "^4.1.0",
5652 "globals": "^11.1.0"
5653 },
5654 "dependencies": {
5655 "globals": {
5656 "version": "11.12.0",
5657 "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
5658 "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
5659 "dev": true
5660 }
5661 }
5662 },
5663 "@babel/types": {
5664 "version": "7.19.0",
5665 "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.19.0.tgz",
5666 "integrity": "sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==",
5667 "dev": true,
5668 "requires": {
5669 "@babel/helper-string-parser": "^7.18.10",
5670 "@babel/helper-validator-identifier": "^7.18.6",
5671 "to-fast-properties": "^2.0.0"
5672 }
5673 },
1480 "@implab/core-amd": {
5674 "@implab/core-amd": {
1481 "version": "1.4.0",
5675 "version": "1.4.0",
1482 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.0.tgz",
5676 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.0.tgz",
1483 "integrity": "sha512-gaJX1mhri7YpmXDTAYELZnmTznzXYpk2AI7Decsttdi6xY+bqGgH24q0AFcKrx8RY2jfsFXxDdf0fITz2HpBbw==",
5677 "integrity": "sha512-gaJX1mhri7YpmXDTAYELZnmTznzXYpk2AI7Decsttdi6xY+bqGgH24q0AFcKrx8RY2jfsFXxDdf0fITz2HpBbw==",
1484 "dev": true
5678 "dev": true
1485 },
5679 },
1486 "@implab/dojo-typings": {
5680 "@implab/dojo-typings": {
1487 "version": "1.0.0",
5681 "version": "1.0.0",
1488 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.0.tgz",
5682 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.0.tgz",
1489 "integrity": "sha512-B2kvlKJgvyIQAl/k1pVyNmtp4ADvBDCs4Lw/qfBC+Sz/ft4c7EuRXmN/+2dhWrd6A5SMjEgex5oeq6Ja2ntrig==",
5683 "integrity": "sha512-B2kvlKJgvyIQAl/k1pVyNmtp4ADvBDCs4Lw/qfBC+Sz/ft4c7EuRXmN/+2dhWrd6A5SMjEgex5oeq6Ja2ntrig==",
1490 "dev": true
5684 "dev": true
1491 },
5685 },
5686 "@istanbuljs/load-nyc-config": {
5687 "version": "1.1.0",
5688 "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
5689 "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
5690 "dev": true,
5691 "requires": {
5692 "camelcase": "^5.3.1",
5693 "find-up": "^4.1.0",
5694 "get-package-type": "^0.1.0",
5695 "js-yaml": "^3.13.1",
5696 "resolve-from": "^5.0.0"
5697 },
5698 "dependencies": {
5699 "resolve-from": {
5700 "version": "5.0.0",
5701 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
5702 "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
5703 "dev": true
5704 }
5705 }
5706 },
5707 "@istanbuljs/schema": {
5708 "version": "0.1.3",
5709 "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
5710 "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
5711 "dev": true
5712 },
5713 "@jridgewell/gen-mapping": {
5714 "version": "0.1.1",
5715 "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
5716 "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
5717 "dev": true,
5718 "requires": {
5719 "@jridgewell/set-array": "^1.0.0",
5720 "@jridgewell/sourcemap-codec": "^1.4.10"
5721 }
5722 },
5723 "@jridgewell/resolve-uri": {
5724 "version": "3.1.0",
5725 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
5726 "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
5727 "dev": true
5728 },
5729 "@jridgewell/set-array": {
5730 "version": "1.1.2",
5731 "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz",
5732 "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
5733 "dev": true
5734 },
5735 "@jridgewell/sourcemap-codec": {
5736 "version": "1.4.14",
5737 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
5738 "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
5739 "dev": true
5740 },
5741 "@jridgewell/trace-mapping": {
5742 "version": "0.3.15",
5743 "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.15.tgz",
5744 "integrity": "sha512-oWZNOULl+UbhsgB51uuZzglikfIKSUBO/M9W2OfEjn7cmqoAiCgmv9lyACTUacZwBz0ITnJ2NqjU8Tx0DHL88g==",
5745 "dev": true,
5746 "requires": {
5747 "@jridgewell/resolve-uri": "^3.0.3",
5748 "@jridgewell/sourcemap-codec": "^1.4.10"
5749 }
5750 },
1492 "@types/chai": {
5751 "@types/chai": {
1493 "version": "4.1.3",
5752 "version": "4.1.3",
1494 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
5753 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
1495 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
5754 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
1496 "dev": true
5755 "dev": true
1497 },
5756 },
5757 "@types/node": {
5758 "version": "18.7.15",
5759 "resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.15.tgz",
5760 "integrity": "sha512-XnjpaI8Bgc3eBag2Aw4t2Uj/49lLBSStHWfqKvIuXD7FIrZyMLWp8KuAFHAqxMZYTF9l08N1ctUn9YNybZJVmQ==",
5761 "dev": true
5762 },
1498 "@types/requirejs": {
5763 "@types/requirejs": {
1499 "version": "2.1.31",
5764 "version": "2.1.31",
1500 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
5765 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
1501 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
5766 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
1502 "dev": true
5767 "dev": true
1503 },
5768 },
5769 "@types/tap": {
5770 "version": "15.0.7",
5771 "resolved": "https://registry.npmjs.org/@types/tap/-/tap-15.0.7.tgz",
5772 "integrity": "sha512-TTMajw4gxQfFgYbhXhy/Tb2OiNcwS+4oP/9yp1/GdU0pFJo3wtnkYhRgmQy39ksh+rnoa0VrPHJ4Tuv2cLNQ5A==",
5773 "dev": true,
5774 "requires": {
5775 "@types/node": "*"
5776 }
5777 },
1504 "@types/yaml": {
5778 "@types/yaml": {
1505 "version": "1.2.0",
5779 "version": "1.2.0",
1506 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
5780 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
1507 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
5781 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
1508 "dev": true
5782 "dev": true
1509 },
5783 },
1510 "acorn": {
5784 "acorn": {
1511 "version": "7.4.0",
5785 "version": "7.4.0",
1512 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
5786 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
1513 "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
5787 "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
1514 "dev": true
5788 "dev": true
1515 },
5789 },
1516 "acorn-jsx": {
5790 "acorn-jsx": {
1517 "version": "5.1.0",
5791 "version": "5.1.0",
1518 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
5792 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
1519 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
5793 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
1520 "dev": true
5794 "dev": true
1521 },
5795 },
5796 "aggregate-error": {
5797 "version": "3.1.0",
5798 "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
5799 "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
5800 "dev": true,
5801 "requires": {
5802 "clean-stack": "^2.0.0",
5803 "indent-string": "^4.0.0"
5804 }
5805 },
1522 "ajv": {
5806 "ajv": {
1523 "version": "6.11.0",
5807 "version": "6.11.0",
1524 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
5808 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
1525 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
5809 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
1526 "dev": true,
5810 "dev": true,
1527 "requires": {
5811 "requires": {
1528 "fast-deep-equal": "^3.1.1",
5812 "fast-deep-equal": "^3.1.1",
1529 "fast-json-stable-stringify": "^2.0.0",
5813 "fast-json-stable-stringify": "^2.0.0",
1530 "json-schema-traverse": "^0.4.1",
5814 "json-schema-traverse": "^0.4.1",
1531 "uri-js": "^4.2.2"
5815 "uri-js": "^4.2.2"
1532 }
5816 }
1533 },
5817 },
1534 "ansi-escapes": {
5818 "ansi-escapes": {
1535 "version": "4.3.0",
5819 "version": "4.3.0",
1536 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
5820 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
1537 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
5821 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
1538 "dev": true,
5822 "dev": true,
1539 "requires": {
5823 "requires": {
1540 "type-fest": "^0.8.1"
5824 "type-fest": "^0.8.1"
1541 }
5825 }
1542 },
5826 },
1543 "ansi-regex": {
5827 "ansi-regex": {
1544 "version": "5.0.0",
5828 "version": "5.0.1",
1545 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
5829 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
1546 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
5830 "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
1547 "dev": true
5831 "dev": true
1548 },
5832 },
1549 "ansi-styles": {
5833 "ansi-styles": {
1550 "version": "3.2.1",
5834 "version": "3.2.1",
1551 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
5835 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
1552 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
5836 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
1553 "dev": true,
5837 "dev": true,
1554 "requires": {
5838 "requires": {
1555 "color-convert": "^1.9.0"
5839 "color-convert": "^1.9.0"
1556 }
5840 }
1557 },
5841 },
5842 "anymatch": {
5843 "version": "3.1.2",
5844 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
5845 "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
5846 "dev": true,
5847 "requires": {
5848 "normalize-path": "^3.0.0",
5849 "picomatch": "^2.0.4"
5850 }
5851 },
5852 "append-transform": {
5853 "version": "2.0.0",
5854 "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
5855 "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
5856 "dev": true,
5857 "requires": {
5858 "default-require-extensions": "^3.0.0"
5859 }
5860 },
5861 "archy": {
5862 "version": "1.0.0",
5863 "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
5864 "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==",
5865 "dev": true
5866 },
1558 "argparse": {
5867 "argparse": {
1559 "version": "1.0.10",
5868 "version": "1.0.10",
1560 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
5869 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
1561 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
5870 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
1562 "dev": true,
5871 "dev": true,
1563 "requires": {
5872 "requires": {
1564 "sprintf-js": "~1.0.2"
5873 "sprintf-js": "~1.0.2"
1565 }
5874 }
1566 },
5875 },
1567 "astral-regex": {
5876 "astral-regex": {
1568 "version": "1.0.0",
5877 "version": "1.0.0",
1569 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
5878 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
1570 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
5879 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
1571 "dev": true
5880 "dev": true
1572 },
5881 },
5882 "async-hook-domain": {
5883 "version": "2.0.4",
5884 "resolved": "https://registry.npmjs.org/async-hook-domain/-/async-hook-domain-2.0.4.tgz",
5885 "integrity": "sha512-14LjCmlK1PK8eDtTezR6WX8TMaYNIzBIsd2D1sGoGjgx0BuNMMoSdk7i/drlbtamy0AWv9yv2tkB+ASdmeqFIw==",
5886 "dev": true
5887 },
1573 "balanced-match": {
5888 "balanced-match": {
1574 "version": "1.0.0",
5889 "version": "1.0.0",
1575 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
5890 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
1576 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
5891 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
1577 "dev": true
5892 "dev": true
1578 },
5893 },
5894 "binary-extensions": {
5895 "version": "2.2.0",
5896 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
5897 "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
5898 "dev": true
5899 },
5900 "bind-obj-methods": {
5901 "version": "3.0.0",
5902 "resolved": "https://registry.npmjs.org/bind-obj-methods/-/bind-obj-methods-3.0.0.tgz",
5903 "integrity": "sha512-nLEaaz3/sEzNSyPWRsN9HNsqwk1AUyECtGj+XwGdIi3xABnEqecvXtIJ0wehQXuuER5uZ/5fTs2usONgYjG+iw==",
5904 "dev": true
5905 },
1579 "brace-expansion": {
5906 "brace-expansion": {
1580 "version": "1.1.11",
5907 "version": "1.1.11",
1581 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
5908 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
1582 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
5909 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
1583 "dev": true,
5910 "dev": true,
1584 "requires": {
5911 "requires": {
1585 "balanced-match": "^1.0.0",
5912 "balanced-match": "^1.0.0",
1586 "concat-map": "0.0.1"
5913 "concat-map": "0.0.1"
1587 }
5914 }
1588 },
5915 },
5916 "braces": {
5917 "version": "3.0.2",
5918 "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
5919 "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
5920 "dev": true,
5921 "requires": {
5922 "fill-range": "^7.0.1"
5923 }
5924 },
5925 "browserslist": {
5926 "version": "4.21.3",
5927 "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.3.tgz",
5928 "integrity": "sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==",
5929 "dev": true,
5930 "requires": {
5931 "caniuse-lite": "^1.0.30001370",
5932 "electron-to-chromium": "^1.4.202",
5933 "node-releases": "^2.0.6",
5934 "update-browserslist-db": "^1.0.5"
5935 }
5936 },
5937 "buffer-from": {
5938 "version": "1.1.2",
5939 "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
5940 "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
5941 "dev": true
5942 },
1589 "builtin-modules": {
5943 "builtin-modules": {
1590 "version": "1.1.1",
5944 "version": "1.1.1",
1591 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
5945 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
1592 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
5946 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
1593 "dev": true
5947 "dev": true
1594 },
5948 },
5949 "caching-transform": {
5950 "version": "4.0.0",
5951 "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz",
5952 "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==",
5953 "dev": true,
5954 "requires": {
5955 "hasha": "^5.0.0",
5956 "make-dir": "^3.0.0",
5957 "package-hash": "^4.0.0",
5958 "write-file-atomic": "^3.0.0"
5959 }
5960 },
1595 "callsites": {
5961 "callsites": {
1596 "version": "3.1.0",
5962 "version": "3.1.0",
1597 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
5963 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1598 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
5964 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
1599 "dev": true
5965 "dev": true
1600 },
5966 },
5967 "camelcase": {
5968 "version": "5.3.1",
5969 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
5970 "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
5971 "dev": true
5972 },
5973 "caniuse-lite": {
5974 "version": "1.0.30001390",
5975 "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001390.tgz",
5976 "integrity": "sha512-sS4CaUM+/+vqQUlCvCJ2WtDlV81aWtHhqeEVkLokVJJa3ViN4zDxAGfq9R8i1m90uGHxo99cy10Od+lvn3hf0g==",
5977 "dev": true
5978 },
1601 "chalk": {
5979 "chalk": {
1602 "version": "2.4.2",
5980 "version": "2.4.2",
1603 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
5981 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
1604 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
5982 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
1605 "dev": true,
5983 "dev": true,
1606 "requires": {
5984 "requires": {
1607 "ansi-styles": "^3.2.1",
5985 "ansi-styles": "^3.2.1",
1608 "escape-string-regexp": "^1.0.5",
5986 "escape-string-regexp": "^1.0.5",
1609 "supports-color": "^5.3.0"
5987 "supports-color": "^5.3.0"
1610 }
5988 }
1611 },
5989 },
1612 "chardet": {
5990 "chardet": {
1613 "version": "0.7.0",
5991 "version": "0.7.0",
1614 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
5992 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
1615 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
5993 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
1616 "dev": true
5994 "dev": true
1617 },
5995 },
5996 "chokidar": {
5997 "version": "3.5.3",
5998 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
5999 "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
6000 "dev": true,
6001 "requires": {
6002 "anymatch": "~3.1.2",
6003 "braces": "~3.0.2",
6004 "fsevents": "~2.3.2",
6005 "glob-parent": "~5.1.2",
6006 "is-binary-path": "~2.1.0",
6007 "is-glob": "~4.0.1",
6008 "normalize-path": "~3.0.0",
6009 "readdirp": "~3.6.0"
6010 }
6011 },
6012 "clean-stack": {
6013 "version": "2.2.0",
6014 "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
6015 "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
6016 "dev": true
6017 },
1618 "cli-cursor": {
6018 "cli-cursor": {
1619 "version": "3.1.0",
6019 "version": "3.1.0",
1620 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
6020 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
1621 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
6021 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
1622 "dev": true,
6022 "dev": true,
1623 "requires": {
6023 "requires": {
1624 "restore-cursor": "^3.1.0"
6024 "restore-cursor": "^3.1.0"
1625 }
6025 }
1626 },
6026 },
1627 "cli-width": {
6027 "cli-width": {
1628 "version": "2.2.0",
6028 "version": "2.2.0",
1629 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
6029 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
1630 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
6030 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
1631 "dev": true
6031 "dev": true
1632 },
6032 },
6033 "cliui": {
6034 "version": "7.0.4",
6035 "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
6036 "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
6037 "dev": true,
6038 "requires": {
6039 "string-width": "^4.2.0",
6040 "strip-ansi": "^6.0.0",
6041 "wrap-ansi": "^7.0.0"
6042 },
6043 "dependencies": {
6044 "strip-ansi": {
6045 "version": "6.0.1",
6046 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
6047 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
6048 "dev": true,
6049 "requires": {
6050 "ansi-regex": "^5.0.1"
6051 }
6052 }
6053 }
6054 },
1633 "color-convert": {
6055 "color-convert": {
1634 "version": "1.9.3",
6056 "version": "1.9.3",
1635 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
6057 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
1636 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
6058 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
1637 "dev": true,
6059 "dev": true,
1638 "requires": {
6060 "requires": {
1639 "color-name": "1.1.3"
6061 "color-name": "1.1.3"
1640 }
6062 }
1641 },
6063 },
1642 "color-name": {
6064 "color-name": {
1643 "version": "1.1.3",
6065 "version": "1.1.3",
1644 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
6066 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
1645 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
6067 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
1646 "dev": true
6068 "dev": true
1647 },
6069 },
6070 "color-support": {
6071 "version": "1.1.3",
6072 "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
6073 "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
6074 "dev": true
6075 },
1648 "commander": {
6076 "commander": {
1649 "version": "2.20.3",
6077 "version": "2.20.3",
1650 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
6078 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
1651 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
6079 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
1652 "dev": true
6080 "dev": true
1653 },
6081 },
6082 "commondir": {
6083 "version": "1.0.1",
6084 "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
6085 "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==",
6086 "dev": true
6087 },
1654 "concat-map": {
6088 "concat-map": {
1655 "version": "0.0.1",
6089 "version": "0.0.1",
1656 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
6090 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
1657 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
6091 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
1658 "dev": true
6092 "dev": true
1659 },
6093 },
6094 "convert-source-map": {
6095 "version": "1.8.0",
6096 "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
6097 "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
6098 "dev": true,
6099 "requires": {
6100 "safe-buffer": "~5.1.1"
6101 }
6102 },
1660 "cross-spawn": {
6103 "cross-spawn": {
1661 "version": "6.0.5",
6104 "version": "6.0.5",
1662 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
6105 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
1663 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
6106 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
1664 "dev": true,
6107 "dev": true,
1665 "requires": {
6108 "requires": {
1666 "nice-try": "^1.0.4",
6109 "nice-try": "^1.0.4",
1667 "path-key": "^2.0.1",
6110 "path-key": "^2.0.1",
1668 "semver": "^5.5.0",
6111 "semver": "^5.5.0",
1669 "shebang-command": "^1.2.0",
6112 "shebang-command": "^1.2.0",
1670 "which": "^1.2.9"
6113 "which": "^1.2.9"
1671 },
6114 },
1672 "dependencies": {
6115 "dependencies": {
1673 "semver": {
6116 "semver": {
1674 "version": "5.7.1",
6117 "version": "5.7.1",
1675 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
6118 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
1676 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
6119 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
1677 "dev": true
6120 "dev": true
1678 }
6121 }
1679 }
6122 }
1680 },
6123 },
1681 "debug": {
6124 "debug": {
1682 "version": "4.1.1",
6125 "version": "4.1.1",
1683 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
6126 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
1684 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
6127 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
1685 "dev": true,
6128 "dev": true,
1686 "requires": {
6129 "requires": {
1687 "ms": "^2.1.1"
6130 "ms": "^2.1.1"
1688 }
6131 }
1689 },
6132 },
6133 "decamelize": {
6134 "version": "1.2.0",
6135 "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
6136 "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
6137 "dev": true
6138 },
1690 "deep-is": {
6139 "deep-is": {
1691 "version": "0.1.3",
6140 "version": "0.1.3",
1692 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
6141 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
1693 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
6142 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
1694 "dev": true
6143 "dev": true
1695 },
6144 },
6145 "default-require-extensions": {
6146 "version": "3.0.0",
6147 "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz",
6148 "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==",
6149 "dev": true,
6150 "requires": {
6151 "strip-bom": "^4.0.0"
6152 }
6153 },
1696 "diff": {
6154 "diff": {
1697 "version": "4.0.2",
6155 "version": "4.0.2",
1698 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
6156 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
1699 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
6157 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
1700 "dev": true
6158 "dev": true
1701 },
6159 },
1702 "doctrine": {
6160 "doctrine": {
1703 "version": "3.0.0",
6161 "version": "3.0.0",
1704 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
6162 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
1705 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
6163 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
1706 "dev": true,
6164 "dev": true,
1707 "requires": {
6165 "requires": {
1708 "esutils": "^2.0.2"
6166 "esutils": "^2.0.2"
1709 }
6167 }
1710 },
6168 },
1711 "dojo": {
6169 "dojo": {
1712 "version": "1.16.0",
6170 "version": "1.16.0",
1713 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
6171 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
1714 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
6172 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
1715 "dev": true
6173 "dev": true
1716 },
6174 },
6175 "electron-to-chromium": {
6176 "version": "1.4.243",
6177 "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.243.tgz",
6178 "integrity": "sha512-BgLD2gBX43OSXwlT01oYRRD5NIB4n3okTRxkzEAC6G0SZG4TTlyrWMjbOo0fajCwqwpRtMHXQNMjtRN6qpNtfw==",
6179 "dev": true
6180 },
1717 "emoji-regex": {
6181 "emoji-regex": {
1718 "version": "8.0.0",
6182 "version": "8.0.0",
1719 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
6183 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
1720 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
6184 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
1721 "dev": true
6185 "dev": true
1722 },
6186 },
6187 "es6-error": {
6188 "version": "4.1.1",
6189 "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
6190 "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
6191 "dev": true
6192 },
6193 "escalade": {
6194 "version": "3.1.1",
6195 "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
6196 "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
6197 "dev": true
6198 },
1723 "escape-string-regexp": {
6199 "escape-string-regexp": {
1724 "version": "1.0.5",
6200 "version": "1.0.5",
1725 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
6201 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
1726 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
6202 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
1727 "dev": true
6203 "dev": true
1728 },
6204 },
1729 "eslint": {
6205 "eslint": {
1730 "version": "6.8.0",
6206 "version": "6.8.0",
1731 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
6207 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
1732 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
6208 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
1733 "dev": true,
6209 "dev": true,
1734 "requires": {
6210 "requires": {
1735 "@babel/code-frame": "^7.0.0",
6211 "@babel/code-frame": "^7.0.0",
1736 "ajv": "^6.10.0",
6212 "ajv": "^6.10.0",
1737 "chalk": "^2.1.0",
6213 "chalk": "^2.1.0",
1738 "cross-spawn": "^6.0.5",
6214 "cross-spawn": "^6.0.5",
1739 "debug": "^4.0.1",
6215 "debug": "^4.0.1",
1740 "doctrine": "^3.0.0",
6216 "doctrine": "^3.0.0",
1741 "eslint-scope": "^5.0.0",
6217 "eslint-scope": "^5.0.0",
1742 "eslint-utils": "^1.4.3",
6218 "eslint-utils": "^1.4.3",
1743 "eslint-visitor-keys": "^1.1.0",
6219 "eslint-visitor-keys": "^1.1.0",
1744 "espree": "^6.1.2",
6220 "espree": "^6.1.2",
1745 "esquery": "^1.0.1",
6221 "esquery": "^1.0.1",
1746 "esutils": "^2.0.2",
6222 "esutils": "^2.0.2",
1747 "file-entry-cache": "^5.0.1",
6223 "file-entry-cache": "^5.0.1",
1748 "functional-red-black-tree": "^1.0.1",
6224 "functional-red-black-tree": "^1.0.1",
1749 "glob-parent": "^5.0.0",
6225 "glob-parent": "^5.0.0",
1750 "globals": "^12.1.0",
6226 "globals": "^12.1.0",
1751 "ignore": "^4.0.6",
6227 "ignore": "^4.0.6",
1752 "import-fresh": "^3.0.0",
6228 "import-fresh": "^3.0.0",
1753 "imurmurhash": "^0.1.4",
6229 "imurmurhash": "^0.1.4",
1754 "inquirer": "^7.0.0",
6230 "inquirer": "^7.0.0",
1755 "is-glob": "^4.0.0",
6231 "is-glob": "^4.0.0",
1756 "js-yaml": "^3.13.1",
6232 "js-yaml": "^3.13.1",
1757 "json-stable-stringify-without-jsonify": "^1.0.1",
6233 "json-stable-stringify-without-jsonify": "^1.0.1",
1758 "levn": "^0.3.0",
6234 "levn": "^0.3.0",
1759 "lodash": "^4.17.14",
6235 "lodash": "^4.17.14",
1760 "minimatch": "^3.0.4",
6236 "minimatch": "^3.0.4",
1761 "mkdirp": "^0.5.1",
6237 "mkdirp": "^0.5.1",
1762 "natural-compare": "^1.4.0",
6238 "natural-compare": "^1.4.0",
1763 "optionator": "^0.8.3",
6239 "optionator": "^0.8.3",
1764 "progress": "^2.0.0",
6240 "progress": "^2.0.0",
1765 "regexpp": "^2.0.1",
6241 "regexpp": "^2.0.1",
1766 "semver": "^6.1.2",
6242 "semver": "^6.1.2",
1767 "strip-ansi": "^5.2.0",
6243 "strip-ansi": "^5.2.0",
1768 "strip-json-comments": "^3.0.1",
6244 "strip-json-comments": "^3.0.1",
1769 "table": "^5.2.3",
6245 "table": "^5.2.3",
1770 "text-table": "^0.2.0",
6246 "text-table": "^0.2.0",
1771 "v8-compile-cache": "^2.0.3"
6247 "v8-compile-cache": "^2.0.3"
1772 }
6248 }
1773 },
6249 },
1774 "eslint-scope": {
6250 "eslint-scope": {
1775 "version": "5.0.0",
6251 "version": "5.0.0",
1776 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
6252 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
1777 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
6253 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
1778 "dev": true,
6254 "dev": true,
1779 "requires": {
6255 "requires": {
1780 "esrecurse": "^4.1.0",
6256 "esrecurse": "^4.1.0",
1781 "estraverse": "^4.1.1"
6257 "estraverse": "^4.1.1"
1782 }
6258 }
1783 },
6259 },
1784 "eslint-utils": {
6260 "eslint-utils": {
1785 "version": "1.4.3",
6261 "version": "1.4.3",
1786 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
6262 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
1787 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
6263 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
1788 "dev": true,
6264 "dev": true,
1789 "requires": {
6265 "requires": {
1790 "eslint-visitor-keys": "^1.1.0"
6266 "eslint-visitor-keys": "^1.1.0"
1791 }
6267 }
1792 },
6268 },
1793 "eslint-visitor-keys": {
6269 "eslint-visitor-keys": {
1794 "version": "1.1.0",
6270 "version": "1.1.0",
1795 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
6271 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
1796 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
6272 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
1797 "dev": true
6273 "dev": true
1798 },
6274 },
1799 "espree": {
6275 "espree": {
1800 "version": "6.1.2",
6276 "version": "6.1.2",
1801 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
6277 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
1802 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
6278 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
1803 "dev": true,
6279 "dev": true,
1804 "requires": {
6280 "requires": {
1805 "acorn": "^7.1.0",
6281 "acorn": "^7.1.0",
1806 "acorn-jsx": "^5.1.0",
6282 "acorn-jsx": "^5.1.0",
1807 "eslint-visitor-keys": "^1.1.0"
6283 "eslint-visitor-keys": "^1.1.0"
1808 }
6284 }
1809 },
6285 },
1810 "esprima": {
6286 "esprima": {
1811 "version": "4.0.1",
6287 "version": "4.0.1",
1812 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
6288 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
1813 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
6289 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
1814 "dev": true
6290 "dev": true
1815 },
6291 },
1816 "esquery": {
6292 "esquery": {
1817 "version": "1.0.1",
6293 "version": "1.0.1",
1818 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
6294 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
1819 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
6295 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
1820 "dev": true,
6296 "dev": true,
1821 "requires": {
6297 "requires": {
1822 "estraverse": "^4.0.0"
6298 "estraverse": "^4.0.0"
1823 }
6299 }
1824 },
6300 },
1825 "esrecurse": {
6301 "esrecurse": {
1826 "version": "4.2.1",
6302 "version": "4.2.1",
1827 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
6303 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
1828 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
6304 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
1829 "dev": true,
6305 "dev": true,
1830 "requires": {
6306 "requires": {
1831 "estraverse": "^4.1.0"
6307 "estraverse": "^4.1.0"
1832 }
6308 }
1833 },
6309 },
1834 "estraverse": {
6310 "estraverse": {
1835 "version": "4.3.0",
6311 "version": "4.3.0",
1836 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
6312 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
1837 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
6313 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
1838 "dev": true
6314 "dev": true
1839 },
6315 },
1840 "esutils": {
6316 "esutils": {
1841 "version": "2.0.3",
6317 "version": "2.0.3",
1842 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
6318 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1843 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
6319 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1844 "dev": true
6320 "dev": true
1845 },
6321 },
6322 "events-to-array": {
6323 "version": "1.1.2",
6324 "resolved": "https://registry.npmjs.org/events-to-array/-/events-to-array-1.1.2.tgz",
6325 "integrity": "sha512-inRWzRY7nG+aXZxBzEqYKB3HPgwflZRopAjDCHv0whhRx+MTUr1ei0ICZUypdyE0HRm4L2d5VEcIqLD6yl+BFA==",
6326 "dev": true
6327 },
1846 "external-editor": {
6328 "external-editor": {
1847 "version": "3.1.0",
6329 "version": "3.1.0",
1848 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
6330 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
1849 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
6331 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
1850 "dev": true,
6332 "dev": true,
1851 "requires": {
6333 "requires": {
1852 "chardet": "^0.7.0",
6334 "chardet": "^0.7.0",
1853 "iconv-lite": "^0.4.24",
6335 "iconv-lite": "^0.4.24",
1854 "tmp": "^0.0.33"
6336 "tmp": "^0.0.33"
1855 }
6337 }
1856 },
6338 },
1857 "fast-deep-equal": {
6339 "fast-deep-equal": {
1858 "version": "3.1.1",
6340 "version": "3.1.1",
1859 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
6341 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
1860 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
6342 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
1861 "dev": true
6343 "dev": true
1862 },
6344 },
1863 "fast-json-stable-stringify": {
6345 "fast-json-stable-stringify": {
1864 "version": "2.1.0",
6346 "version": "2.1.0",
1865 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
6347 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1866 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
6348 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
1867 "dev": true
6349 "dev": true
1868 },
6350 },
1869 "fast-levenshtein": {
6351 "fast-levenshtein": {
1870 "version": "2.0.6",
6352 "version": "2.0.6",
1871 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
6353 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1872 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
6354 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
1873 "dev": true
6355 "dev": true
1874 },
6356 },
1875 "figures": {
6357 "figures": {
1876 "version": "3.1.0",
6358 "version": "3.1.0",
1877 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
6359 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
1878 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
6360 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
1879 "dev": true,
6361 "dev": true,
1880 "requires": {
6362 "requires": {
1881 "escape-string-regexp": "^1.0.5"
6363 "escape-string-regexp": "^1.0.5"
1882 }
6364 }
1883 },
6365 },
1884 "file-entry-cache": {
6366 "file-entry-cache": {
1885 "version": "5.0.1",
6367 "version": "5.0.1",
1886 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
6368 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
1887 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
6369 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
1888 "dev": true,
6370 "dev": true,
1889 "requires": {
6371 "requires": {
1890 "flat-cache": "^2.0.1"
6372 "flat-cache": "^2.0.1"
1891 }
6373 }
1892 },
6374 },
6375 "fill-range": {
6376 "version": "7.0.1",
6377 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
6378 "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
6379 "dev": true,
6380 "requires": {
6381 "to-regex-range": "^5.0.1"
6382 }
6383 },
6384 "find-cache-dir": {
6385 "version": "3.3.2",
6386 "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
6387 "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
6388 "dev": true,
6389 "requires": {
6390 "commondir": "^1.0.1",
6391 "make-dir": "^3.0.2",
6392 "pkg-dir": "^4.1.0"
6393 }
6394 },
6395 "find-up": {
6396 "version": "4.1.0",
6397 "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
6398 "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
6399 "dev": true,
6400 "requires": {
6401 "locate-path": "^5.0.0",
6402 "path-exists": "^4.0.0"
6403 }
6404 },
6405 "findit": {
6406 "version": "2.0.0",
6407 "resolved": "https://registry.npmjs.org/findit/-/findit-2.0.0.tgz",
6408 "integrity": "sha512-ENZS237/Hr8bjczn5eKuBohLgaD0JyUd0arxretR1f9RO46vZHA1b2y0VorgGV3WaOT3c+78P8h7v4JGJ1i/rg==",
6409 "dev": true
6410 },
1893 "flat-cache": {
6411 "flat-cache": {
1894 "version": "2.0.1",
6412 "version": "2.0.1",
1895 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
6413 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
1896 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
6414 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
1897 "dev": true,
6415 "dev": true,
1898 "requires": {
6416 "requires": {
1899 "flatted": "^2.0.0",
6417 "flatted": "^2.0.0",
1900 "rimraf": "2.6.3",
6418 "rimraf": "2.6.3",
1901 "write": "1.0.3"
6419 "write": "1.0.3"
1902 }
6420 }
1903 },
6421 },
1904 "flatted": {
6422 "flatted": {
1905 "version": "2.0.1",
6423 "version": "2.0.1",
1906 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
6424 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
1907 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
6425 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
1908 "dev": true
6426 "dev": true
1909 },
6427 },
6428 "foreground-child": {
6429 "version": "2.0.0",
6430 "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
6431 "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==",
6432 "dev": true,
6433 "requires": {
6434 "cross-spawn": "^7.0.0",
6435 "signal-exit": "^3.0.2"
6436 },
6437 "dependencies": {
6438 "cross-spawn": {
6439 "version": "7.0.3",
6440 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
6441 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
6442 "dev": true,
6443 "requires": {
6444 "path-key": "^3.1.0",
6445 "shebang-command": "^2.0.0",
6446 "which": "^2.0.1"
6447 }
6448 },
6449 "path-key": {
6450 "version": "3.1.1",
6451 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
6452 "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
6453 "dev": true
6454 },
6455 "shebang-command": {
6456 "version": "2.0.0",
6457 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
6458 "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
6459 "dev": true,
6460 "requires": {
6461 "shebang-regex": "^3.0.0"
6462 }
6463 },
6464 "shebang-regex": {
6465 "version": "3.0.0",
6466 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
6467 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
6468 "dev": true
6469 },
6470 "which": {
6471 "version": "2.0.2",
6472 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
6473 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
6474 "dev": true,
6475 "requires": {
6476 "isexe": "^2.0.0"
6477 }
6478 }
6479 }
6480 },
6481 "fromentries": {
6482 "version": "1.3.2",
6483 "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz",
6484 "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==",
6485 "dev": true
6486 },
6487 "fs-exists-cached": {
6488 "version": "1.0.0",
6489 "resolved": "https://registry.npmjs.org/fs-exists-cached/-/fs-exists-cached-1.0.0.tgz",
6490 "integrity": "sha512-kSxoARUDn4F2RPXX48UXnaFKwVU7Ivd/6qpzZL29MCDmr9sTvybv4gFCp+qaI4fM9m0z9fgz/yJvi56GAz+BZg==",
6491 "dev": true
6492 },
1910 "fs.realpath": {
6493 "fs.realpath": {
1911 "version": "1.0.0",
6494 "version": "1.0.0",
1912 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
6495 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1913 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
6496 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1914 "dev": true
6497 "dev": true
1915 },
6498 },
6499 "fsevents": {
6500 "version": "2.3.2",
6501 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
6502 "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
6503 "dev": true,
6504 "optional": true
6505 },
6506 "function-loop": {
6507 "version": "2.0.1",
6508 "resolved": "https://registry.npmjs.org/function-loop/-/function-loop-2.0.1.tgz",
6509 "integrity": "sha512-ktIR+O6i/4h+j/ZhZJNdzeI4i9lEPeEK6UPR2EVyTVBqOwcU3Za9xYKLH64ZR9HmcROyRrOkizNyjjtWJzDDkQ==",
6510 "dev": true
6511 },
1916 "functional-red-black-tree": {
6512 "functional-red-black-tree": {
1917 "version": "1.0.1",
6513 "version": "1.0.1",
1918 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
6514 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
1919 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
6515 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
1920 "dev": true
6516 "dev": true
1921 },
6517 },
6518 "gensync": {
6519 "version": "1.0.0-beta.2",
6520 "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
6521 "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
6522 "dev": true
6523 },
6524 "get-caller-file": {
6525 "version": "2.0.5",
6526 "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
6527 "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
6528 "dev": true
6529 },
6530 "get-package-type": {
6531 "version": "0.1.0",
6532 "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
6533 "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
6534 "dev": true
6535 },
1922 "glob": {
6536 "glob": {
1923 "version": "7.1.6",
6537 "version": "7.2.3",
1924 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
6538 "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
1925 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
6539 "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
1926 "dev": true,
6540 "dev": true,
1927 "requires": {
6541 "requires": {
1928 "fs.realpath": "^1.0.0",
6542 "fs.realpath": "^1.0.0",
1929 "inflight": "^1.0.4",
6543 "inflight": "^1.0.4",
1930 "inherits": "2",
6544 "inherits": "2",
1931 "minimatch": "^3.0.4",
6545 "minimatch": "^3.1.1",
1932 "once": "^1.3.0",
6546 "once": "^1.3.0",
1933 "path-is-absolute": "^1.0.0"
6547 "path-is-absolute": "^1.0.0"
1934 }
6548 }
1935 },
6549 },
1936 "glob-parent": {
6550 "glob-parent": {
1937 "version": "5.1.0",
6551 "version": "5.1.2",
1938 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
6552 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
1939 "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
6553 "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1940 "dev": true,
6554 "dev": true,
1941 "requires": {
6555 "requires": {
1942 "is-glob": "^4.0.1"
6556 "is-glob": "^4.0.1"
1943 }
6557 }
1944 },
6558 },
1945 "globals": {
6559 "globals": {
1946 "version": "12.3.0",
6560 "version": "12.3.0",
1947 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
6561 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
1948 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
6562 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
1949 "dev": true,
6563 "dev": true,
1950 "requires": {
6564 "requires": {
1951 "type-fest": "^0.8.1"
6565 "type-fest": "^0.8.1"
1952 }
6566 }
1953 },
6567 },
6568 "graceful-fs": {
6569 "version": "4.2.10",
6570 "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
6571 "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
6572 "dev": true
6573 },
1954 "has-flag": {
6574 "has-flag": {
1955 "version": "3.0.0",
6575 "version": "3.0.0",
1956 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
6576 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1957 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
6577 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1958 "dev": true
6578 "dev": true
1959 },
6579 },
6580 "hasha": {
6581 "version": "5.2.2",
6582 "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz",
6583 "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==",
6584 "dev": true,
6585 "requires": {
6586 "is-stream": "^2.0.0",
6587 "type-fest": "^0.8.0"
6588 }
6589 },
6590 "html-escaper": {
6591 "version": "2.0.2",
6592 "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
6593 "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
6594 "dev": true
6595 },
1960 "iconv-lite": {
6596 "iconv-lite": {
1961 "version": "0.4.24",
6597 "version": "0.4.24",
1962 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
6598 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
1963 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
6599 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
1964 "dev": true,
6600 "dev": true,
1965 "requires": {
6601 "requires": {
1966 "safer-buffer": ">= 2.1.2 < 3"
6602 "safer-buffer": ">= 2.1.2 < 3"
1967 }
6603 }
1968 },
6604 },
1969 "ignore": {
6605 "ignore": {
1970 "version": "4.0.6",
6606 "version": "4.0.6",
1971 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
6607 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
1972 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
6608 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
1973 "dev": true
6609 "dev": true
1974 },
6610 },
1975 "import-fresh": {
6611 "import-fresh": {
1976 "version": "3.2.1",
6612 "version": "3.2.1",
1977 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
6613 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
1978 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
6614 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
1979 "dev": true,
6615 "dev": true,
1980 "requires": {
6616 "requires": {
1981 "parent-module": "^1.0.0",
6617 "parent-module": "^1.0.0",
1982 "resolve-from": "^4.0.0"
6618 "resolve-from": "^4.0.0"
1983 }
6619 }
1984 },
6620 },
1985 "imurmurhash": {
6621 "imurmurhash": {
1986 "version": "0.1.4",
6622 "version": "0.1.4",
1987 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
6623 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1988 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
6624 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
1989 "dev": true
6625 "dev": true
1990 },
6626 },
6627 "indent-string": {
6628 "version": "4.0.0",
6629 "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
6630 "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
6631 "dev": true
6632 },
1991 "inflight": {
6633 "inflight": {
1992 "version": "1.0.6",
6634 "version": "1.0.6",
1993 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
6635 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1994 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
6636 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1995 "dev": true,
6637 "dev": true,
1996 "requires": {
6638 "requires": {
1997 "once": "^1.3.0",
6639 "once": "^1.3.0",
1998 "wrappy": "1"
6640 "wrappy": "1"
1999 }
6641 }
2000 },
6642 },
2001 "inherits": {
6643 "inherits": {
2002 "version": "2.0.4",
6644 "version": "2.0.4",
2003 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
6645 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
2004 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
6646 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
2005 "dev": true
6647 "dev": true
2006 },
6648 },
2007 "inquirer": {
6649 "inquirer": {
2008 "version": "7.0.3",
6650 "version": "7.0.3",
2009 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
6651 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
2010 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
6652 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
2011 "dev": true,
6653 "dev": true,
2012 "requires": {
6654 "requires": {
2013 "ansi-escapes": "^4.2.1",
6655 "ansi-escapes": "^4.2.1",
2014 "chalk": "^2.4.2",
6656 "chalk": "^2.4.2",
2015 "cli-cursor": "^3.1.0",
6657 "cli-cursor": "^3.1.0",
2016 "cli-width": "^2.0.0",
6658 "cli-width": "^2.0.0",
2017 "external-editor": "^3.0.3",
6659 "external-editor": "^3.0.3",
2018 "figures": "^3.0.0",
6660 "figures": "^3.0.0",
2019 "lodash": "^4.17.15",
6661 "lodash": "^4.17.15",
2020 "mute-stream": "0.0.8",
6662 "mute-stream": "0.0.8",
2021 "run-async": "^2.2.0",
6663 "run-async": "^2.2.0",
2022 "rxjs": "^6.5.3",
6664 "rxjs": "^6.5.3",
2023 "string-width": "^4.1.0",
6665 "string-width": "^4.1.0",
2024 "strip-ansi": "^5.1.0",
6666 "strip-ansi": "^5.1.0",
2025 "through": "^2.3.6"
6667 "through": "^2.3.6"
2026 }
6668 }
2027 },
6669 },
6670 "is-binary-path": {
6671 "version": "2.1.0",
6672 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
6673 "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
6674 "dev": true,
6675 "requires": {
6676 "binary-extensions": "^2.0.0"
6677 }
6678 },
2028 "is-extglob": {
6679 "is-extglob": {
2029 "version": "2.1.1",
6680 "version": "2.1.1",
2030 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
6681 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
2031 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
6682 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
2032 "dev": true
6683 "dev": true
2033 },
6684 },
2034 "is-fullwidth-code-point": {
6685 "is-fullwidth-code-point": {
2035 "version": "3.0.0",
6686 "version": "3.0.0",
2036 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
6687 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
2037 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
6688 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
2038 "dev": true
6689 "dev": true
2039 },
6690 },
2040 "is-glob": {
6691 "is-glob": {
2041 "version": "4.0.1",
6692 "version": "4.0.1",
2042 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
6693 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
2043 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
6694 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
2044 "dev": true,
6695 "dev": true,
2045 "requires": {
6696 "requires": {
2046 "is-extglob": "^2.1.1"
6697 "is-extglob": "^2.1.1"
2047 }
6698 }
2048 },
6699 },
6700 "is-number": {
6701 "version": "7.0.0",
6702 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
6703 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
6704 "dev": true
6705 },
2049 "is-promise": {
6706 "is-promise": {
2050 "version": "2.1.0",
6707 "version": "2.1.0",
2051 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
6708 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
2052 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
6709 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
2053 "dev": true
6710 "dev": true
2054 },
6711 },
6712 "is-stream": {
6713 "version": "2.0.1",
6714 "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
6715 "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
6716 "dev": true
6717 },
6718 "is-typedarray": {
6719 "version": "1.0.0",
6720 "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
6721 "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
6722 "dev": true
6723 },
6724 "is-windows": {
6725 "version": "1.0.2",
6726 "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
6727 "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
6728 "dev": true
6729 },
2055 "isexe": {
6730 "isexe": {
2056 "version": "2.0.0",
6731 "version": "2.0.0",
2057 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
6732 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
2058 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
6733 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
2059 "dev": true
6734 "dev": true
2060 },
6735 },
6736 "istanbul-lib-coverage": {
6737 "version": "3.2.0",
6738 "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz",
6739 "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==",
6740 "dev": true
6741 },
6742 "istanbul-lib-hook": {
6743 "version": "3.0.0",
6744 "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz",
6745 "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==",
6746 "dev": true,
6747 "requires": {
6748 "append-transform": "^2.0.0"
6749 }
6750 },
6751 "istanbul-lib-instrument": {
6752 "version": "4.0.3",
6753 "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
6754 "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
6755 "dev": true,
6756 "requires": {
6757 "@babel/core": "^7.7.5",
6758 "@istanbuljs/schema": "^0.1.2",
6759 "istanbul-lib-coverage": "^3.0.0",
6760 "semver": "^6.3.0"
6761 }
6762 },
6763 "istanbul-lib-processinfo": {
6764 "version": "2.0.3",
6765 "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.3.tgz",
6766 "integrity": "sha512-NkwHbo3E00oybX6NGJi6ar0B29vxyvNwoC7eJ4G4Yq28UfY758Hgn/heV8VRFhevPED4LXfFz0DQ8z/0kw9zMg==",
6767 "dev": true,
6768 "requires": {
6769 "archy": "^1.0.0",
6770 "cross-spawn": "^7.0.3",
6771 "istanbul-lib-coverage": "^3.2.0",
6772 "p-map": "^3.0.0",
6773 "rimraf": "^3.0.0",
6774 "uuid": "^8.3.2"
6775 },
6776 "dependencies": {
6777 "cross-spawn": {
6778 "version": "7.0.3",
6779 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
6780 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
6781 "dev": true,
6782 "requires": {
6783 "path-key": "^3.1.0",
6784 "shebang-command": "^2.0.0",
6785 "which": "^2.0.1"
6786 }
6787 },
6788 "path-key": {
6789 "version": "3.1.1",
6790 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
6791 "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
6792 "dev": true
6793 },
6794 "rimraf": {
6795 "version": "3.0.2",
6796 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
6797 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
6798 "dev": true,
6799 "requires": {
6800 "glob": "^7.1.3"
6801 }
6802 },
6803 "shebang-command": {
6804 "version": "2.0.0",
6805 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
6806 "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
6807 "dev": true,
6808 "requires": {
6809 "shebang-regex": "^3.0.0"
6810 }
6811 },
6812 "shebang-regex": {
6813 "version": "3.0.0",
6814 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
6815 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
6816 "dev": true
6817 },
6818 "which": {
6819 "version": "2.0.2",
6820 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
6821 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
6822 "dev": true,
6823 "requires": {
6824 "isexe": "^2.0.0"
6825 }
6826 }
6827 }
6828 },
6829 "istanbul-lib-report": {
6830 "version": "3.0.0",
6831 "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
6832 "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
6833 "dev": true,
6834 "requires": {
6835 "istanbul-lib-coverage": "^3.0.0",
6836 "make-dir": "^3.0.0",
6837 "supports-color": "^7.1.0"
6838 },
6839 "dependencies": {
6840 "has-flag": {
6841 "version": "4.0.0",
6842 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
6843 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
6844 "dev": true
6845 },
6846 "supports-color": {
6847 "version": "7.2.0",
6848 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
6849 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
6850 "dev": true,
6851 "requires": {
6852 "has-flag": "^4.0.0"
6853 }
6854 }
6855 }
6856 },
6857 "istanbul-lib-source-maps": {
6858 "version": "4.0.1",
6859 "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz",
6860 "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==",
6861 "dev": true,
6862 "requires": {
6863 "debug": "^4.1.1",
6864 "istanbul-lib-coverage": "^3.0.0",
6865 "source-map": "^0.6.1"
6866 }
6867 },
6868 "istanbul-reports": {
6869 "version": "3.1.5",
6870 "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz",
6871 "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==",
6872 "dev": true,
6873 "requires": {
6874 "html-escaper": "^2.0.0",
6875 "istanbul-lib-report": "^3.0.0"
6876 }
6877 },
6878 "jackspeak": {
6879 "version": "1.4.1",
6880 "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-1.4.1.tgz",
6881 "integrity": "sha512-npN8f+M4+IQ8xD3CcWi3U62VQwKlT3Tj4GxbdT/fYTmeogD9eBF9OFdpoFG/VPNoshRjPUijdkp/p2XrzUHaVg==",
6882 "dev": true,
6883 "requires": {
6884 "cliui": "^7.0.4"
6885 }
6886 },
2061 "js-tokens": {
6887 "js-tokens": {
2062 "version": "4.0.0",
6888 "version": "4.0.0",
2063 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
6889 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
2064 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
6890 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
2065 "dev": true
6891 "dev": true
2066 },
6892 },
2067 "js-yaml": {
6893 "js-yaml": {
2068 "version": "3.13.1",
6894 "version": "3.13.1",
2069 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
6895 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
2070 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
6896 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
2071 "dev": true,
6897 "dev": true,
2072 "requires": {
6898 "requires": {
2073 "argparse": "^1.0.7",
6899 "argparse": "^1.0.7",
2074 "esprima": "^4.0.0"
6900 "esprima": "^4.0.0"
2075 }
6901 }
2076 },
6902 },
6903 "jsesc": {
6904 "version": "2.5.2",
6905 "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
6906 "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
6907 "dev": true
6908 },
2077 "json-schema-traverse": {
6909 "json-schema-traverse": {
2078 "version": "0.4.1",
6910 "version": "0.4.1",
2079 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
6911 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
2080 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
6912 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
2081 "dev": true
6913 "dev": true
2082 },
6914 },
2083 "json-stable-stringify-without-jsonify": {
6915 "json-stable-stringify-without-jsonify": {
2084 "version": "1.0.1",
6916 "version": "1.0.1",
2085 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
6917 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
2086 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
6918 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
2087 "dev": true
6919 "dev": true
2088 },
6920 },
6921 "json5": {
6922 "version": "2.2.1",
6923 "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
6924 "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
6925 "dev": true
6926 },
2089 "levn": {
6927 "levn": {
2090 "version": "0.3.0",
6928 "version": "0.3.0",
2091 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
6929 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
2092 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
6930 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
2093 "dev": true,
6931 "dev": true,
2094 "requires": {
6932 "requires": {
2095 "prelude-ls": "~1.1.2",
6933 "prelude-ls": "~1.1.2",
2096 "type-check": "~0.3.2"
6934 "type-check": "~0.3.2"
2097 }
6935 }
2098 },
6936 },
6937 "libtap": {
6938 "version": "1.4.0",
6939 "resolved": "https://registry.npmjs.org/libtap/-/libtap-1.4.0.tgz",
6940 "integrity": "sha512-STLFynswQ2A6W14JkabgGetBNk6INL1REgJ9UeNKw5llXroC2cGLgKTqavv0sl8OLVztLLipVKMcQ7yeUcqpmg==",
6941 "dev": true,
6942 "requires": {
6943 "async-hook-domain": "^2.0.4",
6944 "bind-obj-methods": "^3.0.0",
6945 "diff": "^4.0.2",
6946 "function-loop": "^2.0.1",
6947 "minipass": "^3.1.5",
6948 "own-or": "^1.0.0",
6949 "own-or-env": "^1.0.2",
6950 "signal-exit": "^3.0.4",
6951 "stack-utils": "^2.0.4",
6952 "tap-parser": "^11.0.0",
6953 "tap-yaml": "^1.0.0",
6954 "tcompare": "^5.0.6",
6955 "trivial-deferred": "^1.0.1"
6956 }
6957 },
6958 "locate-path": {
6959 "version": "5.0.0",
6960 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
6961 "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
6962 "dev": true,
6963 "requires": {
6964 "p-locate": "^4.1.0"
6965 }
6966 },
2099 "lodash": {
6967 "lodash": {
2100 "version": "4.17.20",
6968 "version": "4.17.20",
2101 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
6969 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
2102 "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
6970 "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
2103 "dev": true
6971 "dev": true
2104 },
6972 },
6973 "lodash.flattendeep": {
6974 "version": "4.4.0",
6975 "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz",
6976 "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
6977 "dev": true
6978 },
6979 "make-dir": {
6980 "version": "3.1.0",
6981 "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
6982 "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
6983 "dev": true,
6984 "requires": {
6985 "semver": "^6.0.0"
6986 }
6987 },
2105 "mimic-fn": {
6988 "mimic-fn": {
2106 "version": "2.1.0",
6989 "version": "2.1.0",
2107 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
6990 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
2108 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
6991 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
2109 "dev": true
6992 "dev": true
2110 },
6993 },
2111 "minimatch": {
6994 "minimatch": {
2112 "version": "3.0.4",
6995 "version": "3.1.2",
2113 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
6996 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
2114 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
6997 "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
2115 "dev": true,
6998 "dev": true,
2116 "requires": {
6999 "requires": {
2117 "brace-expansion": "^1.1.7"
7000 "brace-expansion": "^1.1.7"
2118 }
7001 }
2119 },
7002 },
7003 "minimist": {
7004 "version": "1.2.6",
7005 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz",
7006 "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==",
7007 "dev": true
7008 },
7009 "minipass": {
7010 "version": "3.3.4",
7011 "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.4.tgz",
7012 "integrity": "sha512-I9WPbWHCGu8W+6k1ZiGpPu0GkoKBeorkfKNuAFBNS1HNFJvke82sxvI5bzcCNpWPorkOO5QQ+zomzzwRxejXiw==",
7013 "dev": true,
7014 "requires": {
7015 "yallist": "^4.0.0"
7016 }
7017 },
2120 "mkdirp": {
7018 "mkdirp": {
2121 "version": "0.5.5",
7019 "version": "0.5.5",
2122 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
7020 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
2123 "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
7021 "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
2124 "dev": true,
7022 "dev": true,
2125 "requires": {
7023 "requires": {
2126 "minimist": "^1.2.5"
7024 "minimist": "^1.2.5"
2127 },
2128 "dependencies": {
2129 "minimist": {
2130 "version": "1.2.5",
2131 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
2132 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
2133 "dev": true
2134 }
2135 }
7025 }
2136 },
7026 },
2137 "ms": {
7027 "ms": {
2138 "version": "2.1.2",
7028 "version": "2.1.2",
2139 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
7029 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2140 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
7030 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
2141 "dev": true
7031 "dev": true
2142 },
7032 },
2143 "mute-stream": {
7033 "mute-stream": {
2144 "version": "0.0.8",
7034 "version": "0.0.8",
2145 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
7035 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
2146 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
7036 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
2147 "dev": true
7037 "dev": true
2148 },
7038 },
2149 "natural-compare": {
7039 "natural-compare": {
2150 "version": "1.4.0",
7040 "version": "1.4.0",
2151 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
7041 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
2152 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
7042 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
2153 "dev": true
7043 "dev": true
2154 },
7044 },
2155 "nice-try": {
7045 "nice-try": {
2156 "version": "1.0.5",
7046 "version": "1.0.5",
2157 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
7047 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
2158 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
7048 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
2159 "dev": true
7049 "dev": true
2160 },
7050 },
7051 "node-preload": {
7052 "version": "0.2.1",
7053 "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz",
7054 "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==",
7055 "dev": true,
7056 "requires": {
7057 "process-on-spawn": "^1.0.0"
7058 }
7059 },
7060 "node-releases": {
7061 "version": "2.0.6",
7062 "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz",
7063 "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==",
7064 "dev": true
7065 },
7066 "normalize-path": {
7067 "version": "3.0.0",
7068 "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
7069 "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
7070 "dev": true
7071 },
7072 "nyc": {
7073 "version": "15.1.0",
7074 "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz",
7075 "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==",
7076 "dev": true,
7077 "requires": {
7078 "@istanbuljs/load-nyc-config": "^1.0.0",
7079 "@istanbuljs/schema": "^0.1.2",
7080 "caching-transform": "^4.0.0",
7081 "convert-source-map": "^1.7.0",
7082 "decamelize": "^1.2.0",
7083 "find-cache-dir": "^3.2.0",
7084 "find-up": "^4.1.0",
7085 "foreground-child": "^2.0.0",
7086 "get-package-type": "^0.1.0",
7087 "glob": "^7.1.6",
7088 "istanbul-lib-coverage": "^3.0.0",
7089 "istanbul-lib-hook": "^3.0.0",
7090 "istanbul-lib-instrument": "^4.0.0",
7091 "istanbul-lib-processinfo": "^2.0.2",
7092 "istanbul-lib-report": "^3.0.0",
7093 "istanbul-lib-source-maps": "^4.0.0",
7094 "istanbul-reports": "^3.0.2",
7095 "make-dir": "^3.0.0",
7096 "node-preload": "^0.2.1",
7097 "p-map": "^3.0.0",
7098 "process-on-spawn": "^1.0.0",
7099 "resolve-from": "^5.0.0",
7100 "rimraf": "^3.0.0",
7101 "signal-exit": "^3.0.2",
7102 "spawn-wrap": "^2.0.0",
7103 "test-exclude": "^6.0.0",
7104 "yargs": "^15.0.2"
7105 },
7106 "dependencies": {
7107 "resolve-from": {
7108 "version": "5.0.0",
7109 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
7110 "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
7111 "dev": true
7112 },
7113 "rimraf": {
7114 "version": "3.0.2",
7115 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
7116 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
7117 "dev": true,
7118 "requires": {
7119 "glob": "^7.1.3"
7120 }
7121 }
7122 }
7123 },
2161 "once": {
7124 "once": {
2162 "version": "1.4.0",
7125 "version": "1.4.0",
2163 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
7126 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
2164 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
7127 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
2165 "dev": true,
7128 "dev": true,
2166 "requires": {
7129 "requires": {
2167 "wrappy": "1"
7130 "wrappy": "1"
2168 }
7131 }
2169 },
7132 },
2170 "onetime": {
7133 "onetime": {
2171 "version": "5.1.0",
7134 "version": "5.1.0",
2172 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
7135 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
2173 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
7136 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
2174 "dev": true,
7137 "dev": true,
2175 "requires": {
7138 "requires": {
2176 "mimic-fn": "^2.1.0"
7139 "mimic-fn": "^2.1.0"
2177 }
7140 }
2178 },
7141 },
7142 "opener": {
7143 "version": "1.5.2",
7144 "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
7145 "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
7146 "dev": true
7147 },
2179 "optionator": {
7148 "optionator": {
2180 "version": "0.8.3",
7149 "version": "0.8.3",
2181 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
7150 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
2182 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
7151 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
2183 "dev": true,
7152 "dev": true,
2184 "requires": {
7153 "requires": {
2185 "deep-is": "~0.1.3",
7154 "deep-is": "~0.1.3",
2186 "fast-levenshtein": "~2.0.6",
7155 "fast-levenshtein": "~2.0.6",
2187 "levn": "~0.3.0",
7156 "levn": "~0.3.0",
2188 "prelude-ls": "~1.1.2",
7157 "prelude-ls": "~1.1.2",
2189 "type-check": "~0.3.2",
7158 "type-check": "~0.3.2",
2190 "word-wrap": "~1.2.3"
7159 "word-wrap": "~1.2.3"
2191 }
7160 }
2192 },
7161 },
2193 "os-tmpdir": {
7162 "os-tmpdir": {
2194 "version": "1.0.2",
7163 "version": "1.0.2",
2195 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
7164 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
2196 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
7165 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
2197 "dev": true
7166 "dev": true
2198 },
7167 },
7168 "own-or": {
7169 "version": "1.0.0",
7170 "resolved": "https://registry.npmjs.org/own-or/-/own-or-1.0.0.tgz",
7171 "integrity": "sha512-NfZr5+Tdf6MB8UI9GLvKRs4cXY8/yB0w3xtt84xFdWy8hkGjn+JFc60VhzS/hFRfbyxFcGYMTjnF4Me+RbbqrA==",
7172 "dev": true
7173 },
7174 "own-or-env": {
7175 "version": "1.0.2",
7176 "resolved": "https://registry.npmjs.org/own-or-env/-/own-or-env-1.0.2.tgz",
7177 "integrity": "sha512-NQ7v0fliWtK7Lkb+WdFqe6ky9XAzYmlkXthQrBbzlYbmFKoAYbDDcwmOm6q8kOuwSRXW8bdL5ORksploUJmWgw==",
7178 "dev": true,
7179 "requires": {
7180 "own-or": "^1.0.0"
7181 }
7182 },
7183 "p-limit": {
7184 "version": "2.3.0",
7185 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
7186 "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
7187 "dev": true,
7188 "requires": {
7189 "p-try": "^2.0.0"
7190 }
7191 },
7192 "p-locate": {
7193 "version": "4.1.0",
7194 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
7195 "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
7196 "dev": true,
7197 "requires": {
7198 "p-limit": "^2.2.0"
7199 }
7200 },
7201 "p-map": {
7202 "version": "3.0.0",
7203 "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz",
7204 "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==",
7205 "dev": true,
7206 "requires": {
7207 "aggregate-error": "^3.0.0"
7208 }
7209 },
7210 "p-try": {
7211 "version": "2.2.0",
7212 "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
7213 "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
7214 "dev": true
7215 },
7216 "package-hash": {
7217 "version": "4.0.0",
7218 "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz",
7219 "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==",
7220 "dev": true,
7221 "requires": {
7222 "graceful-fs": "^4.1.15",
7223 "hasha": "^5.0.0",
7224 "lodash.flattendeep": "^4.4.0",
7225 "release-zalgo": "^1.0.0"
7226 }
7227 },
2199 "parent-module": {
7228 "parent-module": {
2200 "version": "1.0.1",
7229 "version": "1.0.1",
2201 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
7230 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2202 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
7231 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2203 "dev": true,
7232 "dev": true,
2204 "requires": {
7233 "requires": {
2205 "callsites": "^3.0.0"
7234 "callsites": "^3.0.0"
2206 }
7235 }
2207 },
7236 },
7237 "path-exists": {
7238 "version": "4.0.0",
7239 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
7240 "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
7241 "dev": true
7242 },
2208 "path-is-absolute": {
7243 "path-is-absolute": {
2209 "version": "1.0.1",
7244 "version": "1.0.1",
2210 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
7245 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2211 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
7246 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
2212 "dev": true
7247 "dev": true
2213 },
7248 },
2214 "path-key": {
7249 "path-key": {
2215 "version": "2.0.1",
7250 "version": "2.0.1",
2216 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
7251 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
2217 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
7252 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
2218 "dev": true
7253 "dev": true
2219 },
7254 },
2220 "path-parse": {
7255 "path-parse": {
2221 "version": "1.0.6",
7256 "version": "1.0.7",
2222 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
7257 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
2223 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
7258 "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
2224 "dev": true
7259 "dev": true
7260 },
7261 "picocolors": {
7262 "version": "1.0.0",
7263 "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
7264 "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
7265 "dev": true
7266 },
7267 "picomatch": {
7268 "version": "2.3.1",
7269 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
7270 "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
7271 "dev": true
7272 },
7273 "pkg-dir": {
7274 "version": "4.2.0",
7275 "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
7276 "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
7277 "dev": true,
7278 "requires": {
7279 "find-up": "^4.0.0"
7280 }
2225 },
7281 },
2226 "prelude-ls": {
7282 "prelude-ls": {
2227 "version": "1.1.2",
7283 "version": "1.1.2",
2228 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
7284 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
2229 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
7285 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
2230 "dev": true
7286 "dev": true
2231 },
7287 },
7288 "process-on-spawn": {
7289 "version": "1.0.0",
7290 "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz",
7291 "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==",
7292 "dev": true,
7293 "requires": {
7294 "fromentries": "^1.2.0"
7295 }
7296 },
2232 "progress": {
7297 "progress": {
2233 "version": "2.0.3",
7298 "version": "2.0.3",
2234 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
7299 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
2235 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
7300 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
2236 "dev": true
7301 "dev": true
2237 },
7302 },
2238 "punycode": {
7303 "punycode": {
2239 "version": "2.1.1",
7304 "version": "2.1.1",
2240 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
7305 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
2241 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
7306 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
2242 "dev": true
7307 "dev": true
2243 },
7308 },
7309 "readdirp": {
7310 "version": "3.6.0",
7311 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
7312 "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
7313 "dev": true,
7314 "requires": {
7315 "picomatch": "^2.2.1"
7316 }
7317 },
2244 "regenerator-runtime": {
7318 "regenerator-runtime": {
2245 "version": "0.13.3",
7319 "version": "0.13.3",
2246 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
7320 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
2247 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
7321 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
2248 "dev": true
7322 "dev": true
2249 },
7323 },
2250 "regexpp": {
7324 "regexpp": {
2251 "version": "2.0.1",
7325 "version": "2.0.1",
2252 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
7326 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
2253 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
7327 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
2254 "dev": true
7328 "dev": true
2255 },
7329 },
7330 "release-zalgo": {
7331 "version": "1.0.0",
7332 "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz",
7333 "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==",
7334 "dev": true,
7335 "requires": {
7336 "es6-error": "^4.0.1"
7337 }
7338 },
7339 "require-directory": {
7340 "version": "2.1.1",
7341 "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
7342 "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
7343 "dev": true
7344 },
7345 "require-main-filename": {
7346 "version": "2.0.0",
7347 "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
7348 "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
7349 "dev": true
7350 },
2256 "requirejs": {
7351 "requirejs": {
2257 "version": "2.3.6",
7352 "version": "2.3.6",
2258 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
7353 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
2259 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
7354 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
2260 "dev": true
7355 "dev": true
2261 },
7356 },
2262 "resolve": {
7357 "resolve": {
2263 "version": "1.17.0",
7358 "version": "1.17.0",
2264 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
7359 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
2265 "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
7360 "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
2266 "dev": true,
7361 "dev": true,
2267 "requires": {
7362 "requires": {
2268 "path-parse": "^1.0.6"
7363 "path-parse": "^1.0.6"
2269 }
7364 }
2270 },
7365 },
2271 "resolve-from": {
7366 "resolve-from": {
2272 "version": "4.0.0",
7367 "version": "4.0.0",
2273 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
7368 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2274 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
7369 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
2275 "dev": true
7370 "dev": true
2276 },
7371 },
2277 "restore-cursor": {
7372 "restore-cursor": {
2278 "version": "3.1.0",
7373 "version": "3.1.0",
2279 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
7374 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
2280 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
7375 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
2281 "dev": true,
7376 "dev": true,
2282 "requires": {
7377 "requires": {
2283 "onetime": "^5.1.0",
7378 "onetime": "^5.1.0",
2284 "signal-exit": "^3.0.2"
7379 "signal-exit": "^3.0.2"
2285 }
7380 }
2286 },
7381 },
2287 "rimraf": {
7382 "rimraf": {
2288 "version": "2.6.3",
7383 "version": "2.6.3",
2289 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
7384 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
2290 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
7385 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
2291 "dev": true,
7386 "dev": true,
2292 "requires": {
7387 "requires": {
2293 "glob": "^7.1.3"
7388 "glob": "^7.1.3"
2294 }
7389 }
2295 },
7390 },
2296 "run-async": {
7391 "run-async": {
2297 "version": "2.3.0",
7392 "version": "2.3.0",
2298 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
7393 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
2299 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
7394 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
2300 "dev": true,
7395 "dev": true,
2301 "requires": {
7396 "requires": {
2302 "is-promise": "^2.1.0"
7397 "is-promise": "^2.1.0"
2303 }
7398 }
2304 },
7399 },
2305 "rxjs": {
7400 "rxjs": {
2306 "version": "6.5.4",
7401 "version": "6.5.4",
2307 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
7402 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
2308 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
7403 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
2309 "dev": true,
7404 "dev": true,
2310 "requires": {
7405 "requires": {
2311 "tslib": "^1.9.0"
7406 "tslib": "^1.9.0"
2312 }
7407 }
2313 },
7408 },
7409 "safe-buffer": {
7410 "version": "5.1.2",
7411 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
7412 "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
7413 "dev": true
7414 },
2314 "safer-buffer": {
7415 "safer-buffer": {
2315 "version": "2.1.2",
7416 "version": "2.1.2",
2316 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
7417 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
2317 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
7418 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
2318 "dev": true
7419 "dev": true
2319 },
7420 },
2320 "semver": {
7421 "semver": {
2321 "version": "6.3.0",
7422 "version": "6.3.0",
2322 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
7423 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2323 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
7424 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2324 "dev": true
7425 "dev": true
2325 },
7426 },
7427 "set-blocking": {
7428 "version": "2.0.0",
7429 "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
7430 "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
7431 "dev": true
7432 },
2326 "shebang-command": {
7433 "shebang-command": {
2327 "version": "1.2.0",
7434 "version": "1.2.0",
2328 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
7435 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
2329 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
7436 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
2330 "dev": true,
7437 "dev": true,
2331 "requires": {
7438 "requires": {
2332 "shebang-regex": "^1.0.0"
7439 "shebang-regex": "^1.0.0"
2333 }
7440 }
2334 },
7441 },
2335 "shebang-regex": {
7442 "shebang-regex": {
2336 "version": "1.0.0",
7443 "version": "1.0.0",
2337 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
7444 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
2338 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
7445 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
2339 "dev": true
7446 "dev": true
2340 },
7447 },
2341 "signal-exit": {
7448 "signal-exit": {
2342 "version": "3.0.2",
7449 "version": "3.0.7",
2343 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
7450 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
2344 "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
7451 "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
2345 "dev": true
7452 "dev": true
2346 },
7453 },
2347 "slice-ansi": {
7454 "slice-ansi": {
2348 "version": "2.1.0",
7455 "version": "2.1.0",
2349 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
7456 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
2350 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
7457 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
2351 "dev": true,
7458 "dev": true,
2352 "requires": {
7459 "requires": {
2353 "ansi-styles": "^3.2.0",
7460 "ansi-styles": "^3.2.0",
2354 "astral-regex": "^1.0.0",
7461 "astral-regex": "^1.0.0",
2355 "is-fullwidth-code-point": "^2.0.0"
7462 "is-fullwidth-code-point": "^2.0.0"
2356 },
7463 },
2357 "dependencies": {
7464 "dependencies": {
2358 "is-fullwidth-code-point": {
7465 "is-fullwidth-code-point": {
2359 "version": "2.0.0",
7466 "version": "2.0.0",
2360 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
7467 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2361 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
7468 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2362 "dev": true
7469 "dev": true
2363 }
7470 }
2364 }
7471 }
2365 },
7472 },
7473 "source-map": {
7474 "version": "0.6.1",
7475 "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
7476 "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
7477 "dev": true
7478 },
7479 "source-map-support": {
7480 "version": "0.5.21",
7481 "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
7482 "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
7483 "dev": true,
7484 "requires": {
7485 "buffer-from": "^1.0.0",
7486 "source-map": "^0.6.0"
7487 }
7488 },
7489 "spawn-wrap": {
7490 "version": "2.0.0",
7491 "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz",
7492 "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==",
7493 "dev": true,
7494 "requires": {
7495 "foreground-child": "^2.0.0",
7496 "is-windows": "^1.0.2",
7497 "make-dir": "^3.0.0",
7498 "rimraf": "^3.0.0",
7499 "signal-exit": "^3.0.2",
7500 "which": "^2.0.1"
7501 },
7502 "dependencies": {
7503 "rimraf": {
7504 "version": "3.0.2",
7505 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
7506 "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
7507 "dev": true,
7508 "requires": {
7509 "glob": "^7.1.3"
7510 }
7511 },
7512 "which": {
7513 "version": "2.0.2",
7514 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
7515 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
7516 "dev": true,
7517 "requires": {
7518 "isexe": "^2.0.0"
7519 }
7520 }
7521 }
7522 },
2366 "sprintf-js": {
7523 "sprintf-js": {
2367 "version": "1.0.3",
7524 "version": "1.0.3",
2368 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
7525 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
2369 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
7526 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
2370 "dev": true
7527 "dev": true
2371 },
7528 },
7529 "stack-utils": {
7530 "version": "2.0.5",
7531 "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz",
7532 "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==",
7533 "dev": true,
7534 "requires": {
7535 "escape-string-regexp": "^2.0.0"
7536 },
7537 "dependencies": {
7538 "escape-string-regexp": {
7539 "version": "2.0.0",
7540 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
7541 "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
7542 "dev": true
7543 }
7544 }
7545 },
2372 "string-width": {
7546 "string-width": {
2373 "version": "4.2.0",
7547 "version": "4.2.0",
2374 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
7548 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
2375 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
7549 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
2376 "dev": true,
7550 "dev": true,
2377 "requires": {
7551 "requires": {
2378 "emoji-regex": "^8.0.0",
7552 "emoji-regex": "^8.0.0",
2379 "is-fullwidth-code-point": "^3.0.0",
7553 "is-fullwidth-code-point": "^3.0.0",
2380 "strip-ansi": "^6.0.0"
7554 "strip-ansi": "^6.0.0"
2381 },
7555 },
2382 "dependencies": {
7556 "dependencies": {
2383 "strip-ansi": {
7557 "strip-ansi": {
2384 "version": "6.0.0",
7558 "version": "6.0.0",
2385 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
7559 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
2386 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
7560 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
2387 "dev": true,
7561 "dev": true,
2388 "requires": {
7562 "requires": {
2389 "ansi-regex": "^5.0.0"
7563 "ansi-regex": "^5.0.0"
2390 }
7564 }
2391 }
7565 }
2392 }
7566 }
2393 },
7567 },
2394 "strip-ansi": {
7568 "strip-ansi": {
2395 "version": "5.2.0",
7569 "version": "5.2.0",
2396 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
7570 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
2397 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
7571 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
2398 "dev": true,
7572 "dev": true,
2399 "requires": {
7573 "requires": {
2400 "ansi-regex": "^4.1.0"
7574 "ansi-regex": "^4.1.0"
2401 },
7575 },
2402 "dependencies": {
7576 "dependencies": {
2403 "ansi-regex": {
7577 "ansi-regex": {
2404 "version": "4.1.0",
7578 "version": "4.1.0",
2405 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
7579 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
2406 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
7580 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
2407 "dev": true
7581 "dev": true
2408 }
7582 }
2409 }
7583 }
2410 },
7584 },
7585 "strip-bom": {
7586 "version": "4.0.0",
7587 "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
7588 "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
7589 "dev": true
7590 },
2411 "strip-json-comments": {
7591 "strip-json-comments": {
2412 "version": "3.0.1",
7592 "version": "3.0.1",
2413 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
7593 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
2414 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
7594 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
2415 "dev": true
7595 "dev": true
2416 },
7596 },
2417 "supports-color": {
7597 "supports-color": {
2418 "version": "5.5.0",
7598 "version": "5.5.0",
2419 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
7599 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2420 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
7600 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2421 "dev": true,
7601 "dev": true,
2422 "requires": {
7602 "requires": {
2423 "has-flag": "^3.0.0"
7603 "has-flag": "^3.0.0"
2424 }
7604 }
2425 },
7605 },
2426 "table": {
7606 "table": {
2427 "version": "5.4.6",
7607 "version": "5.4.6",
2428 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
7608 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
2429 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
7609 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
2430 "dev": true,
7610 "dev": true,
2431 "requires": {
7611 "requires": {
2432 "ajv": "^6.10.2",
7612 "ajv": "^6.10.2",
2433 "lodash": "^4.17.14",
7613 "lodash": "^4.17.14",
2434 "slice-ansi": "^2.1.0",
7614 "slice-ansi": "^2.1.0",
2435 "string-width": "^3.0.0"
7615 "string-width": "^3.0.0"
2436 },
7616 },
2437 "dependencies": {
7617 "dependencies": {
2438 "emoji-regex": {
7618 "emoji-regex": {
2439 "version": "7.0.3",
7619 "version": "7.0.3",
2440 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
7620 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
2441 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
7621 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
2442 "dev": true
7622 "dev": true
2443 },
7623 },
2444 "is-fullwidth-code-point": {
7624 "is-fullwidth-code-point": {
2445 "version": "2.0.0",
7625 "version": "2.0.0",
2446 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
7626 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
2447 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
7627 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
2448 "dev": true
7628 "dev": true
2449 },
7629 },
2450 "string-width": {
7630 "string-width": {
2451 "version": "3.1.0",
7631 "version": "3.1.0",
2452 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
7632 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
2453 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
7633 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
2454 "dev": true,
7634 "dev": true,
2455 "requires": {
7635 "requires": {
2456 "emoji-regex": "^7.0.1",
7636 "emoji-regex": "^7.0.1",
2457 "is-fullwidth-code-point": "^2.0.0",
7637 "is-fullwidth-code-point": "^2.0.0",
2458 "strip-ansi": "^5.1.0"
7638 "strip-ansi": "^5.1.0"
2459 }
7639 }
2460 }
7640 }
2461 }
7641 }
2462 },
7642 },
7643 "tap": {
7644 "version": "16.3.0",
7645 "resolved": "https://registry.npmjs.org/tap/-/tap-16.3.0.tgz",
7646 "integrity": "sha512-J9GffPUAbX6FnWbQ/jj7ktzd9nnDFP1fH44OzidqOmxUfZ1hPLMOvpS99LnDiP0H2mO8GY3kGN5XoY0xIKbNFA==",
7647 "dev": true,
7648 "requires": {
7649 "@isaacs/import-jsx": "^4.0.1",
7650 "@types/react": "^17",
7651 "chokidar": "^3.3.0",
7652 "findit": "^2.0.0",
7653 "foreground-child": "^2.0.0",
7654 "fs-exists-cached": "^1.0.0",
7655 "glob": "^7.1.6",
7656 "ink": "^3.2.0",
7657 "isexe": "^2.0.0",
7658 "istanbul-lib-processinfo": "^2.0.2",
7659 "jackspeak": "^1.4.1",
7660 "libtap": "^1.4.0",
7661 "minipass": "^3.1.1",
7662 "mkdirp": "^1.0.4",
7663 "nyc": "^15.1.0",
7664 "opener": "^1.5.1",
7665 "react": "^17.0.2",
7666 "rimraf": "^3.0.0",
7667 "signal-exit": "^3.0.6",
7668 "source-map-support": "^0.5.16",
7669 "tap-mocha-reporter": "^5.0.3",
7670 "tap-parser": "^11.0.1",
7671 "tap-yaml": "^1.0.0",
7672 "tcompare": "^5.0.7",
7673 "treport": "^3.0.3",
7674 "which": "^2.0.2"
7675 },
7676 "dependencies": {
7677 "@ampproject/remapping": {
7678 "version": "2.1.2",
7679 "bundled": true,
7680 "dev": true,
7681 "requires": {
7682 "@jridgewell/trace-mapping": "^0.3.0"
7683 }
7684 },
7685 "@babel/code-frame": {
7686 "version": "7.16.7",
7687 "bundled": true,
7688 "dev": true,
7689 "requires": {
7690 "@babel/highlight": "^7.16.7"
7691 }
7692 },
7693 "@babel/compat-data": {
7694 "version": "7.17.7",
7695 "bundled": true,
7696 "dev": true
7697 },
7698 "@babel/core": {
7699 "version": "7.17.8",
7700 "bundled": true,
7701 "dev": true,
7702 "requires": {
7703 "@ampproject/remapping": "^2.1.0",
7704 "@babel/code-frame": "^7.16.7",
7705 "@babel/generator": "^7.17.7",
7706 "@babel/helper-compilation-targets": "^7.17.7",
7707 "@babel/helper-module-transforms": "^7.17.7",
7708 "@babel/helpers": "^7.17.8",
7709 "@babel/parser": "^7.17.8",
7710 "@babel/template": "^7.16.7",
7711 "@babel/traverse": "^7.17.3",
7712 "@babel/types": "^7.17.0",
7713 "convert-source-map": "^1.7.0",
7714 "debug": "^4.1.0",
7715 "gensync": "^1.0.0-beta.2",
7716 "json5": "^2.1.2",
7717 "semver": "^6.3.0"
7718 }
7719 },
7720 "@babel/generator": {
7721 "version": "7.17.7",
7722 "bundled": true,
7723 "dev": true,
7724 "requires": {
7725 "@babel/types": "^7.17.0",
7726 "jsesc": "^2.5.1",
7727 "source-map": "^0.5.0"
7728 }
7729 },
7730 "@babel/helper-annotate-as-pure": {
7731 "version": "7.16.7",
7732 "bundled": true,
7733 "dev": true,
7734 "requires": {
7735 "@babel/types": "^7.16.7"
7736 }
7737 },
7738 "@babel/helper-compilation-targets": {
7739 "version": "7.17.7",
7740 "bundled": true,
7741 "dev": true,
7742 "requires": {
7743 "@babel/compat-data": "^7.17.7",
7744 "@babel/helper-validator-option": "^7.16.7",
7745 "browserslist": "^4.17.5",
7746 "semver": "^6.3.0"
7747 }
7748 },
7749 "@babel/helper-environment-visitor": {
7750 "version": "7.16.7",
7751 "bundled": true,
7752 "dev": true,
7753 "requires": {
7754 "@babel/types": "^7.16.7"
7755 }
7756 },
7757 "@babel/helper-function-name": {
7758 "version": "7.16.7",
7759 "bundled": true,
7760 "dev": true,
7761 "requires": {
7762 "@babel/helper-get-function-arity": "^7.16.7",
7763 "@babel/template": "^7.16.7",
7764 "@babel/types": "^7.16.7"
7765 }
7766 },
7767 "@babel/helper-get-function-arity": {
7768 "version": "7.16.7",
7769 "bundled": true,
7770 "dev": true,
7771 "requires": {
7772 "@babel/types": "^7.16.7"
7773 }
7774 },
7775 "@babel/helper-hoist-variables": {
7776 "version": "7.16.7",
7777 "bundled": true,
7778 "dev": true,
7779 "requires": {
7780 "@babel/types": "^7.16.7"
7781 }
7782 },
7783 "@babel/helper-module-imports": {
7784 "version": "7.16.7",
7785 "bundled": true,
7786 "dev": true,
7787 "requires": {
7788 "@babel/types": "^7.16.7"
7789 }
7790 },
7791 "@babel/helper-module-transforms": {
7792 "version": "7.17.7",
7793 "bundled": true,
7794 "dev": true,
7795 "requires": {
7796 "@babel/helper-environment-visitor": "^7.16.7",
7797 "@babel/helper-module-imports": "^7.16.7",
7798 "@babel/helper-simple-access": "^7.17.7",
7799 "@babel/helper-split-export-declaration": "^7.16.7",
7800 "@babel/helper-validator-identifier": "^7.16.7",
7801 "@babel/template": "^7.16.7",
7802 "@babel/traverse": "^7.17.3",
7803 "@babel/types": "^7.17.0"
7804 }
7805 },
7806 "@babel/helper-plugin-utils": {
7807 "version": "7.16.7",
7808 "bundled": true,
7809 "dev": true
7810 },
7811 "@babel/helper-simple-access": {
7812 "version": "7.17.7",
7813 "bundled": true,
7814 "dev": true,
7815 "requires": {
7816 "@babel/types": "^7.17.0"
7817 }
7818 },
7819 "@babel/helper-split-export-declaration": {
7820 "version": "7.16.7",
7821 "bundled": true,
7822 "dev": true,
7823 "requires": {
7824 "@babel/types": "^7.16.7"
7825 }
7826 },
7827 "@babel/helper-validator-identifier": {
7828 "version": "7.16.7",
7829 "bundled": true,
7830 "dev": true
7831 },
7832 "@babel/helper-validator-option": {
7833 "version": "7.16.7",
7834 "bundled": true,
7835 "dev": true
7836 },
7837 "@babel/helpers": {
7838 "version": "7.17.8",
7839 "bundled": true,
7840 "dev": true,
7841 "requires": {
7842 "@babel/template": "^7.16.7",
7843 "@babel/traverse": "^7.17.3",
7844 "@babel/types": "^7.17.0"
7845 }
7846 },
7847 "@babel/highlight": {
7848 "version": "7.16.10",
7849 "bundled": true,
7850 "dev": true,
7851 "requires": {
7852 "@babel/helper-validator-identifier": "^7.16.7",
7853 "chalk": "^2.0.0",
7854 "js-tokens": "^4.0.0"
7855 }
7856 },
7857 "@babel/parser": {
7858 "version": "7.17.8",
7859 "bundled": true,
7860 "dev": true
7861 },
7862 "@babel/plugin-proposal-object-rest-spread": {
7863 "version": "7.17.3",
7864 "bundled": true,
7865 "dev": true,
7866 "requires": {
7867 "@babel/compat-data": "^7.17.0",
7868 "@babel/helper-compilation-targets": "^7.16.7",
7869 "@babel/helper-plugin-utils": "^7.16.7",
7870 "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
7871 "@babel/plugin-transform-parameters": "^7.16.7"
7872 }
7873 },
7874 "@babel/plugin-syntax-jsx": {
7875 "version": "7.16.7",
7876 "bundled": true,
7877 "dev": true,
7878 "requires": {
7879 "@babel/helper-plugin-utils": "^7.16.7"
7880 }
7881 },
7882 "@babel/plugin-syntax-object-rest-spread": {
7883 "version": "7.8.3",
7884 "bundled": true,
7885 "dev": true,
7886 "requires": {
7887 "@babel/helper-plugin-utils": "^7.8.0"
7888 }
7889 },
7890 "@babel/plugin-transform-destructuring": {
7891 "version": "7.17.7",
7892 "bundled": true,
7893 "dev": true,
7894 "requires": {
7895 "@babel/helper-plugin-utils": "^7.16.7"
7896 }
7897 },
7898 "@babel/plugin-transform-parameters": {
7899 "version": "7.16.7",
7900 "bundled": true,
7901 "dev": true,
7902 "requires": {
7903 "@babel/helper-plugin-utils": "^7.16.7"
7904 }
7905 },
7906 "@babel/plugin-transform-react-jsx": {
7907 "version": "7.17.3",
7908 "bundled": true,
7909 "dev": true,
7910 "requires": {
7911 "@babel/helper-annotate-as-pure": "^7.16.7",
7912 "@babel/helper-module-imports": "^7.16.7",
7913 "@babel/helper-plugin-utils": "^7.16.7",
7914 "@babel/plugin-syntax-jsx": "^7.16.7",
7915 "@babel/types": "^7.17.0"
7916 }
7917 },
7918 "@babel/template": {
7919 "version": "7.16.7",
7920 "bundled": true,
7921 "dev": true,
7922 "requires": {
7923 "@babel/code-frame": "^7.16.7",
7924 "@babel/parser": "^7.16.7",
7925 "@babel/types": "^7.16.7"
7926 }
7927 },
7928 "@babel/traverse": {
7929 "version": "7.17.3",
7930 "bundled": true,
7931 "dev": true,
7932 "requires": {
7933 "@babel/code-frame": "^7.16.7",
7934 "@babel/generator": "^7.17.3",
7935 "@babel/helper-environment-visitor": "^7.16.7",
7936 "@babel/helper-function-name": "^7.16.7",
7937 "@babel/helper-hoist-variables": "^7.16.7",
7938 "@babel/helper-split-export-declaration": "^7.16.7",
7939 "@babel/parser": "^7.17.3",
7940 "@babel/types": "^7.17.0",
7941 "debug": "^4.1.0",
7942 "globals": "^11.1.0"
7943 }
7944 },
7945 "@babel/types": {
7946 "version": "7.17.0",
7947 "bundled": true,
7948 "dev": true,
7949 "requires": {
7950 "@babel/helper-validator-identifier": "^7.16.7",
7951 "to-fast-properties": "^2.0.0"
7952 }
7953 },
7954 "@isaacs/import-jsx": {
7955 "version": "4.0.1",
7956 "bundled": true,
7957 "dev": true,
7958 "requires": {
7959 "@babel/core": "^7.5.5",
7960 "@babel/plugin-proposal-object-rest-spread": "^7.5.5",
7961 "@babel/plugin-transform-destructuring": "^7.5.0",
7962 "@babel/plugin-transform-react-jsx": "^7.3.0",
7963 "caller-path": "^3.0.1",
7964 "find-cache-dir": "^3.2.0",
7965 "make-dir": "^3.0.2",
7966 "resolve-from": "^3.0.0",
7967 "rimraf": "^3.0.0"
7968 }
7969 },
7970 "@jridgewell/resolve-uri": {
7971 "version": "3.0.5",
7972 "bundled": true,
7973 "dev": true
7974 },
7975 "@jridgewell/sourcemap-codec": {
7976 "version": "1.4.11",
7977 "bundled": true,
7978 "dev": true
7979 },
7980 "@jridgewell/trace-mapping": {
7981 "version": "0.3.4",
7982 "bundled": true,
7983 "dev": true,
7984 "requires": {
7985 "@jridgewell/resolve-uri": "^3.0.3",
7986 "@jridgewell/sourcemap-codec": "^1.4.10"
7987 }
7988 },
7989 "@types/prop-types": {
7990 "version": "15.7.4",
7991 "bundled": true,
7992 "dev": true
7993 },
7994 "@types/react": {
7995 "version": "17.0.41",
7996 "bundled": true,
7997 "dev": true,
7998 "requires": {
7999 "@types/prop-types": "*",
8000 "@types/scheduler": "*",
8001 "csstype": "^3.0.2"
8002 }
8003 },
8004 "@types/scheduler": {
8005 "version": "0.16.2",
8006 "bundled": true,
8007 "dev": true
8008 },
8009 "@types/yoga-layout": {
8010 "version": "1.9.2",
8011 "bundled": true,
8012 "dev": true
8013 },
8014 "ansi-escapes": {
8015 "version": "4.3.2",
8016 "bundled": true,
8017 "dev": true,
8018 "requires": {
8019 "type-fest": "^0.21.3"
8020 },
8021 "dependencies": {
8022 "type-fest": {
8023 "version": "0.21.3",
8024 "bundled": true,
8025 "dev": true
8026 }
8027 }
8028 },
8029 "ansi-regex": {
8030 "version": "5.0.1",
8031 "bundled": true,
8032 "dev": true
8033 },
8034 "ansi-styles": {
8035 "version": "3.2.1",
8036 "bundled": true,
8037 "dev": true,
8038 "requires": {
8039 "color-convert": "^1.9.0"
8040 }
8041 },
8042 "ansicolors": {
8043 "version": "0.3.2",
8044 "bundled": true,
8045 "dev": true
8046 },
8047 "astral-regex": {
8048 "version": "2.0.0",
8049 "bundled": true,
8050 "dev": true
8051 },
8052 "auto-bind": {
8053 "version": "4.0.0",
8054 "bundled": true,
8055 "dev": true
8056 },
8057 "balanced-match": {
8058 "version": "1.0.2",
8059 "bundled": true,
8060 "dev": true
8061 },
8062 "brace-expansion": {
8063 "version": "1.1.11",
8064 "bundled": true,
8065 "dev": true,
8066 "requires": {
8067 "balanced-match": "^1.0.0",
8068 "concat-map": "0.0.1"
8069 }
8070 },
8071 "browserslist": {
8072 "version": "4.20.2",
8073 "bundled": true,
8074 "dev": true,
8075 "requires": {
8076 "caniuse-lite": "^1.0.30001317",
8077 "electron-to-chromium": "^1.4.84",
8078 "escalade": "^3.1.1",
8079 "node-releases": "^2.0.2",
8080 "picocolors": "^1.0.0"
8081 }
8082 },
8083 "caller-callsite": {
8084 "version": "4.1.0",
8085 "bundled": true,
8086 "dev": true,
8087 "requires": {
8088 "callsites": "^3.1.0"
8089 }
8090 },
8091 "caller-path": {
8092 "version": "3.0.1",
8093 "bundled": true,
8094 "dev": true,
8095 "requires": {
8096 "caller-callsite": "^4.1.0"
8097 }
8098 },
8099 "callsites": {
8100 "version": "3.1.0",
8101 "bundled": true,
8102 "dev": true
8103 },
8104 "caniuse-lite": {
8105 "version": "1.0.30001319",
8106 "bundled": true,
8107 "dev": true
8108 },
8109 "cardinal": {
8110 "version": "2.1.1",
8111 "bundled": true,
8112 "dev": true,
8113 "requires": {
8114 "ansicolors": "~0.3.2",
8115 "redeyed": "~2.1.0"
8116 }
8117 },
8118 "chalk": {
8119 "version": "2.4.2",
8120 "bundled": true,
8121 "dev": true,
8122 "requires": {
8123 "ansi-styles": "^3.2.1",
8124 "escape-string-regexp": "^1.0.5",
8125 "supports-color": "^5.3.0"
8126 }
8127 },
8128 "ci-info": {
8129 "version": "2.0.0",
8130 "bundled": true,
8131 "dev": true
8132 },
8133 "cli-boxes": {
8134 "version": "2.2.1",
8135 "bundled": true,
8136 "dev": true
8137 },
8138 "cli-cursor": {
8139 "version": "3.1.0",
8140 "bundled": true,
8141 "dev": true,
8142 "requires": {
8143 "restore-cursor": "^3.1.0"
8144 }
8145 },
8146 "cli-truncate": {
8147 "version": "2.1.0",
8148 "bundled": true,
8149 "dev": true,
8150 "requires": {
8151 "slice-ansi": "^3.0.0",
8152 "string-width": "^4.2.0"
8153 }
8154 },
8155 "code-excerpt": {
8156 "version": "3.0.0",
8157 "bundled": true,
8158 "dev": true,
8159 "requires": {
8160 "convert-to-spaces": "^1.0.1"
8161 }
8162 },
8163 "color-convert": {
8164 "version": "1.9.3",
8165 "bundled": true,
8166 "dev": true,
8167 "requires": {
8168 "color-name": "1.1.3"
8169 }
8170 },
8171 "color-name": {
8172 "version": "1.1.3",
8173 "bundled": true,
8174 "dev": true
8175 },
8176 "commondir": {
8177 "version": "1.0.1",
8178 "bundled": true,
8179 "dev": true
8180 },
8181 "concat-map": {
8182 "version": "0.0.1",
8183 "bundled": true,
8184 "dev": true
8185 },
8186 "convert-source-map": {
8187 "version": "1.8.0",
8188 "bundled": true,
8189 "dev": true,
8190 "requires": {
8191 "safe-buffer": "~5.1.1"
8192 }
8193 },
8194 "convert-to-spaces": {
8195 "version": "1.0.2",
8196 "bundled": true,
8197 "dev": true
8198 },
8199 "csstype": {
8200 "version": "3.0.11",
8201 "bundled": true,
8202 "dev": true
8203 },
8204 "debug": {
8205 "version": "4.3.4",
8206 "bundled": true,
8207 "dev": true,
8208 "requires": {
8209 "ms": "2.1.2"
8210 }
8211 },
8212 "electron-to-chromium": {
8213 "version": "1.4.89",
8214 "bundled": true,
8215 "dev": true
8216 },
8217 "emoji-regex": {
8218 "version": "8.0.0",
8219 "bundled": true,
8220 "dev": true
8221 },
8222 "escalade": {
8223 "version": "3.1.1",
8224 "bundled": true,
8225 "dev": true
8226 },
8227 "escape-string-regexp": {
8228 "version": "1.0.5",
8229 "bundled": true,
8230 "dev": true
8231 },
8232 "esprima": {
8233 "version": "4.0.1",
8234 "bundled": true,
8235 "dev": true
8236 },
8237 "events-to-array": {
8238 "version": "1.1.2",
8239 "bundled": true,
8240 "dev": true
8241 },
8242 "find-cache-dir": {
8243 "version": "3.3.2",
8244 "bundled": true,
8245 "dev": true,
8246 "requires": {
8247 "commondir": "^1.0.1",
8248 "make-dir": "^3.0.2",
8249 "pkg-dir": "^4.1.0"
8250 }
8251 },
8252 "find-up": {
8253 "version": "4.1.0",
8254 "bundled": true,
8255 "dev": true,
8256 "requires": {
8257 "locate-path": "^5.0.0",
8258 "path-exists": "^4.0.0"
8259 }
8260 },
8261 "fs.realpath": {
8262 "version": "1.0.0",
8263 "bundled": true,
8264 "dev": true
8265 },
8266 "gensync": {
8267 "version": "1.0.0-beta.2",
8268 "bundled": true,
8269 "dev": true
8270 },
8271 "glob": {
8272 "version": "7.2.0",
8273 "bundled": true,
8274 "dev": true,
8275 "requires": {
8276 "fs.realpath": "^1.0.0",
8277 "inflight": "^1.0.4",
8278 "inherits": "2",
8279 "minimatch": "^3.0.4",
8280 "once": "^1.3.0",
8281 "path-is-absolute": "^1.0.0"
8282 }
8283 },
8284 "globals": {
8285 "version": "11.12.0",
8286 "bundled": true,
8287 "dev": true
8288 },
8289 "has-flag": {
8290 "version": "3.0.0",
8291 "bundled": true,
8292 "dev": true
8293 },
8294 "indent-string": {
8295 "version": "4.0.0",
8296 "bundled": true,
8297 "dev": true
8298 },
8299 "inflight": {
8300 "version": "1.0.6",
8301 "bundled": true,
8302 "dev": true,
8303 "requires": {
8304 "once": "^1.3.0",
8305 "wrappy": "1"
8306 }
8307 },
8308 "inherits": {
8309 "version": "2.0.4",
8310 "bundled": true,
8311 "dev": true
8312 },
8313 "ink": {
8314 "version": "3.2.0",
8315 "bundled": true,
8316 "dev": true,
8317 "requires": {
8318 "ansi-escapes": "^4.2.1",
8319 "auto-bind": "4.0.0",
8320 "chalk": "^4.1.0",
8321 "cli-boxes": "^2.2.0",
8322 "cli-cursor": "^3.1.0",
8323 "cli-truncate": "^2.1.0",
8324 "code-excerpt": "^3.0.0",
8325 "indent-string": "^4.0.0",
8326 "is-ci": "^2.0.0",
8327 "lodash": "^4.17.20",
8328 "patch-console": "^1.0.0",
8329 "react-devtools-core": "^4.19.1",
8330 "react-reconciler": "^0.26.2",
8331 "scheduler": "^0.20.2",
8332 "signal-exit": "^3.0.2",
8333 "slice-ansi": "^3.0.0",
8334 "stack-utils": "^2.0.2",
8335 "string-width": "^4.2.2",
8336 "type-fest": "^0.12.0",
8337 "widest-line": "^3.1.0",
8338 "wrap-ansi": "^6.2.0",
8339 "ws": "^7.5.5",
8340 "yoga-layout-prebuilt": "^1.9.6"
8341 },
8342 "dependencies": {
8343 "ansi-styles": {
8344 "version": "4.3.0",
8345 "bundled": true,
8346 "dev": true,
8347 "requires": {
8348 "color-convert": "^2.0.1"
8349 }
8350 },
8351 "chalk": {
8352 "version": "4.1.2",
8353 "bundled": true,
8354 "dev": true,
8355 "requires": {
8356 "ansi-styles": "^4.1.0",
8357 "supports-color": "^7.1.0"
8358 }
8359 },
8360 "color-convert": {
8361 "version": "2.0.1",
8362 "bundled": true,
8363 "dev": true,
8364 "requires": {
8365 "color-name": "~1.1.4"
8366 }
8367 },
8368 "color-name": {
8369 "version": "1.1.4",
8370 "bundled": true,
8371 "dev": true
8372 },
8373 "has-flag": {
8374 "version": "4.0.0",
8375 "bundled": true,
8376 "dev": true
8377 },
8378 "supports-color": {
8379 "version": "7.2.0",
8380 "bundled": true,
8381 "dev": true,
8382 "requires": {
8383 "has-flag": "^4.0.0"
8384 }
8385 }
8386 }
8387 },
8388 "is-ci": {
8389 "version": "2.0.0",
8390 "bundled": true,
8391 "dev": true,
8392 "requires": {
8393 "ci-info": "^2.0.0"
8394 }
8395 },
8396 "is-fullwidth-code-point": {
8397 "version": "3.0.0",
8398 "bundled": true,
8399 "dev": true
8400 },
8401 "js-tokens": {
8402 "version": "4.0.0",
8403 "bundled": true,
8404 "dev": true
8405 },
8406 "jsesc": {
8407 "version": "2.5.2",
8408 "bundled": true,
8409 "dev": true
8410 },
8411 "json5": {
8412 "version": "2.2.1",
8413 "bundled": true,
8414 "dev": true
8415 },
8416 "locate-path": {
8417 "version": "5.0.0",
8418 "bundled": true,
8419 "dev": true,
8420 "requires": {
8421 "p-locate": "^4.1.0"
8422 }
8423 },
8424 "lodash": {
8425 "version": "4.17.21",
8426 "bundled": true,
8427 "dev": true
8428 },
8429 "loose-envify": {
8430 "version": "1.4.0",
8431 "bundled": true,
8432 "dev": true,
8433 "requires": {
8434 "js-tokens": "^3.0.0 || ^4.0.0"
8435 }
8436 },
8437 "make-dir": {
8438 "version": "3.1.0",
8439 "bundled": true,
8440 "dev": true,
8441 "requires": {
8442 "semver": "^6.0.0"
8443 }
8444 },
8445 "mimic-fn": {
8446 "version": "2.1.0",
8447 "bundled": true,
8448 "dev": true
8449 },
8450 "minimatch": {
8451 "version": "3.1.2",
8452 "bundled": true,
8453 "dev": true,
8454 "requires": {
8455 "brace-expansion": "^1.1.7"
8456 }
8457 },
8458 "minipass": {
8459 "version": "3.1.6",
8460 "bundled": true,
8461 "dev": true,
8462 "requires": {
8463 "yallist": "^4.0.0"
8464 }
8465 },
8466 "mkdirp": {
8467 "version": "1.0.4",
8468 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
8469 "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
8470 "dev": true
8471 },
8472 "ms": {
8473 "version": "2.1.2",
8474 "bundled": true,
8475 "dev": true
8476 },
8477 "node-releases": {
8478 "version": "2.0.2",
8479 "bundled": true,
8480 "dev": true
8481 },
8482 "object-assign": {
8483 "version": "4.1.1",
8484 "bundled": true,
8485 "dev": true
8486 },
8487 "once": {
8488 "version": "1.4.0",
8489 "bundled": true,
8490 "dev": true,
8491 "requires": {
8492 "wrappy": "1"
8493 }
8494 },
8495 "onetime": {
8496 "version": "5.1.2",
8497 "bundled": true,
8498 "dev": true,
8499 "requires": {
8500 "mimic-fn": "^2.1.0"
8501 }
8502 },
8503 "p-limit": {
8504 "version": "2.3.0",
8505 "bundled": true,
8506 "dev": true,
8507 "requires": {
8508 "p-try": "^2.0.0"
8509 }
8510 },
8511 "p-locate": {
8512 "version": "4.1.0",
8513 "bundled": true,
8514 "dev": true,
8515 "requires": {
8516 "p-limit": "^2.2.0"
8517 }
8518 },
8519 "p-try": {
8520 "version": "2.2.0",
8521 "bundled": true,
8522 "dev": true
8523 },
8524 "patch-console": {
8525 "version": "1.0.0",
8526 "bundled": true,
8527 "dev": true
8528 },
8529 "path-exists": {
8530 "version": "4.0.0",
8531 "bundled": true,
8532 "dev": true
8533 },
8534 "path-is-absolute": {
8535 "version": "1.0.1",
8536 "bundled": true,
8537 "dev": true
8538 },
8539 "picocolors": {
8540 "version": "1.0.0",
8541 "bundled": true,
8542 "dev": true
8543 },
8544 "pkg-dir": {
8545 "version": "4.2.0",
8546 "bundled": true,
8547 "dev": true,
8548 "requires": {
8549 "find-up": "^4.0.0"
8550 }
8551 },
8552 "punycode": {
8553 "version": "2.1.1",
8554 "bundled": true,
8555 "dev": true
8556 },
8557 "react": {
8558 "version": "17.0.2",
8559 "bundled": true,
8560 "dev": true,
8561 "requires": {
8562 "loose-envify": "^1.1.0",
8563 "object-assign": "^4.1.1"
8564 }
8565 },
8566 "react-devtools-core": {
8567 "version": "4.24.1",
8568 "bundled": true,
8569 "dev": true,
8570 "requires": {
8571 "shell-quote": "^1.6.1",
8572 "ws": "^7"
8573 }
8574 },
8575 "react-reconciler": {
8576 "version": "0.26.2",
8577 "bundled": true,
8578 "dev": true,
8579 "requires": {
8580 "loose-envify": "^1.1.0",
8581 "object-assign": "^4.1.1",
8582 "scheduler": "^0.20.2"
8583 }
8584 },
8585 "redeyed": {
8586 "version": "2.1.1",
8587 "bundled": true,
8588 "dev": true,
8589 "requires": {
8590 "esprima": "~4.0.0"
8591 }
8592 },
8593 "resolve-from": {
8594 "version": "3.0.0",
8595 "bundled": true,
8596 "dev": true
8597 },
8598 "restore-cursor": {
8599 "version": "3.1.0",
8600 "bundled": true,
8601 "dev": true,
8602 "requires": {
8603 "onetime": "^5.1.0",
8604 "signal-exit": "^3.0.2"
8605 }
8606 },
8607 "rimraf": {
8608 "version": "3.0.2",
8609 "bundled": true,
8610 "dev": true,
8611 "requires": {
8612 "glob": "^7.1.3"
8613 }
8614 },
8615 "safe-buffer": {
8616 "version": "5.1.2",
8617 "bundled": true,
8618 "dev": true
8619 },
8620 "scheduler": {
8621 "version": "0.20.2",
8622 "bundled": true,
8623 "dev": true,
8624 "requires": {
8625 "loose-envify": "^1.1.0",
8626 "object-assign": "^4.1.1"
8627 }
8628 },
8629 "semver": {
8630 "version": "6.3.0",
8631 "bundled": true,
8632 "dev": true
8633 },
8634 "shell-quote": {
8635 "version": "1.7.3",
8636 "bundled": true,
8637 "dev": true
8638 },
8639 "signal-exit": {
8640 "version": "3.0.7",
8641 "bundled": true,
8642 "dev": true
8643 },
8644 "slice-ansi": {
8645 "version": "3.0.0",
8646 "bundled": true,
8647 "dev": true,
8648 "requires": {
8649 "ansi-styles": "^4.0.0",
8650 "astral-regex": "^2.0.0",
8651 "is-fullwidth-code-point": "^3.0.0"
8652 },
8653 "dependencies": {
8654 "ansi-styles": {
8655 "version": "4.3.0",
8656 "bundled": true,
8657 "dev": true,
8658 "requires": {
8659 "color-convert": "^2.0.1"
8660 }
8661 },
8662 "color-convert": {
8663 "version": "2.0.1",
8664 "bundled": true,
8665 "dev": true,
8666 "requires": {
8667 "color-name": "~1.1.4"
8668 }
8669 },
8670 "color-name": {
8671 "version": "1.1.4",
8672 "bundled": true,
8673 "dev": true
8674 }
8675 }
8676 },
8677 "source-map": {
8678 "version": "0.5.7",
8679 "bundled": true,
8680 "dev": true
8681 },
8682 "stack-utils": {
8683 "version": "2.0.5",
8684 "bundled": true,
8685 "dev": true,
8686 "requires": {
8687 "escape-string-regexp": "^2.0.0"
8688 },
8689 "dependencies": {
8690 "escape-string-regexp": {
8691 "version": "2.0.0",
8692 "bundled": true,
8693 "dev": true
8694 }
8695 }
8696 },
8697 "string-width": {
8698 "version": "4.2.3",
8699 "bundled": true,
8700 "dev": true,
8701 "requires": {
8702 "emoji-regex": "^8.0.0",
8703 "is-fullwidth-code-point": "^3.0.0",
8704 "strip-ansi": "^6.0.1"
8705 }
8706 },
8707 "strip-ansi": {
8708 "version": "6.0.1",
8709 "bundled": true,
8710 "dev": true,
8711 "requires": {
8712 "ansi-regex": "^5.0.1"
8713 }
8714 },
8715 "supports-color": {
8716 "version": "5.5.0",
8717 "bundled": true,
8718 "dev": true,
8719 "requires": {
8720 "has-flag": "^3.0.0"
8721 }
8722 },
8723 "tap-parser": {
8724 "version": "11.0.1",
8725 "bundled": true,
8726 "dev": true,
8727 "requires": {
8728 "events-to-array": "^1.0.1",
8729 "minipass": "^3.1.6",
8730 "tap-yaml": "^1.0.0"
8731 }
8732 },
8733 "tap-yaml": {
8734 "version": "1.0.0",
8735 "bundled": true,
8736 "dev": true,
8737 "requires": {
8738 "yaml": "^1.5.0"
8739 }
8740 },
8741 "to-fast-properties": {
8742 "version": "2.0.0",
8743 "bundled": true,
8744 "dev": true
8745 },
8746 "treport": {
8747 "version": "3.0.3",
8748 "bundled": true,
8749 "dev": true,
8750 "requires": {
8751 "@isaacs/import-jsx": "^4.0.1",
8752 "cardinal": "^2.1.1",
8753 "chalk": "^3.0.0",
8754 "ink": "^3.2.0",
8755 "ms": "^2.1.2",
8756 "tap-parser": "^11.0.0",
8757 "unicode-length": "^2.0.2"
8758 },
8759 "dependencies": {
8760 "ansi-styles": {
8761 "version": "4.3.0",
8762 "bundled": true,
8763 "dev": true,
8764 "requires": {
8765 "color-convert": "^2.0.1"
8766 }
8767 },
8768 "chalk": {
8769 "version": "3.0.0",
8770 "bundled": true,
8771 "dev": true,
8772 "requires": {
8773 "ansi-styles": "^4.1.0",
8774 "supports-color": "^7.1.0"
8775 }
8776 },
8777 "color-convert": {
8778 "version": "2.0.1",
8779 "bundled": true,
8780 "dev": true,
8781 "requires": {
8782 "color-name": "~1.1.4"
8783 }
8784 },
8785 "color-name": {
8786 "version": "1.1.4",
8787 "bundled": true,
8788 "dev": true
8789 },
8790 "has-flag": {
8791 "version": "4.0.0",
8792 "bundled": true,
8793 "dev": true
8794 },
8795 "supports-color": {
8796 "version": "7.2.0",
8797 "bundled": true,
8798 "dev": true,
8799 "requires": {
8800 "has-flag": "^4.0.0"
8801 }
8802 }
8803 }
8804 },
8805 "type-fest": {
8806 "version": "0.12.0",
8807 "bundled": true,
8808 "dev": true
8809 },
8810 "unicode-length": {
8811 "version": "2.0.2",
8812 "bundled": true,
8813 "dev": true,
8814 "requires": {
8815 "punycode": "^2.0.0",
8816 "strip-ansi": "^3.0.1"
8817 },
8818 "dependencies": {
8819 "ansi-regex": {
8820 "version": "2.1.1",
8821 "bundled": true,
8822 "dev": true
8823 },
8824 "strip-ansi": {
8825 "version": "3.0.1",
8826 "bundled": true,
8827 "dev": true,
8828 "requires": {
8829 "ansi-regex": "^2.0.0"
8830 }
8831 }
8832 }
8833 },
8834 "which": {
8835 "version": "2.0.2",
8836 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
8837 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
8838 "dev": true,
8839 "requires": {
8840 "isexe": "^2.0.0"
8841 }
8842 },
8843 "widest-line": {
8844 "version": "3.1.0",
8845 "bundled": true,
8846 "dev": true,
8847 "requires": {
8848 "string-width": "^4.0.0"
8849 }
8850 },
8851 "wrap-ansi": {
8852 "version": "6.2.0",
8853 "bundled": true,
8854 "dev": true,
8855 "requires": {
8856 "ansi-styles": "^4.0.0",
8857 "string-width": "^4.1.0",
8858 "strip-ansi": "^6.0.0"
8859 },
8860 "dependencies": {
8861 "ansi-styles": {
8862 "version": "4.3.0",
8863 "bundled": true,
8864 "dev": true,
8865 "requires": {
8866 "color-convert": "^2.0.1"
8867 }
8868 },
8869 "color-convert": {
8870 "version": "2.0.1",
8871 "bundled": true,
8872 "dev": true,
8873 "requires": {
8874 "color-name": "~1.1.4"
8875 }
8876 },
8877 "color-name": {
8878 "version": "1.1.4",
8879 "bundled": true,
8880 "dev": true
8881 }
8882 }
8883 },
8884 "wrappy": {
8885 "version": "1.0.2",
8886 "bundled": true,
8887 "dev": true
8888 },
8889 "ws": {
8890 "version": "7.5.7",
8891 "bundled": true,
8892 "dev": true,
8893 "requires": {}
8894 },
8895 "yallist": {
8896 "version": "4.0.0",
8897 "bundled": true,
8898 "dev": true
8899 },
8900 "yaml": {
8901 "version": "1.10.2",
8902 "bundled": true,
8903 "dev": true
8904 },
8905 "yoga-layout-prebuilt": {
8906 "version": "1.10.0",
8907 "bundled": true,
8908 "dev": true,
8909 "requires": {
8910 "@types/yoga-layout": "1.9.2"
8911 }
8912 }
8913 }
8914 },
8915 "tap-mocha-reporter": {
8916 "version": "5.0.3",
8917 "resolved": "https://registry.npmjs.org/tap-mocha-reporter/-/tap-mocha-reporter-5.0.3.tgz",
8918 "integrity": "sha512-6zlGkaV4J+XMRFkN0X+yuw6xHbE9jyCZ3WUKfw4KxMyRGOpYSRuuQTRJyWX88WWuLdVTuFbxzwXhXuS2XE6o0g==",
8919 "dev": true,
8920 "requires": {
8921 "color-support": "^1.1.0",
8922 "debug": "^4.1.1",
8923 "diff": "^4.0.1",
8924 "escape-string-regexp": "^2.0.0",
8925 "glob": "^7.0.5",
8926 "tap-parser": "^11.0.0",
8927 "tap-yaml": "^1.0.0",
8928 "unicode-length": "^2.0.2"
8929 },
8930 "dependencies": {
8931 "escape-string-regexp": {
8932 "version": "2.0.0",
8933 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
8934 "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==",
8935 "dev": true
8936 }
8937 }
8938 },
8939 "tap-parser": {
8940 "version": "11.0.1",
8941 "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-11.0.1.tgz",
8942 "integrity": "sha512-5ow0oyFOnXVSALYdidMX94u0GEjIlgc/BPFYLx0yRh9hb8+cFGNJqJzDJlUqbLOwx8+NBrIbxCWkIQi7555c0w==",
8943 "dev": true,
8944 "requires": {
8945 "events-to-array": "^1.0.1",
8946 "minipass": "^3.1.6",
8947 "tap-yaml": "^1.0.0"
8948 }
8949 },
8950 "tap-yaml": {
8951 "version": "1.0.0",
8952 "resolved": "https://registry.npmjs.org/tap-yaml/-/tap-yaml-1.0.0.tgz",
8953 "integrity": "sha512-Rxbx4EnrWkYk0/ztcm5u3/VznbyFJpyXO12dDBHKWiDVxy7O2Qw6MRrwO5H6Ww0U5YhRY/4C/VzWmFPhBQc4qQ==",
8954 "dev": true,
8955 "requires": {
8956 "yaml": "^1.5.0"
8957 }
8958 },
8959 "tcompare": {
8960 "version": "5.0.7",
8961 "resolved": "https://registry.npmjs.org/tcompare/-/tcompare-5.0.7.tgz",
8962 "integrity": "sha512-d9iddt6YYGgyxJw5bjsN7UJUO1kGOtjSlNy/4PoGYAjQS5pAT/hzIoLf1bZCw+uUxRmZJh7Yy1aA7xKVRT9B4w==",
8963 "dev": true,
8964 "requires": {
8965 "diff": "^4.0.2"
8966 }
8967 },
8968 "test-exclude": {
8969 "version": "6.0.0",
8970 "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
8971 "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
8972 "dev": true,
8973 "requires": {
8974 "@istanbuljs/schema": "^0.1.2",
8975 "glob": "^7.1.4",
8976 "minimatch": "^3.0.4"
8977 }
8978 },
2463 "text-table": {
8979 "text-table": {
2464 "version": "0.2.0",
8980 "version": "0.2.0",
2465 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
8981 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
2466 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
8982 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
2467 "dev": true
8983 "dev": true
2468 },
8984 },
2469 "through": {
8985 "through": {
2470 "version": "2.3.8",
8986 "version": "2.3.8",
2471 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
8987 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
2472 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
8988 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
2473 "dev": true
8989 "dev": true
2474 },
8990 },
2475 "tmp": {
8991 "tmp": {
2476 "version": "0.0.33",
8992 "version": "0.0.33",
2477 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
8993 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
2478 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
8994 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
2479 "dev": true,
8995 "dev": true,
2480 "requires": {
8996 "requires": {
2481 "os-tmpdir": "~1.0.2"
8997 "os-tmpdir": "~1.0.2"
2482 }
8998 }
2483 },
8999 },
9000 "to-fast-properties": {
9001 "version": "2.0.0",
9002 "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
9003 "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
9004 "dev": true
9005 },
9006 "to-regex-range": {
9007 "version": "5.0.1",
9008 "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
9009 "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
9010 "dev": true,
9011 "requires": {
9012 "is-number": "^7.0.0"
9013 }
9014 },
9015 "trivial-deferred": {
9016 "version": "1.0.1",
9017 "resolved": "https://registry.npmjs.org/trivial-deferred/-/trivial-deferred-1.0.1.tgz",
9018 "integrity": "sha512-dagAKX7vaesNNAwOc9Np9C2mJ+7YopF4lk+jE2JML9ta4kZ91Y6UruJNH65bLRYoUROD8EY+Pmi44qQWwXR7sw==",
9019 "dev": true
9020 },
2484 "tslib": {
9021 "tslib": {
2485 "version": "1.10.0",
9022 "version": "1.10.0",
2486 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
9023 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
2487 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
9024 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
2488 "dev": true
9025 "dev": true
2489 },
9026 },
2490 "tslint": {
9027 "tslint": {
2491 "version": "6.1.3",
9028 "version": "6.1.3",
2492 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz",
9029 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz",
2493 "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==",
9030 "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==",
2494 "dev": true,
9031 "dev": true,
2495 "requires": {
9032 "requires": {
2496 "@babel/code-frame": "^7.0.0",
9033 "@babel/code-frame": "^7.0.0",
2497 "builtin-modules": "^1.1.1",
9034 "builtin-modules": "^1.1.1",
2498 "chalk": "^2.3.0",
9035 "chalk": "^2.3.0",
2499 "commander": "^2.12.1",
9036 "commander": "^2.12.1",
2500 "diff": "^4.0.1",
9037 "diff": "^4.0.1",
2501 "glob": "^7.1.1",
9038 "glob": "^7.1.1",
2502 "js-yaml": "^3.13.1",
9039 "js-yaml": "^3.13.1",
2503 "minimatch": "^3.0.4",
9040 "minimatch": "^3.0.4",
2504 "mkdirp": "^0.5.3",
9041 "mkdirp": "^0.5.3",
2505 "resolve": "^1.3.2",
9042 "resolve": "^1.3.2",
2506 "semver": "^5.3.0",
9043 "semver": "^5.3.0",
2507 "tslib": "^1.13.0",
9044 "tslib": "^1.13.0",
2508 "tsutils": "^2.29.0"
9045 "tsutils": "^2.29.0"
2509 },
9046 },
2510 "dependencies": {
9047 "dependencies": {
2511 "semver": {
9048 "semver": {
2512 "version": "5.7.1",
9049 "version": "5.7.1",
2513 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
9050 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
2514 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
9051 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
2515 "dev": true
9052 "dev": true
2516 },
9053 },
2517 "tslib": {
9054 "tslib": {
2518 "version": "1.13.0",
9055 "version": "1.13.0",
2519 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
9056 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
2520 "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
9057 "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
2521 "dev": true
9058 "dev": true
2522 }
9059 }
2523 }
9060 }
2524 },
9061 },
2525 "tsutils": {
9062 "tsutils": {
2526 "version": "2.29.0",
9063 "version": "2.29.0",
2527 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
9064 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
2528 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
9065 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
2529 "dev": true,
9066 "dev": true,
2530 "requires": {
9067 "requires": {
2531 "tslib": "^1.8.1"
9068 "tslib": "^1.8.1"
2532 }
9069 }
2533 },
9070 },
2534 "type-check": {
9071 "type-check": {
2535 "version": "0.3.2",
9072 "version": "0.3.2",
2536 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
9073 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
2537 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
9074 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
2538 "dev": true,
9075 "dev": true,
2539 "requires": {
9076 "requires": {
2540 "prelude-ls": "~1.1.2"
9077 "prelude-ls": "~1.1.2"
2541 }
9078 }
2542 },
9079 },
2543 "type-fest": {
9080 "type-fest": {
2544 "version": "0.8.1",
9081 "version": "0.8.1",
2545 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
9082 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
2546 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
9083 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
2547 "dev": true
9084 "dev": true
2548 },
9085 },
9086 "typedarray-to-buffer": {
9087 "version": "3.1.5",
9088 "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
9089 "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
9090 "dev": true,
9091 "requires": {
9092 "is-typedarray": "^1.0.0"
9093 }
9094 },
2549 "typescript": {
9095 "typescript": {
2550 "version": "4.7.4",
9096 "version": "4.8.2",
2551 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.4.tgz",
9097 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
2552 "integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
9098 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
2553 "dev": true
9099 "dev": true
9100 },
9101 "unicode-length": {
9102 "version": "2.1.0",
9103 "resolved": "https://registry.npmjs.org/unicode-length/-/unicode-length-2.1.0.tgz",
9104 "integrity": "sha512-4bV582zTV9Q02RXBxSUMiuN/KHo5w4aTojuKTNT96DIKps/SIawFp7cS5Mu25VuY1AioGXrmYyzKZUzh8OqoUw==",
9105 "dev": true,
9106 "requires": {
9107 "punycode": "^2.0.0"
9108 }
9109 },
9110 "update-browserslist-db": {
9111 "version": "1.0.7",
9112 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.7.tgz",
9113 "integrity": "sha512-iN/XYesmZ2RmmWAiI4Z5rq0YqSiv0brj9Ce9CfhNE4xIW2h+MFxcgkxIzZ+ShkFPUkjU3gQ+3oypadD3RAMtrg==",
9114 "dev": true,
9115 "requires": {
9116 "escalade": "^3.1.1",
9117 "picocolors": "^1.0.0"
9118 }
2554 },
9119 },
2555 "uri-js": {
9120 "uri-js": {
2556 "version": "4.2.2",
9121 "version": "4.2.2",
2557 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
9122 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
2558 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
9123 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
2559 "dev": true,
9124 "dev": true,
2560 "requires": {
9125 "requires": {
2561 "punycode": "^2.1.0"
9126 "punycode": "^2.1.0"
2562 }
9127 }
2563 },
9128 },
9129 "uuid": {
9130 "version": "8.3.2",
9131 "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
9132 "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
9133 "dev": true
9134 },
2564 "v8-compile-cache": {
9135 "v8-compile-cache": {
2565 "version": "2.1.0",
9136 "version": "2.1.0",
2566 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
9137 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
2567 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
9138 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
2568 "dev": true
9139 "dev": true
2569 },
9140 },
2570 "which": {
9141 "which": {
2571 "version": "1.3.1",
9142 "version": "1.3.1",
2572 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
9143 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
2573 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
9144 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
2574 "dev": true,
9145 "dev": true,
2575 "requires": {
9146 "requires": {
2576 "isexe": "^2.0.0"
9147 "isexe": "^2.0.0"
2577 }
9148 }
2578 },
9149 },
9150 "which-module": {
9151 "version": "2.0.0",
9152 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
9153 "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==",
9154 "dev": true
9155 },
2579 "word-wrap": {
9156 "word-wrap": {
2580 "version": "1.2.3",
9157 "version": "1.2.3",
2581 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
9158 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
2582 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
9159 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
2583 "dev": true
9160 "dev": true
2584 },
9161 },
9162 "wrap-ansi": {
9163 "version": "7.0.0",
9164 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
9165 "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
9166 "dev": true,
9167 "requires": {
9168 "ansi-styles": "^4.0.0",
9169 "string-width": "^4.1.0",
9170 "strip-ansi": "^6.0.0"
9171 },
9172 "dependencies": {
9173 "ansi-styles": {
9174 "version": "4.3.0",
9175 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
9176 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
9177 "dev": true,
9178 "requires": {
9179 "color-convert": "^2.0.1"
9180 }
9181 },
9182 "color-convert": {
9183 "version": "2.0.1",
9184 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
9185 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
9186 "dev": true,
9187 "requires": {
9188 "color-name": "~1.1.4"
9189 }
9190 },
9191 "color-name": {
9192 "version": "1.1.4",
9193 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
9194 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
9195 "dev": true
9196 },
9197 "strip-ansi": {
9198 "version": "6.0.1",
9199 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
9200 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
9201 "dev": true,
9202 "requires": {
9203 "ansi-regex": "^5.0.1"
9204 }
9205 }
9206 }
9207 },
2585 "wrappy": {
9208 "wrappy": {
2586 "version": "1.0.2",
9209 "version": "1.0.2",
2587 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
9210 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
2588 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
9211 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
2589 "dev": true
9212 "dev": true
2590 },
9213 },
2591 "write": {
9214 "write": {
2592 "version": "1.0.3",
9215 "version": "1.0.3",
2593 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
9216 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
2594 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
9217 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
2595 "dev": true,
9218 "dev": true,
2596 "requires": {
9219 "requires": {
2597 "mkdirp": "^0.5.1"
9220 "mkdirp": "^0.5.1"
2598 }
9221 }
2599 },
9222 },
9223 "write-file-atomic": {
9224 "version": "3.0.3",
9225 "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
9226 "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
9227 "dev": true,
9228 "requires": {
9229 "imurmurhash": "^0.1.4",
9230 "is-typedarray": "^1.0.0",
9231 "signal-exit": "^3.0.2",
9232 "typedarray-to-buffer": "^3.1.5"
9233 }
9234 },
9235 "y18n": {
9236 "version": "4.0.3",
9237 "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
9238 "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
9239 "dev": true
9240 },
9241 "yallist": {
9242 "version": "4.0.0",
9243 "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
9244 "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
9245 "dev": true
9246 },
2600 "yaml": {
9247 "yaml": {
2601 "version": "1.7.2",
9248 "version": "1.7.2",
2602 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
9249 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
2603 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
9250 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
2604 "dev": true,
9251 "dev": true,
2605 "requires": {
9252 "requires": {
2606 "@babel/runtime": "^7.6.3"
9253 "@babel/runtime": "^7.6.3"
2607 }
9254 }
2608 }
9255 },
2609 }
9256 "yargs": {
2610 }
9257 "version": "15.4.1",
9258 "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
9259 "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
9260 "dev": true,
9261 "requires": {
9262 "cliui": "^6.0.0",
9263 "decamelize": "^1.2.0",
9264 "find-up": "^4.1.0",
9265 "get-caller-file": "^2.0.1",
9266 "require-directory": "^2.1.1",
9267 "require-main-filename": "^2.0.0",
9268 "set-blocking": "^2.0.0",
9269 "string-width": "^4.2.0",
9270 "which-module": "^2.0.0",
9271 "y18n": "^4.0.0",
9272 "yargs-parser": "^18.1.2"
9273 },
9274 "dependencies": {
9275 "ansi-styles": {
9276 "version": "4.3.0",
9277 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
9278 "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
9279 "dev": true,
9280 "requires": {
9281 "color-convert": "^2.0.1"
9282 }
9283 },
9284 "cliui": {
9285 "version": "6.0.0",
9286 "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
9287 "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
9288 "dev": true,
9289 "requires": {
9290 "string-width": "^4.2.0",
9291 "strip-ansi": "^6.0.0",
9292 "wrap-ansi": "^6.2.0"
9293 }
9294 },
9295 "color-convert": {
9296 "version": "2.0.1",
9297 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
9298 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
9299 "dev": true,
9300 "requires": {
9301 "color-name": "~1.1.4"
9302 }
9303 },
9304 "color-name": {
9305 "version": "1.1.4",
9306 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
9307 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
9308 "dev": true
9309 },
9310 "strip-ansi": {
9311 "version": "6.0.1",
9312 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
9313 "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
9314 "dev": true,
9315 "requires": {
9316 "ansi-regex": "^5.0.1"
9317 }
9318 },
9319 "wrap-ansi": {
9320 "version": "6.2.0",
9321 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
9322 "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
9323 "dev": true,
9324 "requires": {
9325 "ansi-styles": "^4.0.0",
9326 "string-width": "^4.1.0",
9327 "strip-ansi": "^6.0.0"
9328 }
9329 }
9330 }
9331 },
9332 "yargs-parser": {
9333 "version": "18.1.3",
9334 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
9335 "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
9336 "dev": true,
9337 "requires": {
9338 "camelcase": "^5.0.0",
9339 "decamelize": "^1.2.0"
9340 }
9341 }
9342 }
9343 }
@@ -1,34 +1,36
1 {
1 {
2 "name": "@implab/djx",
2 "name": "@implab/djx",
3 "version": "0.0.1-dev",
3 "version": "0.0.1-dev",
4 "description": "Supports using dojo version 1 with typescript and .tsx files",
4 "description": "Supports using dojo version 1 with typescript and .tsx files",
5 "keywords": [
5 "keywords": [
6 "dojo",
6 "dojo",
7 "tsx",
7 "tsx",
8 "typescript",
8 "typescript",
9 "widgets"
9 "widgets"
10 ],
10 ],
11 "author": "Implab team",
11 "author": "Implab team",
12 "license": "BSD-2-Clause",
12 "license": "BSD-2-Clause",
13 "repository": "https://code.implab.org/implab/implabjs-djx",
13 "repository": "https://code.implab.org/implab/implabjs-djx",
14 "publishConfig": {
14 "publishConfig": {
15 "access": "public"
15 "access": "public"
16 },
16 },
17 "peerDependencies": {
17 "peerDependencies": {
18 "@implab/core-amd": "^1.4.0",
18 "@implab/core-amd": "^1.4.0",
19 "dojo": "^1.10.0"
19 "dojo": "^1.10.0"
20 },
20 },
21 "devDependencies": {
21 "devDependencies": {
22 "@implab/core-amd": "^1.4.0",
22 "@implab/core-amd": "^1.4.0",
23 "@types/chai": "4.1.3",
23 "@types/chai": "4.1.3",
24 "@types/requirejs": "2.1.31",
24 "@types/requirejs": "2.1.31",
25 "@types/yaml": "1.2.0",
25 "@types/yaml": "1.2.0",
26 "@types/tap": "15.0.7",
26 "dojo": "1.16.0",
27 "dojo": "1.16.0",
27 "@implab/dojo-typings": "1.0.0",
28 "@implab/dojo-typings": "1.0.0",
28 "eslint": "6.8.0",
29 "eslint": "6.8.0",
29 "requirejs": "2.3.6",
30 "requirejs": "2.3.6",
30 "tslint": "^6.1.3",
31 "tslint": "^6.1.3",
31 "typescript": "4.7.4",
32 "typescript": "4.8.2",
32 "yaml": "~1.7.2"
33 "yaml": "~1.7.2",
34 "tap": "16.3.0"
33 }
35 }
34 }
36 }
@@ -1,34 +1,147
1 import { IDestroyable } from "@implab/core-amd/interfaces";
1 /**
2 * The interface for the consumer of an observable sequence
3 */
4 export interface Observer<T> {
5 /**
6 * Called for the next element in the sequence
7 */
8 next: (value: T) => void;
2
9
3 export interface Sink<T> {
10 /**
4 next: (value: T) => void;
11 * Called once when the error occurs in the sequence.
12 */
5 error: (e: unknown) => void;
13 error: (e: unknown) => void;
14
15 /**
16 * Called once at the end of the sequence.
17 */
6 complete: () => void;
18 complete: () => void;
7 }
19 }
8
20
9 export type Consumer<T> = Partial<Sink<T>>;
21 /**
22 * The group of functions to feed an observable. This methods are provided to
23 * the producer to generate a stream of events.
24 */
25 export type Sink<T> = {
26 [k in keyof Observer<T>]: (this: void, ...args: Parameters<Observer<T>[k]>) => void;
27 };
10
28
11 export type Producer<T> = (sink: Sink<T>) => (void | (() => void));
29 export type Producer<T> = (sink: Sink<T>) => (void | (() => void));
12
30
13 export interface Observable<T> {
31 export interface Unsubscribable {
14 on(consumer: Partial<Sink<T>>): IDestroyable;
32 unsubscribe(): void;
33 }
34
35 export const isUnsubsribable = (v: unknown): v is Unsubscribable =>
36 v !== null && v !== undefined && typeof (v as Unsubscribable).unsubscribe === "function";
37
38 export const isSubsribable = (v: unknown): v is Subscribable<unknown> =>
39 v !== null && v !== undefined && typeof (v as Subscribable<unknown>).subscribe === "function";
40
41 export interface Subscribable<T> {
42 subscribe(consumer: Partial<Observer<T>>): Unsubscribable;
43 }
44
45 /** The observable source of items. */
46 export interface Observable<T> extends Subscribable<T> {
47 /** Transforms elements of the sequence with the specified mapper
48 *
49 * @param mapper The mapper used to transform the values
50 */
51 map<T2>(mapper: (value: T) => T2): Observable<T2>;
52
53 /** Filters elements of the sequence. The resulting sequence will
54 * contain only elements which match the specified predicate.
55 *
56 * @param predicate The filter predicate.
57 */
58 filter(predicate: (value: T) => boolean): Observable<T>;
59
60 /** Applies accumulator to each value in the sequence and
61 * emits the accumulated value for each source element
62 *
63 * @param accumulator
64 * @param initial
65 */
66 scan<A>(accumulator: (acc: A, value: T) => A, initial: A): Observable<A>;
15 }
67 }
16
68
17 const noop = () => {};
69 const noop = () => { };
18
70
19 const sink = <T>(consumer: Consumer<T>) => {
71 const sink = <T>(consumer: Partial<Observer<T>>) => {
20 const { next = noop, error = noop, complete = noop } = consumer;
72 const { next, error, complete } = consumer;
21 let done = false;
22
23 return {
73 return {
24 next: (value: T) => !done && next(value),
74 next: next ? next.bind(consumer) : noop,
25 error: (e: unknown) => !done && (done = true, error(e)),
75 error: error ? error.bind(consumer) : noop,
26 complete: () => !done && (done = true, complete())
76 complete: complete ? complete.bind(consumer) : noop
77 }
27 };
78 };
79
80 const fuse = <T>({ next, error, complete }: Sink<T>) => {
81 let done = false;
82 return {
83 next: (value: T) => { !done && next(value) },
84 error: (e: unknown) => { !done && (done = true, error(e)) },
85 complete: () => { !done && (done = true, complete()) }
86 }
28 }
87 }
29
88
30 export const observe = <T>(producer: Producer<T>) : Observable<T> => ({
89 const _observe = <T>(producer: Producer<T>): Observable<T> => ({
31 on: (consumer: Consumer<T>) => ({
90 subscribe: (consumer: Partial<Observer<T>>) => ({
32 destroy: producer(sink(consumer)) ?? noop
91 unsubscribe: producer(sink(consumer)) ?? noop
92 }),
93 map: (mapper) => _observe(({ next, error, complete }) =>
94 producer({
95 next: next !== noop ? (v: T) => next(mapper(v)) : noop,
96 error,
97 complete
98 })
99 ),
100 filter: (predicate) => _observe(({ next, error, complete }) =>
101 producer({
102 next: next !== noop ?
103 (v: T) => predicate(v) ? next(v) : void(0) : noop,
104 error,
105 complete
106 })
107 ),
108 scan: (accumulator, initial) => _observe(({ next, error, complete }) => {
109 let _acc = initial;
110 return producer({
111 next: next !== noop ?
112 (v: T) => next(_acc = accumulator(_acc, v)) : noop,
113 error,
114 complete
115 });
33 })
116 })
34 });
117 });
118
119 export const observe = <T>(producer: Producer<T>): Observable<T> => ({
120 subscribe: (consumer: Partial<Observer<T>>) => ({
121 unsubscribe: producer(fuse(sink(consumer))) ?? noop
122 }),
123 map: (mapper) => _observe(({ next, error, complete }) =>
124 producer(fuse({
125 next: next !== noop ?
126 (v: T) => next(mapper(v)) : noop,
127 error,
128 complete
129 }))
130 ),
131 filter: (predicate) => _observe(({ next, error, complete }) =>
132 producer(fuse({
133 next: next !== noop ?
134 (v: T) => predicate(v) ? next(v) : void (0) : noop,
135 error,
136 complete
137 }))
138 ),
139 scan: (accumulator, initial?) => observe(({ next, error, complete }) => {
140 let _acc = initial;
141 return producer(fuse({
142 next: next !== noop ? (v: T) => next(_acc = accumulator(_acc, v)) : noop,
143 error,
144 complete
145 }));
146 })
147 });
@@ -1,116 +1,176
1 import { Constructor } from "@implab/core-amd/interfaces";
1 import { Constructor } from "@implab/core-amd/interfaces";
2 import { HtmlRendition } from "./tsx/HtmlRendition";
2 import { HtmlRendition } from "./tsx/HtmlRendition";
3 import { WidgetRendition } from "./tsx/WidgetRendition";
3 import { WidgetRendition } from "./tsx/WidgetRendition";
4 import { isWidgetConstructor, Rendition } from "./tsx/traits";
4 import { isElementNode, isWidget, isWidgetConstructor, Rendition } from "./tsx/traits";
5 import { FunctionRendition } from "./tsx/FunctionRendition";
5 import { FunctionRendition } from "./tsx/FunctionRendition";
6 import Stateful = require("dojo/Stateful");
6 import Stateful = require("dojo/Stateful");
7 import _WidgetBase = require("dijit/_WidgetBase");
7 import _WidgetBase = require("dijit/_WidgetBase");
8 import { DjxWidgetBase } from "./tsx/DjxWidgetBase";
8 import { DjxWidgetBase } from "./tsx/DjxWidgetBase";
9 import { WatchRendition } from "./tsx/WatchRendition";
9 import { WatchRendition } from "./tsx/WatchRendition";
10 import { observe } from "./observable";
10 import { Observable, observe, Subscribable } from "./observable";
11 import djAttr = require("dojo/dom-attr");
12 import djClass = require("dojo/dom-class");
11
13
12 export function createElement<T extends Constructor | string | ((props: any) => Element)>(elementType: T, ...args: any[]): Rendition {
14 export function createElement<T extends Constructor | string | ((props: any) => Element)>(elementType: T, ...args: any[]): Rendition {
13 if (typeof elementType === "string") {
15 if (typeof elementType === "string") {
14 const ctx = new HtmlRendition(elementType);
16 const ctx = new HtmlRendition(elementType);
15 if (args)
17 if (args)
16 args.forEach(x => ctx.visitNext(x));
18 args.forEach(x => ctx.visitNext(x));
17
19
18 return ctx;
20 return ctx;
19 } else if (isWidgetConstructor(elementType)) {
21 } else if (isWidgetConstructor(elementType)) {
20 const ctx = new WidgetRendition(elementType);
22 const ctx = new WidgetRendition(elementType);
21 if (args)
23 if (args)
22 args.forEach(x => ctx.visitNext(x));
24 args.forEach(x => ctx.visitNext(x));
23
25
24 return ctx;
26 return ctx;
25 } else if (typeof elementType === "function") {
27 } else if (typeof elementType === "function") {
26 const ctx = new FunctionRendition(elementType as (props: any) => Element);
28 const ctx = new FunctionRendition(elementType as (props: any) => Element);
27 if (args)
29 if (args)
28 args.forEach(x => ctx.visitNext(x));
30 args.forEach(x => ctx.visitNext(x));
29
31
30 return ctx;
32 return ctx;
31 } else {
33 } else {
32 throw new Error(`The element type '${elementType}' is unsupported`);
34 throw new Error(`The element type '${elementType}' is unsupported`);
33 }
35 }
34 }
36 }
35
37
36 export interface EventDetails<T = any> {
38 export interface EventDetails<T = any> {
37 detail: T;
39 detail: T;
38 }
40 }
39
41
40 export interface EventSelector {
42 export interface EventSelector {
41 selectorTarget: HTMLElement;
43 selectorTarget: HTMLElement;
42 target: HTMLElement;
44 target: HTMLElement;
43 }
45 }
44
46
45 export type DojoMouseEvent<T = any> = MouseEvent & EventSelector & EventDetails<T>;
47 export type DojoMouseEvent<T = any> = MouseEvent & EventSelector & EventDetails<T>;
46
48
47 type StatefulProps<T> = T extends Stateful<infer A> ? A : never;
49 type StatefulProps<T> = T extends Stateful<infer A> ? A :
50 T extends _WidgetBase ? T : never;
48
51
49
52
50 /**
53 /**
51 * Observers the property and calls render callback each change.
54 * Observers the property and calls render callback each change.
52 *
55 *
53 * @param target The target object which property will be observed.
56 * @param target The target object which property will be observed.
54 * @param prop The name of the property.
57 * @param prop The name of the property.
55 * @param render The callback which will be called every time the value is changed
58 * @param render The callback which will be called every time the value is changed
56 * @returns Rendition which is created instantly
59 * @returns Rendition which is created instantly
57 */
60 */
58 export function watch<W extends _WidgetBase, K extends keyof W>(
61 export function watch<W extends _WidgetBase, K extends keyof W>(
59 target: W,
62 target: W,
60 prop: K,
63 prop: K,
61 render: (model: W[K]) => any
64 render: (model: W[K]) => any
62 ): Rendition;
65 ): Rendition;
63 /**
66 /**
64 * Observers the property and calls render callback each change.
67 * Observers the property and calls render callback each change.
65 *
68 *
66 * @param target The target object which property will be observed.
69 * @param target The target object which property will be observed.
67 * @param prop The name of the property.
70 * @param prop The name of the property.
68 * @param render The callback which will be called every time the value is changed
71 * @param render The callback which will be called every time the value is changed
69 * @returns Rendition which is created instantly
72 * @returns Rendition which is created instantly
70 */
73 */
71 export function watch<T extends Stateful, K extends keyof StatefulProps<T>>(
74 export function watch<T extends Stateful, K extends keyof StatefulProps<T>>(
72 target: T,
75 target: T,
73 prop: K,
76 prop: K,
74 render: (model: StatefulProps<T>[K]) => any
77 render: (model: StatefulProps<T>[K]) => any
75 ): Rendition;
78 ): Rendition;
76 export function watch<T extends Stateful, K extends keyof StatefulProps<T> & string>(
79 export function watch<V>(subj: Subscribable<V>, render: (model: V) => unknown): Rendition;
77 target: T,
80 export function watch(
78 prop: K,
81 ...args: [Stateful, string, (model: unknown) => unknown] |
79 render: (model: StatefulProps<T>[K]) => any
82 [Subscribable<unknown>, (model: unknown) => unknown]
80 ) {
83 ) {
81
84 if (args.length === 3) {
85 const [target, prop, render] = args;
82 return new WatchRendition(
86 return new WatchRendition(
83 render,
87 render,
84 observe(({next}) => {
88 observe(({next}) => {
85 const h = target.watch(
89 const h = target.watch<any>(
86 prop,
90 prop,
87 (_prop, oldValue, newValue) => oldValue !== newValue && next(newValue)
91 (_prop, oldValue, newValue) => oldValue !== newValue && next(newValue)
88 );
92 );
89 next(target.get(prop));
93 next(target.get(prop));
90 return () => h.remove();
94 return () => h.remove();
91 })
95 })
92 )
96 );
97 } else {
98 const [subj, render] = args;
99 return new WatchRendition(render, subj);
100 }
93 }
101 }
94
102
103 export const prop: {
104 <T extends Stateful, K extends string & keyof StatefulProps<T>>(target: T, name: K): Observable<StatefulProps<T>[K]>;
105 <T extends _WidgetBase, K extends keyof T>(target: T, name: K): Observable<T[K]>;
106 } = (target: Stateful, name: string) => {
107 return observe(({next}) => {
108 const h = target.watch(
109 name,
110 (_prop, oldValue, newValue) => oldValue !== newValue && next(newValue)
111 );
112 next(target.get(name));
113 return () => h.remove();
114 })
115 };
116
117 export const attach = <W extends DjxWidgetBase, K extends keyof W>(target: W, name: K) => (v: W[K]) => target.set(name, v);
118
119 export const bind = <K extends string, T>(attr: K, subj: Subscribable<T>) => {
120 let h = { unsubscribe() { } };
121
122 return <E extends (HTMLElement & { [p in K]: T }) | { set(name: K, value: T): void; }>(el: E | undefined) => {
123 if (el) {
124 if (isElementNode(el)) {
125 h = subj.subscribe({
126 next: value => djAttr.set(el, attr, value)
127 });
128 } else {
129 h = subj.subscribe({
130 next: value => el.set(attr, value)
131 });
132 }
133 } else {
134 h.unsubscribe();
135 }
136 }
137 };
138
139 export const toggleClass = (className: string, subj: Subscribable<boolean>) => {
140 let h = { unsubscribe() { } };
141 return (elOrWidget: HTMLElement | _WidgetBase | undefined) => {
142 const el = isWidget(elOrWidget) ? elOrWidget.domNode : elOrWidget;
143 if (el) {
144 h = subj.subscribe({
145 next: v => djClass.toggle(el, className, v)
146 });
147 } else {
148 h.unsubscribe();
149 }
150 }
151 }
152
153 export const all = <T, A extends JSX.Ref<T>[]>(...cbs: A): JSX.Ref<T> => (arg: T | undefined) => cbs.forEach(cb => cb(arg));
154
95 /** Decorates the method which will be registered as the handle for the specified event.
155 /** Decorates the method which will be registered as the handle for the specified event.
96 * This decorator can be applied to DjxWidgetBase subclass methods.
156 * This decorator can be applied to DjxWidgetBase subclass methods.
97 *
157 *
98 * ```
158 * ```
99 * @on("click")
159 * @on("click")
100 * _onClick(eventObj: MouseEvent) {
160 * _onClick(eventObj: MouseEvent) {
101 * // ...
161 * // ...
102 * }
162 * }
103 * ```
163 * ```
104 */
164 */
105 export const on = <E extends string>(...eventNames: E[]) =>
165 export const on = <E extends string>(...eventNames: E[]) =>
106 <K extends string,
166 <K extends string,
107 T extends DjxWidgetBase<any, { [p in E]: EV }>,
167 T extends DjxWidgetBase<any, { [p in E]: EV }>,
108 EV extends Event
168 EV extends Event
109 >(
169 >(
110 target: T,
170 target: T,
111 key: K,
171 key: K,
112 _descriptor: TypedPropertyDescriptor<(eventObj: EV) => void> | TypedPropertyDescriptor<() => void>
172 _descriptor: TypedPropertyDescriptor<(eventObj: EV) => void> | TypedPropertyDescriptor<() => void>
113 ): any => {
173 ): any => {
114 const handlers = eventNames.map(eventName => ({ eventName, handlerMethod: key }));
174 const handlers = eventNames.map(eventName => ({ eventName, handlerMethod: key }));
115 target._eventHandlers = target._eventHandlers ? target._eventHandlers.concat(handlers) : handlers;
175 target._eventHandlers = target._eventHandlers ? target._eventHandlers.concat(handlers) : handlers;
116 };
176 };
@@ -1,114 +1,128
1 import { djbase, djclass } from "../declare";
1 import { djbase, djclass } from "../declare";
2 import _WidgetBase = require("dijit/_WidgetBase");
2 import _WidgetBase = require("dijit/_WidgetBase");
3 import _AttachMixin = require("dijit/_AttachMixin");
3 import _AttachMixin = require("dijit/_AttachMixin");
4 import { Rendition, isNode } from "./traits";
4 import { Rendition, isNode, isElementNode } from "./traits";
5 import registry = require("dijit/registry");
5 import registry = require("dijit/registry");
6 import on = require("dojo/on");
6 import on = require("dojo/on");
7 import { Scope } from "./Scope";
8 import { render } from "./render";
7
9
8 // type Handle = dojo.Handle;
10 // type Handle = dojo.Handle;
9
11
10 export interface EventArgs {
12 export interface EventArgs {
11 bubbles?: boolean;
13 bubbles?: boolean;
12
14
13 cancelable?: boolean;
15 cancelable?: boolean;
14
16
15 composed?: boolean;
17 composed?: boolean;
16 }
18 }
17
19
18 export interface DjxWidgetBase<Attrs = {}, Events extends { [name in keyof Events]: Event } = {}> extends
20 export interface DjxWidgetBase<Attrs = {}, Events extends { [name in keyof Events]: Event } = {}> extends
19 _WidgetBase<Events> {
21 _WidgetBase<Events> {
20
22
21 /** This property is declared only for type inference to work, it is never assigned
23 /** This property is declared only for type inference to work, it is never assigned
22 * and should not be used.
24 * and should not be used.
23 */
25 */
24 readonly _eventMap: Events & GlobalEventHandlersEventMap;
26 readonly _eventMap: Events & GlobalEventHandlersEventMap;
25
27
26 /** The list of pairs of event and method names. When the widget is created all methods from
28 /** The list of pairs of event and method names. When the widget is created all methods from
27 * this list will be connected to corresponding events.
29 * this list will be connected to corresponding events.
28 *
30 *
29 * This property is maintained in the prototype
31 * This property is maintained in the prototype
30 */
32 */
31 _eventHandlers: Array<{
33 _eventHandlers: Array<{
32 eventName: string,
34 eventName: string,
33 handlerMethod: keyof any;
35 handlerMethod: keyof any;
34 }>;
36 }>;
35 }
37 }
36
38
37 type _super = {
39 type _super = {
38 startup(): void;
40 startup(): void;
41
42 destroy(preserveDom?: boolean): void;
39 };
43 };
40
44
41 @djclass
45 @djclass
42 export abstract class DjxWidgetBase<Attrs = {}, Events = {}> extends djbase<_super, _AttachMixin>(_WidgetBase, _AttachMixin) {
46 export abstract class DjxWidgetBase<Attrs = {}, Events = {}> extends djbase<_super, _AttachMixin>(_WidgetBase, _AttachMixin) {
47 private readonly _scope = new Scope();
43
48
44 buildRendering() {
49 buildRendering() {
45 this.domNode = this.render().getDomNode();
50 const node = render(this.render(), this._scope);
51 if (!isElementNode(node))
52 throw new Error("The render method must return a single DOM element");
53 this.domNode = node as HTMLElement;
54
46 super.buildRendering();
55 super.buildRendering();
47
56
48 // now we should get assigned data-dojo-attach-points
57 // now we should get assigned data-dojo-attach-points
49 // place the contents of the original srcNode to the containerNode
58 // place the contents of the original srcNode to the containerNode
50 const src = this.srcNodeRef;
59 const src = this.srcNodeRef;
51 const dest = this.containerNode;
60 const dest = this.containerNode;
52
61
53 // the donNode is constructed now we need to connect event handlers
62 // the donNode is constructed now we need to connect event handlers
54 this._connectEventHandlers();
63 this._connectEventHandlers();
55
64
56 if (src && dest) {
65 if (src && dest) {
57 while (src.firstChild)
66 while (src.firstChild)
58 dest.appendChild(src.firstChild);
67 dest.appendChild(src.firstChild);
59 }
68 }
60 }
69 }
61
70
62 abstract render(): Rendition<HTMLElement>;
71 abstract render(): Rendition<HTMLElement>;
63
72
64 private _connectEventHandlers() {
73 private _connectEventHandlers() {
65 if (this._eventHandlers)
74 if (this._eventHandlers)
66 this._eventHandlers.forEach(({ eventName, handlerMethod }) => {
75 this._eventHandlers.forEach(({ eventName, handlerMethod }) => {
67 const handler = this[handlerMethod as keyof this];
76 const handler = this[handlerMethod as keyof this];
68 if (typeof handler === "function")
77 if (typeof handler === "function")
69 on(this.domNode, eventName, handler.bind(this));
78 on(this.domNode, eventName, handler.bind(this));
70 });
79 });
71 }
80 }
72
81
73 _processTemplateNode<T extends (Element | Node | _WidgetBase)>(
82 _processTemplateNode<T extends (Element | Node | _WidgetBase)>(
74 baseNode: T,
83 baseNode: T,
75 getAttrFunc: (baseNode: T, attr: string) => any,
84 getAttrFunc: (baseNode: T, attr: string) => any,
76 // tslint:disable-next-line: ban-types
85 // tslint:disable-next-line: ban-types
77 attachFunc: (node: T, type: string, func?: Function) => dojo.Handle
86 attachFunc: (node: T, type: string, func?: Function) => dojo.Handle
78 ): boolean {
87 ): boolean {
79 if (isNode(baseNode)) {
88 if (isNode(baseNode)) {
80 const w = registry.byNode(baseNode);
89 const w = registry.byNode(baseNode);
81 if (w) {
90 if (w) {
82 // from dijit/_WidgetsInTemplateMixin
91 // from dijit/_WidgetsInTemplateMixin
83 this._processTemplateNode(w,
92 this._processTemplateNode(w,
84 (n, p) => n.get(p as any), // callback to get a property of a widget
93 (n, p) => n.get(p as any), // callback to get a property of a widget
85 (widget, type, callback) => {
94 (widget, type, callback) => {
86 if (!callback)
95 if (!callback)
87 throw new Error("The callback must be specified");
96 throw new Error("The callback must be specified");
88
97
89 // callback to do data-dojo-attach-event to a widget
98 // callback to do data-dojo-attach-event to a widget
90 if (type in widget) {
99 if (type in widget) {
91 // back-compat, remove for 2.0
100 // back-compat, remove for 2.0
92 return widget.connect(widget, type, callback as EventListener);
101 return widget.connect(widget, type, callback as EventListener);
93 } else {
102 } else {
94 // 1.x may never hit this branch, but it's the default for 2.0
103 // 1.x may never hit this branch, but it's the default for 2.0
95 return widget.on(type, callback);
104 return widget.on(type, callback);
96 }
105 }
97
106
98 });
107 });
99 // don't process widgets internals
108 // don't process widgets internals
100 return false;
109 return false;
101 }
110 }
102 }
111 }
103 return super._processTemplateNode(baseNode, getAttrFunc, attachFunc);
112 return super._processTemplateNode(baseNode, getAttrFunc, attachFunc);
104 }
113 }
105
114
106 /** Starts current widget and all its supporting widgets (placed outside
115 /** Starts current widget and all its supporting widgets (placed outside
107 * `containerNode`) and child widgets (placed inside `containerNode`)
116 * `containerNode`) and child widgets (placed inside `containerNode`)
108 */
117 */
109 startup() {
118 startup() {
110 // startup supporting widgets
119 // startup supporting widgets
111 registry.findWidgets(this.domNode, this.containerNode).forEach(w => w.startup());
120 registry.findWidgets(this.domNode, this.containerNode).forEach(w => w.startup());
112 super.startup();
121 super.startup();
113 }
122 }
123
124 destroy(preserveDom?: boolean) {
125 this._scope.destroy();
126 super.destroy(preserveDom);
114 }
127 }
128 }
@@ -1,51 +1,50
1 import djDom = require("dojo/dom-construct");
1 import djDom = require("dojo/dom-construct");
2 import djAttr = require("dojo/dom-attr");
2 import djAttr = require("dojo/dom-attr");
3 import { argumentNotEmptyString } from "@implab/core-amd/safe";
3 import { argumentNotEmptyString } from "@implab/core-amd/safe";
4 import { RenditionBase } from "./RenditionBase";
4 import { RenditionBase } from "./RenditionBase";
5 import { placeAt } from "./traits";
5 import { placeAt } from "./traits";
6 import { IScope } from "./Scope";
6 import { getItemDom, refHook } from "./render";
7 import { getItemDom, renderHook } from "./render";
8
7
9 export class HtmlRendition extends RenditionBase<Element> {
8 export class HtmlRendition extends RenditionBase<Element> {
10 elementType: string;
9 elementType: string;
11
10
12 _element: Element | undefined;
11 _element: Element | undefined;
13
12
14 constructor(elementType: string) {
13 constructor(elementType: string) {
15 argumentNotEmptyString(elementType, "elementType");
14 argumentNotEmptyString(elementType, "elementType");
16 super();
15 super();
17
16
18 this.elementType = elementType;
17 this.elementType = elementType;
19 }
18 }
20
19
21 _addChild(child: unknown, scope: IScope): void {
20 _addChild(child: unknown): void {
22 if (!this._element)
21 if (!this._element)
23 throw new Error("The HTML element isn't created");
22 throw new Error("The HTML element isn't created");
24 placeAt(getItemDom(child), this._element);
23 placeAt(getItemDom(child), this._element);
25 }
24 }
26
25
27 _create({ xmlns, ref, ...attrs }: { xmlns?: string, ref?: JSX.Ref<Element> }, children: unknown[], scope: IScope) {
26 _create({ xmlns, ref, ...attrs }: { xmlns?: string, ref?: JSX.Ref<Element> }, children: unknown[]) {
28
27
29 if (xmlns) {
28 if (xmlns) {
30 this._element = document.createElementNS(xmlns, this.elementType);
29 this._element = document.createElementNS(xmlns, this.elementType);
31 djAttr.set(this._element, attrs);
30 djAttr.set(this._element, attrs);
32 } else {
31 } else {
33 this._element = djDom.create(this.elementType, attrs);
32 this._element = djDom.create(this.elementType, attrs);
34 }
33 }
35
34
36 children.forEach(v => this._addChild(v, scope));
35 children.forEach(v => this._addChild(v));
37
36
38 const element = this._element;
37 const element = this._element;
39
38
40 if (ref)
39 if (ref)
41 renderHook(() => ref(element));
40 refHook(element, ref);
42 }
41 }
43
42
44 _getDomNode() {
43 _getDomNode() {
45 if (!this._element)
44 if (!this._element)
46 throw new Error("The HTML element isn't created");
45 throw new Error("The HTML element isn't created");
47
46
48 return this._element;
47 return this._element;
49 }
48 }
50
49
51 }
50 }
@@ -1,73 +1,70
1 import { isNull, mixin } from "@implab/core-amd/safe";
1 import { isPlainObject, DojoNodePosition, Rendition, isDocumentFragmentNode, placeAt, collectNodes, isMounted, startupWidgets } from "./traits";
2 import { isPlainObject, DojoNodePosition, Rendition, isDocumentFragmentNode, placeAt, collectNodes, autostartWidgets } from "./traits";
3
4 import { IScope } from "./Scope";
5 import { getScope } from "./render";
6
2
7 export abstract class RenditionBase<TNode extends Node> implements Rendition<TNode> {
3 export abstract class RenditionBase<TNode extends Node> implements Rendition<TNode> {
8 private _attrs = {};
4 private _attrs = {};
9
5
10 private _children = new Array();
6 private _children = new Array();
11
7
12 private _created: boolean = false;
8 private _created: boolean = false;
13
9
14 visitNext(v: any) {
10 visitNext(v: any) {
15 if (this._created)
11 if (this._created)
16 throw new Error("The Element is already created");
12 throw new Error("The Element is already created");
17
13
18 if (isNull(v) || typeof v === "boolean")
14 if (v === null || v === undefined || typeof v === "boolean")
19 // skip null, undefined, booleans ( this will work: {value && <span>{value}</span>} )
15 // skip null, undefined, booleans ( this will work: {value && <span>{value}</span>} )
20 return;
16 return;
21
17
22 if (isPlainObject(v)) {
18 if (isPlainObject(v)) {
23 mixin(this._attrs, v);
19 this._attrs = {... this._attrs, ...v};
24 } else if (v instanceof Array) {
20 } else if (v instanceof Array) {
25 v.forEach(x => this.visitNext(x));
21 v.forEach(x => this.visitNext(x));
26 } else {
22 } else {
27 this._children.push(v);
23 this._children.push(v);
28 }
24 }
29 }
25 }
30
26
31 ensureCreated(scope: IScope) {
27 ensureCreated() {
32 if (!this._created) {
28 if (!this._created) {
33 this._create(this._attrs, this._children, scope);
29 this._create(this._attrs, this._children);
34 this._children = [];
30 this._children = [];
35 this._attrs = {};
31 this._attrs = {};
36 this._created = true;
32 this._created = true;
37 }
33 }
38 }
34 }
39
35
40 /** Is rendition was instantiated to the DOM node */
36 /** Is rendition was instantiated to the DOM node */
41 isCreated() {
37 isCreated() {
42 return this._created;
38 return this._created;
43 }
39 }
44
40
45 /** Creates DOM node if not created. No additional actions are taken. */
41 /** Creates DOM node if not created. No additional actions are taken. */
46 getDomNode(scope?: IScope) {
42 getDomNode() {
47 this.ensureCreated(scope || getScope());
43 this.ensureCreated();
48 return this._getDomNode();
44 return this._getDomNode();
49 }
45 }
50
46
51 /** Creates DOM node if not created, places it to the specified position
47 /** Creates DOM node if not created, places it to the specified position
52 * and calls startup() method for all widgets contained by this node.
48 * and calls startup() method for all widgets contained by this node.
53 *
49 *
54 * @param {string | Node} refNode The reference node where the created
50 * @param {string | Node} refNode The reference node where the created
55 * DOM should be placed.
51 * DOM should be placed.
56 * @param {DojoNodePosition} position Optional parameter, specifies the
52 * @param {DojoNodePosition} position Optional parameter, specifies the
57 * position relative to refNode. Default is "last" (i.e. last child).
53 * position relative to refNode. Default is "last" (i.e. last child).
58 */
54 */
59 placeAt(refNode: string | Node, position: DojoNodePosition = "last") {
55 placeAt(refNode: string | Node, position: DojoNodePosition = "last") {
60 const domNode = this.getDomNode();
56 const domNode = this.getDomNode();
61
57
62 const startupPending = isDocumentFragmentNode(domNode) ? collectNodes(domNode.children) : [domNode];
58 const startupPending = isDocumentFragmentNode(domNode) ? collectNodes(domNode.childNodes) : [domNode];
63
59
64 placeAt(domNode, refNode, position);
60 placeAt(domNode, refNode, position);
65
61
66 startupPending.forEach(autostartWidgets);
62 if (isMounted(startupPending[0]))
63 startupPending.forEach(n => startupWidgets(n));
67
64
68 }
65 }
69
66
70 protected abstract _create(attrs: object, children: unknown[], scope: IScope): void;
67 protected abstract _create(attrs: object, children: unknown[]): void;
71
68
72 protected abstract _getDomNode(): TNode;
69 protected abstract _getDomNode(): TNode;
73 }
70 }
@@ -1,40 +1,43
1 import { IDestroyable, IRemovable } from "@implab/core-amd/interfaces";
1 import { IDestroyable, IRemovable } from "@implab/core-amd/interfaces";
2 import { isDestroyable, isRemovable } from "@implab/core-amd/safe";
2 import { isDestroyable, isRemovable } from "@implab/core-amd/safe";
3 import { isUnsubsribable, Unsubscribable } from "../observable";
3
4
4 export interface IScope {
5 export interface IScope {
5 own(target: (() => void) | IDestroyable | IRemovable): void;
6 own(target: (() => void) | IDestroyable | IRemovable | Unsubscribable): void;
6 }
7 }
7
8
8 export class Scope implements IDestroyable, IScope {
9 export class Scope implements IDestroyable, IScope {
9 private readonly _cleanup: (() => void)[] = [];
10 private readonly _cleanup: (() => void)[] = [];
10
11
11 static readonly dummy: IScope = { own() { } };
12 static readonly dummy: IScope = { own() { } };
12
13
13 own(target: (() => void) | IDestroyable | IRemovable) {
14 own(target: (() => void) | IDestroyable | IRemovable | Unsubscribable) {
14 if (target instanceof Function) {
15 if (target instanceof Function) {
15 this._cleanup.push(target);
16 this._cleanup.push(target);
16 } else if (isDestroyable(target)) {
17 } else if (isDestroyable(target)) {
17 this._cleanup.push(() => target.destroy());
18 this._cleanup.push(() => target.destroy());
18 } else if (isRemovable(target)) {
19 } else if (isRemovable(target)) {
19 this._cleanup.push(() => target.remove());
20 this._cleanup.push(() => target.remove());
21 } else if (isUnsubsribable(target)) {
22 this._cleanup.push(() => target.unsubscribe());
20 }
23 }
21 }
24 }
22
25
23 clean() {
26 clean() {
24 const guard = (cb: () => void) => {
27 const guard = (cb: () => void) => {
25 try {
28 try {
26 cb();
29 cb();
27 } catch {
30 } catch {
28 // guard
31 // guard
29 }
32 }
30 }
33 }
31
34
32 this._cleanup.forEach(guard);
35 this._cleanup.forEach(guard);
33 this._cleanup.length = 0;
36 this._cleanup.length = 0;
34 }
37 }
35
38
36 destroy() {
39 destroy() {
37 this.clean();
40 this.clean();
38 }
41 }
39
42
40 } No newline at end of file
43 }
@@ -1,55 +1,97
1 import { id as mid } from "module";
1 import { id as mid } from "module";
2 import { TraceSource } from "@implab/core-amd/log/TraceSource";
2 import { TraceSource } from "@implab/core-amd/log/TraceSource";
3 import { argumentNotNull } from "@implab/core-amd/safe";
3 import { argumentNotNull } from "@implab/core-amd/safe";
4 import { getScope, render } from "./render";
4 import { getScope, render } from "./render";
5 import { RenditionBase } from "./RenditionBase";
5 import { RenditionBase } from "./RenditionBase";
6 import { Scope } from "./Scope";
6 import { Scope } from "./Scope";
7 import { Observable } from "../observable";
7 import { Subscribable } from "../observable";
8 import { destroy } from "./traits";
8 import { Cancellation } from "@implab/core-amd/Cancellation";
9 import { collectNodes, destroy, isDocumentFragmentNode, isMounted, placeAt, startupWidgets } from "./traits";
9
10
10 const trace = TraceSource.get(mid);
11 const trace = TraceSource.get(mid);
11
12
12 export class WatchRendition<T> extends RenditionBase<Node> {
13 export class WatchRendition<T> extends RenditionBase<Node> {
13 private readonly _component: (arg: T) => unknown;
14 private readonly _component: (arg: T) => unknown;
14
15
15 private _node: Node;
16 private readonly _node: Node;
16
17
17 private readonly _scope = new Scope();
18 private readonly _scope = new Scope();
18
19
19 private readonly _subject: Observable<T>;
20 private readonly _subject: Subscribable<T>;
21
22 private _renderJob?: { value: T };
20
23
21 constructor(component: (arg: T) => unknown, subject: Observable<T>) {
24 private _ct = Cancellation.none;
25
26 constructor(component: (arg: T) => unknown, subject: Subscribable<T>) {
22 super();
27 super();
23 argumentNotNull(component, "component");
28 argumentNotNull(component, "component");
24
29
25 this._component = component;
30 this._component = component;
26
31
27 this._subject = subject;
32 this._subject = subject;
28
33
29 this._node = document.createComment("WatchRendition placeholder");
34 this._node = document.createComment("[Watch]");
30 }
35 }
31
36
32 protected _create(attrs: object, children: any[]) {
37 protected _create() {
33 const scope = getScope();
38 const scope = getScope();
34 scope.own(this._scope);
39 scope.own(() => {
35 scope.own(this._subject.on({ next: this._onValue }));
40 this._scope.destroy();
41 destroy(this._node);
42 });
43 scope.own(this._subject.subscribe({ next: this._onValue }));
44 this._ct = new Cancellation(cancel => scope.own(cancel));
45 }
46
47 private _onValue = (value: T) => {
48 if (!this._renderJob) {
49 // schedule a new job
50 this._renderJob = { value };
51 this._render().catch(e => trace.error(e));
52 } else {
53 // update existing job
54 this._renderJob = { value };
55 }
36 }
56 }
37
57
38 private _onValue = (value: T) =>
58 private async _render() {
39 void this._render(value).catch( e => trace.error(e));
59 // fork
60 await Promise.resolve();
61 // don't render destroyed rendition
62 if (this._ct.isRequested())
63 return;
64
65 // remove all previous content
66 this._scope.clean();
40
67
41 private async _render(value: T) {
68 // render the new node
42 this._scope.clean();
69 const node = render(
43 const [refNode, ...rest] = await render(this._component(value), this._node, "replace", this._scope);
70 this._renderJob ? this._component(this._renderJob.value) : undefined,
44 this._node = refNode;
71 this._scope
45 this._scope.own(() => rest.forEach(destroy));
72 );
73
74 // get actual content
75 const pending = isDocumentFragmentNode(node) ?
76 collectNodes(node.childNodes) :
77 [node];
78
79 placeAt(node, this._node, "after");
80
81 if (isMounted(this._node))
82 pending.forEach(n => startupWidgets(n));
83
84 if (pending.length)
85 this._scope.own(() => pending.forEach(destroy));
86
87 this._renderJob = undefined;
46 }
88 }
47
89
48 protected _getDomNode() {
90 protected _getDomNode() {
49 if (!this._node)
91 if (!this._node)
50 throw new Error("The instance of the widget isn't created");
92 throw new Error("The instance of the widget isn't created");
51 return this._node;
93 return this._node;
52 }
94 }
53
95
54
96
55 }
97 }
@@ -1,134 +1,130
1 import { argumentNotNull } from "@implab/core-amd/safe";
1 import { argumentNotNull } from "@implab/core-amd/safe";
2 import { RenditionBase } from "./RenditionBase";
2 import { RenditionBase } from "./RenditionBase";
3 import { DojoNodePosition, isElementNode, isInPage, isWidget, placeAt } from "./traits";
3 import { DojoNodePosition, isElementNode, isInPage, isWidget, placeAt } from "./traits";
4 import registry = require("dijit/registry");
4 import registry = require("dijit/registry");
5 import ContentPane = require("dijit/layout/ContentPane");
5 import ContentPane = require("dijit/layout/ContentPane");
6 import { IScope } from "./Scope";
6 import { getItemDom, refHook } from "./render";
7 import { getItemDom, getScope, renderHook } from "./render";
8
7
9 // tslint:disable-next-line: class-name
8 // tslint:disable-next-line: class-name
10 export interface _Widget {
9 export interface _Widget {
11 domNode: Node;
10 domNode: Node;
12
11
13 containerNode?: Node;
12 containerNode?: Node;
14
13
15 placeAt?(refNode: string | Node, position?: DojoNodePosition): void;
14 placeAt?(refNode: string | Node, position?: DojoNodePosition): void;
16 startup?(): void;
15 startup?(): void;
17
16
18 addChild?(widget: unknown, index?: number): void;
17 addChild?(widget: unknown, index?: number): void;
19 }
18 }
20
19
21 export type _WidgetCtor = new (attrs: {}, srcNode?: string | Node) => _Widget;
20 export type _WidgetCtor = new (attrs: {}, srcNode?: string | Node) => _Widget;
22
21
23 export class WidgetRendition extends RenditionBase<Node> {
22 export class WidgetRendition extends RenditionBase<Node> {
24 readonly widgetClass: _WidgetCtor;
23 readonly widgetClass: _WidgetCtor;
25
24
26 _instance: _Widget | undefined;
25 _instance: _Widget | undefined;
27
26
28 constructor(widgetClass: _WidgetCtor) {
27 constructor(widgetClass: _WidgetCtor) {
29 super();
28 super();
30 argumentNotNull(widgetClass, "widgetClass");
29 argumentNotNull(widgetClass, "widgetClass");
31
30
32 this.widgetClass = widgetClass;
31 this.widgetClass = widgetClass;
33 }
32 }
34
33
35 _addChild(child: unknown, scope: IScope): void {
34 _addChild(child: unknown): void {
36 const instance = this._getInstance();
35 const instance = this._getInstance();
37
36
38 if (instance.addChild) {
37 if (instance.addChild) {
39 if (child instanceof WidgetRendition) {
38 if (child instanceof WidgetRendition) {
40 // layout containers add custom logic to addChild methods
39 // layout containers add custom logic to addChild methods
41 instance.addChild(child.getWidgetInstance(scope));
40 instance.addChild(child.getWidgetInstance());
42 } else if (isWidget(child)) {
41 } else if (isWidget(child)) {
43 instance.addChild(child);
42 instance.addChild(child);
44 } else {
43 } else {
45 const childDom = getItemDom(child);
44 const childDom = getItemDom(child);
46 const w = isElementNode(childDom) ? registry.byNode(childDom) : undefined;
45 const w = isElementNode(childDom) ? registry.byNode(childDom) : undefined;
47
46
48 if (w) {
47 if (w) {
49 instance.addChild(w);
48 instance.addChild(w);
50 } else {
49 } else {
51 if (!instance.containerNode)
50 if (!instance.containerNode)
52 throw new Error("Failed to add DOM content. The widget doesn't have a containerNode");
51 throw new Error("Failed to add DOM content. The widget doesn't have a containerNode");
53
52
54 // the current widget isn't started, it's children shouldn't start too
53 // the current widget isn't started, it's children shouldn't start too
55 placeAt(getItemDom(child), instance.containerNode, "last");
54 placeAt(getItemDom(child), instance.containerNode, "last");
56 }
55 }
57 }
56 }
58 } else {
57 } else {
59 if (!instance.containerNode)
58 if (!instance.containerNode)
60 throw new Error("The widget doesn't have neither addChild nor containerNode");
59 throw new Error("The widget doesn't have neither addChild nor containerNode");
61
60
62 // the current widget isn't started, it's children shouldn't start too
61 // the current widget isn't started, it's children shouldn't start too
63 placeAt(getItemDom(child), instance.containerNode, "last");
62 placeAt(getItemDom(child), instance.containerNode, "last");
64 }
63 }
65 }
64 }
66
65
67 protected _create({ref, ...attrs}: {ref?: JSX.Ref<_Widget>}, children: unknown[], scope: IScope) {
66 protected _create({ref, ...attrs}: {ref?: JSX.Ref<_Widget>}, children: unknown[]) {
68 if (this.widgetClass.prototype instanceof ContentPane) {
67 if (this.widgetClass.prototype instanceof ContentPane) {
69 // a special case for the ContentPane this is for
68 // a special case for the ContentPane this is for
70 // compatibility with that heavy widget, all
69 // compatibility with that heavy widget, all
71 // regular containers could be easily manipulated
70 // regular containers could be easily manipulated
72 // through `containerNode` property or `addChild` method.
71 // through `containerNode` property or `addChild` method.
73
72
74 // render children to the DocumentFragment
73 // render children to the DocumentFragment
75 const content = document.createDocumentFragment();
74 const content = document.createDocumentFragment();
76 children.forEach(child => content.appendChild(getItemDom(child)));
75 children.forEach(child => content.appendChild(getItemDom(child)));
77
76
78 // set the content property to the parameters of the widget
77 // set the content property to the parameters of the widget
79 const _attrs = { ...attrs, content };
78 const _attrs = { ...attrs, content };
80 this._instance = new this.widgetClass(_attrs);
79 this._instance = new this.widgetClass(_attrs);
81 } else {
80 } else {
82 this._instance = new this.widgetClass(attrs);
81 this._instance = new this.widgetClass(attrs);
83 children.forEach(x => this._addChild(x, scope));
82 children.forEach(x => this._addChild(x));
84 }
83 }
85
84
86 if (ref) {
85 if (ref)
87 const instance = this._instance;
86 refHook(this._instance, ref);
88 renderHook(() => ref(instance));
89 }
90
91 }
87 }
92
88
93 private _getInstance() {
89 private _getInstance() {
94 if (!this._instance)
90 if (!this._instance)
95 throw new Error("The instance of the widget isn't created");
91 throw new Error("The instance of the widget isn't created");
96 return this._instance;
92 return this._instance;
97 }
93 }
98
94
99 protected _getDomNode() {
95 protected _getDomNode() {
100 if (!this._instance)
96 if (!this._instance)
101 throw new Error("The instance of the widget isn't created");
97 throw new Error("The instance of the widget isn't created");
102 return this._instance.domNode;
98 return this._instance.domNode;
103 }
99 }
104
100
105 /** Overrides default placeAt implementation. Calls placeAt of the
101 /** Overrides default placeAt implementation. Calls placeAt of the
106 * widget and then starts it.
102 * widget and then starts it.
107 *
103 *
108 * @param refNode A node or id of the node where the widget should be placed.
104 * @param refNode A node or id of the node where the widget should be placed.
109 * @param position A position relative to refNode.
105 * @param position A position relative to refNode.
110 */
106 */
111 placeAt(refNode: string | Node, position?: DojoNodePosition) {
107 placeAt(refNode: string | Node, position?: DojoNodePosition) {
112 this.ensureCreated(getScope());
108 this.ensureCreated();
113 const instance = this._getInstance();
109 const instance = this._getInstance();
114 if (typeof instance.placeAt === "function") {
110 if (typeof instance.placeAt === "function") {
115 instance.placeAt(refNode, position);
111 instance.placeAt(refNode, position);
116
112
117 // fix the dojo startup behavior when the widget is placed
113 // fix the dojo startup behavior when the widget is placed
118 // directly to the document and doesn't have any enclosing widgets
114 // directly to the document and doesn't have any enclosing widgets
119 const parentWidget = instance.domNode.parentNode ?
115 const parentWidget = instance.domNode.parentNode ?
120 registry.getEnclosingWidget(instance.domNode.parentNode) : null;
116 registry.getEnclosingWidget(instance.domNode.parentNode) : null;
121 if (!parentWidget && isInPage(instance.domNode) && typeof instance.startup === "function")
117 if (!parentWidget && isInPage(instance.domNode) && typeof instance.startup === "function")
122 instance.startup();
118 instance.startup();
123 } else {
119 } else {
124 // the widget doesn't have a placeAt method, strange but whatever
120 // the widget doesn't have a placeAt method, strange but whatever
125 super.placeAt(refNode, position);
121 super.placeAt(refNode, position);
126 }
122 }
127 }
123 }
128
124
129 getWidgetInstance(scope?: IScope) {
125 getWidgetInstance() {
130 this.ensureCreated(scope || getScope());
126 this.ensureCreated();
131 return this._getInstance();
127 return this._getInstance();
132 }
128 }
133
129
134 }
130 }
@@ -1,104 +1,112
1 import { TraceSource } from "@implab/core-amd/log/TraceSource";
1 import { TraceSource } from "@implab/core-amd/log/TraceSource";
2 import { isPromise } from "@implab/core-amd/safe";
2 import { isPromise } from "@implab/core-amd/safe";
3 import { id as mid } from "module";
3 import { id as mid } from "module";
4 import { Scope } from "./Scope";
4 import { IScope, Scope } from "./Scope";
5 import { autostartWidgets, collectNodes, DojoNodePosition, isDocumentFragmentNode, isNode, isRendition, isWidget, placeAt } from "./traits";
5 import { isNode, isRendition, isWidget } from "./traits";
6
6
7 const trace = TraceSource.get(mid);
7 const trace = TraceSource.get(mid);
8
8
9 let _scope = Scope.dummy;
9 interface Context {
10 scope: IScope;
10
11
11 let renderCount = 0;
12 hooks?: (() => void)[];
13 }
12
14
13 const hooks: (() => void)[] = [];
15 let _context: Context = {
16 scope: Scope.dummy
17 }
14
18
15 const guard = (cb: () => unknown) => {
19 const guard = (cb: () => unknown) => {
16 try {
20 try {
17 const result = cb()
21 const result = cb()
18 if (isPromise(result)) {
22 if (isPromise(result)) {
19 const warn = (ret: unknown) => trace.error("The callback {0} competed asynchronously. result = {1}", cb, ret);
23 const warn = (ret: unknown) => trace.error("The callback {0} competed asynchronously. result = {1}", cb, ret);
20 result.then(warn, warn);
24 result.then(warn, warn);
21 }
25 }
22 } catch (e) {
26 } catch (e) {
23 trace.error(e);
27 trace.error(e);
24 }
28 }
25 }
29 }
26
30
27 /**
31 export const beginRender = (scope: IScope = getScope()) => {
28 * Schedules rendering micro task
32 const prev = _context;
29 * @returns Promise
33 _context = {
30 */
34 scope,
31 const beginRender = () => {
35 hooks: []
32 renderCount++;
36 };
33 return Promise.resolve();
37 return endRender(prev);
34 }
38 }
35
39
36 /**
40 /**
37 * Completes render operation
41 * Completes render operation
38 */
42 */
39 const endRender = () => {
43 const endRender = (prev: Context) => () => {
40 if (!--renderCount) {
44 const { hooks } = _context;
45 if (hooks)
41 hooks.forEach(guard);
46 hooks.forEach(guard);
42 hooks.length = 0;
47
43 }
48 _context = prev;
44 }
49 }
45
50
46 export const renderHook = (hook: () => void) => {
51 export const renderHook = (hook: () => void) => {
47 if (renderCount)
52 const { hooks } = _context;
53 if (hooks)
48 hooks.push(hook);
54 hooks.push(hook);
49 else
55 else
50 guard(hook);
56 guard(hook);
51 }
57 }
52
58
59 export const refHook = <T>(value: T, ref: JSX.Ref<T>) => {
60 const { hooks, scope } = _context;
61 if (hooks)
62 hooks.push(() => ref(value));
63 else
64 guard(() => ref(value));
65
66 scope.own(() => ref(undefined));
67 }
68
53 /** Returns the current scope */
69 /** Returns the current scope */
54 export const getScope = () => _scope;
70 export const getScope = () => _context.scope;
55
71
56 /** Schedules the rendition to be rendered to the DOM Node
72 /** Schedules the rendition to be rendered to the DOM Node
57 * @param rendition The rendition to be rendered
73 * @param rendition The rendition to be rendered
58 * @param scope The scope
74 * @param scope The scope
59 */
75 */
60 export const render = async (rendition: unknown, refNode: Node, position: DojoNodePosition = "last", scope = Scope.dummy) => {
76 export const render = (rendition: unknown, scope = Scope.dummy) => {
61 await beginRender();
77 const complete = beginRender(scope);
62 const prev = _scope;
63 _scope = scope;
64 try {
78 try {
65 const domNode = getItemDom(rendition);
79 return getItemDom(rendition);
66 const startupPending = isDocumentFragmentNode(domNode) ? collectNodes(domNode.children) : [domNode];
67 placeAt(domNode, refNode, position);
68 startupPending.forEach(autostartWidgets);
69
70 return startupPending;
71 } finally {
80 } finally {
72 _scope = prev;
81 complete();
73 endRender();
74 }
82 }
75 }
83 }
76
84
77 /** Renders DOM element for different types of the argument. */
85 /** Renders DOM element for different types of the argument. */
78 export const getItemDom = (v: unknown) => {
86 export const getItemDom = (v: unknown) => {
79 if (typeof v === "string" || typeof v === "number" || v instanceof RegExp || v instanceof Date) {
87 if (typeof v === "string" || typeof v === "number" || v instanceof RegExp || v instanceof Date) {
80 // primitive types converted to the text nodes
88 // primitive types converted to the text nodes
81 return document.createTextNode(v.toString());
89 return document.createTextNode(v.toString());
82 } else if (isNode(v)) {
90 } else if (isNode(v)) {
83 // nodes are kept as is
91 // nodes are kept as is
84 return v;
92 return v;
85 } else if (isRendition(v)) {
93 } else if (isRendition(v)) {
86 // renditions are instantiated
94 // renditions are instantiated
87 return v.getDomNode();
95 return v.getDomNode();
88 } else if (isWidget(v)) {
96 } else if (isWidget(v)) {
89 // widgets are converted to it's markup
97 // widgets are converted to it's markup
90 return v.domNode;
98 return v.domNode;
91 } else if (typeof v === "boolean" || v === null || v === undefined) {
99 } else if (typeof v === "boolean" || v === null || v === undefined) {
92 // null | undefined | boolean are removed, converted to comments
100 // null | undefined | boolean are removed
93 return document.createComment(`[${typeof v} ${String(v)}]`);
101 return document.createDocumentFragment();
94 } else if (v instanceof Array) {
102 } else if (v instanceof Array) {
95 // arrays will be translated to document fragments
103 // arrays will be translated to document fragments
96 const fragment = document.createDocumentFragment();
104 const fragment = document.createDocumentFragment();
97 v.map(item => getItemDom(item))
105 v.map(item => getItemDom(item))
98 .forEach(node => fragment.appendChild(node));
106 .forEach(node => fragment.appendChild(node));
99 return fragment;
107 return fragment;
100 } else {
108 } else {
101 // bug: explicit error otherwise
109 // bug: explicit error otherwise
102 throw new Error("Invalid parameter: " + v);
110 throw new Error("Invalid parameter: " + v);
103 }
111 }
104 }
112 }
@@ -1,214 +1,214
1 import { IDestroyable } from "@implab/core-amd/interfaces";
1 import { IDestroyable } from "@implab/core-amd/interfaces";
2 import { isDestroyable } from "@implab/core-amd/safe";
2 import { isDestroyable } from "@implab/core-amd/safe";
3 import _WidgetBase = require("dijit/_WidgetBase");
3 import _WidgetBase = require("dijit/_WidgetBase");
4 import registry = require("dijit/registry");
4 import registry = require("dijit/registry");
5
5
6 interface _WidgetBaseConstructor {
6 interface _WidgetBaseConstructor {
7 new <A = {}, E extends { [k in keyof E]: Event } = {}>(params?: Partial<_WidgetBase<E> & A>, srcNodeRef?: dojo.NodeOrString): _WidgetBase<E> & dojo._base.DeclareCreatedObject;
7 new <A = {}, E extends { [k in keyof E]: Event } = {}>(params?: Partial<_WidgetBase<E> & A>, srcNodeRef?: dojo.NodeOrString): _WidgetBase<E> & dojo._base.DeclareCreatedObject;
8 prototype: _WidgetBase<any>;
8 prototype: _WidgetBase<any>;
9 }
9 }
10
10
11 export type DojoNodePosition = "first" | "after" | "before" | "last" | "replace" | "only" | number;
11 export type DojoNodePosition = "first" | "after" | "before" | "last" | "replace" | "only" | number;
12
12
13 export type DojoNodeLocation = [Node, DojoNodePosition];
13 export type DojoNodeLocation = [Node, DojoNodePosition];
14
14
15 export interface Rendition<TNode extends Node = Node> {
15 export interface Rendition<TNode extends Node = Node> {
16 getDomNode(): TNode;
16 getDomNode(): TNode;
17
17
18 placeAt(refNode: string | Node, position?: DojoNodePosition): void;
18 placeAt(refNode: string | Node, position?: DojoNodePosition): void;
19 }
19 }
20
20
21 /**
21 /**
22 * @deprecated use Rendition
22 * @deprecated use Rendition
23 */
23 */
24 export type BuildContext<TNode extends Node = Node> = Rendition<TNode>;
24 export type BuildContext<TNode extends Node = Node> = Rendition<TNode>;
25
25
26 export interface IRecursivelyDestroyable {
26 export interface IRecursivelyDestroyable {
27 destroyRecursive(): void;
27 destroyRecursive(): void;
28 }
28 }
29
29
30 export const isNode = (el: unknown): el is Node => !!(el && (el as Node).nodeName && (el as Node).nodeType);
30 export const isNode = (el: unknown): el is Node => !!(el && (el as Node).nodeName && (el as Node).nodeType);
31
31
32 export const isElementNode = (el: unknown): el is Element => isNode(el) && el.nodeType === 1;
32 export const isElementNode = (el: unknown): el is Element => isNode(el) && el.nodeType === 1;
33
33
34 export const isTextNode = (el: unknown): el is Text => isNode(el) && el.nodeType === 3;
34 export const isTextNode = (el: unknown): el is Text => isNode(el) && el.nodeType === 3;
35
35
36 export const isProcessingInstructionNode = (el: unknown): el is ProcessingInstruction => isNode(el) && el.nodeType === 7;
36 export const isProcessingInstructionNode = (el: unknown): el is ProcessingInstruction => isNode(el) && el.nodeType === 7;
37
37
38 export const isCommentNode = (el: unknown): el is Comment => isNode(el) && el.nodeType === 8;
38 export const isCommentNode = (el: unknown): el is Comment => isNode(el) && el.nodeType === 8;
39
39
40 export const isDocumentNode = (el: unknown): el is Document => isNode(el) && el.nodeType === 9;
40 export const isDocumentNode = (el: unknown): el is Document => isNode(el) && el.nodeType === 9;
41
41
42 export const isDocumentTypeNode = (el: unknown): el is DocumentType => isNode(el) && el.nodeType === 10;
42 export const isDocumentTypeNode = (el: unknown): el is DocumentType => isNode(el) && el.nodeType === 10;
43
43
44 export const isDocumentFragmentNode = (el: any): el is DocumentFragment => isNode(el) && el.nodeType === 11;
44 export const isDocumentFragmentNode = (el: any): el is DocumentFragment => isNode(el) && el.nodeType === 11;
45
45
46 export const isWidget = (v: unknown): v is _WidgetBase => !!(v && "domNode" in (v as _WidgetBase));
46 export const isWidget = (v: unknown): v is _WidgetBase => !!(v && "domNode" in (v as _WidgetBase));
47
47
48 export const isRendition = (v: unknown): v is Rendition => !!(v && typeof (v as Rendition).getDomNode === "function");
48 export const isRendition = (v: unknown): v is Rendition => !!(v && typeof (v as Rendition).getDomNode === "function");
49
49
50 /**
50 /**
51 * @deprecated use isRendition
51 * @deprecated use isRendition
52 */
52 */
53 export const isBuildContext = isRendition;
53 export const isBuildContext = isRendition;
54
54
55 export const isPlainObject = (v: object) => {
55 export const isPlainObject = (v: object) => {
56 if (typeof v !== "object")
56 if (typeof v !== "object")
57 return false;
57 return false;
58
58
59 const vp = Object.getPrototypeOf(v);
59 const vp = Object.getPrototypeOf(v);
60 return !vp || vp === Object.prototype;
60 return !vp || vp === Object.prototype;
61 }
61 }
62
62
63 export const isWidgetConstructor = (v: unknown): v is _WidgetBaseConstructor =>
63 export const isWidgetConstructor = (v: unknown): v is _WidgetBaseConstructor =>
64 typeof v === "function" && v.prototype && (
64 typeof v === "function" && v.prototype && (
65 "domNode" in v.prototype ||
65 "domNode" in v.prototype ||
66 "buildRendering" in v.prototype
66 "buildRendering" in v.prototype
67 );
67 );
68
68
69
69
70 /** Tests whether the specified node is placed in visible dom.
70 /** Tests whether the specified node is placed in visible dom.
71 * @param {Node} node The node to test
71 * @param {Node} node The node to test
72 */
72 */
73 export const isInPage = (node: Node) => node === document.body ? false : document.body.contains(node);
73 export const isInPage = (node: Node) => node === document.body ? false : document.body.contains(node);
74
74
75 export const isRecursivelyDestroyable = (target: unknown): target is IRecursivelyDestroyable =>
75 export const isRecursivelyDestroyable = (target: unknown): target is IRecursivelyDestroyable =>
76 !!(target && typeof (target as IRecursivelyDestroyable).destroyRecursive === "function");
76 !!(target && typeof (target as IRecursivelyDestroyable).destroyRecursive === "function");
77
77
78
78
79
79
80 /** Destroys DOM Node with all contained widgets.
80 /** Destroys DOM Node with all contained widgets.
81 * If the specified node is the root node of a widget, then the
81 * If the specified node is the root node of a widget, then the
82 * widget will be destroyed.
82 * widget will be destroyed.
83 *
83 *
84 * @param target DOM Node or widget to destroy
84 * @param target DOM Node or widget to destroy
85 */
85 */
86 export const destroy = (target: Node | IDestroyable | IRecursivelyDestroyable) => {
86 export const destroy = (target: Node | IDestroyable | IRecursivelyDestroyable) => {
87 if (isRecursivelyDestroyable(target)) {
87 if (isRecursivelyDestroyable(target)) {
88 target.destroyRecursive();
88 target.destroyRecursive();
89 } else if (isDestroyable(target)) {
89 } else if (isDestroyable(target)) {
90 target.destroy();
90 target.destroy();
91 } else if (isNode(target)) {
91 } else if (isNode(target)) {
92 if (isElementNode(target)) {
92 if (isElementNode(target)) {
93 const w = registry.byNode(target);
93 const w = registry.byNode(target);
94 if (w) {
94 if (w) {
95 w.destroyRecursive();
95 w.destroyRecursive();
96 return;
96 } else {
97 } else {
97 emptyNode(target);
98 emptyNode(target);
99 }
100 }
98 const parent = target.parentNode;
101 const parent = target.parentNode;
99 if (parent)
102 if (parent)
100 parent.removeChild(target);
103 parent.removeChild(target);
101 }
104
102 }
103 }
105 }
104 }
106 }
105
107
106 /** Empties a content of the specified node and destroys all contained widgets.
108 /** Empties a content of the specified node and destroys all contained widgets.
107 *
109 *
108 * @param target DOM node to empty.
110 * @param target DOM node to empty.
109 */
111 */
110 export const emptyNode = (target: Node) => {
112 export const emptyNode = (target: Node) => {
111 registry.findWidgets(target).forEach(destroy);
113 registry.findWidgets(target).forEach(destroy);
112
114
113 for (let c; c = target.lastChild;) { // intentional assignment
115 for (let c; c = target.lastChild;) { // intentional assignment
114 target.removeChild(c);
116 target.removeChild(c);
115 }
117 }
116 }
118 }
117
119
118 /** This function starts all widgets inside the DOM node if the target is a node
120 /** This function starts all widgets inside the DOM node if the target is a node
119 * or starts widget itself if the target is the widget. If the specified node
121 * or starts widget itself if the target is the widget. If the specified node
120 * associated with the widget that widget will be started.
122 * associated with the widget that widget will be started.
121 *
123 *
122 * @param target DOM node to find and start widgets or the widget itself.
124 * @param target DOM node to find and start widgets or the widget itself.
123 */
125 */
124 export const startupWidgets = (target: Node | _WidgetBase, skipNode?: Node) => {
126 export const startupWidgets = (target: Node | _WidgetBase, skipNode?: Node) => {
125 if (isNode(target)) {
127 if (isNode(target)) {
126 if (isElementNode(target)) {
128 if (isElementNode(target)) {
127 const w = registry.byNode(target);
129 const w = registry.byNode(target);
128 if (w) {
130 if (w) {
129 if (w.startup)
131 if (w.startup)
130 w.startup();
132 w.startup();
131 } else {
133 } else {
132 registry.findWidgets(target, skipNode).forEach(x => x.startup());
134 registry.findWidgets(target, skipNode).forEach(x => x.startup());
133 }
135 }
134 }
136 }
135 } else {
137 } else {
136 if (target.startup)
138 if (target.startup)
137 target.startup();
139 target.startup();
138 }
140 }
139 }
141 }
140
142
141 /** Places the specified DOM node at the specified location.
143 /** Places the specified DOM node at the specified location.
142 *
144 *
143 * @param node The node which should be placed
145 * @param node The node which should be placed
144 * @param refNodeOrId The reference node where the created
146 * @param refNodeOrId The reference node where the created
145 * DOM should be placed.
147 * DOM should be placed.
146 * @param position Optional parameter, specifies the
148 * @param position Optional parameter, specifies the
147 * position relative to refNode. Default is "last" (i.e. last child).
149 * position relative to refNode. Default is "last" (i.e. last child).
148 */
150 */
149 export const placeAt = (node: Node, refNodeOrId: string | Node, position: DojoNodePosition = "last") => {
151 export const placeAt = (node: Node, refNodeOrId: string | Node, position: DojoNodePosition = "last") => {
150 const ref = typeof refNodeOrId == "string" ? document.getElementById(refNodeOrId) : refNodeOrId;
152 const ref = typeof refNodeOrId == "string" ? document.getElementById(refNodeOrId) : refNodeOrId;
151 if (!ref)
153 if (!ref)
152 return;
154 return;
153
155
154 const parent = ref.parentNode;
156 const parent = ref.parentNode;
155
157
156 if (typeof position == "number") {
158 if (typeof position == "number") {
157 if (ref.childNodes.length <= position) {
159 if (ref.childNodes.length <= position) {
158 ref.appendChild(node);
160 ref.appendChild(node);
159 } else {
161 } else {
160 ref.insertBefore(node, ref.childNodes[position]);
162 ref.insertBefore(node, ref.childNodes[position]);
161 }
163 }
162 } else {
164 } else {
163 switch (position) {
165 switch (position) {
164 case "before":
166 case "before":
165 parent && parent.insertBefore(node, ref);
167 parent && parent.insertBefore(node, ref);
166 break;
168 break;
167 case "after":
169 case "after":
168 parent && parent.insertBefore(node, ref.nextSibling);
170 parent && parent.insertBefore(node, ref.nextSibling);
169 break;
171 break;
170 case "first":
172 case "first":
171 ref.insertBefore(node, ref.firstChild);
173 ref.insertBefore(node, ref.firstChild);
172 break;
174 break;
173 case "last":
175 case "last":
174 ref.appendChild(node);
176 ref.appendChild(node);
175 break;
177 break;
176 case "only":
178 case "only":
177 emptyNode(ref);
179 emptyNode(ref);
178 ref.appendChild(node);
180 ref.appendChild(node);
179 break;
181 break;
180 case "replace":
182 case "replace":
181 if (parent)
183 if (parent)
182 parent.replaceChild(node, ref);
184 parent.replaceChild(node, ref);
183 destroy(ref);
185 destroy(ref);
184 break;
186 break;
185 }
187 }
186 }
188 }
187 }
189 }
188
190
189 /** Collects nodes from collection to an array.
191 /** Collects nodes from collection to an array.
190 *
192 *
191 * @param collection The collection of nodes.
193 * @param collection The collection of nodes.
192 * @returns The array of nodes.
194 * @returns The array of nodes.
193 */
195 */
194 export const collectNodes = (collection: HTMLCollection) => {
196 export const collectNodes = (collection: NodeListOf<ChildNode>) => {
195 const items = [];
197 const items = [];
196 for (let i = 0, n = collection.length; i < n; i++) {
198 for (let i = 0, n = collection.length; i < n; i++) {
197 items.push(collection[i]);
199 items.push(collection[i]);
198 }
200 }
199 return items;
201 return items;
200 };
202 };
201
203
202 /** Starts widgets if the node contained in the document or in the started widget.
204
203 *
205 export const isMounted = (node: Node) => {
204 * @param node The node to start.
205 */
206 export const autostartWidgets = (node: Node) => {
207 if (node.parentNode) {
206 if (node.parentNode) {
208 const parentWidget = registry.getEnclosingWidget(node.parentNode);
207 const parentWidget = registry.getEnclosingWidget(node.parentNode);
209 if (parentWidget && parentWidget._started)
208 if (parentWidget && parentWidget._started)
210 return startupWidgets(node);
209 return true;
211 }
210 }
212 if (isInPage(node))
211 if (isInPage(node))
213 startupWidgets(node);
212 return true;
213 return false;
214 }; No newline at end of file
214 };
@@ -1,81 +1,81
1 /// <reference path="./css-plugin.d.ts"/>
1 /// <reference path="./css-plugin.d.ts"/>
2
2
3 declare namespace JSX {
3 declare namespace JSX {
4
4
5 type Ref<T> = (value: T) => void;
5 type Ref<T> = ((value: T | undefined) => void);
6
6
7 interface DjxIntrinsicAttributes<E> {
7 interface DjxIntrinsicAttributes<E> {
8 /** alias for className */
8 /** alias for className */
9 class: string;
9 class: string;
10
10
11 /** specifies the name of the property in the widget where the the
11 /** specifies the name of the property in the widget where the the
12 * reference to the current object will be stored
12 * reference to the current object will be stored
13 */
13 */
14 "data-dojo-attach-point": string;
14 "data-dojo-attach-point": string;
15
15
16 /** specifies handlers map for the events */
16 /** specifies handlers map for the events */
17 "data-dojo-attach-event": string;
17 "data-dojo-attach-event": string;
18
18
19 ref: Ref<E>;
19 ref: Ref<E>;
20
20
21 /** @deprecated */
21 /** @deprecated */
22 [attr: string]: any;
22 [attr: string]: any;
23 }
23 }
24
24
25 interface DjxIntrinsicElements {
25 interface DjxIntrinsicElements {
26 }
26 }
27
27
28 type RecursivePartial<T> = T extends string | number | boolean | null | undefined | Function ?
28 type RecursivePartial<T> = T extends string | number | boolean | null | undefined | Function ?
29 T :
29 T :
30 { [k in keyof T]?: RecursivePartial<T[k]> };
30 { [k in keyof T]?: RecursivePartial<T[k]> };
31
31
32 type MatchingMemberKeys<T, U> = {
32 type MatchingMemberKeys<T, U> = {
33 [K in keyof T]: T[K] extends U ? K : never;
33 [K in keyof T]: T[K] extends U ? K : never;
34 }[keyof T];
34 }[keyof T];
35 type NotMatchingMemberKeys<T, U> = {
35 type NotMatchingMemberKeys<T, U> = {
36 [K in keyof T]: T[K] extends U ? never : K;
36 [K in keyof T]: T[K] extends U ? never : K;
37 }[keyof T];
37 }[keyof T];
38
38
39 type ExtractMembers<T, U> = Pick<T, MatchingMemberKeys<T, U>>;
39 type ExtractMembers<T, U> = Pick<T, MatchingMemberKeys<T, U>>;
40
40
41 type ExcludeMembers<T, U> = Pick<T, NotMatchingMemberKeys<T, U>>;
41 type ExcludeMembers<T, U> = Pick<T, NotMatchingMemberKeys<T, U>>;
42
42
43 type ElementAttrNames<E> = NotMatchingMemberKeys<E, (...args: any[]) => any>;
43 type ElementAttrNames<E> = NotMatchingMemberKeys<E, (...args: any[]) => any>;
44
44
45 type ElementAttrType<E, K extends keyof any> = K extends keyof E ? RecursivePartial<E[K]> : string;
45 type ElementAttrType<E, K extends keyof any> = K extends keyof E ? RecursivePartial<E[K]> : string;
46
46
47
47
48 type ElementAttrNamesBlacklist = "children" | "getRootNode" | keyof EventTarget;
48 type ElementAttrNamesBlacklist = "children" | "getRootNode" | keyof EventTarget;
49
49
50 /** This type extracts keys of the specified parameter E by the following rule:
50 /** This type extracts keys of the specified parameter E by the following rule:
51 * 1. skips all ElementAttrNamesBlacklist
51 * 1. skips all ElementAttrNamesBlacklist
52 * 2. skips all methods except with the signature of event handlers
52 * 2. skips all methods except with the signature of event handlers
53 */
53 */
54 type AssignableElementAttrNames<E> = {
54 type AssignableElementAttrNames<E> = {
55 [K in keyof E]: K extends ElementAttrNamesBlacklist ? never :
55 [K in keyof E]: K extends ElementAttrNamesBlacklist ? never :
56 ((evt: Event) => any) extends E[K] ? K :
56 ((evt: Event) => any) extends E[K] ? K :
57 E[K] extends ((...args: any[]) => any) ? never :
57 E[K] extends ((...args: any[]) => any) ? never :
58 K;
58 K;
59 }[keyof E];
59 }[keyof E];
60
60
61 type LaxElement<E extends object> =
61 type LaxElement<E extends object> =
62 Pick<E, AssignableElementAttrNames<E>> &
62 Pick<E, AssignableElementAttrNames<E>> &
63 DjxIntrinsicAttributes<E>;
63 DjxIntrinsicAttributes<E>;
64
64
65 type LaxIntrinsicElementsMap = {
65 type LaxIntrinsicElementsMap = {
66 [tag in keyof HTMLElementTagNameMap]: LaxElement<HTMLElementTagNameMap[tag]>
66 [tag in keyof HTMLElementTagNameMap]: LaxElement<HTMLElementTagNameMap[tag]>
67 } & DjxIntrinsicElements;
67 } & DjxIntrinsicElements;
68
68
69 type IntrinsicElements = {
69 type IntrinsicElements = {
70 [tag in keyof LaxIntrinsicElementsMap]: RecursivePartial<LaxIntrinsicElementsMap[tag]>;
70 [tag in keyof LaxIntrinsicElementsMap]: RecursivePartial<LaxIntrinsicElementsMap[tag]>;
71 }
71 }
72
72
73 interface ElementChildrenAttribute {
73 interface ElementChildrenAttribute {
74 children: {};
74 children: {};
75 }
75 }
76
76
77 interface IntrinsicClassAttributes<T> {
77 interface IntrinsicClassAttributes<T> {
78 ref?: (value: T) => void;
78 ref?: (value: T) => void;
79 children?: unknown;
79 children?: unknown;
80 }
80 }
81 }
81 }
@@ -1,1 +1,2
1 import "./DeclareTests"; No newline at end of file
1 import "./declare-tests";
2 import "./observable-tests"; No newline at end of file
@@ -1,123 +1,126
1 plugins {
1 plugins {
2 id "org.implab.gradle-typescript" version "1.3.4"
2 id "org.implab.gradle-typescript" version "1.3.4"
3 id "ivy-publish"
3 id "ivy-publish"
4 }
4 }
5
5
6 def container = "djx-playground"
6 def container = "djx-playground"
7
7
8 configurations {
8 configurations {
9 npmLocal
9 npmLocal
10 }
10 }
11
11
12 dependencies {
12 dependencies {
13 npmLocal project(":djx")
13 npmLocal project(":djx")
14 }
14 }
15
15
16 def bundleDir = fileTree(layout.buildDirectory.dir("bundle")) {
16 def bundleDir = fileTree(layout.buildDirectory.dir("bundle")) {
17 builtBy "bundle"
17 builtBy "bundle"
18 }
18 }
19
19
20 typescript {
20 typescript {
21 compilerOptions {
21 compilerOptions {
22 lib = ["es5", "dom", "scripthost", "es2015.promise", "es2015.symbol", "es2015.iterable"]
22 lib = ["es5", "dom", "scripthost", "es2015.promise", "es2015.symbol", "es2015.iterable"]
23 // listFiles = true
23 // listFiles = true
24 strict = true
24 strict = true
25 types = ["requirejs", "@implab/dojo-typings", "@implab/djx"]
25 types = ["requirejs", "@implab/dojo-typings", "@implab/djx"]
26 module = "amd"
26 module = "amd"
27 it.target = "es5"
27 it.target = "es5"
28 experimentalDecorators = true
28 experimentalDecorators = true
29 noUnusedLocals = false
29 noUnusedLocals = false
30 jsx = "react"
30 jsx = "react"
31 jsxFactory = "createElement"
31 jsxFactory = "createElement"
32 moduleResolution = "node"
32 moduleResolution = "node"
33 // dojo-typings are sick
33 // dojo-typings are sick
34 skipLibCheck = true
34 skipLibCheck = true
35 // traceResolution = true
35 // traceResolution = true
36 // baseUrl = "./"
36 // baseUrl = "./"
37 // paths = [ "*": [ "$projectDir/src/typings/*" ] ]
37 // paths = [ "*": [ "$projectDir/src/typings/*" ] ]
38 // baseUrl = "$projectDir/src/typings"
38 // baseUrl = "$projectDir/src/typings"
39 // typeRoots = ["$projectDir/src/typings"]
39 // typeRoots = ["$projectDir/src/typings"]
40 }
40 }
41 tscCmd = "$projectDir/node_modules/.bin/tsc"
41 tscCmd = "$projectDir/node_modules/.bin/tsc"
42 tsLintCmd = "$projectDir/node_modules/.bin/tslint"
42 tsLintCmd = "$projectDir/node_modules/.bin/tslint"
43 esLintCmd = "$projectDir/node_modules/.bin/eslint"
43 esLintCmd = "$projectDir/node_modules/.bin/eslint"
44 }
44 }
45
45
46 tasks.matching{ it.name =~ /^configureTs/ }.configureEach {
46 tasks.matching{ it.name =~ /^configureTs/ }.configureEach {
47 compilerOptions {
47 compilerOptions {
48 if (symbols != 'none') {
48 if (symbols != 'none') {
49 sourceMap = true
49 sourceMap = true
50 switch(symbols) {
50 switch(symbols) {
51 case "local":
51 case "local":
52 sourceRoot = ( isWindows ? "file:///" : "file://" ) + it.rootDir
52 sourceRoot = ( isWindows ? "file:///" : "file://" ) + it.rootDir
53 break;
53 break;
54 }
54 }
55 }
55 }
56 }
56 }
57 }
57 }
58
58
59 npmInstall {
59 npmInstall {
60 //npmInstall.dependsOn it
60 //npmInstall.dependsOn it
61 dependsOn configurations.npmLocal
61 dependsOn configurations.npmLocal
62
62
63 doFirst {
63 doFirst {
64 configurations.npmLocal.each { f ->
64 configurations.npmLocal.each { f ->
65 exec {
65 exec {
66 commandLine "npm", "install", f, "--save-dev"
66 commandLine "npm", "install", f, "--save-dev"
67 }
67 }
68 }
68 }
69 }
69 }
70 }
70 }
71
71
72 clean {
72 clean {
73 doFirst {
73 doFirst {
74 delete "$buildDir/bundle"
74 delete "$buildDir/bundle"
75 }
75 }
76 }
76 }
77
77
78
78
79 task processResourcesBundle(type: Copy) {
79 task processResourcesBundle(type: Copy) {
80 from "src/bundle"
80 from "src/bundle"
81 into layout.buildDirectory.dir("bundle")
81 into layout.buildDirectory.dir("bundle")
82 }
82 }
83
83
84 task copyModules(type: Copy) {
84 task copyModules(type: Copy) {
85 dependsOn npmInstall
85 dependsOn npmInstall
86 into layout.buildDirectory.dir("bundle/js");
86 into layout.buildDirectory.dir("bundle/js");
87
87
88 def pack = { String jsmod ->
88 def pack = { String jsmod ->
89 into(jsmod) {
89 into(jsmod) {
90 from npm.module(jsmod)
90 from npm.module(jsmod)
91 }
91 }
92 }
92 }
93
93
94
94
95 pack("@implab/djx")
95 pack("@implab/djx")
96 pack("@implab/core-amd")
96 pack("@implab/core-amd")
97 pack("dojo")
97 pack("dojo")
98 pack("dijit")
98 pack("dijit")
99 into("rxjs") {
100 from(npm.module("rxjs/dist/bundles"))
101 }
99 from npm.module("requirejs/require.js")
102 from npm.module("requirejs/require.js")
100 }
103 }
101
104
102 task copyApp(type: Copy) {
105 task copyApp(type: Copy) {
103 dependsOn assemble
106 dependsOn assemble
104 from typescript.assemblyDir
107 from typescript.assemblyDir
105 into layout.buildDirectory.dir("bundle/js/app")
108 into layout.buildDirectory.dir("bundle/js/app")
106 }
109 }
107
110
108 task bundle {
111 task bundle {
109 dependsOn copyModules, processResourcesBundle, copyApp
112 dependsOn copyModules, processResourcesBundle, copyApp
110 }
113 }
111
114
112 task up(type: Exec) {
115 task up(type: Exec) {
113 dependsOn bundle
116 dependsOn bundle
114 commandLine "podman", "run", "--rm", "-d",
117 commandLine "podman", "run", "--rm", "-d",
115 "--name", container,
118 "--name", container,
116 "-p", "2078:80",
119 "-p", "2078:80",
117 "-v", "$buildDir/bundle:/srv/www/htdocs",
120 "-v", "$buildDir/bundle:/srv/www/htdocs",
118 "registry.implab.org/implab/apache2:latest"
121 "registry.implab.org/implab/apache2:latest"
119 }
122 }
120
123
121 task stop(type: Exec) {
124 task stop(type: Exec) {
122 commandLine "podman", "stop", container
125 commandLine "podman", "stop", container
123 } No newline at end of file
126 }
@@ -1,143 +1,170
1 {
1 {
2 "name": "@implab/djx-playground",
2 "name": "@implab/djx-playground",
3 "lockfileVersion": 2,
3 "lockfileVersion": 2,
4 "requires": true,
4 "requires": true,
5 "packages": {
5 "packages": {
6 "": {
6 "": {
7 "name": "@implab/djx-playground",
7 "name": "@implab/djx-playground",
8 "dependencies": {
8 "dependencies": {
9 "dijit": "1.17.3",
9 "dijit": "1.17.3",
10 "dojo": "1.17.3",
10 "dojo": "1.17.3",
11 "requirejs": "2.3.6"
11 "requirejs": "2.3.6",
12 "rxjs": "7.5.6"
12 },
13 },
13 "devDependencies": {
14 "devDependencies": {
14 "@implab/core-amd": "1.4.6",
15 "@implab/core-amd": "1.4.6",
15 "@implab/djx": "file:../djx/build/npm/package",
16 "@implab/djx": "file:../djx/build/npm/package",
16 "@implab/dojo-typings": "1.0.2",
17 "@implab/dojo-typings": "1.0.2",
17 "@types/requirejs": "2.1.34",
18 "@types/requirejs": "2.1.34",
18 "typescript": "4.8.2"
19 "typescript": "4.8.2"
19 }
20 }
20 },
21 },
21 "../djx/build/npm/package": {
22 "../djx/build/npm/package": {
22 "name": "@implab/djx",
23 "name": "@implab/djx",
23 "dev": true,
24 "dev": true,
24 "license": "BSD-2-Clause",
25 "license": "BSD-2-Clause",
25 "peerDependencies": {
26 "peerDependencies": {
26 "@implab/core-amd": "^1.4.0",
27 "@implab/core-amd": "^1.4.0",
27 "dojo": "^1.10.0"
28 "dojo": "^1.10.0"
28 }
29 }
29 },
30 },
30 "node_modules/@implab/core-amd": {
31 "node_modules/@implab/core-amd": {
31 "version": "1.4.6",
32 "version": "1.4.6",
32 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.6.tgz",
33 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.6.tgz",
33 "integrity": "sha512-I1RwUAxeiodePpiBzveoHaehMSAyk7NFPPPEvDqfphHBC8yXoXWAaUrp7EcOKEzjXAs7lJQVhNpmjCjIqoj6BQ==",
34 "integrity": "sha512-I1RwUAxeiodePpiBzveoHaehMSAyk7NFPPPEvDqfphHBC8yXoXWAaUrp7EcOKEzjXAs7lJQVhNpmjCjIqoj6BQ==",
34 "dev": true,
35 "dev": true,
35 "peerDependencies": {
36 "peerDependencies": {
36 "dojo": "^1.10.0"
37 "dojo": "^1.10.0"
37 }
38 }
38 },
39 },
39 "node_modules/@implab/djx": {
40 "node_modules/@implab/djx": {
40 "resolved": "../djx/build/npm/package",
41 "resolved": "../djx/build/npm/package",
41 "link": true
42 "link": true
42 },
43 },
43 "node_modules/@implab/dojo-typings": {
44 "node_modules/@implab/dojo-typings": {
44 "version": "1.0.2",
45 "version": "1.0.2",
45 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.2.tgz",
46 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.2.tgz",
46 "integrity": "sha512-/lbcMCHdRoHJLKFcT8xdk1KbGazSlb1pGSDJ406io7iMenPm/XbJYcUti+VzXnn71zOJ8aYpGT12T5L0rfOZNA==",
47 "integrity": "sha512-/lbcMCHdRoHJLKFcT8xdk1KbGazSlb1pGSDJ406io7iMenPm/XbJYcUti+VzXnn71zOJ8aYpGT12T5L0rfOZNA==",
47 "dev": true
48 "dev": true
48 },
49 },
49 "node_modules/@types/requirejs": {
50 "node_modules/@types/requirejs": {
50 "version": "2.1.34",
51 "version": "2.1.34",
51 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.34.tgz",
52 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.34.tgz",
52 "integrity": "sha512-iQLGNE1DyIRYih60B47l/hI5X7J0wAnnRBL6Yn85GUYQg8Fm3wl8kvT6NRwncKroUOSx7/lbAagIFNV7y02DiQ==",
53 "integrity": "sha512-iQLGNE1DyIRYih60B47l/hI5X7J0wAnnRBL6Yn85GUYQg8Fm3wl8kvT6NRwncKroUOSx7/lbAagIFNV7y02DiQ==",
53 "dev": true
54 "dev": true
54 },
55 },
55 "node_modules/dijit": {
56 "node_modules/dijit": {
56 "version": "1.17.3",
57 "version": "1.17.3",
57 "resolved": "https://registry.npmjs.org/dijit/-/dijit-1.17.3.tgz",
58 "resolved": "https://registry.npmjs.org/dijit/-/dijit-1.17.3.tgz",
58 "integrity": "sha512-QS+1bNhPT+BF9E+iomQSi5qI+o3oUNSx1r5TF8WlGH4LybGZP+IIGJBOO5/41YduBPljVXhY7vaPsgrycxC6UQ==",
59 "integrity": "sha512-QS+1bNhPT+BF9E+iomQSi5qI+o3oUNSx1r5TF8WlGH4LybGZP+IIGJBOO5/41YduBPljVXhY7vaPsgrycxC6UQ==",
59 "dependencies": {
60 "dependencies": {
60 "dojo": "1.17.3"
61 "dojo": "1.17.3"
61 }
62 }
62 },
63 },
63 "node_modules/dojo": {
64 "node_modules/dojo": {
64 "version": "1.17.3",
65 "version": "1.17.3",
65 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.17.3.tgz",
66 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.17.3.tgz",
66 "integrity": "sha512-iWDx1oSfCEDnIrs8cMW7Zh9Fbjgxu8iRagFz+Qi2eya3MXIAxFXKhv2A7dpi+bfpMpFozLwcsLV8URLw6BsHsA=="
67 "integrity": "sha512-iWDx1oSfCEDnIrs8cMW7Zh9Fbjgxu8iRagFz+Qi2eya3MXIAxFXKhv2A7dpi+bfpMpFozLwcsLV8URLw6BsHsA=="
67 },
68 },
68 "node_modules/requirejs": {
69 "node_modules/requirejs": {
69 "version": "2.3.6",
70 "version": "2.3.6",
70 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
71 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
71 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
72 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==",
72 "bin": {
73 "bin": {
73 "r_js": "bin/r.js",
74 "r_js": "bin/r.js",
74 "r.js": "bin/r.js"
75 "r.js": "bin/r.js"
75 },
76 },
76 "engines": {
77 "engines": {
77 "node": ">=0.4.0"
78 "node": ">=0.4.0"
78 }
79 }
79 },
80 },
81 "node_modules/rxjs": {
82 "version": "7.5.6",
83 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz",
84 "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==",
85 "dependencies": {
86 "tslib": "^2.1.0"
87 }
88 },
89 "node_modules/tslib": {
90 "version": "2.4.0",
91 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
92 "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ=="
93 },
80 "node_modules/typescript": {
94 "node_modules/typescript": {
81 "version": "4.8.2",
95 "version": "4.8.2",
82 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
96 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
83 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
97 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
84 "dev": true,
98 "dev": true,
85 "bin": {
99 "bin": {
86 "tsc": "bin/tsc",
100 "tsc": "bin/tsc",
87 "tsserver": "bin/tsserver"
101 "tsserver": "bin/tsserver"
88 },
102 },
89 "engines": {
103 "engines": {
90 "node": ">=4.2.0"
104 "node": ">=4.2.0"
91 }
105 }
92 }
106 }
93 },
107 },
94 "dependencies": {
108 "dependencies": {
95 "@implab/core-amd": {
109 "@implab/core-amd": {
96 "version": "1.4.6",
110 "version": "1.4.6",
97 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.6.tgz",
111 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.4.6.tgz",
98 "integrity": "sha512-I1RwUAxeiodePpiBzveoHaehMSAyk7NFPPPEvDqfphHBC8yXoXWAaUrp7EcOKEzjXAs7lJQVhNpmjCjIqoj6BQ==",
112 "integrity": "sha512-I1RwUAxeiodePpiBzveoHaehMSAyk7NFPPPEvDqfphHBC8yXoXWAaUrp7EcOKEzjXAs7lJQVhNpmjCjIqoj6BQ==",
99 "dev": true,
113 "dev": true,
100 "requires": {}
114 "requires": {}
101 },
115 },
102 "@implab/djx": {
116 "@implab/djx": {
103 "version": "file:../djx/build/npm/package",
117 "version": "file:../djx/build/npm/package",
104 "requires": {}
118 "requires": {}
105 },
119 },
106 "@implab/dojo-typings": {
120 "@implab/dojo-typings": {
107 "version": "1.0.2",
121 "version": "1.0.2",
108 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.2.tgz",
122 "resolved": "https://registry.npmjs.org/@implab/dojo-typings/-/dojo-typings-1.0.2.tgz",
109 "integrity": "sha512-/lbcMCHdRoHJLKFcT8xdk1KbGazSlb1pGSDJ406io7iMenPm/XbJYcUti+VzXnn71zOJ8aYpGT12T5L0rfOZNA==",
123 "integrity": "sha512-/lbcMCHdRoHJLKFcT8xdk1KbGazSlb1pGSDJ406io7iMenPm/XbJYcUti+VzXnn71zOJ8aYpGT12T5L0rfOZNA==",
110 "dev": true
124 "dev": true
111 },
125 },
112 "@types/requirejs": {
126 "@types/requirejs": {
113 "version": "2.1.34",
127 "version": "2.1.34",
114 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.34.tgz",
128 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.34.tgz",
115 "integrity": "sha512-iQLGNE1DyIRYih60B47l/hI5X7J0wAnnRBL6Yn85GUYQg8Fm3wl8kvT6NRwncKroUOSx7/lbAagIFNV7y02DiQ==",
129 "integrity": "sha512-iQLGNE1DyIRYih60B47l/hI5X7J0wAnnRBL6Yn85GUYQg8Fm3wl8kvT6NRwncKroUOSx7/lbAagIFNV7y02DiQ==",
116 "dev": true
130 "dev": true
117 },
131 },
118 "dijit": {
132 "dijit": {
119 "version": "1.17.3",
133 "version": "1.17.3",
120 "resolved": "https://registry.npmjs.org/dijit/-/dijit-1.17.3.tgz",
134 "resolved": "https://registry.npmjs.org/dijit/-/dijit-1.17.3.tgz",
121 "integrity": "sha512-QS+1bNhPT+BF9E+iomQSi5qI+o3oUNSx1r5TF8WlGH4LybGZP+IIGJBOO5/41YduBPljVXhY7vaPsgrycxC6UQ==",
135 "integrity": "sha512-QS+1bNhPT+BF9E+iomQSi5qI+o3oUNSx1r5TF8WlGH4LybGZP+IIGJBOO5/41YduBPljVXhY7vaPsgrycxC6UQ==",
122 "requires": {
136 "requires": {
123 "dojo": "1.17.3"
137 "dojo": "1.17.3"
124 }
138 }
125 },
139 },
126 "dojo": {
140 "dojo": {
127 "version": "1.17.3",
141 "version": "1.17.3",
128 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.17.3.tgz",
142 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.17.3.tgz",
129 "integrity": "sha512-iWDx1oSfCEDnIrs8cMW7Zh9Fbjgxu8iRagFz+Qi2eya3MXIAxFXKhv2A7dpi+bfpMpFozLwcsLV8URLw6BsHsA=="
143 "integrity": "sha512-iWDx1oSfCEDnIrs8cMW7Zh9Fbjgxu8iRagFz+Qi2eya3MXIAxFXKhv2A7dpi+bfpMpFozLwcsLV8URLw6BsHsA=="
130 },
144 },
131 "requirejs": {
145 "requirejs": {
132 "version": "2.3.6",
146 "version": "2.3.6",
133 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
147 "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz",
134 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg=="
148 "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg=="
135 },
149 },
150 "rxjs": {
151 "version": "7.5.6",
152 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.6.tgz",
153 "integrity": "sha512-dnyv2/YsXhnm461G+R/Pe5bWP41Nm6LBXEYWI6eiFP4fiwx6WRI/CD0zbdVAudd9xwLEF2IDcKXLHit0FYjUzw==",
154 "requires": {
155 "tslib": "^2.1.0"
156 }
157 },
158 "tslib": {
159 "version": "2.4.0",
160 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
161 "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ=="
162 },
136 "typescript": {
163 "typescript": {
137 "version": "4.8.2",
164 "version": "4.8.2",
138 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
165 "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.2.tgz",
139 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
166 "integrity": "sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==",
140 "dev": true
167 "dev": true
141 }
168 }
142 }
169 }
143 }
170 }
@@ -1,16 +1,17
1 {
1 {
2 "name": "@implab/djx-playground",
2 "name": "@implab/djx-playground",
3 "private": true,
3 "private": true,
4 "dependencies": {
4 "dependencies": {
5 "dijit": "1.17.3",
5 "dijit": "1.17.3",
6 "dojo": "1.17.3",
6 "dojo": "1.17.3",
7 "requirejs": "2.3.6"
7 "requirejs": "2.3.6",
8 "rxjs": "7.5.6"
8 },
9 },
9 "devDependencies": {
10 "devDependencies": {
10 "@implab/core-amd": "1.4.6",
11 "@implab/core-amd": "1.4.6",
11 "@implab/djx": "file:../djx/build/npm/package",
12 "@implab/djx": "file:../djx/build/npm/package",
12 "@implab/dojo-typings": "1.0.2",
13 "@implab/dojo-typings": "1.0.2",
13 "@types/requirejs": "2.1.34",
14 "@types/requirejs": "2.1.34",
14 "typescript": "4.8.2"
15 "typescript": "4.8.2"
15 }
16 }
16 }
17 }
@@ -1,11 +1,16
1 requirejs.config({
1 requirejs.config({
2 baseUrl: "js",
2 baseUrl: "js",
3 packages: [
3 packages: [
4 "app",
4 "app",
5 "@implab/djx",
5 "@implab/djx",
6 "@implab/core-amd",
6 "@implab/core-amd",
7 "dojo",
7 "dojo",
8 "dijit"
8 "dijit",
9 {
10 name: "rxjs",
11 location: "rxjs",
12 main: "rxjs.umd.min"
13 }
9 ],
14 ],
10 deps: ["app"]
15 deps: ["app"]
11 });
16 });
@@ -1,49 +1,82
1 import { djbase, djclass } from "@implab/djx/declare";
1 import { djbase, djclass } from "@implab/djx/declare";
2 import { DjxWidgetBase } from "@implab/djx/tsx/DjxWidgetBase";
2 import { DjxWidgetBase } from "@implab/djx/tsx/DjxWidgetBase";
3 import { createElement, watch } from "@implab/djx/tsx";
3 import { createElement, watch, prop, attach, all, bind, toggleClass } from "@implab/djx/tsx";
4 import ProgressBar from "./ProgressBar";
4 import ProgressBar from "./ProgressBar";
5 import Button = require("dijit/form/Button");
5 import Button = require("dijit/form/Button");
6
6 import { interval } from "rxjs";
7 const ref = <W extends DjxWidgetBase, K extends keyof W>(target: W, name: K) => (v: W[K]) => target.set(name, v);
8
7
9 @djclass
8 @djclass
10 export default class MainWidget extends djbase(DjxWidgetBase) {
9 export default class MainWidget extends djbase(DjxWidgetBase) {
11
10
12 titleNode?: HTMLHeadingElement;
11 titleNode?: HTMLHeadingElement;
13
12
14 progressBar?: ProgressBar;
13 progressBar?: ProgressBar;
15
14
16 count = 0;
15 count = 0;
17
16
18 showCounter = false;
17 showCounter = false;
19
18
19 counterNode?: HTMLInputElement;
20
21 paused = false;
22
20 render() {
23 render() {
24 const Counter = ({ children }: { children: unknown[] }) => <span>Counter: {children}</span>;
25
21 return <div className="tundra">
26 return <div className="tundra">
22 <h2 ref={ref(this, "titleNode")}>Hi!</h2>
27 <h2 ref={attach(this, "titleNode")}>Hi!</h2>
23 <ProgressBar ref={ref(this, "progressBar")} />
28 <ProgressBar ref={attach(this, "progressBar")} />
24 {watch(this, "showCounter", flag => flag &&
25 <section style={{padding: "10px"}}>
29 <section style={{ padding: "10px" }}>
26 <label>
30 {watch(prop(this, "showCounter"), flag => flag &&
27 Counter: {watch(this, "count", v => [<span>{v}</span>, " ", <span>sec</span>])}
31 [
28 </label>
32 <Counter><input ref={all(
33 bind("value", prop(this, "count")
34 .map(x => x*10)
35 .map(String)
36 ),
37 attach(this, "counterNode")
38 )} /> <span>ms</span></Counter>,
39 " | ",
40 <span ref={bind("innerHTML", interval(1000))}></span>,
41 " | ",
42 <Button
43 ref={all(
44 bind("label", prop(this, "paused")
45 .map(x => x ? "Unpause" : "Pause")
46 ),
47 toggleClass("paused", prop(this,"paused"))
48 )}
49 onClick={this._onPauseClick}
50 />
51 ]
52
53 )}
29 </section>
54 </section>
30 )}
31 <Button onClick={this._onToggleCounterClick}>Toggle counter</Button>
55 <Button onClick={this._onToggleCounterClick}>Toggle counter</Button>
32 </div>;
56 </div>;
33 }
57 }
34
58
35 postCreate(): void {
59 postCreate(): void {
36 super.postCreate();
60 super.postCreate();
37
61
38 const inc = () => {
62 const h = setInterval(
63 () => {
39 this.set("count", this.count + 1);
64 this.set("count", this.count + 1);
40 this.defer(inc, 1000);
65 },
66 10
67 );
68 this.own({
69 destroy: () => {
70 clearInterval(h);
71 }
72 });
41 }
73 }
42
74
43 inc();
75 private _onPauseClick = () => {
76 this.set("paused", !this.paused);
44 }
77 }
45
78
46 private _onToggleCounterClick = () => {
79 private _onToggleCounterClick = () => {
47 this.set("showCounter", !this.showCounter);
80 this.set("showCounter", !this.showCounter);
48 }
81 }
49 }
82 }
@@ -1,12 +0,0
1 import { Baz } from "./mock/Baz";
2
3 // tslint:disable-next-line: no-console
4 console.log("Declare tests");
5
6 const baz = new Baz();
7
8 const data: string[] = [];
9 baz.writeHello(data);
10
11 // tslint:disable-next-line: no-console
12 console.log(data.join("\n"));
@@ -1,148 +0,0
1 import { stringify } from "yaml";
2
3 export interface TapWriter {
4 version(): void;
5 plan(n: number): void;
6 fail(e: any): void;
7 ok(msg: string): void;
8 skip(msg: string): void;
9 bailOut(msg: string): void;
10 comment(msg: string): void;
11 yaml(data: any): void;
12 end(): void;
13 }
14
15 enum TapState {
16 Init,
17 VersionWritten,
18 Ready,
19 ReadyWithoutPlan,
20 End
21 }
22
23 export abstract class AbstractTapWriter implements TapWriter {
24 private _state = TapState.Init;
25 private _version = 13;
26 private _testIndex = 1;
27
28 private _moveVersion() {
29 switch (this._state) {
30 case TapState.Init:
31 this._state = TapState.VersionWritten;
32 break;
33 default:
34 throw new Error("Invalid operation");
35 }
36
37 }
38
39 private _movePlan() {
40 switch (this._state) {
41 case TapState.Init:
42 case TapState.VersionWritten:
43 this._state = TapState.Ready;
44 break;
45 case TapState.ReadyWithoutPlan:
46 this._state = TapState.End;
47 break;
48 default:
49 throw new Error("Invalid operation");
50 }
51 }
52
53 private _moveTestResult() {
54 switch (this._state) {
55 case TapState.Init:
56 case TapState.VersionWritten:
57 this._state = TapState.ReadyWithoutPlan;
58 break;
59 case TapState.Ready:
60 case TapState.ReadyWithoutPlan:
61 break;
62 default:
63 throw new Error("Invalid operation");
64 }
65 }
66
67 private _moveEnd() {
68 switch (this._state) {
69 case TapState.End:
70 throw new Error("Invalid operation");
71 default:
72 this._state = TapState.End;
73 }
74 }
75
76 private _moveDiag() {
77 switch (this._state) {
78 case TapState.Init:
79 case TapState.VersionWritten:
80 this._state = TapState.ReadyWithoutPlan;
81 break;
82 case TapState.Ready:
83 case TapState.ReadyWithoutPlan:
84 break;
85 default:
86 throw new Error("Invalid operation");
87 }
88 }
89
90 version() {
91 this._moveVersion();
92
93 this._writeLine(`TAP version ${this._version}`);
94 }
95
96 plan(n: number) {
97 this._movePlan();
98
99 this._writeLine(`1..${n}`);
100 }
101
102 fail(e: any) {
103 this._moveTestResult();
104
105 this._writeText(`not ok ${this._testIndex} ${e}`);
106 this._testIndex++;
107 }
108
109 ok(msg: string) {
110 this._moveTestResult();
111
112 this._writeText(`ok ${this._testIndex} ${msg}`);
113 this._testIndex++;
114 }
115 skip(msg: string) {
116 this._moveTestResult();
117
118 this._writeText(`ok ${this._testIndex} # SKIPPED: ${msg}`);
119 this._testIndex++;
120 }
121 bailOut(msg: string) {
122 this._moveEnd();
123
124 this._writeText(`Bail out! ${msg}`);
125 }
126 comment(msg: string) {
127 this._moveDiag();
128
129 this._writeText(`# ${msg}`);
130 }
131 yaml(data: any) {
132 this._moveDiag();
133
134 this._writeLine(" ---");
135 stringify(data).split("\r\n?").forEach(line => this._writeLine(" " + line));
136 this._writeLine(" ...");
137 }
138 end() {
139 this._moveEnd();
140 }
141
142 private _writeText(text: string) {
143 text.split("\r\n?").forEach((line, i) => this._writeLine(i ? "# " + line : line));
144 }
145
146 abstract _writeLine(text: string): void;
147
148 }
@@ -1,60 +0,0
1 import { IObservable, ICancellation, IDestroyable } from "@implab/core-amd/interfaces";
2 import { Cancellation } from "@implab/core-amd/Cancellation";
3 import { TraceEvent, LogLevel, WarnLevel, DebugLevel, TraceSource } from "@implab/core-amd/log/TraceSource";
4 import { argumentNotNull, destroy } from "@implab/core-amd/safe";
5 import { TapWriter } from "./Tap";
6
7
8
9 export class TapeWriter implements IDestroyable {
10
11 private readonly _t: TapWriter;
12
13 private readonly _subscriptions = new Array<IDestroyable>();
14 private _destroyed = false;
15
16 constructor(t: TapWriter) {
17 argumentNotNull(t, "test");
18 this._t = t;
19 }
20
21 writeEvents(source: IObservable<TraceEvent>, ct: ICancellation = Cancellation.none) {
22 if (!this._destroyed) {
23 const subscription = source.on(this.writeEvent.bind(this));
24 if (ct.isSupported()) {
25 ct.register(subscription.destroy.bind(subscription));
26 }
27 this._subscriptions.push(subscription);
28 }
29 }
30
31 writeEvent(next: TraceEvent) {
32 if (next.level >= DebugLevel) {
33 this._t.comment(`DEBUG ${next.source.id} ${next}`);
34 } else if (next.level >= LogLevel) {
35 this._t.comment(`LOG ${next.source.id} ${next}`);
36 } else if (next.level >= WarnLevel) {
37 this._t.comment(`WARN ${next.source.id} ${next}`);
38 } else {
39 this._t.comment(`ERROR ${next.source.id} ${next}`);
40 }
41 }
42
43 destroy() {
44 if (this._destroyed)
45 return;
46 this._destroyed = true;
47 this._subscriptions.forEach(destroy);
48 }
49 }
50
51 type TestCallback = (ok: (msg: string) => void, fail: (msg: string) => void, trace: TraceSource) => void;
52 type AsyncTestCallback = (trace: TraceSource) => PromiseLike<void>;
53
54 export function test(name: string, cb: TestCallback | AsyncTestCallback) {
55
56 }
57
58 export function run() {
59
60 }
@@ -1,18 +0,0
1 import { AbstractTapWriter } from "./Tap";
2 import { TextWriter } from "@implab/core-amd/interfaces";
3
4 export class TextTapWriter extends AbstractTapWriter {
5
6 private readonly _writer: TextWriter;
7
8 constructor(writer: TextWriter) {
9 super();
10
11 this._writer = writer;
12 }
13
14 _writeLine(text: string) {
15 this._writer.writeLine(text);
16 }
17
18 } No newline at end of file
@@ -1,16 +0,0
1 import { test } from "./TestTraits";
2 import { delay } from "@implab/core-amd/safe";
3 import { assert } from "chai";
4
5 test("simple", (ok, fail, log) => {
6 setTimeout(() => {
7 // end should be called after the last assertion
8 ok("async assert");
9 }, 100);
10 });
11
12 test("simple", async (log, fail) => {
13 await delay(0);
14
15 assert.ok(true); // everything is fine
16 });
1 NO CONTENT: file was removed
NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now