aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Denis <[email protected]>2020-11-10 20:50:05 +0000
committerXavier Denis <[email protected]>2020-11-11 11:45:40 +0000
commit871608791934f81cdd430797fdd64a8f9da19074 (patch)
tree9dfd9fd0f6dae3a736c882fc410723acd643138b
parent5c06e820fa02b47a1550576f2a7071ff94fb0c64 (diff)
Add support for loading rustc private crates
-rw-r--r--crates/project_model/src/cargo_workspace.rs3
-rw-r--r--crates/project_model/src/lib.rs273
-rw-r--r--crates/rust-analyzer/src/config.rs16
-rw-r--r--crates/rust-analyzer/src/reload.rs4
-rw-r--r--editors/code/package-lock.json3385
-rw-r--r--editors/code/package.json6
6 files changed, 3608 insertions, 79 deletions
diff --git a/crates/project_model/src/cargo_workspace.rs b/crates/project_model/src/cargo_workspace.rs
index d5f6a4025..608a031d4 100644
--- a/crates/project_model/src/cargo_workspace.rs
+++ b/crates/project_model/src/cargo_workspace.rs
@@ -64,6 +64,9 @@ pub struct CargoConfig {
64 64
65 /// rustc target 65 /// rustc target
66 pub target: Option<String>, 66 pub target: Option<String>,
67
68 /// rustc private crate source
69 pub rustc_source: Option<AbsPathBuf>,
67} 70}
68 71
69pub type Package = Idx<PackageData>; 72pub type Package = Idx<PackageData>;
diff --git a/crates/project_model/src/lib.rs b/crates/project_model/src/lib.rs
index e92cfea59..40eb05f70 100644
--- a/crates/project_model/src/lib.rs
+++ b/crates/project_model/src/lib.rs
@@ -9,6 +9,7 @@ use std::{
9 fmt, 9 fmt,
10 fs::{self, read_dir, ReadDir}, 10 fs::{self, read_dir, ReadDir},
11 io, 11 io,
12 path::Component,
12 process::Command, 13 process::Command,
13}; 14};
14 15
@@ -31,7 +32,7 @@ pub use proc_macro_api::ProcMacroClient;
31#[derive(Clone, Eq, PartialEq)] 32#[derive(Clone, Eq, PartialEq)]
32pub enum ProjectWorkspace { 33pub enum ProjectWorkspace {
33 /// Project workspace was discovered by running `cargo metadata` and `rustc --print sysroot`. 34 /// Project workspace was discovered by running `cargo metadata` and `rustc --print sysroot`.
34 Cargo { cargo: CargoWorkspace, sysroot: Sysroot }, 35 Cargo { cargo: CargoWorkspace, sysroot: Sysroot, rustc: Option<CargoWorkspace> },
35 /// Project workspace was manually specified using a `rust-project.json` file. 36 /// Project workspace was manually specified using a `rust-project.json` file.
36 Json { project: ProjectJson, sysroot: Option<Sysroot> }, 37 Json { project: ProjectJson, sysroot: Option<Sysroot> },
37} 38}
@@ -39,10 +40,14 @@ pub enum ProjectWorkspace {
39impl fmt::Debug for ProjectWorkspace { 40impl fmt::Debug for ProjectWorkspace {
40 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { 41 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
41 match self { 42 match self {
42 ProjectWorkspace::Cargo { cargo, sysroot } => f 43 ProjectWorkspace::Cargo { cargo, sysroot, rustc } => f
43 .debug_struct("Cargo") 44 .debug_struct("Cargo")
44 .field("n_packages", &cargo.packages().len()) 45 .field("n_packages", &cargo.packages().len())
45 .field("n_sysroot_crates", &sysroot.crates().len()) 46 .field("n_sysroot_crates", &sysroot.crates().len())
47 .field(
48 "n_rustc_compiler_crates",
49 &rustc.as_ref().map(|rc| rc.packages().len()).unwrap_or(0),
50 )
46 .finish(), 51 .finish(),
47 ProjectWorkspace::Json { project, sysroot } => { 52 ProjectWorkspace::Json { project, sysroot } => {
48 let mut debug_struct = f.debug_struct("Json"); 53 let mut debug_struct = f.debug_struct("Json");
@@ -200,7 +205,19 @@ impl ProjectWorkspace {
200 } else { 205 } else {
201 Sysroot::default() 206 Sysroot::default()
202 }; 207 };
203 ProjectWorkspace::Cargo { cargo, sysroot } 208
209 let rustc = if let Some(rustc_dir) = &cargo_config.rustc_source {
210 Some(
211 CargoWorkspace::from_cargo_metadata(&rustc_dir, cargo_config)
212 .with_context(|| {
213 format!("Failed to read Cargo metadata for Rust sources")
214 })?,
215 )
216 } else {
217 None
218 };
219
220 ProjectWorkspace::Cargo { cargo, sysroot, rustc }
204 } 221 }
205 }; 222 };
206 223
@@ -238,31 +255,43 @@ impl ProjectWorkspace {
238 }) 255 })
239 })) 256 }))
240 .collect::<Vec<_>>(), 257 .collect::<Vec<_>>(),
241 ProjectWorkspace::Cargo { cargo, sysroot } => cargo 258 ProjectWorkspace::Cargo { cargo, sysroot, rustc } => {
242 .packages() 259 let roots = cargo
243 .map(|pkg| { 260 .packages()
244 let is_member = cargo[pkg].is_member; 261 .map(|pkg| {
245 let pkg_root = cargo[pkg].root().to_path_buf(); 262 let is_member = cargo[pkg].is_member;
246 263 let pkg_root = cargo[pkg].root().to_path_buf();
247 let mut include = vec![pkg_root.clone()]; 264
248 include.extend(cargo[pkg].out_dir.clone()); 265 let mut include = vec![pkg_root.clone()];
249 266 include.extend(cargo[pkg].out_dir.clone());
250 let mut exclude = vec![pkg_root.join(".git")]; 267
251 if is_member { 268 let mut exclude = vec![pkg_root.join(".git")];
252 exclude.push(pkg_root.join("target")); 269 if is_member {
253 } else { 270 exclude.push(pkg_root.join("target"));
254 exclude.push(pkg_root.join("tests")); 271 } else {
255 exclude.push(pkg_root.join("examples")); 272 exclude.push(pkg_root.join("tests"));
256 exclude.push(pkg_root.join("benches")); 273 exclude.push(pkg_root.join("examples"));
257 } 274 exclude.push(pkg_root.join("benches"));
258 PackageRoot { is_member, include, exclude } 275 }
259 }) 276 PackageRoot { is_member, include, exclude }
260 .chain(sysroot.crates().map(|krate| PackageRoot { 277 })
261 is_member: false, 278 .chain(sysroot.crates().map(|krate| PackageRoot {
262 include: vec![sysroot[krate].root_dir().to_path_buf()], 279 is_member: false,
263 exclude: Vec::new(), 280 include: vec![sysroot[krate].root_dir().to_path_buf()],
264 })) 281 exclude: Vec::new(),
265 .collect(), 282 }));
283 if let Some(rustc_packages) = rustc {
284 roots
285 .chain(rustc_packages.packages().map(|krate| PackageRoot {
286 is_member: false,
287 include: vec![rustc_packages[krate].root().to_path_buf()],
288 exclude: Vec::new(),
289 }))
290 .collect()
291 } else {
292 roots.collect()
293 }
294 }
266 } 295 }
267 } 296 }
268 297
@@ -273,7 +302,7 @@ impl ProjectWorkspace {
273 .filter_map(|(_, krate)| krate.proc_macro_dylib_path.as_ref()) 302 .filter_map(|(_, krate)| krate.proc_macro_dylib_path.as_ref())
274 .cloned() 303 .cloned()
275 .collect(), 304 .collect(),
276 ProjectWorkspace::Cargo { cargo, sysroot: _sysroot } => cargo 305 ProjectWorkspace::Cargo { cargo, sysroot: _sysroot, rustc: _rustc_crates } => cargo
277 .packages() 306 .packages()
278 .filter_map(|pkg| cargo[pkg].proc_macro_dylib_path.as_ref()) 307 .filter_map(|pkg| cargo[pkg].proc_macro_dylib_path.as_ref())
279 .cloned() 308 .cloned()
@@ -284,8 +313,10 @@ impl ProjectWorkspace {
284 pub fn n_packages(&self) -> usize { 313 pub fn n_packages(&self) -> usize {
285 match self { 314 match self {
286 ProjectWorkspace::Json { project, .. } => project.n_crates(), 315 ProjectWorkspace::Json { project, .. } => project.n_crates(),
287 ProjectWorkspace::Cargo { cargo, sysroot } => { 316 ProjectWorkspace::Cargo { cargo, sysroot, rustc } => {
288 cargo.packages().len() + sysroot.crates().len() 317 let rustc_package_len = rustc.as_ref().map(|rc| rc.packages().len()).unwrap_or(0);
318 dbg!(rustc_package_len);
319 cargo.packages().len() + sysroot.crates().len() + rustc_package_len
289 } 320 }
290 } 321 }
291 } 322 }
@@ -365,7 +396,7 @@ impl ProjectWorkspace {
365 } 396 }
366 } 397 }
367 } 398 }
368 ProjectWorkspace::Cargo { cargo, sysroot } => { 399 ProjectWorkspace::Cargo { cargo, sysroot, rustc } => {
369 let (public_deps, libproc_macro) = 400 let (public_deps, libproc_macro) =
370 sysroot_to_crate_graph(&mut crate_graph, sysroot, target, load); 401 sysroot_to_crate_graph(&mut crate_graph, sysroot, target, load);
371 402
@@ -373,50 +404,88 @@ impl ProjectWorkspace {
373 cfg_options.extend(get_rustc_cfg_options(target)); 404 cfg_options.extend(get_rustc_cfg_options(target));
374 405
375 let mut pkg_to_lib_crate = FxHashMap::default(); 406 let mut pkg_to_lib_crate = FxHashMap::default();
376 let mut pkg_crates = FxHashMap::default();
377 407
378 // Add test cfg for non-sysroot crates 408 // Add test cfg for non-sysroot crates
379 cfg_options.insert_atom("test".into()); 409 cfg_options.insert_atom("test".into());
380 cfg_options.insert_atom("debug_assertions".into()); 410 cfg_options.insert_atom("debug_assertions".into());
381 411
412 let mut rustc_pkg_crates = FxHashMap::default();
413
414 // Add crate roots for rustc_private libs if a path to source is provided
415 if let Some(rustc_workspace) = rustc {
416 for pkg in rustc_workspace.packages() {
417 for &tgt in rustc_workspace[pkg].targets.iter() {
418 if rustc_workspace[tgt].kind != TargetKind::Lib {
419 continue;
420 }
421 // Exclude alloc / core / std
422 if rustc_workspace[tgt]
423 .root
424 .components()
425 .any(|c| c == Component::Normal("library".as_ref()))
426 {
427 continue;
428 }
429
430 if let Some(crate_id) = add_target_crate_root(
431 &mut crate_graph,
432 &rustc_workspace[pkg],
433 &rustc_workspace[tgt],
434 &cfg_options,
435 proc_macro_client,
436 load,
437 ) {
438 pkg_to_lib_crate.insert(pkg, crate_id);
439 // Add dependencies on the core / std / alloc for rustc
440 for (name, krate) in public_deps.iter() {
441 if let Err(_) =
442 crate_graph.add_dep(crate_id, name.clone(), *krate)
443 {
444 log::error!(
445 "cyclic dependency on {} for {}",
446 name,
447 &cargo[pkg].name
448 )
449 }
450 }
451 rustc_pkg_crates.entry(pkg).or_insert_with(Vec::new).push(crate_id);
452 }
453 }
454 }
455 // Now add a dep edge from all targets of upstream to the lib
456 // target of downstream.
457 for pkg in rustc_workspace.packages() {
458 for dep in rustc_workspace[pkg].dependencies.iter() {
459 let name = CrateName::new(&dep.name).unwrap();
460 if let Some(&to) = pkg_to_lib_crate.get(&dep.pkg) {
461 for &from in rustc_pkg_crates.get(&pkg).into_iter().flatten() {
462 if let Err(_) = crate_graph.add_dep(from, name.clone(), to) {
463 log::error!(
464 "cyclic dependency {} -> {}",
465 &rustc_workspace[pkg].name,
466 &rustc_workspace[dep.pkg].name
467 )
468 }
469 }
470 }
471 }
472 }
473 };
474
475 let mut pkg_crates = FxHashMap::default();
476
382 // Next, create crates for each package, target pair 477 // Next, create crates for each package, target pair
383 for pkg in cargo.packages() { 478 for pkg in cargo.packages() {
384 let mut lib_tgt = None; 479 let mut lib_tgt = None;
385 for &tgt in cargo[pkg].targets.iter() { 480 for &tgt in cargo[pkg].targets.iter() {
386 let root = cargo[tgt].root.as_path(); 481 if let Some(crate_id) = add_target_crate_root(
387 if let Some(file_id) = load(root) { 482 &mut crate_graph,
388 let edition = cargo[pkg].edition; 483 &cargo[pkg],
389 let cfg_options = { 484 &cargo[tgt],
390 let mut opts = cfg_options.clone(); 485 &cfg_options,
391 for feature in cargo[pkg].features.iter() { 486 proc_macro_client,
392 opts.insert_key_value("feature".into(), feature.into()); 487 load,
393 } 488 ) {
394 opts.extend(cargo[pkg].cfgs.iter().cloned());
395 opts
396 };
397 let mut env = Env::default();
398 if let Some(out_dir) = &cargo[pkg].out_dir {
399 // NOTE: cargo and rustc seem to hide non-UTF-8 strings from env! and option_env!()
400 if let Some(out_dir) = out_dir.to_str().map(|s| s.to_owned()) {
401 env.set("OUT_DIR", out_dir);
402 }
403 }
404 let proc_macro = cargo[pkg]
405 .proc_macro_dylib_path
406 .as_ref()
407 .map(|it| proc_macro_client.by_dylib_path(&it))
408 .unwrap_or_default();
409
410 let display_name =
411 CrateDisplayName::from_canonical_name(cargo[pkg].name.clone());
412 let crate_id = crate_graph.add_crate_root(
413 file_id,
414 edition,
415 Some(display_name),
416 cfg_options,
417 env,
418 proc_macro.clone(),
419 );
420 if cargo[tgt].kind == TargetKind::Lib { 489 if cargo[tgt].kind == TargetKind::Lib {
421 lib_tgt = Some((crate_id, cargo[tgt].name.clone())); 490 lib_tgt = Some((crate_id, cargo[tgt].name.clone()));
422 pkg_to_lib_crate.insert(pkg, crate_id); 491 pkg_to_lib_crate.insert(pkg, crate_id);
@@ -466,6 +535,30 @@ impl ProjectWorkspace {
466 } 535 }
467 } 536 }
468 537
538 // If we have access to the rust sources, create dependencies onto rustc_private libraries from all targets
539 // that are members of the current workspace
540 if let Some(rustc_workspace) = rustc {
541 for dep in rustc_workspace.packages() {
542 let name = CrateName::normalize_dashes(&rustc_workspace[dep].name);
543
544 if let Some(&from) = pkg_to_lib_crate.get(&dep) {
545 for pkg in cargo.packages() {
546 if !cargo[pkg].is_member {
547 continue;
548 }
549 for &to in pkg_crates.get(&pkg).into_iter().flatten() {
550 if let Err(_) = crate_graph.add_dep(to, name.clone(), from) {
551 log::error!(
552 "cyclic dependency22 {} -> {}",
553 &cargo[pkg].name,
554 &rustc_workspace[dep].name
555 )
556 }
557 }
558 }
559 }
560 }
561 }
469 // Now add a dep edge from all targets of upstream to the lib 562 // Now add a dep edge from all targets of upstream to the lib
470 // target of downstream. 563 // target of downstream.
471 for pkg in cargo.packages() { 564 for pkg in cargo.packages() {
@@ -537,6 +630,52 @@ fn utf8_stdout(mut cmd: Command) -> Result<String> {
537 Ok(stdout.trim().to_string()) 630 Ok(stdout.trim().to_string())
538} 631}
539 632
633fn add_target_crate_root(
634 crate_graph: &mut CrateGraph,
635 pkg: &cargo_workspace::PackageData,
636 tgt: &cargo_workspace::TargetData,
637 cfg_options: &CfgOptions,
638 proc_macro_client: &ProcMacroClient,
639 load: &mut dyn FnMut(&AbsPath) -> Option<FileId>,
640) -> Option<CrateId> {
641 let root = tgt.root.as_path();
642 if let Some(file_id) = load(root) {
643 let edition = pkg.edition;
644 let cfg_options = {
645 let mut opts = cfg_options.clone();
646 for feature in pkg.features.iter() {
647 opts.insert_key_value("feature".into(), feature.into());
648 }
649 opts.extend(pkg.cfgs.iter().cloned());
650 opts
651 };
652 let mut env = Env::default();
653 if let Some(out_dir) = &pkg.out_dir {
654 // NOTE: cargo and rustc seem to hide non-UTF-8 strings from env! and option_env!()
655 if let Some(out_dir) = out_dir.to_str().map(|s| s.to_owned()) {
656 env.set("OUT_DIR", out_dir);
657 }
658 }
659 let proc_macro = pkg
660 .proc_macro_dylib_path
661 .as_ref()
662 .map(|it| proc_macro_client.by_dylib_path(&it))
663 .unwrap_or_default();
664
665 let display_name = CrateDisplayName::from_canonical_name(pkg.name.clone());
666 let crate_id = crate_graph.add_crate_root(
667 file_id,
668 edition,
669 Some(display_name),
670 cfg_options,
671 env,
672 proc_macro.clone(),
673 );
674
675 return Some(crate_id);
676 }
677 None
678}
540fn sysroot_to_crate_graph( 679fn sysroot_to_crate_graph(
541 crate_graph: &mut CrateGraph, 680 crate_graph: &mut CrateGraph,
542 sysroot: &Sysroot, 681 sysroot: &Sysroot,
diff --git a/crates/rust-analyzer/src/config.rs b/crates/rust-analyzer/src/config.rs
index 9cc14fe82..372180ab5 100644
--- a/crates/rust-analyzer/src/config.rs
+++ b/crates/rust-analyzer/src/config.rs
@@ -7,7 +7,7 @@
7//! configure the server itself, feature flags are passed into analysis, and 7//! configure the server itself, feature flags are passed into analysis, and
8//! tweak things like automatic insertion of `()` in completions. 8//! tweak things like automatic insertion of `()` in completions.
9 9
10use std::{ffi::OsString, path::PathBuf}; 10use std::{convert::TryFrom, ffi::OsString, path::PathBuf};
11 11
12use flycheck::FlycheckConfig; 12use flycheck::FlycheckConfig;
13use hir::PrefixKind; 13use hir::PrefixKind;
@@ -227,12 +227,25 @@ impl Config {
227 self.notifications = 227 self.notifications =
228 NotificationsConfig { cargo_toml_not_found: data.notifications_cargoTomlNotFound }; 228 NotificationsConfig { cargo_toml_not_found: data.notifications_cargoTomlNotFound };
229 self.cargo_autoreload = data.cargo_autoreload; 229 self.cargo_autoreload = data.cargo_autoreload;
230
231 let rustc_source = if let Some(rustc_source) = data.rustcSource {
232 let rustpath: PathBuf = rustc_source.into();
233 AbsPathBuf::try_from(rustpath)
234 .map_err(|_| {
235 log::error!("rustc source directory must be an absolute path");
236 })
237 .ok()
238 } else {
239 None
240 };
241
230 self.cargo = CargoConfig { 242 self.cargo = CargoConfig {
231 no_default_features: data.cargo_noDefaultFeatures, 243 no_default_features: data.cargo_noDefaultFeatures,
232 all_features: data.cargo_allFeatures, 244 all_features: data.cargo_allFeatures,
233 features: data.cargo_features.clone(), 245 features: data.cargo_features.clone(),
234 load_out_dirs_from_check: data.cargo_loadOutDirsFromCheck, 246 load_out_dirs_from_check: data.cargo_loadOutDirsFromCheck,
235 target: data.cargo_target.clone(), 247 target: data.cargo_target.clone(),
248 rustc_source: rustc_source,
236 }; 249 };
237 self.runnables = RunnablesConfig { 250 self.runnables = RunnablesConfig {
238 override_cargo: data.runnables_overrideCargo, 251 override_cargo: data.runnables_overrideCargo,
@@ -532,5 +545,6 @@ config_data! {
532 rustfmt_overrideCommand: Option<Vec<String>> = None, 545 rustfmt_overrideCommand: Option<Vec<String>> = None,
533 546
534 withSysroot: bool = true, 547 withSysroot: bool = true,
548 rustcSource : Option<String> = None,
535 } 549 }
536} 550}
diff --git a/crates/rust-analyzer/src/reload.rs b/crates/rust-analyzer/src/reload.rs
index 0eabd51bd..11c8d0e5f 100644
--- a/crates/rust-analyzer/src/reload.rs
+++ b/crates/rust-analyzer/src/reload.rs
@@ -246,7 +246,9 @@ impl GlobalState {
246 .iter() 246 .iter()
247 .enumerate() 247 .enumerate()
248 .filter_map(|(id, w)| match w { 248 .filter_map(|(id, w)| match w {
249 ProjectWorkspace::Cargo { cargo, sysroot: _ } => Some((id, cargo.workspace_root())), 249 ProjectWorkspace::Cargo { cargo, sysroot: _, rustc: _ } => {
250 Some((id, cargo.workspace_root()))
251 }
250 ProjectWorkspace::Json { project, .. } => { 252 ProjectWorkspace::Json { project, .. } => {
251 // Enable flychecks for json projects if a custom flycheck command was supplied 253 // Enable flychecks for json projects if a custom flycheck command was supplied
252 // in the workspace configuration. 254 // in the workspace configuration.
diff --git a/editors/code/package-lock.json b/editors/code/package-lock.json
index 83ef00058..d6d85b86c 100644
--- a/editors/code/package-lock.json
+++ b/editors/code/package-lock.json
@@ -1,8 +1,3373 @@
1{ 1{
2 "name": "rust-analyzer", 2 "name": "rust-analyzer",
3 "version": "0.4.0-dev", 3 "version": "0.4.0-dev",
4 "lockfileVersion": 1, 4 "lockfileVersion": 2,
5 "requires": true, 5 "requires": true,
6 "packages": {
7 "": {
8 "name": "rust-analyzer",
9 "version": "0.4.0-dev",
10 "license": "MIT OR Apache-2.0",
11 "dependencies": {
12 "node-fetch": "^2.6.1",
13 "vscode-languageclient": "7.0.0-next.12"
14 },
15 "devDependencies": {
16 "@rollup/plugin-commonjs": "^13.0.2",
17 "@rollup/plugin-node-resolve": "^8.4.0",
18 "@types/glob": "^7.1.3",
19 "@types/mocha": "^7.0.2",
20 "@types/node": "~12.7.0",
21 "@types/node-fetch": "^2.5.7",
22 "@types/vscode": "^1.47.1",
23 "@typescript-eslint/eslint-plugin": "^3.10.1",
24 "@typescript-eslint/parser": "^3.10.1",
25 "eslint": "^7.8.0",
26 "glob": "^7.1.6",
27 "mocha": "^8.1.3",
28 "rollup": "^2.26.9",
29 "tslib": "^2.0.1",
30 "typescript": "^3.9.7",
31 "typescript-formatter": "^7.2.2",
32 "vsce": "^1.79.5",
33 "vscode-test": "^1.4.0"
34 },
35 "engines": {
36 "vscode": "^1.47.1"
37 }
38 },
39 "node_modules/@babel/code-frame": {
40 "version": "7.10.4",
41 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
42 "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
43 "dev": true,
44 "dependencies": {
45 "@babel/highlight": "^7.10.4"
46 }
47 },
48 "node_modules/@babel/helper-validator-identifier": {
49 "version": "7.10.4",
50 "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
51 "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
52 "dev": true
53 },
54 "node_modules/@babel/highlight": {
55 "version": "7.10.4",
56 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
57 "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
58 "dev": true,
59 "dependencies": {
60 "@babel/helper-validator-identifier": "^7.10.4",
61 "chalk": "^2.0.0",
62 "js-tokens": "^4.0.0"
63 }
64 },
65 "node_modules/@eslint/eslintrc": {
66 "version": "0.1.0",
67 "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.1.0.tgz",
68 "integrity": "sha512-bfL5365QSCmH6cPeFT7Ywclj8C7LiF7sO6mUGzZhtAMV7iID1Euq6740u/SRi4C80NOnVz/CEfK8/HO+nCAPJg==",
69 "dev": true,
70 "dependencies": {
71 "ajv": "^6.12.4",
72 "debug": "^4.1.1",
73 "import-fresh": "^3.2.1",
74 "strip-json-comments": "^3.1.1"
75 }
76 },
77 "node_modules/@rollup/plugin-commonjs": {
78 "version": "13.0.2",
79 "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-13.0.2.tgz",
80 "integrity": "sha512-9JXf2k8xqvMYfqmhgtB6eCgMN9fbxwF1XDF3mGKJc6pkAmt0jnsqurxQ0tC1akQKNSXCm7c3unQxa3zuxtZ7mQ==",
81 "dev": true,
82 "dependencies": {
83 "@rollup/pluginutils": "^3.0.8",
84 "commondir": "^1.0.1",
85 "estree-walker": "^1.0.1",
86 "glob": "^7.1.2",
87 "is-reference": "^1.1.2",
88 "magic-string": "^0.25.2",
89 "resolve": "^1.11.0"
90 },
91 "engines": {
92 "node": ">= 8.0.0"
93 }
94 },
95 "node_modules/@rollup/plugin-node-resolve": {
96 "version": "8.4.0",
97 "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-8.4.0.tgz",
98 "integrity": "sha512-LFqKdRLn0ShtQyf6SBYO69bGE1upV6wUhBX0vFOUnLAyzx5cwp8svA0eHUnu8+YU57XOkrMtfG63QOpQx25pHQ==",
99 "dev": true,
100 "dependencies": {
101 "@rollup/pluginutils": "^3.1.0",
102 "@types/resolve": "1.17.1",
103 "builtin-modules": "^3.1.0",
104 "deep-freeze": "^0.0.1",
105 "deepmerge": "^4.2.2",
106 "is-module": "^1.0.0",
107 "resolve": "^1.17.0"
108 },
109 "engines": {
110 "node": ">= 8.0.0"
111 }
112 },
113 "node_modules/@rollup/plugin-node-resolve/node_modules/@rollup/pluginutils": {
114 "version": "3.1.0",
115 "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
116 "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
117 "dev": true,
118 "dependencies": {
119 "@types/estree": "0.0.39",
120 "estree-walker": "^1.0.1",
121 "picomatch": "^2.2.2"
122 },
123 "engines": {
124 "node": ">= 8.0.0"
125 }
126 },
127 "node_modules/@rollup/pluginutils": {
128 "version": "3.0.10",
129 "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.0.10.tgz",
130 "integrity": "sha512-d44M7t+PjmMrASHbhgpSbVgtL6EFyX7J4mYxwQ/c5eoaE6N2VgCgEcWVzNnwycIloti+/MpwFr8qfw+nRw00sw==",
131 "dev": true,
132 "dependencies": {
133 "@types/estree": "0.0.39",
134 "estree-walker": "^1.0.1",
135 "picomatch": "^2.2.2"
136 },
137 "engines": {
138 "node": ">= 8.0.0"
139 }
140 },
141 "node_modules/@types/color-name": {
142 "version": "1.1.1",
143 "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
144 "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
145 "dev": true
146 },
147 "node_modules/@types/eslint-visitor-keys": {
148 "version": "1.0.0",
149 "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz",
150 "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==",
151 "dev": true
152 },
153 "node_modules/@types/estree": {
154 "version": "0.0.39",
155 "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
156 "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
157 "dev": true
158 },
159 "node_modules/@types/glob": {
160 "version": "7.1.3",
161 "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
162 "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==",
163 "dev": true,
164 "dependencies": {
165 "@types/minimatch": "*",
166 "@types/node": "*"
167 }
168 },
169 "node_modules/@types/json-schema": {
170 "version": "7.0.6",
171 "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
172 "integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
173 "dev": true
174 },
175 "node_modules/@types/minimatch": {
176 "version": "3.0.3",
177 "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
178 "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==",
179 "dev": true
180 },
181 "node_modules/@types/mocha": {
182 "version": "7.0.2",
183 "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz",
184 "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==",
185 "dev": true
186 },
187 "node_modules/@types/node": {
188 "version": "12.7.12",
189 "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.12.tgz",
190 "integrity": "sha512-KPYGmfD0/b1eXurQ59fXD1GBzhSQfz6/lKBxkaHX9dKTzjXbK68Zt7yGUxUsCS1jeTy/8aL+d9JEr+S54mpkWQ==",
191 "dev": true
192 },
193 "node_modules/@types/node-fetch": {
194 "version": "2.5.7",
195 "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.7.tgz",
196 "integrity": "sha512-o2WVNf5UhWRkxlf6eq+jMZDu7kjgpgJfl4xVNlvryc95O/6F2ld8ztKX+qu+Rjyet93WAWm5LjeX9H5FGkODvw==",
197 "dev": true,
198 "dependencies": {
199 "@types/node": "*",
200 "form-data": "^3.0.0"
201 }
202 },
203 "node_modules/@types/resolve": {
204 "version": "1.17.1",
205 "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
206 "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==",
207 "dev": true,
208 "dependencies": {
209 "@types/node": "*"
210 }
211 },
212 "node_modules/@types/vscode": {
213 "version": "1.48.0",
214 "resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.48.0.tgz",
215 "integrity": "sha512-sZJKzsJz1gSoFXcOJWw3fnKl2sseUgZmvB4AJZS+Fea+bC/jfGPVhmFL/FfQHld/TKtukVONsmoD3Pkyx9iadg==",
216 "dev": true
217 },
218 "node_modules/@typescript-eslint/eslint-plugin": {
219 "version": "3.10.1",
220 "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-3.10.1.tgz",
221 "integrity": "sha512-PQg0emRtzZFWq6PxBcdxRH3QIQiyFO3WCVpRL3fgj5oQS3CDs3AeAKfv4DxNhzn8ITdNJGJ4D3Qw8eAJf3lXeQ==",
222 "dev": true,
223 "dependencies": {
224 "@typescript-eslint/experimental-utils": "3.10.1",
225 "debug": "^4.1.1",
226 "functional-red-black-tree": "^1.0.1",
227 "regexpp": "^3.0.0",
228 "semver": "^7.3.2",
229 "tsutils": "^3.17.1"
230 },
231 "engines": {
232 "node": "^10.12.0 || >=12.0.0"
233 }
234 },
235 "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": {
236 "version": "7.3.2",
237 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
238 "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
239 "dev": true,
240 "bin": {
241 "semver": "bin/semver.js"
242 },
243 "engines": {
244 "node": ">=10"
245 }
246 },
247 "node_modules/@typescript-eslint/experimental-utils": {
248 "version": "3.10.1",
249 "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-3.10.1.tgz",
250 "integrity": "sha512-DewqIgscDzmAfd5nOGe4zm6Bl7PKtMG2Ad0KG8CUZAHlXfAKTF9Ol5PXhiMh39yRL2ChRH1cuuUGOcVyyrhQIw==",
251 "dev": true,
252 "dependencies": {
253 "@types/json-schema": "^7.0.3",
254 "@typescript-eslint/types": "3.10.1",
255 "@typescript-eslint/typescript-estree": "3.10.1",
256 "eslint-scope": "^5.0.0",
257 "eslint-utils": "^2.0.0"
258 },
259 "engines": {
260 "node": "^10.12.0 || >=12.0.0"
261 }
262 },
263 "node_modules/@typescript-eslint/parser": {
264 "version": "3.10.1",
265 "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-3.10.1.tgz",
266 "integrity": "sha512-Ug1RcWcrJP02hmtaXVS3axPPTTPnZjupqhgj+NnZ6BCkwSImWk/283347+x9wN+lqOdK9Eo3vsyiyDHgsmiEJw==",
267 "dev": true,
268 "dependencies": {
269 "@types/eslint-visitor-keys": "^1.0.0",
270 "@typescript-eslint/experimental-utils": "3.10.1",
271 "@typescript-eslint/types": "3.10.1",
272 "@typescript-eslint/typescript-estree": "3.10.1",
273 "eslint-visitor-keys": "^1.1.0"
274 },
275 "engines": {
276 "node": "^10.12.0 || >=12.0.0"
277 }
278 },
279 "node_modules/@typescript-eslint/types": {
280 "version": "3.10.1",
281 "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-3.10.1.tgz",
282 "integrity": "sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==",
283 "dev": true,
284 "engines": {
285 "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
286 }
287 },
288 "node_modules/@typescript-eslint/typescript-estree": {
289 "version": "3.10.1",
290 "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-3.10.1.tgz",
291 "integrity": "sha512-QbcXOuq6WYvnB3XPsZpIwztBoquEYLXh2MtwVU+kO8jgYCiv4G5xrSP/1wg4tkvrEE+esZVquIPX/dxPlePk1w==",
292 "dev": true,
293 "dependencies": {
294 "@typescript-eslint/types": "3.10.1",
295 "@typescript-eslint/visitor-keys": "3.10.1",
296 "debug": "^4.1.1",
297 "glob": "^7.1.6",
298 "is-glob": "^4.0.1",
299 "lodash": "^4.17.15",
300 "semver": "^7.3.2",
301 "tsutils": "^3.17.1"
302 },
303 "engines": {
304 "node": "^10.12.0 || >=12.0.0"
305 }
306 },
307 "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": {
308 "version": "7.3.2",
309 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
310 "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
311 "dev": true,
312 "bin": {
313 "semver": "bin/semver.js"
314 },
315 "engines": {
316 "node": ">=10"
317 }
318 },
319 "node_modules/@typescript-eslint/visitor-keys": {
320 "version": "3.10.1",
321 "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-3.10.1.tgz",
322 "integrity": "sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==",
323 "dev": true,
324 "dependencies": {
325 "eslint-visitor-keys": "^1.1.0"
326 },
327 "engines": {
328 "node": "^8.10.0 || ^10.13.0 || >=11.10.1"
329 }
330 },
331 "node_modules/acorn": {
332 "version": "7.4.0",
333 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz",
334 "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==",
335 "dev": true,
336 "bin": {
337 "acorn": "bin/acorn"
338 },
339 "engines": {
340 "node": ">=0.4.0"
341 }
342 },
343 "node_modules/acorn-jsx": {
344 "version": "5.2.0",
345 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz",
346 "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==",
347 "dev": true
348 },
349 "node_modules/agent-base": {
350 "version": "4.3.0",
351 "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz",
352 "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==",
353 "dev": true,
354 "dependencies": {
355 "es6-promisify": "^5.0.0"
356 },
357 "engines": {
358 "node": ">= 4.0.0"
359 }
360 },
361 "node_modules/ajv": {
362 "version": "6.12.4",
363 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz",
364 "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==",
365 "dev": true,
366 "dependencies": {
367 "fast-deep-equal": "^3.1.1",
368 "fast-json-stable-stringify": "^2.0.0",
369 "json-schema-traverse": "^0.4.1",
370 "uri-js": "^4.2.2"
371 }
372 },
373 "node_modules/ansi-colors": {
374 "version": "4.1.1",
375 "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
376 "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
377 "dev": true,
378 "engines": {
379 "node": ">=6"
380 }
381 },
382 "node_modules/ansi-regex": {
383 "version": "5.0.0",
384 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
385 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
386 "dev": true,
387 "engines": {
388 "node": ">=8"
389 }
390 },
391 "node_modules/ansi-styles": {
392 "version": "3.2.1",
393 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
394 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
395 "dev": true,
396 "dependencies": {
397 "color-convert": "^1.9.0"
398 },
399 "engines": {
400 "node": ">=4"
401 }
402 },
403 "node_modules/anymatch": {
404 "version": "3.1.1",
405 "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz",
406 "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==",
407 "dev": true,
408 "dependencies": {
409 "normalize-path": "^3.0.0",
410 "picomatch": "^2.0.4"
411 },
412 "engines": {
413 "node": ">= 8"
414 }
415 },
416 "node_modules/argparse": {
417 "version": "1.0.10",
418 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
419 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
420 "dev": true,
421 "dependencies": {
422 "sprintf-js": "~1.0.2"
423 }
424 },
425 "node_modules/array.prototype.map": {
426 "version": "1.0.2",
427 "resolved": "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.2.tgz",
428 "integrity": "sha512-Az3OYxgsa1g7xDYp86l0nnN4bcmuEITGe1rbdEBVkrqkzMgDcbdQ2R7r41pNzti+4NMces3H8gMmuioZUilLgw==",
429 "dev": true,
430 "dependencies": {
431 "define-properties": "^1.1.3",
432 "es-abstract": "^1.17.0-next.1",
433 "es-array-method-boxes-properly": "^1.0.0",
434 "is-string": "^1.0.4"
435 },
436 "engines": {
437 "node": ">= 0.4"
438 }
439 },
440 "node_modules/astral-regex": {
441 "version": "1.0.0",
442 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
443 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
444 "dev": true,
445 "engines": {
446 "node": ">=4"
447 }
448 },
449 "node_modules/asynckit": {
450 "version": "0.4.0",
451 "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
452 "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
453 "dev": true
454 },
455 "node_modules/azure-devops-node-api": {
456 "version": "7.2.0",
457 "resolved": "https://registry.npmjs.org/azure-devops-node-api/-/azure-devops-node-api-7.2.0.tgz",
458 "integrity": "sha512-pMfGJ6gAQ7LRKTHgiRF+8iaUUeGAI0c8puLaqHLc7B8AR7W6GJLozK9RFeUHFjEGybC9/EB3r67WPd7e46zQ8w==",
459 "dev": true,
460 "dependencies": {
461 "os": "0.1.1",
462 "tunnel": "0.0.4",
463 "typed-rest-client": "1.2.0",
464 "underscore": "1.8.3"
465 }
466 },
467 "node_modules/balanced-match": {
468 "version": "1.0.0",
469 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
470 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
471 "dev": true
472 },
473 "node_modules/binary-extensions": {
474 "version": "2.1.0",
475 "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz",
476 "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==",
477 "dev": true,
478 "engines": {
479 "node": ">=8"
480 }
481 },
482 "node_modules/boolbase": {
483 "version": "1.0.0",
484 "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
485 "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
486 "dev": true
487 },
488 "node_modules/brace-expansion": {
489 "version": "1.1.11",
490 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
491 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
492 "dev": true,
493 "dependencies": {
494 "balanced-match": "^1.0.0",
495 "concat-map": "0.0.1"
496 }
497 },
498 "node_modules/braces": {
499 "version": "3.0.2",
500 "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
501 "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
502 "dev": true,
503 "dependencies": {
504 "fill-range": "^7.0.1"
505 },
506 "engines": {
507 "node": ">=8"
508 }
509 },
510 "node_modules/browser-stdout": {
511 "version": "1.3.1",
512 "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz",
513 "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==",
514 "dev": true
515 },
516 "node_modules/buffer-crc32": {
517 "version": "0.2.13",
518 "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
519 "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
520 "dev": true,
521 "engines": {
522 "node": "*"
523 }
524 },
525 "node_modules/builtin-modules": {
526 "version": "3.1.0",
527 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz",
528 "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==",
529 "dev": true,
530 "engines": {
531 "node": ">=6"
532 }
533 },
534 "node_modules/callsites": {
535 "version": "3.1.0",
536 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
537 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
538 "dev": true,
539 "engines": {
540 "node": ">=6"
541 }
542 },
543 "node_modules/camelcase": {
544 "version": "5.3.1",
545 "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
546 "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
547 "dev": true,
548 "engines": {
549 "node": ">=6"
550 }
551 },
552 "node_modules/chalk": {
553 "version": "2.4.2",
554 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
555 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
556 "dev": true,
557 "dependencies": {
558 "ansi-styles": "^3.2.1",
559 "escape-string-regexp": "^1.0.5",
560 "supports-color": "^5.3.0"
561 },
562 "engines": {
563 "node": ">=4"
564 }
565 },
566 "node_modules/cheerio": {
567 "version": "1.0.0-rc.3",
568 "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz",
569 "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==",
570 "dev": true,
571 "dependencies": {
572 "css-select": "~1.2.0",
573 "dom-serializer": "~0.1.1",
574 "entities": "~1.1.1",
575 "htmlparser2": "^3.9.1",
576 "lodash": "^4.15.0",
577 "parse5": "^3.0.1"
578 },
579 "engines": {
580 "node": ">= 0.6"
581 }
582 },
583 "node_modules/chokidar": {
584 "version": "3.4.2",
585 "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz",
586 "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==",
587 "dev": true,
588 "dependencies": {
589 "anymatch": "~3.1.1",
590 "braces": "~3.0.2",
591 "fsevents": "~2.1.2",
592 "glob-parent": "~5.1.0",
593 "is-binary-path": "~2.1.0",
594 "is-glob": "~4.0.1",
595 "normalize-path": "~3.0.0",
596 "readdirp": "~3.4.0"
597 },
598 "engines": {
599 "node": ">= 8.10.0"
600 },
601 "optionalDependencies": {
602 "fsevents": "~2.1.2"
603 }
604 },
605 "node_modules/cliui": {
606 "version": "5.0.0",
607 "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
608 "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
609 "dev": true,
610 "dependencies": {
611 "string-width": "^3.1.0",
612 "strip-ansi": "^5.2.0",
613 "wrap-ansi": "^5.1.0"
614 }
615 },
616 "node_modules/cliui/node_modules/ansi-regex": {
617 "version": "4.1.0",
618 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
619 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
620 "dev": true,
621 "engines": {
622 "node": ">=6"
623 }
624 },
625 "node_modules/cliui/node_modules/strip-ansi": {
626 "version": "5.2.0",
627 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
628 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
629 "dev": true,
630 "dependencies": {
631 "ansi-regex": "^4.1.0"
632 },
633 "engines": {
634 "node": ">=6"
635 }
636 },
637 "node_modules/color-convert": {
638 "version": "1.9.3",
639 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
640 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
641 "dev": true,
642 "dependencies": {
643 "color-name": "1.1.3"
644 }
645 },
646 "node_modules/color-name": {
647 "version": "1.1.3",
648 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
649 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
650 "dev": true
651 },
652 "node_modules/combined-stream": {
653 "version": "1.0.8",
654 "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
655 "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
656 "dev": true,
657 "dependencies": {
658 "delayed-stream": "~1.0.0"
659 },
660 "engines": {
661 "node": ">= 0.8"
662 }
663 },
664 "node_modules/commander": {
665 "version": "2.20.3",
666 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
667 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
668 "dev": true
669 },
670 "node_modules/commandpost": {
671 "version": "1.4.0",
672 "resolved": "https://registry.npmjs.org/commandpost/-/commandpost-1.4.0.tgz",
673 "integrity": "sha512-aE2Y4MTFJ870NuB/+2z1cXBhSBBzRydVVjzhFC4gtenEhpnj15yu0qptWGJsO9YGrcPZ3ezX8AWb1VA391MKpQ==",
674 "dev": true
675 },
676 "node_modules/commondir": {
677 "version": "1.0.1",
678 "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
679 "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
680 "dev": true
681 },
682 "node_modules/concat-map": {
683 "version": "0.0.1",
684 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
685 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
686 "dev": true
687 },
688 "node_modules/cross-spawn": {
689 "version": "7.0.3",
690 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
691 "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
692 "dev": true,
693 "dependencies": {
694 "path-key": "^3.1.0",
695 "shebang-command": "^2.0.0",
696 "which": "^2.0.1"
697 },
698 "engines": {
699 "node": ">= 8"
700 }
701 },
702 "node_modules/css-select": {
703 "version": "1.2.0",
704 "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz",
705 "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=",
706 "dev": true,
707 "dependencies": {
708 "boolbase": "~1.0.0",
709 "css-what": "2.1",
710 "domutils": "1.5.1",
711 "nth-check": "~1.0.1"
712 }
713 },
714 "node_modules/css-what": {
715 "version": "2.1.3",
716 "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
717 "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
718 "dev": true,
719 "engines": {
720 "node": "*"
721 }
722 },
723 "node_modules/debug": {
724 "version": "4.1.1",
725 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
726 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
727 "dev": true,
728 "dependencies": {
729 "ms": "^2.1.1"
730 }
731 },
732 "node_modules/decamelize": {
733 "version": "1.2.0",
734 "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
735 "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
736 "dev": true,
737 "engines": {
738 "node": ">=0.10.0"
739 }
740 },
741 "node_modules/deep-freeze": {
742 "version": "0.0.1",
743 "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz",
744 "integrity": "sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=",
745 "dev": true
746 },
747 "node_modules/deep-is": {
748 "version": "0.1.3",
749 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
750 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
751 "dev": true
752 },
753 "node_modules/deepmerge": {
754 "version": "4.2.2",
755 "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
756 "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
757 "dev": true,
758 "engines": {
759 "node": ">=0.10.0"
760 }
761 },
762 "node_modules/define-properties": {
763 "version": "1.1.3",
764 "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
765 "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
766 "dev": true,
767 "dependencies": {
768 "object-keys": "^1.0.12"
769 },
770 "engines": {
771 "node": ">= 0.4"
772 }
773 },
774 "node_modules/delayed-stream": {
775 "version": "1.0.0",
776 "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
777 "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
778 "dev": true,
779 "engines": {
780 "node": ">=0.4.0"
781 }
782 },
783 "node_modules/denodeify": {
784 "version": "1.2.1",
785 "resolved": "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz",
786 "integrity": "sha1-OjYof1A05pnnV3kBBSwubJQlFjE=",
787 "dev": true
788 },
789 "node_modules/diff": {
790 "version": "4.0.2",
791 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
792 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
793 "dev": true,
794 "engines": {
795 "node": ">=0.3.1"
796 }
797 },
798 "node_modules/doctrine": {
799 "version": "3.0.0",
800 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
801 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
802 "dev": true,
803 "dependencies": {
804 "esutils": "^2.0.2"
805 },
806 "engines": {
807 "node": ">=6.0.0"
808 }
809 },
810 "node_modules/dom-serializer": {
811 "version": "0.1.1",
812 "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
813 "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
814 "dev": true,
815 "dependencies": {
816 "domelementtype": "^1.3.0",
817 "entities": "^1.1.1"
818 }
819 },
820 "node_modules/domelementtype": {
821 "version": "1.3.1",
822 "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
823 "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
824 "dev": true
825 },
826 "node_modules/domhandler": {
827 "version": "2.4.2",
828 "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz",
829 "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==",
830 "dev": true,
831 "dependencies": {
832 "domelementtype": "1"
833 }
834 },
835 "node_modules/domutils": {
836 "version": "1.5.1",
837 "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz",
838 "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=",
839 "dev": true,
840 "dependencies": {
841 "dom-serializer": "0",
842 "domelementtype": "1"
843 }
844 },
845 "node_modules/editorconfig": {
846 "version": "0.15.3",
847 "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz",
848 "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==",
849 "dev": true,
850 "dependencies": {
851 "commander": "^2.19.0",
852 "lru-cache": "^4.1.5",
853 "semver": "^5.6.0",
854 "sigmund": "^1.0.1"
855 }
856 },
857 "node_modules/editorconfig/node_modules/semver": {
858 "version": "5.7.1",
859 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
860 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
861 "dev": true,
862 "bin": {
863 "semver": "bin/semver"
864 }
865 },
866 "node_modules/emoji-regex": {
867 "version": "7.0.3",
868 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
869 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
870 "dev": true
871 },
872 "node_modules/enquirer": {
873 "version": "2.3.6",
874 "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
875 "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
876 "dev": true,
877 "dependencies": {
878 "ansi-colors": "^4.1.1"
879 },
880 "engines": {
881 "node": ">=8.6"
882 }
883 },
884 "node_modules/entities": {
885 "version": "1.1.2",
886 "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
887 "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==",
888 "dev": true
889 },
890 "node_modules/es-abstract": {
891 "version": "1.17.6",
892 "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz",
893 "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==",
894 "dev": true,
895 "dependencies": {
896 "es-to-primitive": "^1.2.1",
897 "function-bind": "^1.1.1",
898 "has": "^1.0.3",
899 "has-symbols": "^1.0.1",
900 "is-callable": "^1.2.0",
901 "is-regex": "^1.1.0",
902 "object-inspect": "^1.7.0",
903 "object-keys": "^1.1.1",
904 "object.assign": "^4.1.0",
905 "string.prototype.trimend": "^1.0.1",
906 "string.prototype.trimstart": "^1.0.1"
907 },
908 "engines": {
909 "node": ">= 0.4"
910 }
911 },
912 "node_modules/es-array-method-boxes-properly": {
913 "version": "1.0.0",
914 "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz",
915 "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==",
916 "dev": true
917 },
918 "node_modules/es-get-iterator": {
919 "version": "1.1.0",
920 "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz",
921 "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==",
922 "dev": true,
923 "dependencies": {
924 "es-abstract": "^1.17.4",
925 "has-symbols": "^1.0.1",
926 "is-arguments": "^1.0.4",
927 "is-map": "^2.0.1",
928 "is-set": "^2.0.1",
929 "is-string": "^1.0.5",
930 "isarray": "^2.0.5"
931 }
932 },
933 "node_modules/es-to-primitive": {
934 "version": "1.2.1",
935 "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
936 "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
937 "dev": true,
938 "dependencies": {
939 "is-callable": "^1.1.4",
940 "is-date-object": "^1.0.1",
941 "is-symbol": "^1.0.2"
942 },
943 "engines": {
944 "node": ">= 0.4"
945 }
946 },
947 "node_modules/es6-promise": {
948 "version": "4.2.8",
949 "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz",
950 "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==",
951 "dev": true
952 },
953 "node_modules/es6-promisify": {
954 "version": "5.0.0",
955 "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
956 "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=",
957 "dev": true,
958 "dependencies": {
959 "es6-promise": "^4.0.3"
960 }
961 },
962 "node_modules/escape-string-regexp": {
963 "version": "1.0.5",
964 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
965 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
966 "dev": true,
967 "engines": {
968 "node": ">=0.8.0"
969 }
970 },
971 "node_modules/eslint": {
972 "version": "7.8.0",
973 "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.8.0.tgz",
974 "integrity": "sha512-qgtVyLZqKd2ZXWnLQA4NtVbOyH56zivOAdBFWE54RFkSZjokzNrcP4Z0eVWsZ+84ByXv+jL9k/wE1ENYe8xRFw==",
975 "dev": true,
976 "dependencies": {
977 "@babel/code-frame": "^7.0.0",
978 "@eslint/eslintrc": "^0.1.0",
979 "ajv": "^6.10.0",
980 "chalk": "^4.0.0",
981 "cross-spawn": "^7.0.2",
982 "debug": "^4.0.1",
983 "doctrine": "^3.0.0",
984 "enquirer": "^2.3.5",
985 "eslint-scope": "^5.1.0",
986 "eslint-utils": "^2.1.0",
987 "eslint-visitor-keys": "^1.3.0",
988 "espree": "^7.3.0",
989 "esquery": "^1.2.0",
990 "esutils": "^2.0.2",
991 "file-entry-cache": "^5.0.1",
992 "functional-red-black-tree": "^1.0.1",
993 "glob-parent": "^5.0.0",
994 "globals": "^12.1.0",
995 "ignore": "^4.0.6",
996 "import-fresh": "^3.0.0",
997 "imurmurhash": "^0.1.4",
998 "is-glob": "^4.0.0",
999 "js-yaml": "^3.13.1",
1000 "json-stable-stringify-without-jsonify": "^1.0.1",
1001 "levn": "^0.4.1",
1002 "lodash": "^4.17.19",
1003 "minimatch": "^3.0.4",
1004 "natural-compare": "^1.4.0",
1005 "optionator": "^0.9.1",
1006 "progress": "^2.0.0",
1007 "regexpp": "^3.1.0",
1008 "semver": "^7.2.1",
1009 "strip-ansi": "^6.0.0",
1010 "strip-json-comments": "^3.1.0",
1011 "table": "^5.2.3",
1012 "text-table": "^0.2.0",
1013 "v8-compile-cache": "^2.0.3"
1014 },
1015 "bin": {
1016 "eslint": "bin/eslint.js"
1017 },
1018 "engines": {
1019 "node": "^10.12.0 || >=12.0.0"
1020 }
1021 },
1022 "node_modules/eslint-scope": {
1023 "version": "5.1.0",
1024 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz",
1025 "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==",
1026 "dev": true,
1027 "dependencies": {
1028 "esrecurse": "^4.1.0",
1029 "estraverse": "^4.1.1"
1030 },
1031 "engines": {
1032 "node": ">=8.0.0"
1033 }
1034 },
1035 "node_modules/eslint-utils": {
1036 "version": "2.1.0",
1037 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
1038 "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
1039 "dev": true,
1040 "dependencies": {
1041 "eslint-visitor-keys": "^1.1.0"
1042 },
1043 "engines": {
1044 "node": ">=6"
1045 }
1046 },
1047 "node_modules/eslint-visitor-keys": {
1048 "version": "1.3.0",
1049 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
1050 "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
1051 "dev": true,
1052 "engines": {
1053 "node": ">=4"
1054 }
1055 },
1056 "node_modules/eslint/node_modules/ansi-styles": {
1057 "version": "4.2.1",
1058 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
1059 "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
1060 "dev": true,
1061 "dependencies": {
1062 "@types/color-name": "^1.1.1",
1063 "color-convert": "^2.0.1"
1064 },
1065 "engines": {
1066 "node": ">=8"
1067 }
1068 },
1069 "node_modules/eslint/node_modules/chalk": {
1070 "version": "4.1.0",
1071 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
1072 "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
1073 "dev": true,
1074 "dependencies": {
1075 "ansi-styles": "^4.1.0",
1076 "supports-color": "^7.1.0"
1077 },
1078 "engines": {
1079 "node": ">=10"
1080 }
1081 },
1082 "node_modules/eslint/node_modules/color-convert": {
1083 "version": "2.0.1",
1084 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1085 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1086 "dev": true,
1087 "dependencies": {
1088 "color-name": "~1.1.4"
1089 },
1090 "engines": {
1091 "node": ">=7.0.0"
1092 }
1093 },
1094 "node_modules/eslint/node_modules/color-name": {
1095 "version": "1.1.4",
1096 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1097 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1098 "dev": true
1099 },
1100 "node_modules/eslint/node_modules/eslint-scope": {
1101 "version": "5.1.0",
1102 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz",
1103 "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==",
1104 "dev": true,
1105 "dependencies": {
1106 "esrecurse": "^4.1.0",
1107 "estraverse": "^4.1.1"
1108 },
1109 "engines": {
1110 "node": ">=8.0.0"
1111 }
1112 },
1113 "node_modules/eslint/node_modules/eslint-utils": {
1114 "version": "2.1.0",
1115 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
1116 "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
1117 "dev": true,
1118 "dependencies": {
1119 "eslint-visitor-keys": "^1.1.0"
1120 },
1121 "engines": {
1122 "node": ">=6"
1123 }
1124 },
1125 "node_modules/eslint/node_modules/eslint-visitor-keys": {
1126 "version": "1.3.0",
1127 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
1128 "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
1129 "dev": true,
1130 "engines": {
1131 "node": ">=4"
1132 }
1133 },
1134 "node_modules/eslint/node_modules/has-flag": {
1135 "version": "4.0.0",
1136 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1137 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1138 "dev": true,
1139 "engines": {
1140 "node": ">=8"
1141 }
1142 },
1143 "node_modules/eslint/node_modules/semver": {
1144 "version": "7.3.2",
1145 "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
1146 "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
1147 "dev": true,
1148 "bin": {
1149 "semver": "bin/semver.js"
1150 },
1151 "engines": {
1152 "node": ">=10"
1153 }
1154 },
1155 "node_modules/eslint/node_modules/supports-color": {
1156 "version": "7.2.0",
1157 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1158 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1159 "dev": true,
1160 "dependencies": {
1161 "has-flag": "^4.0.0"
1162 },
1163 "engines": {
1164 "node": ">=8"
1165 }
1166 },
1167 "node_modules/espree": {
1168 "version": "7.3.0",
1169 "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.0.tgz",
1170 "integrity": "sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw==",
1171 "dev": true,
1172 "dependencies": {
1173 "acorn": "^7.4.0",
1174 "acorn-jsx": "^5.2.0",
1175 "eslint-visitor-keys": "^1.3.0"
1176 },
1177 "engines": {
1178 "node": "^10.12.0 || >=12.0.0"
1179 }
1180 },
1181 "node_modules/espree/node_modules/eslint-visitor-keys": {
1182 "version": "1.3.0",
1183 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
1184 "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
1185 "dev": true,
1186 "engines": {
1187 "node": ">=4"
1188 }
1189 },
1190 "node_modules/esprima": {
1191 "version": "4.0.1",
1192 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
1193 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
1194 "dev": true,
1195 "bin": {
1196 "esparse": "bin/esparse.js",
1197 "esvalidate": "bin/esvalidate.js"
1198 },
1199 "engines": {
1200 "node": ">=4"
1201 }
1202 },
1203 "node_modules/esquery": {
1204 "version": "1.3.1",
1205 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz",
1206 "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==",
1207 "dev": true,
1208 "dependencies": {
1209 "estraverse": "^5.1.0"
1210 },
1211 "engines": {
1212 "node": ">=0.10"
1213 }
1214 },
1215 "node_modules/esquery/node_modules/estraverse": {
1216 "version": "5.2.0",
1217 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
1218 "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
1219 "dev": true,
1220 "engines": {
1221 "node": ">=4.0"
1222 }
1223 },
1224 "node_modules/esrecurse": {
1225 "version": "4.2.1",
1226 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
1227 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
1228 "dev": true,
1229 "dependencies": {
1230 "estraverse": "^4.1.0"
1231 },
1232 "engines": {
1233 "node": ">=4.0"
1234 }
1235 },
1236 "node_modules/estraverse": {
1237 "version": "4.3.0",
1238 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
1239 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
1240 "dev": true,
1241 "engines": {
1242 "node": ">=4.0"
1243 }
1244 },
1245 "node_modules/estree-walker": {
1246 "version": "1.0.1",
1247 "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
1248 "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
1249 "dev": true
1250 },
1251 "node_modules/esutils": {
1252 "version": "2.0.3",
1253 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
1254 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
1255 "dev": true,
1256 "engines": {
1257 "node": ">=0.10.0"
1258 }
1259 },
1260 "node_modules/fast-deep-equal": {
1261 "version": "3.1.3",
1262 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
1263 "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
1264 "dev": true
1265 },
1266 "node_modules/fast-json-stable-stringify": {
1267 "version": "2.1.0",
1268 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1269 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
1270 "dev": true
1271 },
1272 "node_modules/fast-levenshtein": {
1273 "version": "2.0.6",
1274 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1275 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
1276 "dev": true
1277 },
1278 "node_modules/fd-slicer": {
1279 "version": "1.1.0",
1280 "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
1281 "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
1282 "dev": true,
1283 "dependencies": {
1284 "pend": "~1.2.0"
1285 }
1286 },
1287 "node_modules/file-entry-cache": {
1288 "version": "5.0.1",
1289 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
1290 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
1291 "dev": true,
1292 "dependencies": {
1293 "flat-cache": "^2.0.1"
1294 },
1295 "engines": {
1296 "node": ">=4"
1297 }
1298 },
1299 "node_modules/fill-range": {
1300 "version": "7.0.1",
1301 "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
1302 "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1303 "dev": true,
1304 "dependencies": {
1305 "to-regex-range": "^5.0.1"
1306 },
1307 "engines": {
1308 "node": ">=8"
1309 }
1310 },
1311 "node_modules/find-up": {
1312 "version": "5.0.0",
1313 "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
1314 "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
1315 "dev": true,
1316 "dependencies": {
1317 "locate-path": "^6.0.0",
1318 "path-exists": "^4.0.0"
1319 },
1320 "engines": {
1321 "node": ">=10"
1322 }
1323 },
1324 "node_modules/flat": {
1325 "version": "4.1.0",
1326 "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz",
1327 "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==",
1328 "dev": true,
1329 "dependencies": {
1330 "is-buffer": "~2.0.3"
1331 },
1332 "bin": {
1333 "flat": "cli.js"
1334 }
1335 },
1336 "node_modules/flat-cache": {
1337 "version": "2.0.1",
1338 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
1339 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
1340 "dev": true,
1341 "dependencies": {
1342 "flatted": "^2.0.0",
1343 "rimraf": "2.6.3",
1344 "write": "1.0.3"
1345 },
1346 "engines": {
1347 "node": ">=4"
1348 }
1349 },
1350 "node_modules/flatted": {
1351 "version": "2.0.2",
1352 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz",
1353 "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
1354 "dev": true
1355 },
1356 "node_modules/form-data": {
1357 "version": "3.0.0",
1358 "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz",
1359 "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==",
1360 "dev": true,
1361 "dependencies": {
1362 "asynckit": "^0.4.0",
1363 "combined-stream": "^1.0.8",
1364 "mime-types": "^2.1.12"
1365 },
1366 "engines": {
1367 "node": ">= 6"
1368 }
1369 },
1370 "node_modules/fs.realpath": {
1371 "version": "1.0.0",
1372 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
1373 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
1374 "dev": true
1375 },
1376 "node_modules/fsevents": {
1377 "version": "2.1.3",
1378 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
1379 "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
1380 "dev": true,
1381 "optional": true,
1382 "os": [
1383 "darwin"
1384 ],
1385 "engines": {
1386 "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1387 }
1388 },
1389 "node_modules/function-bind": {
1390 "version": "1.1.1",
1391 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
1392 "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
1393 "dev": true
1394 },
1395 "node_modules/functional-red-black-tree": {
1396 "version": "1.0.1",
1397 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
1398 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
1399 "dev": true
1400 },
1401 "node_modules/get-caller-file": {
1402 "version": "2.0.5",
1403 "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
1404 "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
1405 "dev": true,
1406 "engines": {
1407 "node": "6.* || 8.* || >= 10.*"
1408 }
1409 },
1410 "node_modules/glob": {
1411 "version": "7.1.6",
1412 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
1413 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
1414 "dev": true,
1415 "dependencies": {
1416 "fs.realpath": "^1.0.0",
1417 "inflight": "^1.0.4",
1418 "inherits": "2",
1419 "minimatch": "^3.0.4",
1420 "once": "^1.3.0",
1421 "path-is-absolute": "^1.0.0"
1422 },
1423 "engines": {
1424 "node": "*"
1425 }
1426 },
1427 "node_modules/glob-parent": {
1428 "version": "5.1.1",
1429 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
1430 "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
1431 "dev": true,
1432 "dependencies": {
1433 "is-glob": "^4.0.1"
1434 },
1435 "engines": {
1436 "node": ">= 6"
1437 }
1438 },
1439 "node_modules/globals": {
1440 "version": "12.4.0",
1441 "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
1442 "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
1443 "dev": true,
1444 "dependencies": {
1445 "type-fest": "^0.8.1"
1446 },
1447 "engines": {
1448 "node": ">=8"
1449 }
1450 },
1451 "node_modules/growl": {
1452 "version": "1.10.5",
1453 "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz",
1454 "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
1455 "dev": true,
1456 "engines": {
1457 "node": ">=4.x"
1458 }
1459 },
1460 "node_modules/has": {
1461 "version": "1.0.3",
1462 "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
1463 "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1464 "dev": true,
1465 "dependencies": {
1466 "function-bind": "^1.1.1"
1467 },
1468 "engines": {
1469 "node": ">= 0.4.0"
1470 }
1471 },
1472 "node_modules/has-flag": {
1473 "version": "3.0.0",
1474 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
1475 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
1476 "dev": true,
1477 "engines": {
1478 "node": ">=4"
1479 }
1480 },
1481 "node_modules/has-symbols": {
1482 "version": "1.0.1",
1483 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz",
1484 "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==",
1485 "dev": true,
1486 "engines": {
1487 "node": ">= 0.4"
1488 }
1489 },
1490 "node_modules/he": {
1491 "version": "1.2.0",
1492 "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
1493 "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
1494 "dev": true,
1495 "bin": {
1496 "he": "bin/he"
1497 }
1498 },
1499 "node_modules/htmlparser2": {
1500 "version": "3.10.1",
1501 "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
1502 "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
1503 "dev": true,
1504 "dependencies": {
1505 "domelementtype": "^1.3.1",
1506 "domhandler": "^2.3.0",
1507 "domutils": "^1.5.1",
1508 "entities": "^1.1.1",
1509 "inherits": "^2.0.1",
1510 "readable-stream": "^3.1.1"
1511 }
1512 },
1513 "node_modules/http-proxy-agent": {
1514 "version": "2.1.0",
1515 "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz",
1516 "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==",
1517 "dev": true,
1518 "dependencies": {
1519 "agent-base": "4",
1520 "debug": "3.1.0"
1521 },
1522 "engines": {
1523 "node": ">= 4.5.0"
1524 }
1525 },
1526 "node_modules/http-proxy-agent/node_modules/debug": {
1527 "version": "3.1.0",
1528 "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
1529 "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
1530 "dev": true,
1531 "dependencies": {
1532 "ms": "2.0.0"
1533 }
1534 },
1535 "node_modules/http-proxy-agent/node_modules/ms": {
1536 "version": "2.0.0",
1537 "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
1538 "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
1539 "dev": true
1540 },
1541 "node_modules/https-proxy-agent": {
1542 "version": "2.2.4",
1543 "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz",
1544 "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==",
1545 "dev": true,
1546 "dependencies": {
1547 "agent-base": "^4.3.0",
1548 "debug": "^3.1.0"
1549 },
1550 "engines": {
1551 "node": ">= 4.5.0"
1552 }
1553 },
1554 "node_modules/https-proxy-agent/node_modules/debug": {
1555 "version": "3.2.6",
1556 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
1557 "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
1558 "dev": true,
1559 "dependencies": {
1560 "ms": "^2.1.1"
1561 }
1562 },
1563 "node_modules/ignore": {
1564 "version": "4.0.6",
1565 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
1566 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
1567 "dev": true,
1568 "engines": {
1569 "node": ">= 4"
1570 }
1571 },
1572 "node_modules/import-fresh": {
1573 "version": "3.2.1",
1574 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
1575 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
1576 "dev": true,
1577 "dependencies": {
1578 "parent-module": "^1.0.0",
1579 "resolve-from": "^4.0.0"
1580 },
1581 "engines": {
1582 "node": ">=6"
1583 }
1584 },
1585 "node_modules/imurmurhash": {
1586 "version": "0.1.4",
1587 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
1588 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
1589 "dev": true,
1590 "engines": {
1591 "node": ">=0.8.19"
1592 }
1593 },
1594 "node_modules/inflight": {
1595 "version": "1.0.6",
1596 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
1597 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
1598 "dev": true,
1599 "dependencies": {
1600 "once": "^1.3.0",
1601 "wrappy": "1"
1602 }
1603 },
1604 "node_modules/inherits": {
1605 "version": "2.0.4",
1606 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
1607 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
1608 "dev": true
1609 },
1610 "node_modules/is-arguments": {
1611 "version": "1.0.4",
1612 "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz",
1613 "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==",
1614 "dev": true,
1615 "engines": {
1616 "node": ">= 0.4"
1617 }
1618 },
1619 "node_modules/is-binary-path": {
1620 "version": "2.1.0",
1621 "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1622 "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1623 "dev": true,
1624 "dependencies": {
1625 "binary-extensions": "^2.0.0"
1626 },
1627 "engines": {
1628 "node": ">=8"
1629 }
1630 },
1631 "node_modules/is-buffer": {
1632 "version": "2.0.4",
1633 "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
1634 "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==",
1635 "dev": true,
1636 "engines": {
1637 "node": ">=4"
1638 }
1639 },
1640 "node_modules/is-callable": {
1641 "version": "1.2.0",
1642 "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz",
1643 "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==",
1644 "dev": true,
1645 "engines": {
1646 "node": ">= 0.4"
1647 }
1648 },
1649 "node_modules/is-date-object": {
1650 "version": "1.0.2",
1651 "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz",
1652 "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==",
1653 "dev": true,
1654 "engines": {
1655 "node": ">= 0.4"
1656 }
1657 },
1658 "node_modules/is-extglob": {
1659 "version": "2.1.1",
1660 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1661 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
1662 "dev": true,
1663 "engines": {
1664 "node": ">=0.10.0"
1665 }
1666 },
1667 "node_modules/is-fullwidth-code-point": {
1668 "version": "2.0.0",
1669 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1670 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1671 "dev": true,
1672 "engines": {
1673 "node": ">=4"
1674 }
1675 },
1676 "node_modules/is-glob": {
1677 "version": "4.0.1",
1678 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
1679 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
1680 "dev": true,
1681 "dependencies": {
1682 "is-extglob": "^2.1.1"
1683 },
1684 "engines": {
1685 "node": ">=0.10.0"
1686 }
1687 },
1688 "node_modules/is-map": {
1689 "version": "2.0.1",
1690 "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz",
1691 "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==",
1692 "dev": true
1693 },
1694 "node_modules/is-module": {
1695 "version": "1.0.0",
1696 "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz",
1697 "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=",
1698 "dev": true
1699 },
1700 "node_modules/is-number": {
1701 "version": "7.0.0",
1702 "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1703 "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1704 "dev": true,
1705 "engines": {
1706 "node": ">=0.12.0"
1707 }
1708 },
1709 "node_modules/is-plain-obj": {
1710 "version": "1.1.0",
1711 "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
1712 "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
1713 "dev": true,
1714 "engines": {
1715 "node": ">=0.10.0"
1716 }
1717 },
1718 "node_modules/is-reference": {
1719 "version": "1.2.1",
1720 "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz",
1721 "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==",
1722 "dev": true,
1723 "dependencies": {
1724 "@types/estree": "*"
1725 }
1726 },
1727 "node_modules/is-regex": {
1728 "version": "1.1.1",
1729 "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.1.tgz",
1730 "integrity": "sha512-1+QkEcxiLlB7VEyFtyBg94e08OAsvq7FUBgApTq/w2ymCLyKJgDPsybBENVtA7XCQEgEXxKPonG+mvYRxh/LIg==",
1731 "dev": true,
1732 "dependencies": {
1733 "has-symbols": "^1.0.1"
1734 },
1735 "engines": {
1736 "node": ">= 0.4"
1737 }
1738 },
1739 "node_modules/is-set": {
1740 "version": "2.0.1",
1741 "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz",
1742 "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==",
1743 "dev": true
1744 },
1745 "node_modules/is-string": {
1746 "version": "1.0.5",
1747 "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz",
1748 "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==",
1749 "dev": true,
1750 "engines": {
1751 "node": ">= 0.4"
1752 }
1753 },
1754 "node_modules/is-symbol": {
1755 "version": "1.0.3",
1756 "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz",
1757 "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==",
1758 "dev": true,
1759 "dependencies": {
1760 "has-symbols": "^1.0.1"
1761 },
1762 "engines": {
1763 "node": ">= 0.4"
1764 }
1765 },
1766 "node_modules/isarray": {
1767 "version": "2.0.5",
1768 "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
1769 "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
1770 "dev": true
1771 },
1772 "node_modules/isexe": {
1773 "version": "2.0.0",
1774 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
1775 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
1776 "dev": true
1777 },
1778 "node_modules/iterate-iterator": {
1779 "version": "1.0.1",
1780 "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.1.tgz",
1781 "integrity": "sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw==",
1782 "dev": true
1783 },
1784 "node_modules/iterate-value": {
1785 "version": "1.0.2",
1786 "resolved": "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz",
1787 "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==",
1788 "dev": true,
1789 "dependencies": {
1790 "es-get-iterator": "^1.0.2",
1791 "iterate-iterator": "^1.0.1"
1792 }
1793 },
1794 "node_modules/js-tokens": {
1795 "version": "4.0.0",
1796 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1797 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
1798 "dev": true
1799 },
1800 "node_modules/js-yaml": {
1801 "version": "3.14.0",
1802 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
1803 "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
1804 "dev": true,
1805 "dependencies": {
1806 "argparse": "^1.0.7",
1807 "esprima": "^4.0.0"
1808 },
1809 "bin": {
1810 "js-yaml": "bin/js-yaml.js"
1811 }
1812 },
1813 "node_modules/json-schema-traverse": {
1814 "version": "0.4.1",
1815 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1816 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
1817 "dev": true
1818 },
1819 "node_modules/json-stable-stringify-without-jsonify": {
1820 "version": "1.0.1",
1821 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1822 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
1823 "dev": true
1824 },
1825 "node_modules/leven": {
1826 "version": "3.1.0",
1827 "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
1828 "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==",
1829 "dev": true,
1830 "engines": {
1831 "node": ">=6"
1832 }
1833 },
1834 "node_modules/levn": {
1835 "version": "0.4.1",
1836 "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
1837 "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
1838 "dev": true,
1839 "dependencies": {
1840 "prelude-ls": "^1.2.1",
1841 "type-check": "~0.4.0"
1842 },
1843 "engines": {
1844 "node": ">= 0.8.0"
1845 }
1846 },
1847 "node_modules/linkify-it": {
1848 "version": "2.2.0",
1849 "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz",
1850 "integrity": "sha512-GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw==",
1851 "dev": true,
1852 "dependencies": {
1853 "uc.micro": "^1.0.1"
1854 }
1855 },
1856 "node_modules/locate-path": {
1857 "version": "6.0.0",
1858 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
1859 "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
1860 "dev": true,
1861 "dependencies": {
1862 "p-locate": "^5.0.0"
1863 },
1864 "engines": {
1865 "node": ">=10"
1866 }
1867 },
1868 "node_modules/lodash": {
1869 "version": "4.17.19",
1870 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
1871 "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
1872 "dev": true
1873 },
1874 "node_modules/log-symbols": {
1875 "version": "4.0.0",
1876 "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz",
1877 "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==",
1878 "dev": true,
1879 "dependencies": {
1880 "chalk": "^4.0.0"
1881 },
1882 "engines": {
1883 "node": ">=10"
1884 }
1885 },
1886 "node_modules/log-symbols/node_modules/ansi-styles": {
1887 "version": "4.2.1",
1888 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
1889 "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
1890 "dev": true,
1891 "dependencies": {
1892 "@types/color-name": "^1.1.1",
1893 "color-convert": "^2.0.1"
1894 },
1895 "engines": {
1896 "node": ">=8"
1897 }
1898 },
1899 "node_modules/log-symbols/node_modules/chalk": {
1900 "version": "4.1.0",
1901 "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
1902 "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
1903 "dev": true,
1904 "dependencies": {
1905 "ansi-styles": "^4.1.0",
1906 "supports-color": "^7.1.0"
1907 },
1908 "engines": {
1909 "node": ">=10"
1910 }
1911 },
1912 "node_modules/log-symbols/node_modules/color-convert": {
1913 "version": "2.0.1",
1914 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
1915 "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
1916 "dev": true,
1917 "dependencies": {
1918 "color-name": "~1.1.4"
1919 },
1920 "engines": {
1921 "node": ">=7.0.0"
1922 }
1923 },
1924 "node_modules/log-symbols/node_modules/color-name": {
1925 "version": "1.1.4",
1926 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1927 "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
1928 "dev": true
1929 },
1930 "node_modules/log-symbols/node_modules/has-flag": {
1931 "version": "4.0.0",
1932 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
1933 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
1934 "dev": true,
1935 "engines": {
1936 "node": ">=8"
1937 }
1938 },
1939 "node_modules/log-symbols/node_modules/supports-color": {
1940 "version": "7.2.0",
1941 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
1942 "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1943 "dev": true,
1944 "dependencies": {
1945 "has-flag": "^4.0.0"
1946 },
1947 "engines": {
1948 "node": ">=8"
1949 }
1950 },
1951 "node_modules/lru-cache": {
1952 "version": "4.1.5",
1953 "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
1954 "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
1955 "dev": true,
1956 "dependencies": {
1957 "pseudomap": "^1.0.2",
1958 "yallist": "^2.1.2"
1959 }
1960 },
1961 "node_modules/magic-string": {
1962 "version": "0.25.7",
1963 "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
1964 "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
1965 "dev": true,
1966 "dependencies": {
1967 "sourcemap-codec": "^1.4.4"
1968 }
1969 },
1970 "node_modules/markdown-it": {
1971 "version": "10.0.0",
1972 "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz",
1973 "integrity": "sha512-YWOP1j7UbDNz+TumYP1kpwnP0aEa711cJjrAQrzd0UXlbJfc5aAq0F/PZHjiioqDC1NKgvIMX+o+9Bk7yuM2dg==",
1974 "dev": true,
1975 "dependencies": {
1976 "argparse": "^1.0.7",
1977 "entities": "~2.0.0",
1978 "linkify-it": "^2.0.0",
1979 "mdurl": "^1.0.1",
1980 "uc.micro": "^1.0.5"
1981 },
1982 "bin": {
1983 "markdown-it": "bin/markdown-it.js"
1984 }
1985 },
1986 "node_modules/markdown-it/node_modules/entities": {
1987 "version": "2.0.3",
1988 "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz",
1989 "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==",
1990 "dev": true
1991 },
1992 "node_modules/mdurl": {
1993 "version": "1.0.1",
1994 "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz",
1995 "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
1996 "dev": true
1997 },
1998 "node_modules/mime": {
1999 "version": "1.6.0",
2000 "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
2001 "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
2002 "dev": true,
2003 "bin": {
2004 "mime": "cli.js"
2005 },
2006 "engines": {
2007 "node": ">=4"
2008 }
2009 },
2010 "node_modules/mime-db": {
2011 "version": "1.44.0",
2012 "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz",
2013 "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==",
2014 "dev": true,
2015 "engines": {
2016 "node": ">= 0.6"
2017 }
2018 },
2019 "node_modules/mime-types": {
2020 "version": "2.1.27",
2021 "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz",
2022 "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==",
2023 "dev": true,
2024 "dependencies": {
2025 "mime-db": "1.44.0"
2026 },
2027 "engines": {
2028 "node": ">= 0.6"
2029 }
2030 },
2031 "node_modules/minimatch": {
2032 "version": "3.0.4",
2033 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
2034 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
2035 "dev": true,
2036 "dependencies": {
2037 "brace-expansion": "^1.1.7"
2038 },
2039 "engines": {
2040 "node": "*"
2041 }
2042 },
2043 "node_modules/minimist": {
2044 "version": "1.2.5",
2045 "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
2046 "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
2047 "dev": true
2048 },
2049 "node_modules/mkdirp": {
2050 "version": "0.5.5",
2051 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
2052 "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
2053 "dev": true,
2054 "dependencies": {
2055 "minimist": "^1.2.5"
2056 },
2057 "bin": {
2058 "mkdirp": "bin/cmd.js"
2059 }
2060 },
2061 "node_modules/mocha": {
2062 "version": "8.1.3",
2063 "resolved": "https://registry.npmjs.org/mocha/-/mocha-8.1.3.tgz",
2064 "integrity": "sha512-ZbaYib4hT4PpF4bdSO2DohooKXIn4lDeiYqB+vTmCdr6l2woW0b6H3pf5x4sM5nwQMru9RvjjHYWVGltR50ZBw==",
2065 "dev": true,
2066 "dependencies": {
2067 "ansi-colors": "4.1.1",
2068 "browser-stdout": "1.3.1",
2069 "chokidar": "3.4.2",
2070 "debug": "4.1.1",
2071 "diff": "4.0.2",
2072 "escape-string-regexp": "4.0.0",
2073 "find-up": "5.0.0",
2074 "glob": "7.1.6",
2075 "growl": "1.10.5",
2076 "he": "1.2.0",
2077 "js-yaml": "3.14.0",
2078 "log-symbols": "4.0.0",
2079 "minimatch": "3.0.4",
2080 "ms": "2.1.2",
2081 "object.assign": "4.1.0",
2082 "promise.allsettled": "1.0.2",
2083 "serialize-javascript": "4.0.0",
2084 "strip-json-comments": "3.0.1",
2085 "supports-color": "7.1.0",
2086 "which": "2.0.2",
2087 "wide-align": "1.1.3",
2088 "workerpool": "6.0.0",
2089 "yargs": "13.3.2",
2090 "yargs-parser": "13.1.2",
2091 "yargs-unparser": "1.6.1"
2092 },
2093 "bin": {
2094 "_mocha": "bin/_mocha",
2095 "mocha": "bin/mocha"
2096 },
2097 "engines": {
2098 "node": ">= 10.12.0"
2099 }
2100 },
2101 "node_modules/mocha/node_modules/ansi-colors": {
2102 "version": "4.1.1",
2103 "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
2104 "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
2105 "dev": true,
2106 "engines": {
2107 "node": ">=6"
2108 }
2109 },
2110 "node_modules/mocha/node_modules/escape-string-regexp": {
2111 "version": "4.0.0",
2112 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
2113 "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
2114 "dev": true,
2115 "engines": {
2116 "node": ">=10"
2117 }
2118 },
2119 "node_modules/mocha/node_modules/has-flag": {
2120 "version": "4.0.0",
2121 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
2122 "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
2123 "dev": true,
2124 "engines": {
2125 "node": ">=8"
2126 }
2127 },
2128 "node_modules/mocha/node_modules/strip-json-comments": {
2129 "version": "3.0.1",
2130 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
2131 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
2132 "dev": true,
2133 "engines": {
2134 "node": ">=8"
2135 }
2136 },
2137 "node_modules/mocha/node_modules/supports-color": {
2138 "version": "7.1.0",
2139 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
2140 "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
2141 "dev": true,
2142 "dependencies": {
2143 "has-flag": "^4.0.0"
2144 },
2145 "engines": {
2146 "node": ">=8"
2147 }
2148 },
2149 "node_modules/ms": {
2150 "version": "2.1.2",
2151 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
2152 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
2153 "dev": true
2154 },
2155 "node_modules/mute-stream": {
2156 "version": "0.0.8",
2157 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
2158 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
2159 "dev": true
2160 },
2161 "node_modules/natural-compare": {
2162 "version": "1.4.0",
2163 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
2164 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
2165 "dev": true
2166 },
2167 "node_modules/node-fetch": {
2168 "version": "2.6.1",
2169 "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz",
2170 "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==",
2171 "engines": {
2172 "node": "4.x || >=6.0.0"
2173 }
2174 },
2175 "node_modules/normalize-path": {
2176 "version": "3.0.0",
2177 "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
2178 "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
2179 "dev": true,
2180 "engines": {
2181 "node": ">=0.10.0"
2182 }
2183 },
2184 "node_modules/nth-check": {
2185 "version": "1.0.2",
2186 "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
2187 "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
2188 "dev": true,
2189 "dependencies": {
2190 "boolbase": "~1.0.0"
2191 }
2192 },
2193 "node_modules/object-inspect": {
2194 "version": "1.8.0",
2195 "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.8.0.tgz",
2196 "integrity": "sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA==",
2197 "dev": true
2198 },
2199 "node_modules/object-keys": {
2200 "version": "1.1.1",
2201 "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
2202 "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
2203 "dev": true,
2204 "engines": {
2205 "node": ">= 0.4"
2206 }
2207 },
2208 "node_modules/object.assign": {
2209 "version": "4.1.0",
2210 "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
2211 "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
2212 "dev": true,
2213 "dependencies": {
2214 "define-properties": "^1.1.2",
2215 "function-bind": "^1.1.1",
2216 "has-symbols": "^1.0.0",
2217 "object-keys": "^1.0.11"
2218 },
2219 "engines": {
2220 "node": ">= 0.4"
2221 }
2222 },
2223 "node_modules/once": {
2224 "version": "1.4.0",
2225 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
2226 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
2227 "dev": true,
2228 "dependencies": {
2229 "wrappy": "1"
2230 }
2231 },
2232 "node_modules/optionator": {
2233 "version": "0.9.1",
2234 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
2235 "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
2236 "dev": true,
2237 "dependencies": {
2238 "deep-is": "^0.1.3",
2239 "fast-levenshtein": "^2.0.6",
2240 "levn": "^0.4.1",
2241 "prelude-ls": "^1.2.1",
2242 "type-check": "^0.4.0",
2243 "word-wrap": "^1.2.3"
2244 },
2245 "engines": {
2246 "node": ">= 0.8.0"
2247 }
2248 },
2249 "node_modules/os": {
2250 "version": "0.1.1",
2251 "resolved": "https://registry.npmjs.org/os/-/os-0.1.1.tgz",
2252 "integrity": "sha1-IIhF6J4ZOtTZcUdLk5R3NqVtE/M=",
2253 "dev": true
2254 },
2255 "node_modules/os-homedir": {
2256 "version": "1.0.2",
2257 "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
2258 "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
2259 "dev": true,
2260 "engines": {
2261 "node": ">=0.10.0"
2262 }
2263 },
2264 "node_modules/os-tmpdir": {
2265 "version": "1.0.2",
2266 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
2267 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
2268 "dev": true,
2269 "engines": {
2270 "node": ">=0.10.0"
2271 }
2272 },
2273 "node_modules/osenv": {
2274 "version": "0.1.5",
2275 "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
2276 "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
2277 "dev": true,
2278 "dependencies": {
2279 "os-homedir": "^1.0.0",
2280 "os-tmpdir": "^1.0.0"
2281 }
2282 },
2283 "node_modules/p-limit": {
2284 "version": "3.0.2",
2285 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.0.2.tgz",
2286 "integrity": "sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==",
2287 "dev": true,
2288 "dependencies": {
2289 "p-try": "^2.0.0"
2290 },
2291 "engines": {
2292 "node": ">=10"
2293 }
2294 },
2295 "node_modules/p-locate": {
2296 "version": "5.0.0",
2297 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
2298 "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
2299 "dev": true,
2300 "dependencies": {
2301 "p-limit": "^3.0.2"
2302 },
2303 "engines": {
2304 "node": ">=10"
2305 }
2306 },
2307 "node_modules/p-try": {
2308 "version": "2.2.0",
2309 "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
2310 "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
2311 "dev": true,
2312 "engines": {
2313 "node": ">=6"
2314 }
2315 },
2316 "node_modules/parent-module": {
2317 "version": "1.0.1",
2318 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
2319 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
2320 "dev": true,
2321 "dependencies": {
2322 "callsites": "^3.0.0"
2323 },
2324 "engines": {
2325 "node": ">=6"
2326 }
2327 },
2328 "node_modules/parse-semver": {
2329 "version": "1.1.1",
2330 "resolved": "https://registry.npmjs.org/parse-semver/-/parse-semver-1.1.1.tgz",
2331 "integrity": "sha1-mkr9bfBj3Egm+T+6SpnPIj9mbLg=",
2332 "dev": true,
2333 "dependencies": {
2334 "semver": "^5.1.0"
2335 }
2336 },
2337 "node_modules/parse-semver/node_modules/semver": {
2338 "version": "5.7.1",
2339 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
2340 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
2341 "dev": true,
2342 "bin": {
2343 "semver": "bin/semver"
2344 }
2345 },
2346 "node_modules/parse5": {
2347 "version": "3.0.3",
2348 "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
2349 "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
2350 "dev": true,
2351 "dependencies": {
2352 "@types/node": "*"
2353 }
2354 },
2355 "node_modules/path-exists": {
2356 "version": "4.0.0",
2357 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
2358 "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
2359 "dev": true,
2360 "engines": {
2361 "node": ">=8"
2362 }
2363 },
2364 "node_modules/path-is-absolute": {
2365 "version": "1.0.1",
2366 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
2367 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
2368 "dev": true,
2369 "engines": {
2370 "node": ">=0.10.0"
2371 }
2372 },
2373 "node_modules/path-key": {
2374 "version": "3.1.1",
2375 "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
2376 "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
2377 "dev": true,
2378 "engines": {
2379 "node": ">=8"
2380 }
2381 },
2382 "node_modules/path-parse": {
2383 "version": "1.0.6",
2384 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
2385 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
2386 "dev": true
2387 },
2388 "node_modules/pend": {
2389 "version": "1.2.0",
2390 "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
2391 "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
2392 "dev": true
2393 },
2394 "node_modules/picomatch": {
2395 "version": "2.2.2",
2396 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz",
2397 "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==",
2398 "dev": true,
2399 "engines": {
2400 "node": ">=8.6"
2401 }
2402 },
2403 "node_modules/prelude-ls": {
2404 "version": "1.2.1",
2405 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
2406 "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
2407 "dev": true,
2408 "engines": {
2409 "node": ">= 0.8.0"
2410 }
2411 },
2412 "node_modules/progress": {
2413 "version": "2.0.3",
2414 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
2415 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
2416 "dev": true,
2417 "engines": {
2418 "node": ">=0.4.0"
2419 }
2420 },
2421 "node_modules/promise.allsettled": {
2422 "version": "1.0.2",
2423 "resolved": "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.2.tgz",
2424 "integrity": "sha512-UpcYW5S1RaNKT6pd+s9jp9K9rlQge1UXKskec0j6Mmuq7UJCvlS2J2/s/yuPN8ehftf9HXMxWlKiPbGGUzpoRg==",
2425 "dev": true,
2426 "dependencies": {
2427 "array.prototype.map": "^1.0.1",
2428 "define-properties": "^1.1.3",
2429 "es-abstract": "^1.17.0-next.1",
2430 "function-bind": "^1.1.1",
2431 "iterate-value": "^1.0.0"
2432 },
2433 "engines": {
2434 "node": ">= 0.4"
2435 }
2436 },
2437 "node_modules/pseudomap": {
2438 "version": "1.0.2",
2439 "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
2440 "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
2441 "dev": true
2442 },
2443 "node_modules/punycode": {
2444 "version": "2.1.1",
2445 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
2446 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
2447 "dev": true,
2448 "engines": {
2449 "node": ">=6"
2450 }
2451 },
2452 "node_modules/randombytes": {
2453 "version": "2.1.0",
2454 "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
2455 "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
2456 "dev": true,
2457 "dependencies": {
2458 "safe-buffer": "^5.1.0"
2459 }
2460 },
2461 "node_modules/read": {
2462 "version": "1.0.7",
2463 "resolved": "https://registry.npmjs.org/read/-/read-1.0.7.tgz",
2464 "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=",
2465 "dev": true,
2466 "dependencies": {
2467 "mute-stream": "~0.0.4"
2468 },
2469 "engines": {
2470 "node": ">=0.8"
2471 }
2472 },
2473 "node_modules/readable-stream": {
2474 "version": "3.6.0",
2475 "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
2476 "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
2477 "dev": true,
2478 "dependencies": {
2479 "inherits": "^2.0.3",
2480 "string_decoder": "^1.1.1",
2481 "util-deprecate": "^1.0.1"
2482 },
2483 "engines": {
2484 "node": ">= 6"
2485 }
2486 },
2487 "node_modules/readdirp": {
2488 "version": "3.4.0",
2489 "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz",
2490 "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==",
2491 "dev": true,
2492 "dependencies": {
2493 "picomatch": "^2.2.1"
2494 },
2495 "engines": {
2496 "node": ">=8.10.0"
2497 }
2498 },
2499 "node_modules/regexpp": {
2500 "version": "3.1.0",
2501 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
2502 "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==",
2503 "dev": true,
2504 "engines": {
2505 "node": ">=8"
2506 }
2507 },
2508 "node_modules/require-directory": {
2509 "version": "2.1.1",
2510 "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
2511 "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
2512 "dev": true,
2513 "engines": {
2514 "node": ">=0.10.0"
2515 }
2516 },
2517 "node_modules/require-main-filename": {
2518 "version": "2.0.0",
2519 "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
2520 "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
2521 "dev": true
2522 },
2523 "node_modules/resolve": {
2524 "version": "1.17.0",
2525 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
2526 "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
2527 "dev": true,
2528 "dependencies": {
2529 "path-parse": "^1.0.6"
2530 }
2531 },
2532 "node_modules/resolve-from": {
2533 "version": "4.0.0",
2534 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
2535 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
2536 "dev": true,
2537 "engines": {
2538 "node": ">=4"
2539 }
2540 },
2541 "node_modules/rimraf": {
2542 "version": "2.6.3",
2543 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
2544 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
2545 "dev": true,
2546 "dependencies": {
2547 "glob": "^7.1.3"
2548 },
2549 "bin": {
2550 "rimraf": "bin.js"
2551 }
2552 },
2553 "node_modules/rollup": {
2554 "version": "2.26.9",
2555 "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.26.9.tgz",
2556 "integrity": "sha512-XIiWYLayLqV+oY4S2Lub/shJq4uk/QQLwWToYCL4LjZbYHbFK3czea4UDVRUJu+zNmKmxq5Zb/OG7c5HSvH2TQ==",
2557 "dev": true,
2558 "dependencies": {
2559 "fsevents": "~2.1.2"
2560 },
2561 "bin": {
2562 "rollup": "dist/bin/rollup"
2563 },
2564 "engines": {
2565 "node": ">=10.0.0"
2566 },
2567 "optionalDependencies": {
2568 "fsevents": "~2.1.2"
2569 }
2570 },
2571 "node_modules/safe-buffer": {
2572 "version": "5.2.0",
2573 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz",
2574 "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==",
2575 "dev": true
2576 },
2577 "node_modules/semver": {
2578 "version": "6.3.0",
2579 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
2580 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
2581 "bin": {
2582 "semver": "bin/semver.js"
2583 }
2584 },
2585 "node_modules/serialize-javascript": {
2586 "version": "4.0.0",
2587 "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
2588 "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
2589 "dev": true,
2590 "dependencies": {
2591 "randombytes": "^2.1.0"
2592 }
2593 },
2594 "node_modules/set-blocking": {
2595 "version": "2.0.0",
2596 "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
2597 "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
2598 "dev": true
2599 },
2600 "node_modules/shebang-command": {
2601 "version": "2.0.0",
2602 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
2603 "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
2604 "dev": true,
2605 "dependencies": {
2606 "shebang-regex": "^3.0.0"
2607 },
2608 "engines": {
2609 "node": ">=8"
2610 }
2611 },
2612 "node_modules/shebang-regex": {
2613 "version": "3.0.0",
2614 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
2615 "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
2616 "dev": true,
2617 "engines": {
2618 "node": ">=8"
2619 }
2620 },
2621 "node_modules/sigmund": {
2622 "version": "1.0.1",
2623 "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
2624 "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
2625 "dev": true
2626 },
2627 "node_modules/slice-ansi": {
2628 "version": "2.1.0",
2629 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
2630 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
2631 "dev": true,
2632 "dependencies": {
2633 "ansi-styles": "^3.2.0",
2634 "astral-regex": "^1.0.0",
2635 "is-fullwidth-code-point": "^2.0.0"
2636 },
2637 "engines": {
2638 "node": ">=6"
2639 }
2640 },
2641 "node_modules/sourcemap-codec": {
2642 "version": "1.4.8",
2643 "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
2644 "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
2645 "dev": true
2646 },
2647 "node_modules/sprintf-js": {
2648 "version": "1.0.3",
2649 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
2650 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
2651 "dev": true
2652 },
2653 "node_modules/string_decoder": {
2654 "version": "1.3.0",
2655 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
2656 "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
2657 "dev": true,
2658 "dependencies": {
2659 "safe-buffer": "~5.2.0"
2660 }
2661 },
2662 "node_modules/string-width": {
2663 "version": "3.1.0",
2664 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
2665 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
2666 "dev": true,
2667 "dependencies": {
2668 "emoji-regex": "^7.0.1",
2669 "is-fullwidth-code-point": "^2.0.0",
2670 "strip-ansi": "^5.1.0"
2671 },
2672 "engines": {
2673 "node": ">=6"
2674 }
2675 },
2676 "node_modules/string-width/node_modules/ansi-regex": {
2677 "version": "4.1.0",
2678 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
2679 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
2680 "dev": true,
2681 "engines": {
2682 "node": ">=6"
2683 }
2684 },
2685 "node_modules/string-width/node_modules/strip-ansi": {
2686 "version": "5.2.0",
2687 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
2688 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
2689 "dev": true,
2690 "dependencies": {
2691 "ansi-regex": "^4.1.0"
2692 },
2693 "engines": {
2694 "node": ">=6"
2695 }
2696 },
2697 "node_modules/string.prototype.trimend": {
2698 "version": "1.0.1",
2699 "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz",
2700 "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==",
2701 "dev": true,
2702 "dependencies": {
2703 "define-properties": "^1.1.3",
2704 "es-abstract": "^1.17.5"
2705 }
2706 },
2707 "node_modules/string.prototype.trimstart": {
2708 "version": "1.0.1",
2709 "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz",
2710 "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==",
2711 "dev": true,
2712 "dependencies": {
2713 "define-properties": "^1.1.3",
2714 "es-abstract": "^1.17.5"
2715 }
2716 },
2717 "node_modules/strip-ansi": {
2718 "version": "6.0.0",
2719 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
2720 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
2721 "dev": true,
2722 "dependencies": {
2723 "ansi-regex": "^5.0.0"
2724 },
2725 "engines": {
2726 "node": ">=8"
2727 }
2728 },
2729 "node_modules/strip-json-comments": {
2730 "version": "3.1.1",
2731 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
2732 "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
2733 "dev": true,
2734 "engines": {
2735 "node": ">=8"
2736 }
2737 },
2738 "node_modules/supports-color": {
2739 "version": "5.5.0",
2740 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
2741 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
2742 "dev": true,
2743 "dependencies": {
2744 "has-flag": "^3.0.0"
2745 },
2746 "engines": {
2747 "node": ">=4"
2748 }
2749 },
2750 "node_modules/table": {
2751 "version": "5.4.6",
2752 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
2753 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
2754 "dev": true,
2755 "dependencies": {
2756 "ajv": "^6.10.2",
2757 "lodash": "^4.17.14",
2758 "slice-ansi": "^2.1.0",
2759 "string-width": "^3.0.0"
2760 },
2761 "engines": {
2762 "node": ">=6.0.0"
2763 }
2764 },
2765 "node_modules/text-table": {
2766 "version": "0.2.0",
2767 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
2768 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
2769 "dev": true
2770 },
2771 "node_modules/tmp": {
2772 "version": "0.0.29",
2773 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz",
2774 "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=",
2775 "dev": true,
2776 "dependencies": {
2777 "os-tmpdir": "~1.0.1"
2778 },
2779 "engines": {
2780 "node": ">=0.4.0"
2781 }
2782 },
2783 "node_modules/to-regex-range": {
2784 "version": "5.0.1",
2785 "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
2786 "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2787 "dev": true,
2788 "dependencies": {
2789 "is-number": "^7.0.0"
2790 },
2791 "engines": {
2792 "node": ">=8.0"
2793 }
2794 },
2795 "node_modules/tslib": {
2796 "version": "2.0.1",
2797 "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.0.1.tgz",
2798 "integrity": "sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ==",
2799 "dev": true
2800 },
2801 "node_modules/tsutils": {
2802 "version": "3.17.1",
2803 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz",
2804 "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==",
2805 "dev": true,
2806 "dependencies": {
2807 "tslib": "^1.8.1"
2808 },
2809 "engines": {
2810 "node": ">= 6"
2811 }
2812 },
2813 "node_modules/tsutils/node_modules/tslib": {
2814 "version": "1.13.0",
2815 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
2816 "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
2817 "dev": true
2818 },
2819 "node_modules/tunnel": {
2820 "version": "0.0.4",
2821 "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.4.tgz",
2822 "integrity": "sha1-LTeFoVjBdMmhbcLARuxfxfF0IhM=",
2823 "dev": true,
2824 "engines": {
2825 "node": ">=0.6.11 <=0.7.0 || >=0.7.3"
2826 }
2827 },
2828 "node_modules/type-check": {
2829 "version": "0.4.0",
2830 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
2831 "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
2832 "dev": true,
2833 "dependencies": {
2834 "prelude-ls": "^1.2.1"
2835 },
2836 "engines": {
2837 "node": ">= 0.8.0"
2838 }
2839 },
2840 "node_modules/type-fest": {
2841 "version": "0.8.1",
2842 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
2843 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
2844 "dev": true,
2845 "engines": {
2846 "node": ">=8"
2847 }
2848 },
2849 "node_modules/typed-rest-client": {
2850 "version": "1.2.0",
2851 "resolved": "https://registry.npmjs.org/typed-rest-client/-/typed-rest-client-1.2.0.tgz",
2852 "integrity": "sha512-FrUshzZ1yxH8YwGR29PWWnfksLEILbWJydU7zfIRkyH7kAEzB62uMAl2WY6EyolWpLpVHeJGgQm45/MaruaHpw==",
2853 "dev": true,
2854 "dependencies": {
2855 "tunnel": "0.0.4",
2856 "underscore": "1.8.3"
2857 }
2858 },
2859 "node_modules/typescript": {
2860 "version": "3.9.7",
2861 "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.9.7.tgz",
2862 "integrity": "sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw==",
2863 "dev": true,
2864 "bin": {
2865 "tsc": "bin/tsc",
2866 "tsserver": "bin/tsserver"
2867 },
2868 "engines": {
2869 "node": ">=4.2.0"
2870 }
2871 },
2872 "node_modules/typescript-formatter": {
2873 "version": "7.2.2",
2874 "resolved": "https://registry.npmjs.org/typescript-formatter/-/typescript-formatter-7.2.2.tgz",
2875 "integrity": "sha512-V7vfI9XArVhriOTYHPzMU2WUnm5IMdu9X/CPxs8mIMGxmTBFpDABlbkBka64PZJ9/xgQeRpK8KzzAG4MPzxBDQ==",
2876 "dev": true,
2877 "dependencies": {
2878 "commandpost": "^1.0.0",
2879 "editorconfig": "^0.15.0"
2880 },
2881 "bin": {
2882 "tsfmt": "bin/tsfmt"
2883 },
2884 "engines": {
2885 "node": ">= 4.2.0"
2886 }
2887 },
2888 "node_modules/uc.micro": {
2889 "version": "1.0.6",
2890 "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
2891 "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==",
2892 "dev": true
2893 },
2894 "node_modules/underscore": {
2895 "version": "1.8.3",
2896 "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz",
2897 "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=",
2898 "dev": true
2899 },
2900 "node_modules/uri-js": {
2901 "version": "4.4.0",
2902 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz",
2903 "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==",
2904 "dev": true,
2905 "dependencies": {
2906 "punycode": "^2.1.0"
2907 }
2908 },
2909 "node_modules/url-join": {
2910 "version": "1.1.0",
2911 "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz",
2912 "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=",
2913 "dev": true
2914 },
2915 "node_modules/util-deprecate": {
2916 "version": "1.0.2",
2917 "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
2918 "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
2919 "dev": true
2920 },
2921 "node_modules/v8-compile-cache": {
2922 "version": "2.1.1",
2923 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz",
2924 "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==",
2925 "dev": true
2926 },
2927 "node_modules/vsce": {
2928 "version": "1.79.5",
2929 "resolved": "https://registry.npmjs.org/vsce/-/vsce-1.79.5.tgz",
2930 "integrity": "sha512-KZFOthGwxWFwoGqwrkzfTfyCZGuniTofnJ1a/dCzQ2HP93u1UuCKrTQyGT+SuGHu8sNqdBYNe0hb9GC3qCN7fg==",
2931 "dev": true,
2932 "dependencies": {
2933 "azure-devops-node-api": "^7.2.0",
2934 "chalk": "^2.4.2",
2935 "cheerio": "^1.0.0-rc.1",
2936 "commander": "^2.8.1",
2937 "denodeify": "^1.2.1",
2938 "glob": "^7.0.6",
2939 "leven": "^3.1.0",
2940 "lodash": "^4.17.15",
2941 "markdown-it": "^10.0.0",
2942 "mime": "^1.3.4",
2943 "minimatch": "^3.0.3",
2944 "osenv": "^0.1.3",
2945 "parse-semver": "^1.1.1",
2946 "read": "^1.0.7",
2947 "semver": "^5.1.0",
2948 "tmp": "0.0.29",
2949 "typed-rest-client": "1.2.0",
2950 "url-join": "^1.1.0",
2951 "yauzl": "^2.3.1",
2952 "yazl": "^2.2.2"
2953 },
2954 "bin": {
2955 "vsce": "out/vsce"
2956 },
2957 "engines": {
2958 "node": ">= 8"
2959 }
2960 },
2961 "node_modules/vsce/node_modules/semver": {
2962 "version": "5.7.1",
2963 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
2964 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
2965 "dev": true,
2966 "bin": {
2967 "semver": "bin/semver"
2968 }
2969 },
2970 "node_modules/vscode-jsonrpc": {
2971 "version": "6.0.0-next.7",
2972 "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-6.0.0-next.7.tgz",
2973 "integrity": "sha512-1nG+6cuTtpzmXe7yYfO9GCkYlyV6Ai+jDnwidHiT2T7zhc+bJM+VTtc0T/CdTlDyTNTqIcCj0V1nD4TcVjJ7Ug==",
2974 "engines": {
2975 "node": ">=8.0.0 || >=10.0.0"
2976 }
2977 },
2978 "node_modules/vscode-languageclient": {
2979 "version": "7.0.0-next.12",
2980 "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-7.0.0-next.12.tgz",
2981 "integrity": "sha512-OrzvOvhS5o26C0KctTJC7hkwh3avCwkVhllzy42AqwpIUZ3p2aVqkSG2uVxaeodq8ThBb3TLgtg50vxyWs6FEg==",
2982 "dependencies": {
2983 "semver": "^6.3.0",
2984 "vscode-languageserver-protocol": "3.16.0-next.10"
2985 },
2986 "engines": {
2987 "vscode": "^1.46.0"
2988 }
2989 },
2990 "node_modules/vscode-languageserver-protocol": {
2991 "version": "3.16.0-next.10",
2992 "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.16.0-next.10.tgz",
2993 "integrity": "sha512-YRTctHUZvts0Z1xXKNYU0ha0o+Tlgtwr+6O8OmDquM086N8exiSKBMwMC+Ra1QtIE+1mfW43Wxsme2FnMkAS9A==",
2994 "dependencies": {
2995 "vscode-jsonrpc": "6.0.0-next.7",
2996 "vscode-languageserver-types": "3.16.0-next.4"
2997 }
2998 },
2999 "node_modules/vscode-languageserver-types": {
3000 "version": "3.16.0-next.4",
3001 "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0-next.4.tgz",
3002 "integrity": "sha512-NlKJyGcET/ZBCCLBYIPaGo2c37R03bPYeWXozUtnjyye7+9dhlbMSODyoG2INcQf8zFmB4qhm2UOJjgYEgPCNA=="
3003 },
3004 "node_modules/vscode-test": {
3005 "version": "1.4.0",
3006 "resolved": "https://registry.npmjs.org/vscode-test/-/vscode-test-1.4.0.tgz",
3007 "integrity": "sha512-Jt7HNGvSE0+++Tvtq5wc4hiXLIr2OjDShz/gbAfM/mahQpy4rKBnmOK33D+MR67ATWviQhl+vpmU3p/qwSH/Pg==",
3008 "dev": true,
3009 "dependencies": {
3010 "http-proxy-agent": "^2.1.0",
3011 "https-proxy-agent": "^2.2.4",
3012 "rimraf": "^2.6.3"
3013 },
3014 "engines": {
3015 "node": ">=8.9.3"
3016 }
3017 },
3018 "node_modules/which": {
3019 "version": "2.0.2",
3020 "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
3021 "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
3022 "dev": true,
3023 "dependencies": {
3024 "isexe": "^2.0.0"
3025 },
3026 "bin": {
3027 "node-which": "bin/node-which"
3028 },
3029 "engines": {
3030 "node": ">= 8"
3031 }
3032 },
3033 "node_modules/which-module": {
3034 "version": "2.0.0",
3035 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
3036 "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
3037 "dev": true
3038 },
3039 "node_modules/wide-align": {
3040 "version": "1.1.3",
3041 "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
3042 "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
3043 "dev": true,
3044 "dependencies": {
3045 "string-width": "^1.0.2 || 2"
3046 }
3047 },
3048 "node_modules/wide-align/node_modules/ansi-regex": {
3049 "version": "3.0.0",
3050 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
3051 "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
3052 "dev": true,
3053 "engines": {
3054 "node": ">=4"
3055 }
3056 },
3057 "node_modules/wide-align/node_modules/string-width": {
3058 "version": "2.1.1",
3059 "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
3060 "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
3061 "dev": true,
3062 "dependencies": {
3063 "is-fullwidth-code-point": "^2.0.0",
3064 "strip-ansi": "^4.0.0"
3065 },
3066 "engines": {
3067 "node": ">=4"
3068 }
3069 },
3070 "node_modules/wide-align/node_modules/strip-ansi": {
3071 "version": "4.0.0",
3072 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
3073 "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
3074 "dev": true,
3075 "dependencies": {
3076 "ansi-regex": "^3.0.0"
3077 },
3078 "engines": {
3079 "node": ">=4"
3080 }
3081 },
3082 "node_modules/word-wrap": {
3083 "version": "1.2.3",
3084 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
3085 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
3086 "dev": true,
3087 "engines": {
3088 "node": ">=0.10.0"
3089 }
3090 },
3091 "node_modules/workerpool": {
3092 "version": "6.0.0",
3093 "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.0.0.tgz",
3094 "integrity": "sha512-fU2OcNA/GVAJLLyKUoHkAgIhKb0JoCpSjLC/G2vYKxUjVmQwGbRVeoPJ1a8U4pnVofz4AQV5Y/NEw8oKqxEBtA==",
3095 "dev": true
3096 },
3097 "node_modules/wrap-ansi": {
3098 "version": "5.1.0",
3099 "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
3100 "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
3101 "dev": true,
3102 "dependencies": {
3103 "ansi-styles": "^3.2.0",
3104 "string-width": "^3.0.0",
3105 "strip-ansi": "^5.0.0"
3106 },
3107 "engines": {
3108 "node": ">=6"
3109 }
3110 },
3111 "node_modules/wrap-ansi/node_modules/ansi-regex": {
3112 "version": "4.1.0",
3113 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
3114 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
3115 "dev": true,
3116 "engines": {
3117 "node": ">=6"
3118 }
3119 },
3120 "node_modules/wrap-ansi/node_modules/strip-ansi": {
3121 "version": "5.2.0",
3122 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
3123 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
3124 "dev": true,
3125 "dependencies": {
3126 "ansi-regex": "^4.1.0"
3127 },
3128 "engines": {
3129 "node": ">=6"
3130 }
3131 },
3132 "node_modules/wrappy": {
3133 "version": "1.0.2",
3134 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
3135 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
3136 "dev": true
3137 },
3138 "node_modules/write": {
3139 "version": "1.0.3",
3140 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
3141 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
3142 "dev": true,
3143 "dependencies": {
3144 "mkdirp": "^0.5.1"
3145 },
3146 "engines": {
3147 "node": ">=4"
3148 }
3149 },
3150 "node_modules/y18n": {
3151 "version": "4.0.0",
3152 "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
3153 "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
3154 "dev": true
3155 },
3156 "node_modules/yallist": {
3157 "version": "2.1.2",
3158 "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
3159 "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
3160 "dev": true
3161 },
3162 "node_modules/yargs": {
3163 "version": "13.3.2",
3164 "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
3165 "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
3166 "dev": true,
3167 "dependencies": {
3168 "cliui": "^5.0.0",
3169 "find-up": "^3.0.0",
3170 "get-caller-file": "^2.0.1",
3171 "require-directory": "^2.1.1",
3172 "require-main-filename": "^2.0.0",
3173 "set-blocking": "^2.0.0",
3174 "string-width": "^3.0.0",
3175 "which-module": "^2.0.0",
3176 "y18n": "^4.0.0",
3177 "yargs-parser": "^13.1.2"
3178 }
3179 },
3180 "node_modules/yargs-parser": {
3181 "version": "13.1.2",
3182 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
3183 "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
3184 "dev": true,
3185 "dependencies": {
3186 "camelcase": "^5.0.0",
3187 "decamelize": "^1.2.0"
3188 }
3189 },
3190 "node_modules/yargs-unparser": {
3191 "version": "1.6.1",
3192 "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.1.tgz",
3193 "integrity": "sha512-qZV14lK9MWsGCmcr7u5oXGH0dbGqZAIxTDrWXZDo5zUr6b6iUmelNKO6x6R1dQT24AH3LgRxJpr8meWy2unolA==",
3194 "dev": true,
3195 "dependencies": {
3196 "camelcase": "^5.3.1",
3197 "decamelize": "^1.2.0",
3198 "flat": "^4.1.0",
3199 "is-plain-obj": "^1.1.0",
3200 "yargs": "^14.2.3"
3201 },
3202 "engines": {
3203 "node": ">=6"
3204 }
3205 },
3206 "node_modules/yargs-unparser/node_modules/find-up": {
3207 "version": "3.0.0",
3208 "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
3209 "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
3210 "dev": true,
3211 "dependencies": {
3212 "locate-path": "^3.0.0"
3213 },
3214 "engines": {
3215 "node": ">=6"
3216 }
3217 },
3218 "node_modules/yargs-unparser/node_modules/locate-path": {
3219 "version": "3.0.0",
3220 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
3221 "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
3222 "dev": true,
3223 "dependencies": {
3224 "p-locate": "^3.0.0",
3225 "path-exists": "^3.0.0"
3226 },
3227 "engines": {
3228 "node": ">=6"
3229 }
3230 },
3231 "node_modules/yargs-unparser/node_modules/p-limit": {
3232 "version": "2.3.0",
3233 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
3234 "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
3235 "dev": true,
3236 "dependencies": {
3237 "p-try": "^2.0.0"
3238 },
3239 "engines": {
3240 "node": ">=6"
3241 }
3242 },
3243 "node_modules/yargs-unparser/node_modules/p-locate": {
3244 "version": "3.0.0",
3245 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
3246 "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
3247 "dev": true,
3248 "dependencies": {
3249 "p-limit": "^2.0.0"
3250 },
3251 "engines": {
3252 "node": ">=6"
3253 }
3254 },
3255 "node_modules/yargs-unparser/node_modules/path-exists": {
3256 "version": "3.0.0",
3257 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
3258 "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
3259 "dev": true,
3260 "engines": {
3261 "node": ">=4"
3262 }
3263 },
3264 "node_modules/yargs-unparser/node_modules/yargs": {
3265 "version": "14.2.3",
3266 "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
3267 "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
3268 "dev": true,
3269 "dependencies": {
3270 "cliui": "^5.0.0",
3271 "decamelize": "^1.2.0",
3272 "find-up": "^3.0.0",
3273 "get-caller-file": "^2.0.1",
3274 "require-directory": "^2.1.1",
3275 "require-main-filename": "^2.0.0",
3276 "set-blocking": "^2.0.0",
3277 "string-width": "^3.0.0",
3278 "which-module": "^2.0.0",
3279 "y18n": "^4.0.0",
3280 "yargs-parser": "^15.0.1"
3281 }
3282 },
3283 "node_modules/yargs-unparser/node_modules/yargs-parser": {
3284 "version": "15.0.1",
3285 "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.1.tgz",
3286 "integrity": "sha512-0OAMV2mAZQrs3FkNpDQcBk1x5HXb8X4twADss4S0Iuk+2dGnLOE/fRHrsYm542GduMveyA77OF4wrNJuanRCWw==",
3287 "dev": true,
3288 "dependencies": {
3289 "camelcase": "^5.0.0",
3290 "decamelize": "^1.2.0"
3291 }
3292 },
3293 "node_modules/yargs/node_modules/find-up": {
3294 "version": "3.0.0",
3295 "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
3296 "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
3297 "dev": true,
3298 "dependencies": {
3299 "locate-path": "^3.0.0"
3300 },
3301 "engines": {
3302 "node": ">=6"
3303 }
3304 },
3305 "node_modules/yargs/node_modules/locate-path": {
3306 "version": "3.0.0",
3307 "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
3308 "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
3309 "dev": true,
3310 "dependencies": {
3311 "p-locate": "^3.0.0",
3312 "path-exists": "^3.0.0"
3313 },
3314 "engines": {
3315 "node": ">=6"
3316 }
3317 },
3318 "node_modules/yargs/node_modules/p-limit": {
3319 "version": "2.3.0",
3320 "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
3321 "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
3322 "dev": true,
3323 "dependencies": {
3324 "p-try": "^2.0.0"
3325 },
3326 "engines": {
3327 "node": ">=6"
3328 }
3329 },
3330 "node_modules/yargs/node_modules/p-locate": {
3331 "version": "3.0.0",
3332 "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
3333 "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
3334 "dev": true,
3335 "dependencies": {
3336 "p-limit": "^2.0.0"
3337 },
3338 "engines": {
3339 "node": ">=6"
3340 }
3341 },
3342 "node_modules/yargs/node_modules/path-exists": {
3343 "version": "3.0.0",
3344 "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
3345 "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
3346 "dev": true,
3347 "engines": {
3348 "node": ">=4"
3349 }
3350 },
3351 "node_modules/yauzl": {
3352 "version": "2.10.0",
3353 "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
3354 "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
3355 "dev": true,
3356 "dependencies": {
3357 "buffer-crc32": "~0.2.3",
3358 "fd-slicer": "~1.1.0"
3359 }
3360 },
3361 "node_modules/yazl": {
3362 "version": "2.5.1",
3363 "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz",
3364 "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==",
3365 "dev": true,
3366 "dependencies": {
3367 "buffer-crc32": "~0.2.3"
3368 }
3369 }
3370 },
6 "dependencies": { 3371 "dependencies": {
7 "@babel/code-frame": { 3372 "@babel/code-frame": {
8 "version": "7.10.4", 3373 "version": "7.10.4",
@@ -2146,6 +5511,15 @@
2146 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 5511 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
2147 "dev": true 5512 "dev": true
2148 }, 5513 },
5514 "string_decoder": {
5515 "version": "1.3.0",
5516 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
5517 "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
5518 "dev": true,
5519 "requires": {
5520 "safe-buffer": "~5.2.0"
5521 }
5522 },
2149 "string-width": { 5523 "string-width": {
2150 "version": "3.1.0", 5524 "version": "3.1.0",
2151 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", 5525 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
@@ -2194,15 +5568,6 @@
2194 "es-abstract": "^1.17.5" 5568 "es-abstract": "^1.17.5"
2195 } 5569 }
2196 }, 5570 },
2197 "string_decoder": {
2198 "version": "1.3.0",
2199 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
2200 "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
2201 "dev": true,
2202 "requires": {
2203 "safe-buffer": "~5.2.0"
2204 }
2205 },
2206 "strip-ansi": { 5571 "strip-ansi": {
2207 "version": "6.0.0", 5572 "version": "6.0.0",
2208 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", 5573 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
diff --git a/editors/code/package.json b/editors/code/package.json
index eccafccdd..a6eeae2b5 100644
--- a/editors/code/package.json
+++ b/editors/code/package.json
@@ -687,6 +687,12 @@
687 }, 687 },
688 "default": [], 688 "default": [],
689 "description": "Additional arguments to be passed to cargo for runnables such as tests or binaries.\nFor example, it may be '--release'" 689 "description": "Additional arguments to be passed to cargo for runnables such as tests or binaries.\nFor example, it may be '--release'"
690 },
691 "rust-analyzer.rustcSource" : {
692 "type": [ "null", "string" ],
693 "default": null,
694 "description": "Path to the rust compiler sources, for usage in rustc_private projects."
695
690 } 696 }
691 } 697 }
692 }, 698 },