@matter/tools 0.13.1-alpha.0-20250501-80c86b03e → 0.13.1-alpha.0-20250504-87f265a2e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/running/cli.d.ts.map +1 -1
- package/dist/cjs/running/cli.js +3 -7
- package/dist/cjs/running/cli.js.map +1 -1
- package/dist/cjs/util/glob.js +3 -3
- package/dist/cjs/util/glob.js.map +1 -1
- package/dist/cjs/util/package.d.ts +4 -0
- package/dist/cjs/util/package.d.ts.map +1 -1
- package/dist/cjs/util/package.js +20 -20
- package/dist/cjs/util/package.js.map +1 -1
- package/dist/cjs/util/progress.d.ts +1 -0
- package/dist/cjs/util/progress.d.ts.map +1 -1
- package/dist/cjs/util/progress.js +2 -0
- package/dist/cjs/util/progress.js.map +1 -1
- package/dist/esm/running/cli.d.ts.map +1 -1
- package/dist/esm/running/cli.js +4 -8
- package/dist/esm/running/cli.js.map +1 -1
- package/dist/esm/util/bootstrap.d.mts +2 -0
- package/dist/esm/util/bootstrap.d.mts.map +1 -0
- package/dist/esm/util/glob.js +4 -4
- package/dist/esm/util/glob.js.map +1 -1
- package/dist/esm/util/package.d.ts +4 -0
- package/dist/esm/util/package.d.ts.map +1 -1
- package/dist/esm/util/package.js +21 -21
- package/dist/esm/util/package.js.map +1 -1
- package/dist/esm/util/progress.d.ts +1 -0
- package/dist/esm/util/progress.d.ts.map +1 -1
- package/dist/esm/util/progress.js +3 -1
- package/dist/esm/util/progress.js.map +1 -1
- package/package.json +1 -1
- package/src/running/cli.ts +3 -11
- package/src/tsconfig.json +3 -0
- package/src/util/glob.ts +3 -3
- package/src/util/package.ts +21 -21
- package/src/util/progress.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/running/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/running/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;;;;;;;;;;GAWG;AACH,wBAAsB,IAAI,CAAC,IAAI,WAAe,iBAuE7C"}
|
package/dist/cjs/running/cli.js
CHANGED
|
@@ -21,6 +21,7 @@ __export(cli_exports, {
|
|
|
21
21
|
main: () => main
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(cli_exports);
|
|
24
|
+
var import_promises = require("node:fs/promises");
|
|
24
25
|
var import_node_path = require("node:path");
|
|
25
26
|
var import_node_process = require("node:process");
|
|
26
27
|
var import_ensure_compiled = require("./ensure-compiled.js");
|
|
@@ -58,13 +59,8 @@ async function main(argv = process.argv) {
|
|
|
58
59
|
console.error("Error: Script name required");
|
|
59
60
|
(0, import_node_process.exit)(1);
|
|
60
61
|
}
|
|
61
|
-
script = (0, import_node_path.resolve)(script);
|
|
62
|
-
|
|
63
|
-
if (script.match(/[\\/]node_modules[\\/].bin[\\/]/)) {
|
|
64
|
-
dir = process.cwd();
|
|
65
|
-
} else {
|
|
66
|
-
dir = (0, import_node_path.dirname)(script);
|
|
67
|
-
}
|
|
62
|
+
script = await (0, import_promises.realpath)((0, import_node_path.resolve)(script));
|
|
63
|
+
const dir = (0, import_node_path.dirname)(script);
|
|
68
64
|
const { format, pkg } = await (0, import_ensure_compiled.ensureCompiled)(dir);
|
|
69
65
|
if (format !== "none") {
|
|
70
66
|
script = pkg.resolve(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/running/cli.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uBAAiC;AACjC,0BAA6B;AAC7B,6BAA+B;AAC/B,qBAA4B;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,sBAAyB;AACzB,uBAAiC;AACjC,0BAA6B;AAC7B,6BAA+B;AAC/B,qBAA4B;AAV5B;AAAA;AAAA;AAAA;AAAA;AAwBA,eAAsB,KAAK,OAAO,QAAQ,MAAM;AAC5C,MAAI,aAAa,CAAC,CAAC,QAAQ,IAAI;AAG/B,SAAO,KAAK,MAAM,CAAC;AAEnB,QAAM,WAAW,MAAc;AAG/B,SAAO,KAAK,CAAC,EAAE,CAAC,MAAM,KAAK;AACvB,UAAM,SAAS,KAAK,MAAM;AAE1B,YAAQ,QAAQ;AAAA,MACZ,KAAK;AACD,gBAAQ,MAAM;AACd;AAAA,MAEJ,KAAK;AACD,qBAAa;AACb;AAAA,MAEJ,KAAK;AACD,mCAAO;AAAA,UACH;AAAA,QACJ;AACA;AAAA,MAEJ;AAEI,iBAAS,KAAK,MAAM;AACpB;AAAA,IACR;AAAA,EACJ;AAGA,MAAI,SAAS,KAAK,MAAM;AAExB,MAAI,WAAW,UAAa,WAAW,IAAI;AACvC,YAAQ,MAAM,6BAA6B;AAC3C,kCAAK,CAAC;AAAA,EACV;AAEA,WAAS,UAAM,8BAAS,0BAAQ,MAAM,CAAC;AACvC,QAAM,UAAM,0BAAQ,MAAM;AAE1B,QAAM,EAAE,QAAQ,IAAI,IAAI,UAAM,uCAAe,GAAG;AAGhD,MAAI,WAAW,QAAQ;AACnB,aAAS,IAAI;AAAA,MACT,IACK,SAAS,MAAM,EACf,QAAQ,SAAS,KAAK,EACtB,QAAQ,aAAa,QAAQ,MAAM,GAAG;AAAA,IAC/C;AAAA,EACJ;AAKA,MAAI,YAAY;AAEZ,UAAM,OAAO;AAAA,EACjB,OAAO;AAGH,YAAQ,GAAG,UAAU,MAAM;AAAA,IAAC,CAAC;AAC7B,YAAQ,GAAG,WAAW,MAAM;AAAA,IAAC,CAAC;AAE9B,YAAQ,WAAW,UAAM,4BAAY,QAAQ,MAAM,QAAQ;AAAA,EAC/D;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/cjs/util/glob.js
CHANGED
|
@@ -65,14 +65,14 @@ function globOnePartSync(mm, segments, fs) {
|
|
|
65
65
|
if (!segments.length) {
|
|
66
66
|
const stat = fs.stat(rootPath);
|
|
67
67
|
if (stat?.[rootPath.endsWith("/") ? "isDirectory" : "isFile"]) {
|
|
68
|
-
return [rootPath];
|
|
68
|
+
return [fs.resolve(rootPath)];
|
|
69
69
|
}
|
|
70
70
|
return [];
|
|
71
71
|
}
|
|
72
72
|
const results = /* @__PURE__ */ new Set();
|
|
73
73
|
function match(path, segments2) {
|
|
74
74
|
if (!segments2.length) {
|
|
75
|
-
results.add(path);
|
|
75
|
+
results.add(fs.resolve(path));
|
|
76
76
|
return;
|
|
77
77
|
}
|
|
78
78
|
if (typeof segments2[0] === "string") {
|
|
@@ -83,7 +83,7 @@ function globOnePartSync(mm, segments, fs) {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
if (segments2.length === 1 && segments2[0] === import_minimatch.GLOBSTAR) {
|
|
86
|
-
results.add(path);
|
|
86
|
+
results.add(fs.resolve(path));
|
|
87
87
|
}
|
|
88
88
|
const subnames = fs.readdir(path);
|
|
89
89
|
if (!subnames) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/glob.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uBAAyD;AACzD,kBAA+B;AAP/B;AAAA;AAAA;AAAA;AAAA;AASO,MAAM,kBAAkB,MAAM;AAAC;AAE/B,SAAS,SAAS,SAA4B,SAAK,4BAAe,GAAG;AACxE,MAAI,OAAO,YAAY,UAAU;AAC7B,WAAO,CAAC,GAAG,YAAY,SAAS,EAAE,CAAC;AAAA,EACvC;AAEA,QAAM,SAAS,MAAc;AAC7B,aAAW,KAAK,SAAS;AACrB,WAAO,KAAK,GAAG,YAAY,GAAG,EAAE,CAAC;AAAA,EACrC;AAEA,SAAO;AACX;AAEA,SAAS,YAAY,SAAiB,IAAoB;AAEtD,QAAM,KAAK,IAAI,2BAAU,QAAQ,QAAQ,OAAO,GAAG,GAAG,CAAC,CAAC;AACxD,QAAM,UAAU,oBAAI,IAAY;AAChC,aAAW,QAAQ,GAAG,KAAK;AACvB,eAAW,QAAQ,gBAAgB,IAAI,MAAM,EAAE,GAAG;AAC9C,cAAQ,IAAI,IAAI;AAAA,IACpB;AAAA,EACJ;AACA,SAAO;AACX;AAEA,SAAS,gBAAgB,IAAe,UAAiC,IAAoB;AAEzF,MAAI,WAAW;AACf,MAAI,SAAS;AACb,SAAO,OAAO,SAAS,CAAC,MAAM,UAAU;AACpC,QAAI,QAAQ;AACR,kBAAY;AAAA,IAChB,OAAO;AACH,eAAS;AAAA,IACb;AACA,gBAAY,SAAS,MAAM;AAAA,EAC/B;AAGA,MAAI,CAAC,SAAS,QAAQ;AAClB,UAAM,OAAO,GAAG,KAAK,QAAQ;AAE7B,QAAI,OAAO,SAAS,SAAS,GAAG,IAAI,gBAAgB,QAAQ,GAAG;AAC3D,aAAO,CAAC,QAAQ;AAAA,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,uBAAyD;AACzD,kBAA+B;AAP/B;AAAA;AAAA;AAAA;AAAA;AASO,MAAM,kBAAkB,MAAM;AAAC;AAE/B,SAAS,SAAS,SAA4B,SAAK,4BAAe,GAAG;AACxE,MAAI,OAAO,YAAY,UAAU;AAC7B,WAAO,CAAC,GAAG,YAAY,SAAS,EAAE,CAAC;AAAA,EACvC;AAEA,QAAM,SAAS,MAAc;AAC7B,aAAW,KAAK,SAAS;AACrB,WAAO,KAAK,GAAG,YAAY,GAAG,EAAE,CAAC;AAAA,EACrC;AAEA,SAAO;AACX;AAEA,SAAS,YAAY,SAAiB,IAAoB;AAEtD,QAAM,KAAK,IAAI,2BAAU,QAAQ,QAAQ,OAAO,GAAG,GAAG,CAAC,CAAC;AACxD,QAAM,UAAU,oBAAI,IAAY;AAChC,aAAW,QAAQ,GAAG,KAAK;AACvB,eAAW,QAAQ,gBAAgB,IAAI,MAAM,EAAE,GAAG;AAC9C,cAAQ,IAAI,IAAI;AAAA,IACpB;AAAA,EACJ;AACA,SAAO;AACX;AAEA,SAAS,gBAAgB,IAAe,UAAiC,IAAoB;AAEzF,MAAI,WAAW;AACf,MAAI,SAAS;AACb,SAAO,OAAO,SAAS,CAAC,MAAM,UAAU;AACpC,QAAI,QAAQ;AACR,kBAAY;AAAA,IAChB,OAAO;AACH,eAAS;AAAA,IACb;AACA,gBAAY,SAAS,MAAM;AAAA,EAC/B;AAGA,MAAI,CAAC,SAAS,QAAQ;AAClB,UAAM,OAAO,GAAG,KAAK,QAAQ;AAE7B,QAAI,OAAO,SAAS,SAAS,GAAG,IAAI,gBAAgB,QAAQ,GAAG;AAC3D,aAAO,CAAC,GAAG,QAAQ,QAAQ,CAAC;AAAA,IAChC;AAEA,WAAO,CAAC;AAAA,EACZ;AAGA,QAAM,UAAU,oBAAI,IAAY;AAEhC,WAAS,MAAM,MAAcA,WAAiC;AAE1D,QAAI,CAACA,UAAS,QAAQ;AAClB,cAAQ,IAAI,GAAG,QAAQ,IAAI,CAAC;AAC5B;AAAA,IACJ;AAGA,QAAI,OAAOA,UAAS,CAAC,MAAM,UAAU;AACjC,YAAM,UAAU,GAAG,QAAQ,MAAMA,UAAS,CAAC,CAAC;AAC5C,UAAI,GAAG,KAAK,GAAG,QAAQ,MAAMA,UAAS,CAAC,CAAC,CAAC,GAAG;AACxC,cAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAChC;AAAA,MACJ;AAAA,IACJ;AAGA,QAAIA,UAAS,WAAW,KAAKA,UAAS,CAAC,MAAM,2BAAU;AACnD,cAAQ,IAAI,GAAG,QAAQ,IAAI,CAAC;AAAA,IAChC;AAGA,UAAM,WAAW,GAAG,QAAQ,IAAI;AAChC,QAAI,CAAC,UAAU;AACX;AAAA,IACJ;AAGA,eAAW,WAAW,UAAU;AAC5B,YAAM,UAAU,GAAG,QAAQ,MAAM,OAAO;AAGxC,UAAIA,UAAS,CAAC,MAAM,2BAAU;AAC1B,YAAI,GAAG,SAAS,CAAC,OAAO,GAAGA,WAAU,IAAI,GAAG;AACxC,gBAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAAA,QACpC;AACA;AAAA,MACJ;AAGA,UAAIA,UAAS,SAAS,GAAG;AACrB,YAAI,GAAG,SAAS,CAAC,OAAO,GAAGA,UAAS,MAAM,CAAC,GAAG,IAAI,GAAG;AACjD,gBAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAAA,QACpC;AAAA,MACJ;AAGA,YAAM,SAASA,SAAQ;AAAA,IAC3B;AAAA,EACJ;AAEA,QAAM,UAAU,QAAQ;AAExB,SAAO;AACX;",
|
|
5
5
|
"names": ["segments"]
|
|
6
6
|
}
|
|
@@ -23,6 +23,10 @@ export declare class Package {
|
|
|
23
23
|
path?: string;
|
|
24
24
|
name?: string;
|
|
25
25
|
});
|
|
26
|
+
findJson(filename: string, path?: string, title?: string): {
|
|
27
|
+
root: string;
|
|
28
|
+
json: any;
|
|
29
|
+
};
|
|
26
30
|
get name(): string;
|
|
27
31
|
get version(): string;
|
|
28
32
|
get exports(): Exports | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/util/package.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAE/C,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,YAAY,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/util/package.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/util/package.js
CHANGED
|
@@ -43,25 +43,6 @@ class JsonNotFoundError extends Error {
|
|
|
43
43
|
const CONFIG_PATH = `src/build.config.ts`;
|
|
44
44
|
const CODEGEN_PATH = `codegen`;
|
|
45
45
|
const packageForPath = {};
|
|
46
|
-
function findJson(filename, path = ".", title) {
|
|
47
|
-
path = (0, import_node_path.resolve)(path);
|
|
48
|
-
while (true) {
|
|
49
|
-
const json = (0, import_errors.ignoreErrorSync)(
|
|
50
|
-
["ENOENT", "ENOTDIR"],
|
|
51
|
-
() => JSON.parse((0, import_node_fs.readFileSync)((0, import_node_path.resolve)(path, filename)).toString())
|
|
52
|
-
);
|
|
53
|
-
if (json) {
|
|
54
|
-
if (title === void 0 || json.name === title) {
|
|
55
|
-
return { root: path, json };
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
const parent = (0, import_node_path.dirname)(path);
|
|
59
|
-
if (parent === path) {
|
|
60
|
-
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
61
|
-
}
|
|
62
|
-
path = parent;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
46
|
function isDirectory(path) {
|
|
66
47
|
return !!(0, import_errors.ignoreErrorSync)("ENOENT", () => (0, import_node_fs.statSync)(path).isDirectory());
|
|
67
48
|
}
|
|
@@ -79,7 +60,7 @@ class Package {
|
|
|
79
60
|
path = ".",
|
|
80
61
|
name
|
|
81
62
|
} = {}) {
|
|
82
|
-
const { root, json } = findJson("package.json", path, name);
|
|
63
|
+
const { root, json } = this.findJson("package.json", path, name);
|
|
83
64
|
this.path = root;
|
|
84
65
|
this.json = json;
|
|
85
66
|
const { esm, cjs } = selectFormats(this.json);
|
|
@@ -99,6 +80,25 @@ class Package {
|
|
|
99
80
|
this.isLibrary = !!(this.json.main || this.json.module || this.json.exports);
|
|
100
81
|
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
101
82
|
}
|
|
83
|
+
findJson(filename, path = this.path, title) {
|
|
84
|
+
path = (0, import_node_path.resolve)(path);
|
|
85
|
+
while (true) {
|
|
86
|
+
const json = (0, import_errors.ignoreErrorSync)(
|
|
87
|
+
["ENOENT", "ENOTDIR"],
|
|
88
|
+
() => JSON.parse((0, import_node_fs.readFileSync)((0, import_node_path.resolve)(path, filename)).toString())
|
|
89
|
+
);
|
|
90
|
+
if (json) {
|
|
91
|
+
if (title === void 0 || json.name === title) {
|
|
92
|
+
return { root: path, json };
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
const parent = (0, import_node_path.dirname)(path);
|
|
96
|
+
if (parent === path) {
|
|
97
|
+
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
98
|
+
}
|
|
99
|
+
path = parent;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
102
|
get name() {
|
|
103
103
|
return this.json.name ?? `<${this.path}>`;
|
|
104
104
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/package.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmD;AACnD,sBAAmD;AACnD,uBAAiD;AACjD,oBAA6C;AAC7C,kBAAyD;AACzD,kBAAyB;AACzB,4BAA8B;AAC9B,sBAAyB;AACzB,wBAA0B;AAd1B;AAAA;AAAA;AAAA;AAAA;AAgBO,MAAM,0BAA0B,MAAM;AAAC;AAEvC,MAAM,cAAc;AACpB,MAAM,eAAe;AAE5B,MAAM,iBAAiB,CAAC;AAExB,SAAS,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAmD;AACnD,sBAAmD;AACnD,uBAAiD;AACjD,oBAA6C;AAC7C,kBAAyD;AACzD,kBAAyB;AACzB,4BAA8B;AAC9B,sBAAyB;AACzB,wBAA0B;AAd1B;AAAA;AAAA;AAAA;AAAA;AAgBO,MAAM,0BAA0B,MAAM;AAAC;AAEvC,MAAM,cAAc;AACpB,MAAM,eAAe;AAE5B,MAAM,iBAAiB,CAAC;AAExB,SAAS,YAAY,MAAc;AAC/B,SAAO,CAAC,KAAC,+BAAgB,UAAU,UAAM,yBAAS,IAAI,EAAE,YAAY,CAAC;AACzE;AAEO,MAAM,QAAQ;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA,YAAY;AAAA,IACR,OAAO;AAAA,IACP;AAAA,EACJ,IAGI,CAAC,GAAG;AACJ,UAAM,EAAE,MAAM,KAAK,IAAI,KAAK,SAAS,gBAAgB,MAAM,IAAI;AAC/D,SAAK,OAAO;AACZ,SAAK,OAAO;AAEZ,UAAM,EAAE,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI;AAC5C,SAAK,cAAc;AACnB,SAAK,cAAc;AAEnB,SAAK,SAAS,YAAY,KAAK,QAAQ,KAAK,CAAC;AAC7C,SAAK,WAAW,YAAY,KAAK,QAAQ,MAAM,CAAC;AAEhD,UAAM,WAAO,+BAAkB,KAAK,QAAQ,eAAe,CAAC,GAAG;AAC/D,QAAI,SAAS,QAAW;AACpB,UAAI,CAAC,KAAK,KAAK,SAAO,KAAK,QAAQ,IAAI,IAAI,MAAM,KAAK,QAAQ,KAAK,CAAC,GAAG;AACnE,aAAK,SAAS;AAAA,MAClB;AACA,UAAI,CAAC,KAAK,KAAK,SAAO,KAAK,QAAQ,IAAI,IAAI,MAAM,KAAK,QAAQ,MAAM,CAAC,GAAG;AACpE,aAAK,WAAW;AAAA,MACpB;AAAA,IACJ;AAEA,SAAK,YAAY,CAAC,EAAE,KAAK,KAAK,QAAQ,KAAK,KAAK,UAAU,KAAK,KAAK;AAEpE,SAAK,YAAY,KAAK,QAAQ,KAAK,QAAQ,WAAW,CAAC;AAAA,EAC3D;AAAA,EAEA,SAAS,UAAkB,OAAe,KAAK,MAAM,OAAgB;AACjE,eAAO,0BAAQ,IAAI;AACnB,WAAO,MAAM;AACT,YAAM,WAAO;AAAA,QAAgB,CAAC,UAAU,SAAS;AAAA,QAAG,MAChD,KAAK,UAAM,iCAAa,0BAAQ,MAAM,QAAQ,CAAC,EAAE,SAAS,CAAC;AAAA,MAC/D;AAEA,UAAI,MAAM;AACN,YAAI,UAAU,UAAa,KAAK,SAAS,OAAO;AAC5C,iBAAO,EAAE,MAAM,MAAM,KAAK;AAAA,QAC9B;AAAA,MACJ;AACA,YAAM,aAAS,0BAAQ,IAAI;AAC3B,UAAI,WAAW,MAAM;AACjB,cAAM,IAAI,kBAAkB,oBAAoB,SAAS,QAAQ,EAAE;AAAA,MACvE;AACA,aAAO;AAAA,IACX;AAAA,EACJ;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI;AAAA,EAC1C;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK,KAAK,WAAW;AAAA,EAChC;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK,KAAK;AAAA,EACrB;AAAA,EAEA,IAAI,aAAa;AACb,WAAO,KAAK,aAAa,YAAY;AAAA,EACzC;AAAA,EAEA,WAAW,OAAiB;AACxB,eAAO,0BAAQ,KAAK,MAAM,GAAG,KAAK;AAAA,EACtC;AAAA,EAEA,SAAS,MAAc;AACnB,eAAO,2BAAS,KAAK,MAAM,IAAI;AAAA,EACnC;AAAA,EAEA,MAAM,KAAK,SAA4B;AAEnC,QAAI,OAAO,YAAY,UAAU;AAC7B,gBAAU,KAAK,QAAQ,OAAO,EAAE,QAAQ,OAAO,GAAG;AAAA,IACtD,OAAO;AACH,gBAAU,QAAQ,IAAI,OAAK,KAAK,QAAQ,CAAC,EAAE,QAAQ,OAAO,GAAG,CAAC;AAAA,IAClE;AAGA,eAAO,sBAAS,OAAO;AAAA,EAC3B;AAAA,EAEA,MAAM,MAAc;AAChB,UAAM,WAAW,IAAI,yBAAS;AAC9B,aAAS,QAAQ,MAAM,IAAI;AAC3B,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,gBAAgB,OAAiB;AACnC,WAAO,KAAK,qBAAqB,MAAM,IAAI,OAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;AAAA,EACpE;AAAA,EAEA,MAAc,qBAAqB,OAAiB;AAChD,QAAI,QAAQ;AACZ,UAAM,QAAQ;AAAA,MACV,MAAM,IAAI,OAAM,MAAK;AACjB,cAAM,QAAQ,UAAM,2BAAY,UAAU,YAAY,UAAM,sBAAK,CAAC,CAAC;AACnE,YAAI,CAAC,OAAO;AACR;AAAA,QACJ;AAEA,YAAI;AACJ,YAAI,MAAM,YAAY,GAAG;AACrB,gBAAMA,UAAS,UAAM,yBAAQ,CAAC,GAAG,IAAI,YAAM,0BAAQ,GAAG,EAAE,CAAC;AACzD,sBAAY,MAAM,KAAK,qBAAqBA,MAAK;AAAA,QACrD,OAAO;AACH,sBAAY,MAAM;AAAA,QACtB;AACA,YAAI,YAAY,OAAO;AACnB,kBAAQ;AAAA,QACZ;AAAA,MACJ,CAAC;AAAA,IACL;AACA,WAAO;AAAA,EACX;AAAA,EAEA,IAAI,eAAe;AACf,QAAI,SAAS,MAAc;AAC3B,eAAW,QAAQ,CAAC,gBAAgB,wBAAwB,mBAAmB,kBAAkB,GAAG;AAChG,UAAI,OAAO,KAAK,KAAK,IAAI,MAAM,YAAY,KAAK,KAAK,IAAI,MAAM,MAAM;AACjE,iBAAS,CAAC,GAAG,QAAQ,GAAG,OAAO,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC;AAAA,MACxD;AAAA,IACJ;AACA,WAAO,CAAC,GAAG,IAAI,IAAI,MAAM,CAAC;AAAA,EAC9B;AAAA,EAEA,IAAI,YAAY;AACZ,WAAO,QAAQ,aAAa,KAAK,IAAI;AAAA,EACzC;AAAA,EAEA,IAAI,cAAc;AACd,WAAO,MAAM,QAAQ,KAAK,KAAK,UAAU;AAAA,EAC7C;AAAA,EAEA,IAAI,OAAgB;AAChB,QAAI;AACA,aAAO,KAAK;AAAA,IAChB,SAAS,GAAG;AACR,UAAI,EAAE,aAAa,oBAAoB;AACnC,cAAM;AAAA,MACV;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,WAAW,IAAY;AAC9B,iBAAa;AAAA,EACjB;AAAA,EAEA,WAAW,YAAY;AACnB,WAAO,KAAK,aAAa,UAAU;AAAA,EACvC;AAAA,EAEA,OAAO,aAAa,KAAa;AAC7B,QAAI,CAAC,WAAW;AACZ,kBAAY,KAAK,KAAK,SAAO,MAAM,QAAQ,IAAI,KAAK,UAAU,CAAC;AAAA,IACnE;AACA,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,QAAQ;AACf,QAAI,CAAC,OAAO;AACR,cAAQ,IAAI,QAAQ,EAAE,MAAM,4BAAU,CAAC;AAAA,IAC3C;AACA,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,WAAW,MAAc,OAAsB,OAAO;AACzD,WAAO,KAAK,UAAU,cAAc,MAAM,IAAI;AAAA,EAClD;AAAA,EAEA,cAAc,MAAc,OAAsB,OAAO;AACrD,QAAI,CAAC,KAAK,WAAW,GAAG,GAAG;AACvB,aAAO,KAAK,IAAI;AAAA,IACpB;AACA,UAAM,eAAe,OAAO,KAAK,YAAY,WAAW,KAAK,UAAU,IAAI,IAAI;AAE/E,QAAI,OAAO,iBAAiB,UAAU;AAClC,YAAM,MAAM,oBAAoB,cAAc,IAAI;AAClD,UAAI,KAAK;AACL,eAAO,KAAK,QAAQ,GAAG;AAAA,MAC3B;AAAA,IACJ;AAEA,QAAI,SAAS,KAAK;AACd,UAAI,SAAS,SAAS,KAAK,KAAK,QAAQ;AACpC,eAAO,KAAK,QAAQ,KAAK,KAAK,MAAM;AAAA,MACxC;AACA,UAAI,KAAK,KAAK,MAAM;AAChB,eAAO,KAAK,QAAQ,KAAK,KAAK,IAAI;AAAA,MACtC;AAAA,IACJ;AAEA,UAAM,IAAI,MAAM,yBAAyB,IAAI,eAAe,KAAK,IAAI,EAAE;AAAA,EAC3E;AAAA,EAEA,YAAY,MAAc;AACtB,QAAI,YAAY,KAAK;AACrB,WAAO,MAAM;AACT,UAAI,gBAAY,0BAAQ,WAAW,gBAAgB,IAAI,CAAC,GAAG;AACvD;AAAA,MACJ;AACA,YAAM,oBAAgB,0BAAQ,SAAS;AACvC,UAAI,kBAAkB,WAAW;AAC7B,cAAM,IAAI,MAAM,sBAAsB,IAAI,SAAS,KAAK,IAAI,EAAE;AAAA,MAClE;AACA,kBAAY;AAAA,IAChB;AAEA,WAAO,QAAQ,YAAQ,0BAAQ,WAAW,gBAAgB,IAAI,CAAC;AAAA,EACnE;AAAA,EAEA,cAAc,MAAc,OAAsB,OAAO;AACrD,UAAM,WAAW,KAAK,MAAM,GAAG;AAC/B,QAAI,cAAc,SAAS,MAAM;AACjC,QAAI,YAAY,WAAW,GAAG,KAAK,SAAS,QAAQ;AAChD,oBAAc,GAAG,WAAW,IAAI,SAAS,MAAM,CAAC;AAAA,IACpD;AAEA,UAAM,MAAM,KAAK,YAAY,WAAW;AAExC,WAAO,IAAI,cAAc,SAAS,SAAS,SAAS,KAAK,GAAG,IAAI,KAAK,IAAI;AAAA,EAC7E;AAAA,EAEA,QAAQ,MAAc;AAClB,WAAO,CAAC,CAAC,KAAK,WAAW,IAAI,GAAG,OAAO;AAAA,EAC3C;AAAA,EAEA,aAAa,MAAc;AACvB,WAAO,CAAC,CAAC,KAAK,WAAW,IAAI,GAAG,YAAY;AAAA,EAChD;AAAA,EAEA,MAAM,SAAS,MAAc;AACzB,eAAO,0BAAS,KAAK,QAAQ,IAAI,GAAG,OAAO;AAAA,EAC/C;AAAA,EAEA,aAAa,MAAc;AACvB,eAAO,6BAAa,KAAK,QAAQ,IAAI,GAAG,OAAO;AAAA,EACnD;AAAA,EAEA,MAAM,UAAU,MAAc,UAAmB;AAC7C,cAAM,2BAAU,KAAK,QAAQ,IAAI,GAAG,GAAG,QAAQ,EAAE;AAAA,EACrD;AAAA,EAEA,MAAM,OAAO;AACT,UAAM,KAAK,cAAU,uBAAK,KAAK,MAAM,cAAc,GAAG,KAAK,UAAU,KAAK,MAAM,QAAW,CAAC,CAAC;AAAA,EACjG;AAAA,EAEA,MAAM,SAAS,MAAc;AACzB,UAAM,OAAO,MAAM,KAAK,SAAS,IAAI;AACrC,QAAI;AACA,aAAO,KAAK,MAAM,IAAI;AAAA,IAC1B,SAAS,GAAG;AACR,UAAI,EAAE,aAAa,QAAQ;AACvB,YAAI,IAAI,MAAM,GAAG,CAAC,EAAE;AAAA,MACxB;AACA,MAAC,EAAY,UAAU,kBAAkB,KAAK,QAAQ,IAAI,CAAC,MAAO,EAAY,OAAO;AACrF,YAAM;AAAA,IACV;AAAA,EACJ;AAAA,EAEA,MAAM,UAAU,MAAc,OAAW;AACrC,UAAM,KAAK,UAAU,MAAM,KAAK,UAAU,OAAO,QAAW,CAAC,CAAC;AAAA,EAClE;AAAA,EAEA,OAAO,aAAa,MAAc;AAC9B,aAASC,MAAKC,OAA8B;AACxC,UAAIC,UAAS,eAAeD,KAAI;AAChC,UAAIC,YAAW,QAAW;AACtB,gBAAI,+BAAW,uBAAKD,OAAM,cAAc,CAAC,GAAG;AACxC,UAAAC,UAAS,IAAI,QAAQ,EAAE,MAAAD,MAAK,CAAC;AAAA,QACjC,OAAO;AACH,gBAAM,gBAAY,0BAAQA,KAAI;AAC9B,cAAI,cAAcA,OAAM;AACpB,mBAAO;AAAA,UACX;AACA,UAAAC,UAASF,MAAK,SAAS;AAAA,QAC3B;AACA,uBAAeC,KAAI,IAAIC;AAAA,MAC3B;AACA,aAAOA;AAAA,IACX;AAEA,UAAM,SAASF,MAAK,IAAI;AAExB,WAAO,UAAU;AAAA,EACrB;AAAA,EAEA,OAAO,QAAQ,MAAc;AACzB,UAAM,SAAS,KAAK,aAAa,IAAI;AACrC,QAAI,WAAW,QAAW;AACtB,aAAO;AAAA,IACX;AACA,UAAM,IAAI,MAAM,iCAAiC,IAAI,GAAG;AAAA,EAC5D;AAAA,EAEA,IAAI,gBAA+B;AAC/B,QAAI,KAAK,mBAAmB,QAAW;AACnC,aAAO,KAAK;AAAA,IAChB;AAEA,SAAK,iBAAiB,IAAI;AAAA,MACtB,KAAK,KAAK;AAAA,MACV,QAAQ,iBAAa,0BAAQ,KAAK,IAAI,CAAC,GAAG;AAAA,IAC9C;AAEA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK,YAAY,KAAK;AAAA,EACjC;AAAA,EAEA,IAAI,gBAAgB;AAChB,WAAO,KAAK,YAAY,IAAI;AAAA,EAChC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,YAAY,WAAoB,YAAsB;AAClD,QAAI,CAAC,WAAW,QAAQ;AACpB,mBAAa,CAAC,KAAK,cAAc,WAAW,WAAW,SAAS;AAAA,IACpE;AAEA,UAAM,UAAU,CAAC;AAEjB,UAAM,UAAU,KAAK;AACrB,QAAI,OAAO,YAAY,YAAY,YAAY,MAAM;AACjD,kBAAY,QAAQ,IAAI,IAAI,UAAU,GAAG,SAAS,KAAK,MAAM,KAAK,MAAM,OAAO;AAAA,IACnF;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,MAAc;AACrB,eAAO,2BAAc,KAAK,QAAQ,IAAI,CAAC;AAAA,EAC3C;AACJ;AAmBA,IAAI,aAAa;AACjB,IAAI;AACJ,IAAI;AAEJ,SAAS,KAAK,UAAkB,UAA8C;AAC1E,MAAI,MAAM,IAAI,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,SAAO,CAAC,SAAS,GAAG,GAAG;AACnB,UAAM,IAAI,QAAQ,EAAE,UAAM,0BAAQ,IAAI,IAAI,EAAE,CAAC;AAAA,EACjD;AACA,SAAO;AACX;AAEA,SAAS,cAAc,MAA+B;AAClD,MAAI,KAAc;AAElB,MAAI,OAAO,SAAS,UAAU;AAC1B,UAAM,IAAI,MAAM,wBAAwB,OAAO,IAAI,EAAE;AAAA,EACzD;AAEA,MAAI,KAAK,SAAS,UAAU;AACxB,UAAM;AACN,UACK,KAAK,SAAS,UAAa,KAAK,WAAW,UAC5C,CAAC,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,QAAa,IAAI,OAAO;AAAA,EAC1E,OAAO;AACH,UAAM;AACN,UAAM,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,QAAa,IAAI,MAAM;AAAA,EAC5F;AAEA,SAAO,EAAE,KAAK,IAAI;AACtB;AAEA,SAAS,oBAAoB,QAA6B,MAAyC;AAC/F,MAAI,SAAS,SAAS,OAAO,QAAQ;AACjC,QAAIG,OAAM,OAAO;AACjB,QAAIA,QAAO,OAAOA,SAAQ,UAAU;AAChC,MAAAA,OAAM,oBAAoBA,MAAK,IAAI;AAAA,IACvC;AACA,QAAIA,MAAK;AACL,aAAOA;AAAA,IACX;AAAA,EACJ;AAEA,MAAI,MAAM,OAAO,WAAW,OAAO,QAAQ,OAAO;AAClD,MAAI,OAAO,OAAO,QAAQ,UAAU;AAChC,UAAM,oBAAoB,KAAK,IAAI;AAAA,EACvC;AAEA,MAAI,OAAO,QAAQ,UAAU;AACzB,WAAO;AAAA,EACX;AACJ;AAMA,SAAS,YACL,QACA,YACA,QACA,QACA,MACA,SACF;AACE,MAAI,OAAO,YAAY,UAAU;AAC7B,mBAAe,QAAQ,QAAQ,QAAQ,MAAM,OAAO;AAAA,EACxD,WAAW,MAAM,QAAQ,OAAO,GAAG;AAC/B,eAAW,SAAS,SAAS;AACzB,kBAAY,QAAQ,YAAY,QAAQ,QAAQ,MAAM,KAAK;AAAA,IAC/D;AAAA,EACJ,WAAW,OAAO,YAAY,YAAY,YAAY,MAAM;AACxD,QAAI,oBAAoB;AACxB,eAAW,OAAO,SAAS;AACvB,UAAI,IAAI,WAAW,GAAG,GAAG;AACrB,oBAAY,QAAQ,YAAY,YAAQ,uBAAK,QAAQ,GAAG,GAAG,MAAM,QAAQ,GAAG,CAAC;AAAA,MACjF,WAAW,CAAC,qBAAqB,WAAW,IAAI,GAAG,GAAG;AAClD,oBAAY,QAAQ,YAAY,QAAQ,QAAQ,MAAM,QAAQ,GAAG,CAAC;AAClE,4BAAoB;AAAA,MACxB;AAAA,IACJ;AAAA,EACJ,OAAO;AACH,UAAM,IAAI,MAAM,yCAAyC;AAAA,EAC7D;AACJ;AAEA,SAAS,eAAe,QAAiB,QAAgC,MAAc,MAAc,SAAiB;AAClH,MAAI,WAAO,uBAAK,MAAM,OAAO;AAC7B,MAAI,QAAQ;AACR,WAAO,KAAK,QAAQ,yBAAyB,OAAO;AAAA,EACxD;AAEA,MAAI,KAAK,SAAS,GAAG,GAAG;AAEpB,QAAI,CAAC,KAAK,SAAS,IAAI,GAAG;AACtB,YAAM,IAAI,MAAM,sBAAsB,IAAI,wCAAwC;AAAA,IACtF;AAEA,WAAO,KAAK,UAAU,GAAG,KAAK,SAAS,CAAC;AACxC,UAAM,YAAQ,sBAAS,SAAS,KAAK,QAAQ,SAAS,kBAAkB,IAAI,IAAI;AAChF,QAAI,CAAC,MAAM,QAAQ;AACf,YAAM,IAAI,MAAM,uBAAuB,IAAI,YAAY,OAAO,EAAE;AAAA,IACpE;AAEA,UAAM,CAAC,QAAQ,MAAM,IAAI,KAAK,MAAM,KAAK;AACzC,UAAM,eAAe,WAAW,SAAY,IAAI,OAAO;AACvD,UAAM,eAAe,WAAW,SAAY,IAAI,OAAO;AAEvD,eAAW,YAAY,OAAO;AAC1B,YAAM,YAAY,SAAS,UAAU,cAAc,SAAS,SAAS,YAAY;AACjF,YAAM,eAAW,uBAAK,MAAM,SAAS;AACrC,aAAO,QAAQ,IAAI;AAAA,IACvB;AAAA,EACJ,WAAW,KAAK,SAAS,GAAG,GAAG;AAE3B,UAAM,IAAI,MAAM,4BAA4B,IAAI,wBAAwB,IAAI,GAAG;AAAA,EACnF,OAAO;AAEH,WAAO,KAAK,QAAQ,uBAAuB,EAAE;AAG7C,QAAI,QAAQ;AACZ,YAAI,oBAAO,IAAI,GAAG;AACd,cAAQ;AAAA,IACZ,WAAW,UAAU,KAAK,SAAS,KAAK,GAAG;AACvC,aAAO,KAAK,QAAQ,SAAS,KAAK;AAClC,cAAI,oBAAO,IAAI,GAAG;AACd,gBAAQ;AAAA,MACZ;AAAA,IACJ;AAEA,QAAI,CAAC,OAAO;AACR,YAAM,IAAI,MAAM,WAAW,IAAI,WAAW,IAAI,aAAa;AAAA,IAC/D;AAEA,WAAO,IAAI,IAAI;AAAA,EACnB;AACJ;",
|
|
5
5
|
"names": ["paths", "find", "path", "result", "exp"]
|
|
6
6
|
}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { Package } from "./package.js";
|
|
7
7
|
export declare const STATUS_ICON_SUCCESS: import("../ansi-text/text-builder.js").TextBuilder;
|
|
8
8
|
export declare const STATUS_ICON_FAILURE: import("../ansi-text/text-builder.js").TextBuilder;
|
|
9
|
+
export declare const STATUS_ICON_SKIPPED: import("../ansi-text/text-builder.js").TextBuilder;
|
|
9
10
|
export declare class Progress {
|
|
10
11
|
#private;
|
|
11
12
|
status: Progress.Status;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/util/progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,mBAAmB,oDAAkB,CAAC;AACnD,eAAO,MAAM,mBAAmB,oDAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/util/progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,mBAAmB,oDAAkB,CAAC;AACnD,eAAO,MAAM,mBAAmB,oDAAuB,CAAC;AACxD,eAAO,MAAM,mBAAmB,oDAAsB,CAAC;AA2EvD,qBAAa,QAAQ;;IACjB,MAAM,kBAA2B;;IAWjC,SAAS,CAAC,IAAI,EAAE,OAAO;IAIvB,WAAW,CAAC,IAAI,EAAE,OAAO;IAIzB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO;IAcxD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAwBnC,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG;IAO/B,IAAI,CAAC,IAAI,EAAE,MAAM;IAIjB,KAAK;IAQL,CAAC,MAAM,CAAC,OAAO,CAAC;IAIhB,OAAO;IAMD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IA2B7C,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAiBtD;AAED,yBAAiB,QAAQ,CAAC;IACtB,KAAY,MAAM;QACd,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;KACtB;IAED,SAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,UAyB9C;CACJ"}
|
|
@@ -20,6 +20,7 @@ var progress_exports = {};
|
|
|
20
20
|
__export(progress_exports, {
|
|
21
21
|
Progress: () => Progress,
|
|
22
22
|
STATUS_ICON_FAILURE: () => STATUS_ICON_FAILURE,
|
|
23
|
+
STATUS_ICON_SKIPPED: () => STATUS_ICON_SKIPPED,
|
|
23
24
|
STATUS_ICON_SUCCESS: () => STATUS_ICON_SUCCESS
|
|
24
25
|
});
|
|
25
26
|
module.exports = __toCommonJS(progress_exports);
|
|
@@ -34,6 +35,7 @@ var import_text_builder = require("../ansi-text/text-builder.js");
|
|
|
34
35
|
*/
|
|
35
36
|
const STATUS_ICON_SUCCESS = import_text_builder.ansi.green("\u2713");
|
|
36
37
|
const STATUS_ICON_FAILURE = import_text_builder.ansi.bright.red("\u2717");
|
|
38
|
+
const STATUS_ICON_SKIPPED = import_text_builder.ansi.dim.white("\u2043");
|
|
37
39
|
const SPINNER = "\u25D0\u25D3\u25D1\u25D2";
|
|
38
40
|
const SPINNER_INTERVAL = 100;
|
|
39
41
|
function packageIdentity(pkg) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/progress.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,0BAA+B;AAC/B,oBAAuB;AACvB,iBAAoB;AACpB,0BAAqB;AATrB;AAAA;AAAA;AAAA;AAAA;AAYO,MAAM,sBAAsB,yBAAK,MAAM,QAAG;AAC1C,MAAM,sBAAsB,yBAAK,OAAO,IAAI,QAAG;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["writeStatus", "Progress", "Status"]
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/running/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/running/cli.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;;;;;;;;;;GAWG;AACH,wBAAsB,IAAI,CAAC,IAAI,WAAe,iBAuE7C"}
|
package/dist/esm/running/cli.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { realpath } from "node:fs/promises";
|
|
6
7
|
import { dirname, resolve } from "node:path";
|
|
7
8
|
import { exit, stdout } from "node:process";
|
|
8
9
|
import { ensureCompiled } from "./ensure-compiled.js";
|
|
@@ -35,13 +36,8 @@ async function main(argv = process.argv) {
|
|
|
35
36
|
console.error("Error: Script name required");
|
|
36
37
|
exit(1);
|
|
37
38
|
}
|
|
38
|
-
script = resolve(script);
|
|
39
|
-
|
|
40
|
-
if (script.match(/[\\/]node_modules[\\/].bin[\\/]/)) {
|
|
41
|
-
dir = process.cwd();
|
|
42
|
-
} else {
|
|
43
|
-
dir = dirname(script);
|
|
44
|
-
}
|
|
39
|
+
script = await realpath(resolve(script));
|
|
40
|
+
const dir = dirname(script);
|
|
45
41
|
const { format, pkg } = await ensureCompiled(dir);
|
|
46
42
|
if (format !== "none") {
|
|
47
43
|
script = pkg.resolve(
|
|
@@ -61,4 +57,4 @@ async function main(argv = process.argv) {
|
|
|
61
57
|
export {
|
|
62
58
|
main
|
|
63
59
|
};
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3J1bm5pbmcvY2xpLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IHJlYWxwYXRoIH0gZnJvbSBcIm5vZGU6ZnMvcHJvbWlzZXNcIjtcbmltcG9ydCB7IGRpcm5hbWUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBleGl0LCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBlbnN1cmVDb21waWxlZCB9IGZyb20gXCIuL2Vuc3VyZS1jb21waWxlZC5qc1wiO1xuaW1wb3J0IHsgZXhlY3V0ZU5vZGUgfSBmcm9tIFwiLi9leGVjdXRlLmpzXCI7XG5cbi8qKlxuICogRXhlY3V0ZSBhIHNjcmlwdCBpbiBhIHBhY2thZ2UgdGhhdCBjb25mb3JtcyB0byBtYXR0ZXIuanMgY29udmVudGlvbnMuICBUaGlzIGlzIHByaW1hcmlseSB1c2VmdWwgd2l0aGluIGEgbWF0dGVyLmpzXG4gKiBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCBidXQgc2hvdWxkIGFsc28gd29yayB3aGVuIGluc3RhbGxlZCB2aWEgTlBNLlxuICpcbiAqIEZpcnN0IHdlIHRyYW5zbGF0ZSBzb3VyY2UgZmlsZW5hbWVzIHRvIHRoZSB0cmFuc3BpbGVkICouanMgZXF1aXZhbGVudC5cbiAqXG4gKiBJZiB0aGUgdGFyZ2V0IHNjcmlwdCBpcyBpbiBhIHBhY2thZ2Ugbm90IGluc3RhbGxlZCB2aWEgTlBNIHdlIGJ1aWxkIHRoZSBwYWNrYWdlLiAgSWYgdGhlIHBhY2thZ2UgaXMgYW4gTlBNIHdvcmtzcGFjZVxuICogdW5kZXIgYSB0b3AtbGV2ZWwgcGFja2FnZSB3ZSBhbHNvIGJ1aWxkIGRlcGVuZGVuY2llcy5cbiAqXG4gKiBXZSB0aGVuIHJ1biB0aGUgc2NyaXB0IGluIGEgY2hpbGQgcHJvY2VzcyBzbyB3ZSBjYW4gZW5hYmxlIHNvdXJjZSBtYXBzIHVzaW5nIG5vZGUgLS1zb3VyY2UtbWFwcy4gIFlvdSBjYW4gZGlzYWJsZVxuICogdGhpcyBieSBzZXR0aW5nIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBNQVRURVJfRElSRUNUX0VYRUMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYWluKGFyZ3YgPSBwcm9jZXNzLmFyZ3YpIHtcbiAgICBsZXQgZGlyZWN0RXhlYyA9ICEhcHJvY2Vzcy5lbnYuTUFUVEVSX0RJUkVDVF9FWEVDO1xuXG4gICAgLy8gRHJvcCBub2RlIGFuZCBtYXR0ZXItcnVuXG4gICAgYXJndiA9IGFyZ3Yuc2xpY2UoMik7XG5cbiAgICBjb25zdCBub2RlQXJndiA9IEFycmF5PHN0cmluZz4oKTtcblxuICAgIC8vIFByb2Nlc3MgYXJndW1lbnRzIHRvIG1hdHRlci1ydW4gaXRzZWxmICh2ZXJ5IHNpbXBsZSBhcyBvZiB5ZXQgc28ganVzdCBwcm9jZXNzaW5nIG1hbnVhbGx5KVxuICAgIHdoaWxlIChhcmd2WzBdWzBdID09PSBcIi1cIikge1xuICAgICAgICBjb25zdCBvcHRpb24gPSBhcmd2LnNoaWZ0KCkhO1xuXG4gICAgICAgIHN3aXRjaCAob3B0aW9uKSB7XG4gICAgICAgICAgICBjYXNlIFwiLS1jbGVhclwiOlxuICAgICAgICAgICAgICAgIGNvbnNvbGUuY2xlYXIoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgY2FzZSBcIi0tZGlyZWN0XCI6XG4gICAgICAgICAgICAgICAgZGlyZWN0RXhlYyA9IHRydWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGNhc2UgXCItLWhlbHBcIjpcbiAgICAgICAgICAgICAgICBzdGRvdXQud3JpdGUoXG4gICAgICAgICAgICAgICAgICAgIFwiVXNhZ2U6IG1hdHRlci1ydW4gWy0tY2xlYXJdIFstLWRpcmVjdF0gWy08Tk9ERV9PUFQ+XS4uLiA8U0NSSVBUPiBbQVJHXS4uLlxcblJ1biBhIE5vZGUuanMgc2NyaXB0IHdpdGggc291cmNlIG1hcCBzdXBwb3J0IGFuZCBhdXRvbWF0aWMgdHJhbnNwaWxhdGlvbiBvZiBUeXBlU2NyaXB0LlwiLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgLy8gQW55IG9wdGlvbiB3ZSBkb24ndCByZWNvZ25pemUgd2UgcGFzcyB0byBub2RlXG4gICAgICAgICAgICAgICAgbm9kZUFyZ3YucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXh0cmFjdCBzY3JpcHQgbmFtZS4gIGFyZ3YgaXMgdGhlbiB0aGUgc2NyaXB0J3MgYXJnc1xuICAgIGxldCBzY3JpcHQgPSBhcmd2LnNoaWZ0KCk7XG5cbiAgICBpZiAoc2NyaXB0ID09PSB1bmRlZmluZWQgfHwgc2NyaXB0ID09PSBcIlwiKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvcjogU2NyaXB0IG5hbWUgcmVxdWlyZWRcIik7XG4gICAgICAgIGV4aXQoMSk7XG4gICAgfVxuXG4gICAgc2NyaXB0ID0gYXdhaXQgcmVhbHBhdGgocmVzb2x2ZShzY3JpcHQpKTtcbiAgICBjb25zdCBkaXIgPSBkaXJuYW1lKHNjcmlwdCk7XG5cbiAgICBjb25zdCB7IGZvcm1hdCwgcGtnIH0gPSBhd2FpdCBlbnN1cmVDb21waWxlZChkaXIpO1xuXG4gICAgLy8gRGV0ZXJtaW5lIHRoZSBhY3R1YWwgc2NyaXB0IHRvIHJ1blxuICAgIGlmIChmb3JtYXQgIT09IFwibm9uZVwiKSB7XG4gICAgICAgIHNjcmlwdCA9IHBrZy5yZXNvbHZlKFxuICAgICAgICAgICAgcGtnXG4gICAgICAgICAgICAgICAgLnJlbGF0aXZlKHNjcmlwdClcbiAgICAgICAgICAgICAgICAucmVwbGFjZSgvXFwudHMkLywgXCIuanNcIilcbiAgICAgICAgICAgICAgICAucmVwbGFjZSgvXnNyY1tcXFxcL10vLCBgZGlzdC8ke2Zvcm1hdH0vYCksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gSWYgd2UgcnVuIGluIHRoZSBzYW1lIHByb2Nlc3Mgd2UgY2Fubm90IGVuYWJsZSBzb3VyY2UgbWFwcyBzbyBkZWZhdWx0IG1vZGUgaXMgdG8gZm9yay4gIEhvd2V2ZXIgZm9yIGRldmVsb3BtZW50XG4gICAgLy8gcHVycG9zZXMgaXQgY2FuIGJlIHVzZWZ1bCB0byBhdm9pZCB0aGUgaW50ZXJtZWRpYXJ5IHByb2Nlc3MuICBJbiB0aGlzIGNhc2UgeW91IGNhbiBzZXQgXCItLWVuYWJsZS1zb3VyY2UtbWFwc1wiXG4gICAgLy8gbWFudWFsbHkgdGhlbiBzZXQgTUFUVEVSX0RJUkVDVF9FWEVDXG4gICAgaWYgKGRpcmVjdEV4ZWMpIHtcbiAgICAgICAgLy8gVGhpcyB3aWxsIG5vdCB0cmFuc3BpbGUgcHJvcGVybHkgdG8gY29tbW9uanMgYnV0IHdlIG9ubHkgdXNlIHRoaXMgbW9kdWxlIGZyb20gRVNNIHNvIHRoYXQncyBPS1xuICAgICAgICBhd2FpdCBpbXBvcnQoc2NyaXB0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgICAvLyBPdXIgYmVoYXZpb3IgaW4gcmVzcG9uc2UgdG8gU0lHSU5UIHNob3VsZCBtaXJyb3IgdGhlIGNoaWxkIHByb2Nlc3Mncy4gIFNvIGlnbm9yZSB0aGUgc2lnbmFsIGxvY2FsbHksIG9ubHlcbiAgICAgICAgLy8gcXVpdHRpbmcgb25jZSB0aGUgY2hpbGQgcHJvY2VzcyBkb2VzXG4gICAgICAgIHByb2Nlc3Mub24oXCJTSUdJTlRcIiwgKCkgPT4ge30pO1xuICAgICAgICBwcm9jZXNzLm9uKFwiU0lHVEVSTVwiLCAoKSA9PiB7fSk7XG5cbiAgICAgICAgcHJvY2Vzcy5leGl0Q29kZSA9IGF3YWl0IGV4ZWN1dGVOb2RlKHNjcmlwdCwgYXJndiwgbm9kZUFyZ3YpO1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLFNBQVMsZUFBZTtBQUNqQyxTQUFTLE1BQU0sY0FBYztBQUM3QixTQUFTLHNCQUFzQjtBQUMvQixTQUFTLG1CQUFtQjtBQWM1QixlQUFzQixLQUFLLE9BQU8sUUFBUSxNQUFNO0FBQzVDLE1BQUksYUFBYSxDQUFDLENBQUMsUUFBUSxJQUFJO0FBRy9CLFNBQU8sS0FBSyxNQUFNLENBQUM7QUFFbkIsUUFBTSxXQUFXLE1BQWM7QUFHL0IsU0FBTyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sS0FBSztBQUN2QixVQUFNLFNBQVMsS0FBSyxNQUFNO0FBRTFCLFlBQVEsUUFBUTtBQUFBLE1BQ1osS0FBSztBQUNELGdCQUFRLE1BQU07QUFDZDtBQUFBLE1BRUosS0FBSztBQUNELHFCQUFhO0FBQ2I7QUFBQSxNQUVKLEtBQUs7QUFDRCxlQUFPO0FBQUEsVUFDSDtBQUFBLFFBQ0o7QUFDQTtBQUFBLE1BRUo7QUFFSSxpQkFBUyxLQUFLLE1BQU07QUFDcEI7QUFBQSxJQUNSO0FBQUEsRUFDSjtBQUdBLE1BQUksU0FBUyxLQUFLLE1BQU07QUFFeEIsTUFBSSxXQUFXLFVBQWEsV0FBVyxJQUFJO0FBQ3ZDLFlBQVEsTUFBTSw2QkFBNkI7QUFDM0MsU0FBSyxDQUFDO0FBQUEsRUFDVjtBQUVBLFdBQVMsTUFBTSxTQUFTLFFBQVEsTUFBTSxDQUFDO0FBQ3ZDLFFBQU0sTUFBTSxRQUFRLE1BQU07QUFFMUIsUUFBTSxFQUFFLFFBQVEsSUFBSSxJQUFJLE1BQU0sZUFBZSxHQUFHO0FBR2hELE1BQUksV0FBVyxRQUFRO0FBQ25CLGFBQVMsSUFBSTtBQUFBLE1BQ1QsSUFDSyxTQUFTLE1BQU0sRUFDZixRQUFRLFNBQVMsS0FBSyxFQUN0QixRQUFRLGFBQWEsUUFBUSxNQUFNLEdBQUc7QUFBQSxJQUMvQztBQUFBLEVBQ0o7QUFLQSxNQUFJLFlBQVk7QUFFWixVQUFNLE9BQU87QUFBQSxFQUNqQixPQUFPO0FBR0gsWUFBUSxHQUFHLFVBQVUsTUFBTTtBQUFBLElBQUMsQ0FBQztBQUM3QixZQUFRLEdBQUcsV0FBVyxNQUFNO0FBQUEsSUFBQyxDQUFDO0FBRTlCLFlBQVEsV0FBVyxNQUFNLFlBQVksUUFBUSxNQUFNLFFBQVE7QUFBQSxFQUMvRDtBQUNKOyIsCiAgIm5hbWVzIjogW10KfQo=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/running/cli.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,SAAS,eAAe;AACjC,SAAS,MAAM,cAAc;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAc5B,eAAsB,KAAK,OAAO,QAAQ,MAAM;AAC5C,MAAI,aAAa,CAAC,CAAC,QAAQ,IAAI;AAG/B,SAAO,KAAK,MAAM,CAAC;AAEnB,QAAM,WAAW,MAAc;AAG/B,SAAO,KAAK,CAAC,EAAE,CAAC,MAAM,KAAK;AACvB,UAAM,SAAS,KAAK,MAAM;AAE1B,YAAQ,QAAQ;AAAA,MACZ,KAAK;AACD,gBAAQ,MAAM;AACd;AAAA,MAEJ,KAAK;AACD,qBAAa;AACb;AAAA,MAEJ,KAAK;AACD,eAAO;AAAA,UACH;AAAA,QACJ;AACA;AAAA,MAEJ;AAEI,iBAAS,KAAK,MAAM;AACpB;AAAA,IACR;AAAA,EACJ;AAGA,MAAI,SAAS,KAAK,MAAM;AAExB,MAAI,WAAW,UAAa,WAAW,IAAI;AACvC,YAAQ,MAAM,6BAA6B;AAC3C,SAAK,CAAC;AAAA,EACV;AAEA,WAAS,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,gBAAgB;AACzB,SAAS,SAAS,eAAe;AACjC,SAAS,MAAM,cAAc;AAC7B,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAc5B,eAAsB,KAAK,OAAO,QAAQ,MAAM;AAC5C,MAAI,aAAa,CAAC,CAAC,QAAQ,IAAI;AAG/B,SAAO,KAAK,MAAM,CAAC;AAEnB,QAAM,WAAW,MAAc;AAG/B,SAAO,KAAK,CAAC,EAAE,CAAC,MAAM,KAAK;AACvB,UAAM,SAAS,KAAK,MAAM;AAE1B,YAAQ,QAAQ;AAAA,MACZ,KAAK;AACD,gBAAQ,MAAM;AACd;AAAA,MAEJ,KAAK;AACD,qBAAa;AACb;AAAA,MAEJ,KAAK;AACD,eAAO;AAAA,UACH;AAAA,QACJ;AACA;AAAA,MAEJ;AAEI,iBAAS,KAAK,MAAM;AACpB;AAAA,IACR;AAAA,EACJ;AAGA,MAAI,SAAS,KAAK,MAAM;AAExB,MAAI,WAAW,UAAa,WAAW,IAAI;AACvC,YAAQ,MAAM,6BAA6B;AAC3C,SAAK,CAAC;AAAA,EACV;AAEA,WAAS,MAAM,SAAS,QAAQ,MAAM,CAAC;AACvC,QAAM,MAAM,QAAQ,MAAM;AAE1B,QAAM,EAAE,QAAQ,IAAI,IAAI,MAAM,eAAe,GAAG;AAGhD,MAAI,WAAW,QAAQ;AACnB,aAAS,IAAI;AAAA,MACT,IACK,SAAS,MAAM,EACf,QAAQ,SAAS,KAAK,EACtB,QAAQ,aAAa,QAAQ,MAAM,GAAG;AAAA,IAC/C;AAAA,EACJ;AAKA,MAAI,YAAY;AAEZ,UAAM,OAAO;AAAA,EACjB,OAAO;AAGH,YAAQ,GAAG,UAAU,MAAM;AAAA,IAAC,CAAC;AAC7B,YAAQ,GAAG,WAAW,MAAM;AAAA,IAAC,CAAC;AAE9B,YAAQ,WAAW,MAAM,YAAY,QAAQ,MAAM,QAAQ;AAAA,EAC/D;AACJ;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.d.mts","sourceRoot":"","sources":["../../../src/util/bootstrap.mjs"],"names":[],"mappings":""}
|
package/dist/esm/util/glob.js
CHANGED
|
@@ -41,14 +41,14 @@ function globOnePartSync(mm, segments, fs) {
|
|
|
41
41
|
if (!segments.length) {
|
|
42
42
|
const stat = fs.stat(rootPath);
|
|
43
43
|
if (stat?.[rootPath.endsWith("/") ? "isDirectory" : "isFile"]) {
|
|
44
|
-
return [rootPath];
|
|
44
|
+
return [fs.resolve(rootPath)];
|
|
45
45
|
}
|
|
46
46
|
return [];
|
|
47
47
|
}
|
|
48
48
|
const results = /* @__PURE__ */ new Set();
|
|
49
49
|
function match(path, segments2) {
|
|
50
50
|
if (!segments2.length) {
|
|
51
|
-
results.add(path);
|
|
51
|
+
results.add(fs.resolve(path));
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
if (typeof segments2[0] === "string") {
|
|
@@ -59,7 +59,7 @@ function globOnePartSync(mm, segments, fs) {
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
if (segments2.length === 1 && segments2[0] === GLOBSTAR) {
|
|
62
|
-
results.add(path);
|
|
62
|
+
results.add(fs.resolve(path));
|
|
63
63
|
}
|
|
64
64
|
const subnames = fs.readdir(path);
|
|
65
65
|
if (!subnames) {
|
|
@@ -88,4 +88,4 @@ export {
|
|
|
88
88
|
GlobError,
|
|
89
89
|
globSync
|
|
90
90
|
};
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvZ2xvYi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBHTE9CU1RBUiwgTWluaW1hdGNoLCBQYXJzZVJldHVybkZpbHRlcmVkIH0gZnJvbSBcIm1pbmltYXRjaFwiO1xuaW1wb3J0IHsgRmlsZXN5c3RlbVN5bmMgfSBmcm9tIFwiLi9maWxlLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBHbG9iRXJyb3IgZXh0ZW5kcyBFcnJvciB7fVxuXG5leHBvcnQgZnVuY3Rpb24gZ2xvYlN5bmMocGF0dGVybjogc3RyaW5nIHwgc3RyaW5nW10sIGZzID0gRmlsZXN5c3RlbVN5bmMoKSkge1xuICAgIGlmICh0eXBlb2YgcGF0dGVybiA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICByZXR1cm4gWy4uLmdsb2JPbmVTeW5jKHBhdHRlcm4sIGZzKV07XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gQXJyYXk8c3RyaW5nPigpO1xuICAgIGZvciAoY29uc3QgcCBvZiBwYXR0ZXJuKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKC4uLmdsb2JPbmVTeW5jKHAsIGZzKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZnVuY3Rpb24gZ2xvYk9uZVN5bmMocGF0dGVybjogc3RyaW5nLCBmczogRmlsZXN5c3RlbVN5bmMpIHtcbiAgICAvLyBQYXJzZSB0aGUgZ2xvYlxuICAgIGNvbnN0IG1tID0gbmV3IE1pbmltYXRjaChwYXR0ZXJuLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpLCB7fSk7XG4gICAgY29uc3QgcmVzdWx0cyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIGZvciAoY29uc3QgcGFydCBvZiBtbS5zZXQpIHtcbiAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIGdsb2JPbmVQYXJ0U3luYyhtbSwgcGFydCwgZnMpKSB7XG4gICAgICAgICAgICByZXN1bHRzLmFkZChwYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0cztcbn1cblxuZnVuY3Rpb24gZ2xvYk9uZVBhcnRTeW5jKG1tOiBNaW5pbWF0Y2gsIHNlZ21lbnRzOiBQYXJzZVJldHVybkZpbHRlcmVkW10sIGZzOiBGaWxlc3lzdGVtU3luYykge1xuICAgIC8vIEZpbmQgdGhlIHN0YXJ0aW5nIHBhdGhcbiAgICBsZXQgcm9vdFBhdGggPSBcIlwiO1xuICAgIGxldCBkaWRPbmUgPSBmYWxzZTtcbiAgICB3aGlsZSAodHlwZW9mIHNlZ21lbnRzWzBdID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGlmIChkaWRPbmUpIHtcbiAgICAgICAgICAgIHJvb3RQYXRoICs9IFwiL1wiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZGlkT25lID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByb290UGF0aCArPSBzZWdtZW50cy5zaGlmdCgpIGFzIHN0cmluZztcbiAgICB9XG5cbiAgICAvLyBJZiB3ZSBhcmUgb3V0IG9mIHNlZ21lbnRzLCB0aGlzIGlzIG5vdCBhIGdsb2IuICBKdXN0IGNoZWNrIGZvciBwcmVzZW5jZVxuICAgIGlmICghc2VnbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHN0YXQgPSBmcy5zdGF0KHJvb3RQYXRoKTtcblxuICAgICAgICBpZiAoc3RhdD8uW3Jvb3RQYXRoLmVuZHNXaXRoKFwiL1wiKSA/
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvZ2xvYi50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBHTE9CU1RBUiwgTWluaW1hdGNoLCBQYXJzZVJldHVybkZpbHRlcmVkIH0gZnJvbSBcIm1pbmltYXRjaFwiO1xuaW1wb3J0IHsgRmlsZXN5c3RlbVN5bmMgfSBmcm9tIFwiLi9maWxlLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBHbG9iRXJyb3IgZXh0ZW5kcyBFcnJvciB7fVxuXG5leHBvcnQgZnVuY3Rpb24gZ2xvYlN5bmMocGF0dGVybjogc3RyaW5nIHwgc3RyaW5nW10sIGZzID0gRmlsZXN5c3RlbVN5bmMoKSkge1xuICAgIGlmICh0eXBlb2YgcGF0dGVybiA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICByZXR1cm4gWy4uLmdsb2JPbmVTeW5jKHBhdHRlcm4sIGZzKV07XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gQXJyYXk8c3RyaW5nPigpO1xuICAgIGZvciAoY29uc3QgcCBvZiBwYXR0ZXJuKSB7XG4gICAgICAgIHJlc3VsdC5wdXNoKC4uLmdsb2JPbmVTeW5jKHAsIGZzKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cblxuZnVuY3Rpb24gZ2xvYk9uZVN5bmMocGF0dGVybjogc3RyaW5nLCBmczogRmlsZXN5c3RlbVN5bmMpIHtcbiAgICAvLyBQYXJzZSB0aGUgZ2xvYlxuICAgIGNvbnN0IG1tID0gbmV3IE1pbmltYXRjaChwYXR0ZXJuLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpLCB7fSk7XG4gICAgY29uc3QgcmVzdWx0cyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICAgIGZvciAoY29uc3QgcGFydCBvZiBtbS5zZXQpIHtcbiAgICAgICAgZm9yIChjb25zdCBwYXRoIG9mIGdsb2JPbmVQYXJ0U3luYyhtbSwgcGFydCwgZnMpKSB7XG4gICAgICAgICAgICByZXN1bHRzLmFkZChwYXRoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0cztcbn1cblxuZnVuY3Rpb24gZ2xvYk9uZVBhcnRTeW5jKG1tOiBNaW5pbWF0Y2gsIHNlZ21lbnRzOiBQYXJzZVJldHVybkZpbHRlcmVkW10sIGZzOiBGaWxlc3lzdGVtU3luYykge1xuICAgIC8vIEZpbmQgdGhlIHN0YXJ0aW5nIHBhdGhcbiAgICBsZXQgcm9vdFBhdGggPSBcIlwiO1xuICAgIGxldCBkaWRPbmUgPSBmYWxzZTtcbiAgICB3aGlsZSAodHlwZW9mIHNlZ21lbnRzWzBdID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGlmIChkaWRPbmUpIHtcbiAgICAgICAgICAgIHJvb3RQYXRoICs9IFwiL1wiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZGlkT25lID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByb290UGF0aCArPSBzZWdtZW50cy5zaGlmdCgpIGFzIHN0cmluZztcbiAgICB9XG5cbiAgICAvLyBJZiB3ZSBhcmUgb3V0IG9mIHNlZ21lbnRzLCB0aGlzIGlzIG5vdCBhIGdsb2IuICBKdXN0IGNoZWNrIGZvciBwcmVzZW5jZVxuICAgIGlmICghc2VnbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHN0YXQgPSBmcy5zdGF0KHJvb3RQYXRoKTtcblxuICAgICAgICBpZiAoc3RhdD8uW3Jvb3RQYXRoLmVuZHNXaXRoKFwiL1wiKSA/IFwiaXNEaXJlY3RvcnlcIiA6IFwiaXNGaWxlXCJdKSB7XG4gICAgICAgICAgICByZXR1cm4gW2ZzLnJlc29sdmUocm9vdFBhdGgpXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICAvLyBXYWxrIGZpbGVzeXN0ZW0gYW5kIGFwcGx5IGdsb2JcbiAgICBjb25zdCByZXN1bHRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgICBmdW5jdGlvbiBtYXRjaChwYXRoOiBzdHJpbmcsIHNlZ21lbnRzOiBQYXJzZVJldHVybkZpbHRlcmVkW10pIHtcbiAgICAgICAgLy8gSWYgdGhlIGZpbHRlciBpcyBlbXB0eSB0aGVuIG1hdGNoIGN1cnJlbnQgcGF0aFxuICAgICAgICBpZiAoIXNlZ21lbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmVzdWx0cy5hZGQoZnMucmVzb2x2ZShwYXRoKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiBmaWx0ZXIgc3RhcnRzIHdpdGhvdXQgbWFnaWMgdGhlbiBqdXN0IHN0YXQgdGhhdCBvbmUgcGF0aFxuICAgICAgICBpZiAodHlwZW9mIHNlZ21lbnRzWzBdID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICBjb25zdCBzdWJwYXRoID0gZnMucmVzb2x2ZShwYXRoLCBzZWdtZW50c1swXSk7XG4gICAgICAgICAgICBpZiAoZnMuc3RhdChmcy5yZXNvbHZlKHBhdGgsIHNlZ21lbnRzWzBdKSkpIHtcbiAgICAgICAgICAgICAgICBtYXRjaChzdWJwYXRoLCBzZWdtZW50cy5zbGljZSgxKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgZmlsdGVyIGlzIGp1c3QgR0xPQlNUQVIgdGhlbiBhbGwgcGF0aHMgbWF0Y2ggYnV0IHNlYXJjaCBjb250aW51ZXNcbiAgICAgICAgaWYgKHNlZ21lbnRzLmxlbmd0aCA9PT0gMSAmJiBzZWdtZW50c1swXSA9PT0gR0xPQlNUQVIpIHtcbiAgICAgICAgICAgIHJlc3VsdHMuYWRkKGZzLnJlc29sdmUocGF0aCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRmlsdGVyIHN0YXJ0cyB3aXRoIG1hZ2ljIHNvIGxvYWQgZGlyZWN0b3J5IGVudHJpZXMgdG8gbWF0Y2hcbiAgICAgICAgY29uc3Qgc3VibmFtZXMgPSBmcy5yZWFkZGlyKHBhdGgpO1xuICAgICAgICBpZiAoIXN1Ym5hbWVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBUZXN0IGVhY2ggZGlyZWN0b3J5IGVudHJ5XG4gICAgICAgIGZvciAoY29uc3Qgc3VibmFtZSBvZiBzdWJuYW1lcykge1xuICAgICAgICAgICAgY29uc3Qgc3VicGF0aCA9IGZzLnJlc29sdmUocGF0aCwgc3VibmFtZSk7XG5cbiAgICAgICAgICAgIC8vIEFueXRoaW5nIGJ1dCBHTE9CU1RBUiBpcyAxOjEgc3VibmFtZS9zZWdtZW50IG1hdGNoXG4gICAgICAgICAgICBpZiAoc2VnbWVudHNbMF0gIT09IEdMT0JTVEFSKSB7XG4gICAgICAgICAgICAgICAgaWYgKG1tLm1hdGNoT25lKFtzdWJuYW1lXSwgc2VnbWVudHMsIHRydWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hdGNoKHN1YnBhdGgsIHNlZ21lbnRzLnNsaWNlKDEpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIEdMT0JTVEFSIG1hdGNoZXMgbm90aGluZyBzbyB0ZXN0IHNlY29uZCBzZWdtZW50XG4gICAgICAgICAgICBpZiAoc2VnbWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIGlmIChtbS5tYXRjaE9uZShbc3VibmFtZV0sIHNlZ21lbnRzLnNsaWNlKDEpLCB0cnVlKSkge1xuICAgICAgICAgICAgICAgICAgICBtYXRjaChzdWJwYXRoLCBzZWdtZW50cy5zbGljZSgyKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBHTE9CU1RBUiBtYXRjaGVzIGV2ZXJ5dGhpbmdcbiAgICAgICAgICAgIG1hdGNoKHN1YnBhdGgsIHNlZ21lbnRzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG1hdGNoKHJvb3RQYXRoLCBzZWdtZW50cyk7XG5cbiAgICByZXR1cm4gcmVzdWx0cztcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFVBQVUsaUJBQXNDO0FBQ3pELFNBQVMsc0JBQXNCO0FBRXhCLE1BQU0sa0JBQWtCLE1BQU07QUFBQztBQUUvQixTQUFTLFNBQVMsU0FBNEIsS0FBSyxlQUFlLEdBQUc7QUFDeEUsTUFBSSxPQUFPLFlBQVksVUFBVTtBQUM3QixXQUFPLENBQUMsR0FBRyxZQUFZLFNBQVMsRUFBRSxDQUFDO0FBQUEsRUFDdkM7QUFFQSxRQUFNLFNBQVMsTUFBYztBQUM3QixhQUFXLEtBQUssU0FBUztBQUNyQixXQUFPLEtBQUssR0FBRyxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBQUEsRUFDckM7QUFFQSxTQUFPO0FBQ1g7QUFFQSxTQUFTLFlBQVksU0FBaUIsSUFBb0I7QUFFdEQsUUFBTSxLQUFLLElBQUksVUFBVSxRQUFRLFFBQVEsT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDO0FBQ3hELFFBQU0sVUFBVSxvQkFBSSxJQUFZO0FBQ2hDLGFBQVcsUUFBUSxHQUFHLEtBQUs7QUFDdkIsZUFBVyxRQUFRLGdCQUFnQixJQUFJLE1BQU0sRUFBRSxHQUFHO0FBQzlDLGNBQVEsSUFBSSxJQUFJO0FBQUEsSUFDcEI7QUFBQSxFQUNKO0FBQ0EsU0FBTztBQUNYO0FBRUEsU0FBUyxnQkFBZ0IsSUFBZSxVQUFpQyxJQUFvQjtBQUV6RixNQUFJLFdBQVc7QUFDZixNQUFJLFNBQVM7QUFDYixTQUFPLE9BQU8sU0FBUyxDQUFDLE1BQU0sVUFBVTtBQUNwQyxRQUFJLFFBQVE7QUFDUixrQkFBWTtBQUFBLElBQ2hCLE9BQU87QUFDSCxlQUFTO0FBQUEsSUFDYjtBQUNBLGdCQUFZLFNBQVMsTUFBTTtBQUFBLEVBQy9CO0FBR0EsTUFBSSxDQUFDLFNBQVMsUUFBUTtBQUNsQixVQUFNLE9BQU8sR0FBRyxLQUFLLFFBQVE7QUFFN0IsUUFBSSxPQUFPLFNBQVMsU0FBUyxHQUFHLElBQUksZ0JBQWdCLFFBQVEsR0FBRztBQUMzRCxhQUFPLENBQUMsR0FBRyxRQUFRLFFBQVEsQ0FBQztBQUFBLElBQ2hDO0FBRUEsV0FBTyxDQUFDO0FBQUEsRUFDWjtBQUdBLFFBQU0sVUFBVSxvQkFBSSxJQUFZO0FBRWhDLFdBQVMsTUFBTSxNQUFjQSxXQUFpQztBQUUxRCxRQUFJLENBQUNBLFVBQVMsUUFBUTtBQUNsQixjQUFRLElBQUksR0FBRyxRQUFRLElBQUksQ0FBQztBQUM1QjtBQUFBLElBQ0o7QUFHQSxRQUFJLE9BQU9BLFVBQVMsQ0FBQyxNQUFNLFVBQVU7QUFDakMsWUFBTSxVQUFVLEdBQUcsUUFBUSxNQUFNQSxVQUFTLENBQUMsQ0FBQztBQUM1QyxVQUFJLEdBQUcsS0FBSyxHQUFHLFFBQVEsTUFBTUEsVUFBUyxDQUFDLENBQUMsQ0FBQyxHQUFHO0FBQ3hDLGNBQU0sU0FBU0EsVUFBUyxNQUFNLENBQUMsQ0FBQztBQUNoQztBQUFBLE1BQ0o7QUFBQSxJQUNKO0FBR0EsUUFBSUEsVUFBUyxXQUFXLEtBQUtBLFVBQVMsQ0FBQyxNQUFNLFVBQVU7QUFDbkQsY0FBUSxJQUFJLEdBQUcsUUFBUSxJQUFJLENBQUM7QUFBQSxJQUNoQztBQUdBLFVBQU0sV0FBVyxHQUFHLFFBQVEsSUFBSTtBQUNoQyxRQUFJLENBQUMsVUFBVTtBQUNYO0FBQUEsSUFDSjtBQUdBLGVBQVcsV0FBVyxVQUFVO0FBQzVCLFlBQU0sVUFBVSxHQUFHLFFBQVEsTUFBTSxPQUFPO0FBR3hDLFVBQUlBLFVBQVMsQ0FBQyxNQUFNLFVBQVU7QUFDMUIsWUFBSSxHQUFHLFNBQVMsQ0FBQyxPQUFPLEdBQUdBLFdBQVUsSUFBSSxHQUFHO0FBQ3hDLGdCQUFNLFNBQVNBLFVBQVMsTUFBTSxDQUFDLENBQUM7QUFBQSxRQUNwQztBQUNBO0FBQUEsTUFDSjtBQUdBLFVBQUlBLFVBQVMsU0FBUyxHQUFHO0FBQ3JCLFlBQUksR0FBRyxTQUFTLENBQUMsT0FBTyxHQUFHQSxVQUFTLE1BQU0sQ0FBQyxHQUFHLElBQUksR0FBRztBQUNqRCxnQkFBTSxTQUFTQSxVQUFTLE1BQU0sQ0FBQyxDQUFDO0FBQUEsUUFDcEM7QUFBQSxNQUNKO0FBR0EsWUFBTSxTQUFTQSxTQUFRO0FBQUEsSUFDM0I7QUFBQSxFQUNKO0FBRUEsUUFBTSxVQUFVLFFBQVE7QUFFeEIsU0FBTztBQUNYOyIsCiAgIm5hbWVzIjogWyJzZWdtZW50cyJdCn0K
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/glob.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,UAAU,iBAAsC;AACzD,SAAS,sBAAsB;AAExB,MAAM,kBAAkB,MAAM;AAAC;AAE/B,SAAS,SAAS,SAA4B,KAAK,eAAe,GAAG;AACxE,MAAI,OAAO,YAAY,UAAU;AAC7B,WAAO,CAAC,GAAG,YAAY,SAAS,EAAE,CAAC;AAAA,EACvC;AAEA,QAAM,SAAS,MAAc;AAC7B,aAAW,KAAK,SAAS;AACrB,WAAO,KAAK,GAAG,YAAY,GAAG,EAAE,CAAC;AAAA,EACrC;AAEA,SAAO;AACX;AAEA,SAAS,YAAY,SAAiB,IAAoB;AAEtD,QAAM,KAAK,IAAI,UAAU,QAAQ,QAAQ,OAAO,GAAG,GAAG,CAAC,CAAC;AACxD,QAAM,UAAU,oBAAI,IAAY;AAChC,aAAW,QAAQ,GAAG,KAAK;AACvB,eAAW,QAAQ,gBAAgB,IAAI,MAAM,EAAE,GAAG;AAC9C,cAAQ,IAAI,IAAI;AAAA,IACpB;AAAA,EACJ;AACA,SAAO;AACX;AAEA,SAAS,gBAAgB,IAAe,UAAiC,IAAoB;AAEzF,MAAI,WAAW;AACf,MAAI,SAAS;AACb,SAAO,OAAO,SAAS,CAAC,MAAM,UAAU;AACpC,QAAI,QAAQ;AACR,kBAAY;AAAA,IAChB,OAAO;AACH,eAAS;AAAA,IACb;AACA,gBAAY,SAAS,MAAM;AAAA,EAC/B;AAGA,MAAI,CAAC,SAAS,QAAQ;AAClB,UAAM,OAAO,GAAG,KAAK,QAAQ;AAE7B,QAAI,OAAO,SAAS,SAAS,GAAG,IAAI,gBAAgB,QAAQ,GAAG;AAC3D,aAAO,CAAC,QAAQ;AAAA,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,UAAU,iBAAsC;AACzD,SAAS,sBAAsB;AAExB,MAAM,kBAAkB,MAAM;AAAC;AAE/B,SAAS,SAAS,SAA4B,KAAK,eAAe,GAAG;AACxE,MAAI,OAAO,YAAY,UAAU;AAC7B,WAAO,CAAC,GAAG,YAAY,SAAS,EAAE,CAAC;AAAA,EACvC;AAEA,QAAM,SAAS,MAAc;AAC7B,aAAW,KAAK,SAAS;AACrB,WAAO,KAAK,GAAG,YAAY,GAAG,EAAE,CAAC;AAAA,EACrC;AAEA,SAAO;AACX;AAEA,SAAS,YAAY,SAAiB,IAAoB;AAEtD,QAAM,KAAK,IAAI,UAAU,QAAQ,QAAQ,OAAO,GAAG,GAAG,CAAC,CAAC;AACxD,QAAM,UAAU,oBAAI,IAAY;AAChC,aAAW,QAAQ,GAAG,KAAK;AACvB,eAAW,QAAQ,gBAAgB,IAAI,MAAM,EAAE,GAAG;AAC9C,cAAQ,IAAI,IAAI;AAAA,IACpB;AAAA,EACJ;AACA,SAAO;AACX;AAEA,SAAS,gBAAgB,IAAe,UAAiC,IAAoB;AAEzF,MAAI,WAAW;AACf,MAAI,SAAS;AACb,SAAO,OAAO,SAAS,CAAC,MAAM,UAAU;AACpC,QAAI,QAAQ;AACR,kBAAY;AAAA,IAChB,OAAO;AACH,eAAS;AAAA,IACb;AACA,gBAAY,SAAS,MAAM;AAAA,EAC/B;AAGA,MAAI,CAAC,SAAS,QAAQ;AAClB,UAAM,OAAO,GAAG,KAAK,QAAQ;AAE7B,QAAI,OAAO,SAAS,SAAS,GAAG,IAAI,gBAAgB,QAAQ,GAAG;AAC3D,aAAO,CAAC,GAAG,QAAQ,QAAQ,CAAC;AAAA,IAChC;AAEA,WAAO,CAAC;AAAA,EACZ;AAGA,QAAM,UAAU,oBAAI,IAAY;AAEhC,WAAS,MAAM,MAAcA,WAAiC;AAE1D,QAAI,CAACA,UAAS,QAAQ;AAClB,cAAQ,IAAI,GAAG,QAAQ,IAAI,CAAC;AAC5B;AAAA,IACJ;AAGA,QAAI,OAAOA,UAAS,CAAC,MAAM,UAAU;AACjC,YAAM,UAAU,GAAG,QAAQ,MAAMA,UAAS,CAAC,CAAC;AAC5C,UAAI,GAAG,KAAK,GAAG,QAAQ,MAAMA,UAAS,CAAC,CAAC,CAAC,GAAG;AACxC,cAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAChC;AAAA,MACJ;AAAA,IACJ;AAGA,QAAIA,UAAS,WAAW,KAAKA,UAAS,CAAC,MAAM,UAAU;AACnD,cAAQ,IAAI,GAAG,QAAQ,IAAI,CAAC;AAAA,IAChC;AAGA,UAAM,WAAW,GAAG,QAAQ,IAAI;AAChC,QAAI,CAAC,UAAU;AACX;AAAA,IACJ;AAGA,eAAW,WAAW,UAAU;AAC5B,YAAM,UAAU,GAAG,QAAQ,MAAM,OAAO;AAGxC,UAAIA,UAAS,CAAC,MAAM,UAAU;AAC1B,YAAI,GAAG,SAAS,CAAC,OAAO,GAAGA,WAAU,IAAI,GAAG;AACxC,gBAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAAA,QACpC;AACA;AAAA,MACJ;AAGA,UAAIA,UAAS,SAAS,GAAG;AACrB,YAAI,GAAG,SAAS,CAAC,OAAO,GAAGA,UAAS,MAAM,CAAC,GAAG,IAAI,GAAG;AACjD,gBAAM,SAASA,UAAS,MAAM,CAAC,CAAC;AAAA,QACpC;AAAA,MACJ;AAGA,YAAM,SAASA,SAAQ;AAAA,IAC3B;AAAA,EACJ;AAEA,QAAM,UAAU,QAAQ;AAExB,SAAO;AACX;",
|
|
5
5
|
"names": ["segments"]
|
|
6
6
|
}
|
|
@@ -23,6 +23,10 @@ export declare class Package {
|
|
|
23
23
|
path?: string;
|
|
24
24
|
name?: string;
|
|
25
25
|
});
|
|
26
|
+
findJson(filename: string, path?: string, title?: string): {
|
|
27
|
+
root: string;
|
|
28
|
+
json: any;
|
|
29
|
+
};
|
|
26
30
|
get name(): string;
|
|
27
31
|
get version(): string;
|
|
28
32
|
get exports(): Exports | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/util/package.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAE/C,eAAO,MAAM,WAAW,wBAAwB,CAAC;AACjD,eAAO,MAAM,YAAY,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"","sources":["../../../src/util/package.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/util/package.js
CHANGED
|
@@ -17,25 +17,6 @@ class JsonNotFoundError extends Error {
|
|
|
17
17
|
const CONFIG_PATH = `src/build.config.ts`;
|
|
18
18
|
const CODEGEN_PATH = `codegen`;
|
|
19
19
|
const packageForPath = {};
|
|
20
|
-
function findJson(filename, path = ".", title) {
|
|
21
|
-
path = resolve(path);
|
|
22
|
-
while (true) {
|
|
23
|
-
const json = ignoreErrorSync(
|
|
24
|
-
["ENOENT", "ENOTDIR"],
|
|
25
|
-
() => JSON.parse(readFileSync(resolve(path, filename)).toString())
|
|
26
|
-
);
|
|
27
|
-
if (json) {
|
|
28
|
-
if (title === void 0 || json.name === title) {
|
|
29
|
-
return { root: path, json };
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
const parent = dirname(path);
|
|
33
|
-
if (parent === path) {
|
|
34
|
-
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
35
|
-
}
|
|
36
|
-
path = parent;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
20
|
function isDirectory(path) {
|
|
40
21
|
return !!ignoreErrorSync("ENOENT", () => statSync(path).isDirectory());
|
|
41
22
|
}
|
|
@@ -53,7 +34,7 @@ class Package {
|
|
|
53
34
|
path = ".",
|
|
54
35
|
name
|
|
55
36
|
} = {}) {
|
|
56
|
-
const { root, json } = findJson("package.json", path, name);
|
|
37
|
+
const { root, json } = this.findJson("package.json", path, name);
|
|
57
38
|
this.path = root;
|
|
58
39
|
this.json = json;
|
|
59
40
|
const { esm, cjs } = selectFormats(this.json);
|
|
@@ -73,6 +54,25 @@ class Package {
|
|
|
73
54
|
this.isLibrary = !!(this.json.main || this.json.module || this.json.exports);
|
|
74
55
|
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
75
56
|
}
|
|
57
|
+
findJson(filename, path = this.path, title) {
|
|
58
|
+
path = resolve(path);
|
|
59
|
+
while (true) {
|
|
60
|
+
const json = ignoreErrorSync(
|
|
61
|
+
["ENOENT", "ENOTDIR"],
|
|
62
|
+
() => JSON.parse(readFileSync(resolve(path, filename)).toString())
|
|
63
|
+
);
|
|
64
|
+
if (json) {
|
|
65
|
+
if (title === void 0 || json.name === title) {
|
|
66
|
+
return { root: path, json };
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const parent = dirname(path);
|
|
70
|
+
if (parent === path) {
|
|
71
|
+
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
72
|
+
}
|
|
73
|
+
path = parent;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
76
|
get name() {
|
|
77
77
|
return this.json.name ?? `<${this.path}>`;
|
|
78
78
|
}
|
|
@@ -425,4 +425,4 @@ export {
|
|
|
425
425
|
JsonNotFoundError,
|
|
426
426
|
Package
|
|
427
427
|
};
|
|
428
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcGFja2FnZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jLCByZWFkRmlsZVN5bmMsIHN0YXRTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IHJlYWRkaXIsIHJlYWRGaWxlLCBzdGF0LCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBpZ25vcmVFcnJvciwgaWdub3JlRXJyb3JTeW5jIH0gZnJvbSBcIi4vZXJyb3JzLmpzXCI7XG5pbXBvcnQgeyBpc0ZpbGUsIG1heWJlUmVhZEpzb25TeW5jLCBtYXliZVN0YXRTeW5jIH0gZnJvbSBcIi4vZmlsZS5qc1wiO1xuaW1wb3J0IHsgZ2xvYlN5bmMgfSBmcm9tIFwiLi9nbG9iLmpzXCI7XG5pbXBvcnQgeyBJbXBvcnRBbGlhc2VzIH0gZnJvbSBcIi4vaW1wb3J0LWFsaWFzZXMuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4vcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IHRvb2xzUGF0aCB9IGZyb20gXCIuL3Rvb2xzLXBhdGguY2pzXCI7XG5cbmV4cG9ydCBjbGFzcyBKc29uTm90Rm91bmRFcnJvciBleHRlbmRzIEVycm9yIHt9XG5cbmV4cG9ydCBjb25zdCBDT05GSUdfUEFUSCA9IGBzcmMvYnVpbGQuY29uZmlnLnRzYDtcbmV4cG9ydCBjb25zdCBDT0RFR0VOX1BBVEggPSBgY29kZWdlbmA7XG5cbmNvbnN0IHBhY2thZ2VGb3JQYXRoID0ge30gYXMgUmVjb3JkPHN0cmluZywgUGFja2FnZSB8IHVuZGVmaW5lZCB8IG51bGw+O1xuXG5mdW5jdGlvbiBmaW5kSnNvbihmaWxlbmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmcgPSBcIi5cIiwgdGl0bGU/OiBzdHJpbmcpIHtcbiAgICBwYXRoID0gcmVzb2x2ZShwYXRoKTtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBjb25zdCBqc29uID0gaWdub3JlRXJyb3JTeW5jKFtcIkVOT0VOVFwiLCBcIkVOT1RESVJcIl0sICgpID0+XG4gICAgICAgICAgICBKU09OLnBhcnNlKHJlYWRGaWxlU3luYyhyZXNvbHZlKHBhdGgsIGZpbGVuYW1lKSkudG9TdHJpbmcoKSksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGpzb24pIHtcbiAgICAgICAgICAgIGlmICh0aXRsZSA9PT0gdW5kZWZpbmVkIHx8IGpzb24ubmFtZSA9PT0gdGl0bGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyByb290OiBwYXRoLCBqc29uIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFyZW50ID0gZGlybmFtZShwYXRoKTtcbiAgICAgICAgaWYgKHBhcmVudCA9PT0gcGF0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEpzb25Ob3RGb3VuZEVycm9yKGBDb3VsZCBub3QgbG9jYXRlICR7dGl0bGUgPz8gZmlsZW5hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgcGF0aCA9IHBhcmVudDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGlzRGlyZWN0b3J5KHBhdGg6IHN0cmluZykge1xuICAgIHJldHVybiAhIWlnbm9yZUVycm9yU3luYyhcIkVOT0VOVFwiLCAoKSA9PiBzdGF0U3luYyhwYXRoKS5pc0RpcmVjdG9yeSgpKTtcbn1cblxuZXhwb3J0IGNsYXNzIFBhY2thZ2Uge1xuICAgIHBhdGg6IHN0cmluZztcbiAgICBqc29uOiBQYWNrYWdlSnNvbjtcbiAgICBzdXBwb3J0c0VzbTogYm9vbGVhbjtcbiAgICBzdXBwb3J0c0NqczogYm9vbGVhbjtcbiAgICBoYXNTcmM6IGJvb2xlYW47XG4gICAgaGFzVGVzdHM6IGJvb2xlYW47XG4gICAgaGFzQ29uZmlnOiBib29sZWFuO1xuICAgIGlzTGlicmFyeTogYm9vbGVhbjtcbiAgICAjaW1wb3J0QWxpYXNlcz86IEltcG9ydEFsaWFzZXM7XG5cbiAgICBjb25zdHJ1Y3Rvcih7XG4gICAgICAgIHBhdGggPSBcIi5cIixcbiAgICAgICAgbmFtZSxcbiAgICB9OiB7XG4gICAgICAgIHBhdGg/OiBzdHJpbmc7XG4gICAgICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgfSA9IHt9KSB7XG4gICAgICAgIGNvbnN0IHsgcm9vdCwganNvbiB9ID0gZmluZEpzb24oXCJwYWNrYWdlLmpzb25cIiwgcGF0aCwgbmFtZSk7XG4gICAgICAgIHRoaXMucGF0aCA9IHJvb3Q7XG4gICAgICAgIHRoaXMuanNvbiA9IGpzb247XG5cbiAgICAgICAgY29uc3QgeyBlc20sIGNqcyB9ID0gc2VsZWN0Rm9ybWF0cyh0aGlzLmpzb24pO1xuICAgICAgICB0aGlzLnN1cHBvcnRzRXNtID0gZXNtO1xuICAgICAgICB0aGlzLnN1cHBvcnRzQ2pzID0gY2pzO1xuXG4gICAgICAgIHRoaXMuaGFzU3JjID0gaXNEaXJlY3RvcnkodGhpcy5yZXNvbHZlKFwic3JjXCIpKTtcbiAgICAgICAgdGhpcy5oYXNUZXN0cyA9IGlzRGlyZWN0b3J5KHRoaXMucmVzb2x2ZShcInRlc3RcIikpO1xuXG4gICAgICAgIGNvbnN0IHJlZnMgPSBtYXliZVJlYWRKc29uU3luYyh0aGlzLnJlc29sdmUoXCJ0c2NvbmZpZy5qc29uXCIpKT8ucmVmZXJlbmNlcyBhcyB1bmRlZmluZWQgfCB7IHBhdGg6IHN0cmluZyB9W107XG4gICAgICAgIGlmIChyZWZzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJzcmNcIikpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYXNTcmMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJ0ZXN0XCIpKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzVGVzdHMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNMaWJyYXJ5ID0gISEodGhpcy5qc29uLm1haW4gfHwgdGhpcy5qc29uLm1vZHVsZSB8fCB0aGlzLmpzb24uZXhwb3J0cyk7XG5cbiAgICAgICAgdGhpcy5oYXNDb25maWcgPSB0aGlzLmhhc0ZpbGUodGhpcy5yZXNvbHZlKENPTkZJR19QQVRIKSk7XG4gICAgfVxuXG4gICAgZ2V0IG5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24ubmFtZSA/PyBgPCR7dGhpcy5wYXRofT5gO1xuICAgIH1cblxuICAgIGdldCB2ZXJzaW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5qc29uLnZlcnNpb24gPz8gXCI/XCI7XG4gICAgfVxuXG4gICAgZ2V0IGV4cG9ydHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24uZXhwb3J0cztcbiAgICB9XG5cbiAgICBnZXQgaGFzQ29kZWdlbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzRGlyZWN0b3J5KENPREVHRU5fUEFUSCk7XG4gICAgfVxuXG4gICAgcmVzb2x2ZSguLi5wYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIHJlc29sdmUodGhpcy5wYXRoLCAuLi5wYXRocyk7XG4gICAgfVxuXG4gICAgcmVsYXRpdmUocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiByZWxhdGl2ZSh0aGlzLnBhdGgsIHBhdGgpO1xuICAgIH1cblxuICAgIGFzeW5jIGdsb2IocGF0dGVybjogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgLy8gR2xvYiBvbmx5IHVuZGVyc3RhbmRzIGZvcndhcmQtc2xhc2ggYXMgc2VwYXJhdG9yIGJlY2F1c2UgcmVhc29uc1xuICAgICAgICBpZiAodHlwZW9mIHBhdHRlcm4gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHBhdHRlcm4gPSB0aGlzLnJlc29sdmUocGF0dGVybikucmVwbGFjZSgvXFxcXC9nLCBcIi9cIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXR0ZXJuID0gcGF0dGVybi5tYXAocyA9PiB0aGlzLnJlc29sdmUocykucmVwbGFjZSgvXFxcXC9nLCBcIi9cIikpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3VycmVudCBnbG9iIGltcGxlbWVudGF0aW9uIGlzbid0IGFjdHVhbGx5IGFzeW5jIGFzIHRoaXMgaXMgZmFzdGVyIGFuZCB3ZSBvbmx5IHdhbGsgc21hbGwgZGlyZWN0b3J5IHRyZWVzXG4gICAgICAgIHJldHVybiBnbG9iU3luYyhwYXR0ZXJuKTtcbiAgICB9XG5cbiAgICBzdGFydCh3aGF0OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBuZXcgUHJvZ3Jlc3MoKTtcbiAgICAgICAgcHJvZ3Jlc3Muc3RhcnR1cCh3aGF0LCB0aGlzKTtcbiAgICAgICAgcmV0dXJuIHByb2dyZXNzO1xuICAgIH1cblxuICAgIGFzeW5jIGxhc3RNb2RpZmllZCguLi5wYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHMubWFwKHAgPT4gdGhpcy5yZXNvbHZlKHApKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBsYXN0TW9kaWZpZWRBYnNvbHV0ZShwYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgbGV0IG10aW1lID0gMDtcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBwYXRocy5tYXAoYXN5bmMgcCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhdHMgPSBhd2FpdCBpZ25vcmVFcnJvcihcIkVOT0VOVFwiLCBhc3luYyAoKSA9PiBhd2FpdCBzdGF0KHApKTtcbiAgICAgICAgICAgICAgICBpZiAoIXN0YXRzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgdGhpc010aW1lO1xuICAgICAgICAgICAgICAgIGlmIChzdGF0cy5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGhzID0gKGF3YWl0IHJlYWRkaXIocCkpLm1hcChwMiA9PiByZXNvbHZlKHAsIHAyKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXNNdGltZSA9IGF3YWl0IHRoaXMubGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXNNdGltZSA9IHN0YXRzLm10aW1lTXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGlzTXRpbWUgPiBtdGltZSkge1xuICAgICAgICAgICAgICAgICAgICBtdGltZSA9IHRoaXNNdGltZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIG10aW1lO1xuICAgIH1cblxuICAgIGdldCBkZXBlbmRlbmNpZXMoKSB7XG4gICAgICAgIGxldCByZXN1bHQgPSBBcnJheTxzdHJpbmc+KCk7XG4gICAgICAgIGZvciAoY29uc3QgdHlwZSBvZiBbXCJkZXBlbmRlbmNpZXNcIiwgXCJvcHRpb25hbERlcGVuZGVuY2llc1wiLCBcImRldkRlcGVuZGVuY2llc1wiLCBcInBlZXJEZXBlbmRlbmNpZXNcIl0pIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5qc29uW3R5cGVdID09PSBcIm9iamVjdFwiICYmIHRoaXMuanNvblt0eXBlXSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IFsuLi5yZXN1bHQsIC4uLk9iamVjdC5rZXlzKHRoaXMuanNvblt0eXBlXSldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbLi4ubmV3IFNldChyZXN1bHQpXTtcbiAgICB9XG5cbiAgICBnZXQgd29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gUGFja2FnZS53b3Jrc3BhY2VGb3IodGhpcy5wYXRoKTtcbiAgICB9XG5cbiAgICBnZXQgaXNXb3Jrc3BhY2UoKSB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuanNvbi53b3Jrc3BhY2VzKTtcbiAgICB9XG5cbiAgICBnZXQgcm9vdCgpOiBQYWNrYWdlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLndvcmtzcGFjZTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKCEoZSBpbnN0YW5jZW9mIEpzb25Ob3RGb3VuZEVycm9yKSkge1xuICAgICAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgc3RhdGljIHNldCB3b3JraW5nRGlyKHdkOiBzdHJpbmcpIHtcbiAgICAgICAgd29ya2luZ0RpciA9IHdkO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgd29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy53b3Jrc3BhY2VGb3Iod29ya2luZ0Rpcik7XG4gICAgfVxuXG4gICAgc3RhdGljIHdvcmtzcGFjZUZvcihjd2Q6IHN0cmluZykge1xuICAgICAgICBpZiAoIXdvcmtzcGFjZSkge1xuICAgICAgICAgICAgd29ya3NwYWNlID0gZmluZChjd2QsIHBrZyA9PiBBcnJheS5pc0FycmF5KHBrZy5qc29uLndvcmtzcGFjZXMpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd29ya3NwYWNlO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgdG9vbHMoKSB7XG4gICAgICAgIGlmICghdG9vbHMpIHtcbiAgICAgICAgICAgIHRvb2xzID0gbmV3IFBhY2thZ2UoeyBwYXRoOiB0b29sc1BhdGggfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRvb2xzO1xuICAgIH1cblxuICAgIHN0YXRpYyBmaW5kRXhwb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIHJldHVybiB0aGlzLndvcmtzcGFjZS5yZXNvbHZlSW1wb3J0KG5hbWUsIHR5cGUpO1xuICAgIH1cblxuICAgIHJlc29sdmVFeHBvcnQobmFtZTogc3RyaW5nLCB0eXBlOiBcImNqc1wiIHwgXCJlc21cIiA9IFwiZXNtXCIpIHtcbiAgICAgICAgaWYgKCFuYW1lLnN0YXJ0c1dpdGgoXCIuXCIpKSB7XG4gICAgICAgICAgICBuYW1lID0gYC4vJHtuYW1lfWA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZXhwb3J0RGV0YWlsID0gdHlwZW9mIHRoaXMuZXhwb3J0cyA9PT0gXCJvYmplY3RcIiA/IHRoaXMuZXhwb3J0cz8uW25hbWVdIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIGlmICh0eXBlb2YgZXhwb3J0RGV0YWlsID09PSBcIm9iamVjdFwiKSB7XG4gICAgICAgICAgICBjb25zdCBleHAgPSBmaW5kRXhwb3J0Q29uZGl0aW9uKGV4cG9ydERldGFpbCwgdHlwZSk7XG4gICAgICAgICAgICBpZiAoZXhwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzb2x2ZShleHApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5hbWUgPT09IFwiLlwiKSB7XG4gICAgICAgICAgICBpZiAodHlwZSA9PT0gXCJlc21cIiAmJiB0aGlzLmpzb24ubW9kdWxlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzb2x2ZSh0aGlzLmpzb24ubW9kdWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmpzb24ubWFpbikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc29sdmUodGhpcy5qc29uLm1haW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgcmVzb2x2ZSBleHBvcnQgJHtuYW1lfSBpbiBwYWNrYWdlICR7dGhpcy5uYW1lfWApO1xuICAgIH1cblxuICAgIGZpbmRQYWNrYWdlKG5hbWU6IHN0cmluZykge1xuICAgICAgICBsZXQgcmVzb2x2ZUluID0gdGhpcy5wYXRoO1xuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgaWYgKGlzRGlyZWN0b3J5KHJlc29sdmUocmVzb2x2ZUluLCBcIm5vZGVfbW9kdWxlc1wiLCBuYW1lKSkpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IG5leHRSZXNvbHZlSW4gPSBkaXJuYW1lKHJlc29sdmVJbik7XG4gICAgICAgICAgICBpZiAobmV4dFJlc29sdmVJbiA9PT0gcmVzb2x2ZUluKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBtb2R1bGUgJHtuYW1lfSBmcm9tICR7dGhpcy5wYXRofWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzb2x2ZUluID0gbmV4dFJlc29sdmVJbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQYWNrYWdlLmZvclBhdGgocmVzb2x2ZShyZXNvbHZlSW4sIFwibm9kZV9tb2R1bGVzXCIsIG5hbWUpKTtcbiAgICB9XG5cbiAgICByZXNvbHZlSW1wb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIGNvbnN0IHNlZ21lbnRzID0gbmFtZS5zcGxpdChcIi9cIik7XG4gICAgICAgIGxldCBwYWNrYWdlTmFtZSA9IHNlZ21lbnRzLnNoaWZ0KCkgYXMgc3RyaW5nO1xuICAgICAgICBpZiAocGFja2FnZU5hbWUuc3RhcnRzV2l0aChcIkBcIikgJiYgc2VnbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYWNrYWdlTmFtZSA9IGAke3BhY2thZ2VOYW1lfS8ke3NlZ21lbnRzLnNoaWZ0KCl9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBrZyA9IHRoaXMuZmluZFBhY2thZ2UocGFja2FnZU5hbWUpO1xuXG4gICAgICAgIHJldHVybiBwa2cucmVzb2x2ZUV4cG9ydChzZWdtZW50cy5sZW5ndGggPyBzZWdtZW50cy5qb2luKFwiL1wiKSA6IFwiLlwiLCB0eXBlKTtcbiAgICB9XG5cbiAgICBoYXNGaWxlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gISF0aGlzLiNtYXliZVN0YXQocGF0aCk/LmlzRmlsZSgpO1xuICAgIH1cblxuICAgIGhhc0RpcmVjdG9yeShwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy4jbWF5YmVTdGF0KHBhdGgpPy5pc0RpcmVjdG9yeSgpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlYWRGaWxlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVhZEZpbGUodGhpcy5yZXNvbHZlKHBhdGgpLCBcInV0Zi04XCIpO1xuICAgIH1cblxuICAgIHJlYWRGaWxlU3luYyhwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRGaWxlU3luYyh0aGlzLnJlc29sdmUocGF0aCksIFwidXRmLThcIik7XG4gICAgfVxuXG4gICAgYXN5bmMgd3JpdGVGaWxlKHBhdGg6IHN0cmluZywgY29udGVudHM6IHVua25vd24pIHtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlKHRoaXMucmVzb2x2ZShwYXRoKSwgYCR7Y29udGVudHN9YCk7XG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZSgpIHtcbiAgICAgICAgYXdhaXQgdGhpcy53cml0ZUZpbGUoam9pbih0aGlzLnBhdGgsIFwicGFja2FnZS5qc29uXCIpLCBKU09OLnN0cmluZ2lmeSh0aGlzLmpzb24sIHVuZGVmaW5lZCwgNCkpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlYWRKc29uKHBhdGg6IHN0cmluZykge1xuICAgICAgICBjb25zdCB0ZXh0ID0gYXdhaXQgdGhpcy5yZWFkRmlsZShwYXRoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHRleHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgRXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgZSA9IG5ldyBFcnJvcihgJHtlfWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKGUgYXMgRXJyb3IpLm1lc3NhZ2UgPSBgRXJyb3IgcGFyc2luZyBcIiR7dGhpcy5yZXNvbHZlKHBhdGgpfVwiOiAkeyhlIGFzIEVycm9yKS5tZXNzYWdlfWA7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgd3JpdGVKc29uKHBhdGg6IHN0cmluZywgdmFsdWU6IHt9KSB7XG4gICAgICAgIGF3YWl0IHRoaXMud3JpdGVGaWxlKHBhdGgsIEpTT04uc3RyaW5naWZ5KHZhbHVlLCB1bmRlZmluZWQsIDQpKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgbWF5YmVGb3JQYXRoKHBhdGg6IHN0cmluZykge1xuICAgICAgICBmdW5jdGlvbiBmaW5kKHBhdGg6IHN0cmluZyk6IFBhY2thZ2UgfCBudWxsIHtcbiAgICAgICAgICAgIGxldCByZXN1bHQgPSBwYWNrYWdlRm9yUGF0aFtwYXRoXTtcbiAgICAgICAgICAgIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGlmIChleGlzdHNTeW5jKGpvaW4ocGF0aCwgXCJwYWNrYWdlLmpzb25cIikpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBQYWNrYWdlKHsgcGF0aCB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXJlbnREaXIgPSBkaXJuYW1lKHBhdGgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocGFyZW50RGlyID09PSBwYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBmaW5kKHBhcmVudERpcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBhY2thZ2VGb3JQYXRoW3BhdGhdID0gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGZpbmQocGF0aCk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdCA/PyB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgc3RhdGljIGZvclBhdGgocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubWF5YmVGb3JQYXRoKHBhdGgpO1xuICAgICAgICBpZiAocmVzdWx0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBwYWNrYWdlLmpzb24gZm9yIFwiJHtwYXRofVwiYCk7XG4gICAgfVxuXG4gICAgZ2V0IGltcG9ydEFsaWFzZXMoKTogSW1wb3J0QWxpYXNlcyB7XG4gICAgICAgIGlmICh0aGlzLiNpbXBvcnRBbGlhc2VzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLiNpbXBvcnRBbGlhc2VzO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jaW1wb3J0QWxpYXNlcyA9IG5ldyBJbXBvcnRBbGlhc2VzKFxuICAgICAgICAgICAgdGhpcy5qc29uLmltcG9ydHMsXG4gICAgICAgICAgICBQYWNrYWdlLm1heWJlRm9yUGF0aChkaXJuYW1lKHRoaXMucGF0aCkpPy5pbXBvcnRBbGlhc2VzLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiB0aGlzLiNpbXBvcnRBbGlhc2VzO1xuICAgIH1cblxuICAgIGdldCBtb2R1bGVzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5saXN0TW9kdWxlcyhmYWxzZSk7XG4gICAgfVxuXG4gICAgZ2V0IHNvdXJjZU1vZHVsZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpc3RNb2R1bGVzKHRydWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG1hcCBvZiBtb2R1bGUgbmFtZSAtPiBpbXBsZW1lbnRhdGlvbiBmaWxlLiAgSWYgXCJzb3VyY2VcIiBpcyB0cnVlLCBzZWFyY2hlcyBzb3VyY2UgZmlsZXMgcmF0aGVyIHRoYW5cbiAgICAgKiB0cmFuc3BpbGVkIGZpbGVzLiAgV2UgZG8gdGhpcyByYXRoZXIgdGhhbiBmaW5kaW5nIHRyYW5zcGlsYXRpb24gZmlsZXMgdGhlbiBtYXBwaW5nIHRvIHNvdXJjZSBmaWxlcyBzbyB0aGlzIHdvcmtzXG4gICAgICogZXZlbiBpZiB0aGVyZSBpc24ndCBhIGJ1aWxkLlxuICAgICAqL1xuICAgIGxpc3RNb2R1bGVzKHNvdXJjZTogYm9vbGVhbiwgLi4uY29uZGl0aW9uczogc3RyaW5nW10pIHtcbiAgICAgICAgaWYgKCFjb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uZGl0aW9ucyA9IFt0aGlzLnN1cHBvcnRzRXNtID8gXCJpbXBvcnRcIiA6IFwicmVxdWlyZVwiLCBcImRlZmF1bHRcIl07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb2R1bGVzID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAgICAgICBjb25zdCBleHBvcnRzID0gdGhpcy5leHBvcnRzO1xuICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIgJiYgZXhwb3J0cyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgZmluZE1vZHVsZXMoc291cmNlLCBuZXcgU2V0KGNvbmRpdGlvbnMpLCBtb2R1bGVzLCB0aGlzLm5hbWUsIHRoaXMucGF0aCwgZXhwb3J0cyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbW9kdWxlcztcbiAgICB9XG5cbiAgICAjbWF5YmVTdGF0KHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gbWF5YmVTdGF0U3luYyh0aGlzLnJlc29sdmUocGF0aCkpO1xuICAgIH1cbn1cblxuZXhwb3J0IHR5cGUgUGFja2FnZUpzb24gPSB7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2ZXJzaW9uPzogc3RyaW5nO1xuICAgIGltcG9ydHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIG1hdHRlcj86IHtcbiAgICAgICAgdGVzdD86IGJvb2xlYW47XG4gICAgfTtcbiAgICBzY3JpcHRzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBleHBvcnRzPzogRXhwb3J0cztcbiAgICBtb2R1bGU/OiBzdHJpbmc7XG4gICAgbWFpbj86IHN0cmluZztcbiAgICB3b3Jrc3BhY2VzPzogQXJyYXk8c3RyaW5nPjtcbiAgICBkZXBlbmRlbmNpZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIGRldkRlcGVuZGVuY2llcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn07XG5cbmxldCB3b3JraW5nRGlyID0gXCIuXCI7XG5sZXQgd29ya3NwYWNlOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xubGV0IHRvb2xzOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xuXG5mdW5jdGlvbiBmaW5kKHN0YXJ0RGlyOiBzdHJpbmcsIHNlbGVjdG9yOiAocGtnOiBQYWNrYWdlKSA9PiBib29sZWFuKTogUGFja2FnZSB7XG4gICAgbGV0IHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogc3RhcnREaXIgfSk7XG4gICAgd2hpbGUgKCFzZWxlY3Rvcihwa2cpKSB7XG4gICAgICAgIHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogZGlybmFtZShwa2cucGF0aCkgfSk7XG4gICAgfVxuICAgIHJldHVybiBwa2c7XG59XG5cbmZ1bmN0aW9uIHNlbGVjdEZvcm1hdHMoanNvbjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBsZXQgZXNtOiBib29sZWFuLCBjanM6IGJvb2xlYW47XG5cbiAgICBpZiAodHlwZW9mIGpzb24gIT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBhY2thZ2UgSlNPTiAke3R5cGVvZiBqc29ufWApO1xuICAgIH1cblxuICAgIGlmIChqc29uLnR5cGUgPT09IFwibW9kdWxlXCIpIHtcbiAgICAgICAgZXNtID0gdHJ1ZTtcbiAgICAgICAgY2pzID1cbiAgICAgICAgICAgIChqc29uLm1haW4gIT09IHVuZGVmaW5lZCAmJiBqc29uLm1vZHVsZSAhPT0gdW5kZWZpbmVkKSB8fFxuICAgICAgICAgICAgISFPYmplY3QudmFsdWVzKGpzb24uZXhwb3J0cyA/PyB7fSkuZmluZCgoZXhwOiBhbnkpID0+IGV4cC5yZXF1aXJlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjanMgPSB0cnVlO1xuICAgICAgICBlc20gPSAhIWpzb24ubW9kdWxlIHx8ICEhT2JqZWN0LnZhbHVlcyhqc29uLmV4cG9ydHMgPz8ge30pLmZpbmQoKGV4cDogYW55KSA9PiBleHAuaW1wb3J0KTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBlc20sIGNqcyB9O1xufVxuXG5mdW5jdGlvbiBmaW5kRXhwb3J0Q29uZGl0aW9uKGRldGFpbDogUmVjb3JkPHN0cmluZywgYW55PiwgdHlwZTogXCJlc21cIiB8IFwiY2pzXCIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0eXBlID09PSBcImVzbVwiICYmIGRldGFpbC5pbXBvcnQpIHtcbiAgICAgICAgbGV0IGV4cCA9IGRldGFpbC5pbXBvcnQ7XG4gICAgICAgIGlmIChleHAgJiYgdHlwZW9mIGV4cCAhPT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgZXhwID0gZmluZEV4cG9ydENvbmRpdGlvbihleHAsIHR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChleHApIHtcbiAgICAgICAgICAgIHJldHVybiBleHA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgZXhwID0gZGV0YWlsLnJlcXVpcmUgPz8gZGV0YWlsLm5vZGUgPz8gZGV0YWlsLmRlZmF1bHQ7XG4gICAgaWYgKGV4cCAmJiB0eXBlb2YgZXhwICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGV4cCA9IGZpbmRFeHBvcnRDb25kaXRpb24oZXhwLCB0eXBlKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGV4cCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICByZXR1cm4gZXhwO1xuICAgIH1cbn1cblxudHlwZSBDb25kaXRpb25zID0geyBbbmFtZTogc3RyaW5nXTogRXhwb3J0cyB9O1xuXG50eXBlIEV4cG9ydHMgPSBzdHJpbmcgfCBDb25kaXRpb25zIHwgUmVjb3JkPHN0cmluZywgQ29uZGl0aW9ucz47XG5cbmZ1bmN0aW9uIGZpbmRNb2R1bGVzKFxuICAgIHNvdXJjZTogYm9vbGVhbixcbiAgICBjb25kaXRpb25zOiBTZXQ8c3RyaW5nPixcbiAgICB0YXJnZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICAgcHJlZml4OiBzdHJpbmcsXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGV4cG9ydHM/OiBFeHBvcnRzLFxuKSB7XG4gICAgaWYgKHR5cGVvZiBleHBvcnRzID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGFkZE1vZHVsZUdsb2JzKHNvdXJjZSwgdGFyZ2V0LCBwcmVmaXgsIHBhdGgsIGV4cG9ydHMpO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShleHBvcnRzKSkge1xuICAgICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGV4cG9ydHMpIHtcbiAgICAgICAgICAgIGZpbmRNb2R1bGVzKHNvdXJjZSwgY29uZGl0aW9ucywgdGFyZ2V0LCBwcmVmaXgsIHBhdGgsIGVudHJ5KTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIgJiYgZXhwb3J0cyAhPT0gbnVsbCkge1xuICAgICAgICBsZXQgc2VsZWN0ZWRDb25kaXRpb24gPSBmYWxzZTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gZXhwb3J0cykge1xuICAgICAgICAgICAgaWYgKGtleS5zdGFydHNXaXRoKFwiLlwiKSkge1xuICAgICAgICAgICAgICAgIGZpbmRNb2R1bGVzKHNvdXJjZSwgY29uZGl0aW9ucywgdGFyZ2V0LCBqb2luKHByZWZpeCwga2V5KSwgcGF0aCwgZXhwb3J0c1trZXldKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXNlbGVjdGVkQ29uZGl0aW9uICYmIGNvbmRpdGlvbnMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgICBmaW5kTW9kdWxlcyhzb3VyY2UsIGNvbmRpdGlvbnMsIHRhcmdldCwgcHJlZml4LCBwYXRoLCBleHBvcnRzW2tleV0pO1xuICAgICAgICAgICAgICAgIHNlbGVjdGVkQ29uZGl0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1hbGZvcm1lZCBleHBvcnRzIGZpZWxkIGluIHBhY2thZ2UuanNvblwiKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGFkZE1vZHVsZUdsb2JzKHNvdXJjZTogYm9vbGVhbiwgdGFyZ2V0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIGJhc2U6IHN0cmluZywgcGF0dGVybjogc3RyaW5nKSB7XG4gICAgbGV0IHBhdGggPSBqb2luKGJhc2UsIHBhdHRlcm4pO1xuICAgIGlmIChzb3VyY2UpIHtcbiAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXFwvZGlzdFxcLyg/OmVzbXxjanMpXFwvLywgXCIvc3JjL1wiKTtcbiAgICB9XG5cbiAgICBpZiAobmFtZS5pbmNsdWRlcyhcIipcIikpIHtcbiAgICAgICAgLy8gV2lsZGNhcmRcbiAgICAgICAgaWYgKCFuYW1lLmVuZHNXaXRoKFwiLypcIikpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgV2lsZGNhcmQgaW4gbW9kdWxlICR7bmFtZX0gZG9lcyBub3QgYXBwZWFyIGFzIGZpbmFsIHBhdGggc2VnbWVudGApO1xuICAgICAgICB9XG5cbiAgICAgICAgbmFtZSA9IG5hbWUuc3Vic3RyaW5nKDAsIG5hbWUubGVuZ3RoIC0gMik7XG4gICAgICAgIGNvbnN0IHBhdGhzID0gZ2xvYlN5bmMoc291cmNlID8gcGF0aC5yZXBsYWNlKC9cXC5qcyQvLCBcIi57dHMsanMsY2pzLG1qc31cIikgOiBwYXRoKTtcbiAgICAgICAgaWYgKCFwYXRocy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbWF0Y2ggZm9yIG1vZHVsZSAke25hbWV9IHBhdHRlcm4gJHtwYXR0ZXJufWApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgW3ByZWZpeCwgc3VmZml4XSA9IHBhdGguc3BsaXQoL1xcKisvKTtcbiAgICAgICAgY29uc3QgcHJlZml4TGVuZ3RoID0gcHJlZml4ID09PSB1bmRlZmluZWQgPyAwIDogcHJlZml4Lmxlbmd0aDtcbiAgICAgICAgY29uc3Qgc3VmZml4TGVuZ3RoID0gc3VmZml4ID09PSB1bmRlZmluZWQgPyAwIDogc3VmZml4Lmxlbmd0aDtcblxuICAgICAgICBmb3IgKGNvbnN0IHRoaXNQYXRoIG9mIHBhdGhzKSB7XG4gICAgICAgICAgICBjb25zdCBxdWFsaWZpZXIgPSB0aGlzUGF0aC5zdWJzdHJpbmcocHJlZml4TGVuZ3RoLCB0aGlzUGF0aC5sZW5ndGggLSBzdWZmaXhMZW5ndGgpO1xuICAgICAgICAgICAgY29uc3QgdGhpc05hbWUgPSBqb2luKG5hbWUsIHF1YWxpZmllcik7XG4gICAgICAgICAgICB0YXJnZXRbdGhpc05hbWVdID0gdGhpc1BhdGg7XG4gICAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHBhdGguaW5jbHVkZXMoXCIqXCIpKSB7XG4gICAgICAgIC8vIEEgd2lsZGNhcmQgcGF0aCBpcyBvbmx5IHZhbGlkIHdpdGggd2lsZGNhcmQgbmFtZVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpbGRjYXJkIGluIG1vZHVsZSBwYXRoIFwiJHtwYXRofVwiIGJ1dCBub3QgaW4gbW9kdWxlIFwiJHtuYW1lfVwiYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gd2lsZGNhcmQgLS0gcmVtb3ZlIGRpcmVjdG9yeVxuICAgICAgICBuYW1lID0gbmFtZS5yZXBsYWNlKC9cXC8oPzpleHBvcnR8aW5kZXgpJC8sIFwiXCIpO1xuXG4gICAgICAgIC8vIExvb2sgZm9yIHNvdXJjZSBpZiBmaWxlIGlzbid0IHByZXNlbnRcbiAgICAgICAgbGV0IGZvdW5kID0gZmFsc2U7XG4gICAgICAgIGlmIChpc0ZpbGUocGF0aCkpIHtcbiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIGlmIChzb3VyY2UgJiYgcGF0aC5lbmRzV2l0aChcIi5qc1wiKSkge1xuICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXFwuanMkLywgXCIudHNcIik7XG4gICAgICAgICAgICBpZiAoaXNGaWxlKHBhdGgpKSB7XG4gICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNb2R1bGUgXCIke25hbWV9XCIgcGF0aCBcIiR7cGF0aH1cIiBub3QgZm91bmRgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhcmdldFtuYW1lXSA9IHBhdGg7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsWUFBWSxjQUFjLGdCQUFnQjtBQUNuRCxTQUFTLFNBQVMsVUFBVSxNQUFNLGlCQUFpQjtBQUNuRCxTQUFTLFNBQVMsTUFBTSxVQUFVLGVBQWU7QUFDakQsU0FBUyxhQUFhLHVCQUF1QjtBQUM3QyxTQUFTLFFBQVEsbUJBQW1CLHFCQUFxQjtBQUN6RCxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLHFCQUFxQjtBQUM5QixTQUFTLGdCQUFnQjtBQUN6QixTQUFTLGlCQUFpQjtBQUVuQixNQUFNLDBCQUEwQixNQUFNO0FBQUM7QUFFdkMsTUFBTSxjQUFjO0FBQ3BCLE1BQU0sZUFBZTtBQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXhCLFNBQVMsU0FBUyxVQUFrQixPQUFlLEtBQUssT0FBZ0I7QUFDcEUsU0FBTyxRQUFRLElBQUk7QUFDbkIsU0FBTyxNQUFNO0FBQ1QsVUFBTSxPQUFPO0FBQUEsTUFBZ0IsQ0FBQyxVQUFVLFNBQVM7QUFBQSxNQUFHLE1BQ2hELEtBQUssTUFBTSxhQUFhLFFBQVEsTUFBTSxRQUFRLENBQUMsRUFBRSxTQUFTLENBQUM7QUFBQSxJQUMvRDtBQUVBLFFBQUksTUFBTTtBQUNOLFVBQUksVUFBVSxVQUFhLEtBQUssU0FBUyxPQUFPO0FBQzVDLGVBQU8sRUFBRSxNQUFNLE1BQU0sS0FBSztBQUFBLE1BQzlCO0FBQUEsSUFDSjtBQUNBLFVBQU0sU0FBUyxRQUFRLElBQUk7QUFDM0IsUUFBSSxXQUFXLE1BQU07QUFDakIsWUFBTSxJQUFJLGtCQUFrQixvQkFBb0IsU0FBUyxRQUFRLEVBQUU7QUFBQSxJQUN2RTtBQUNBLFdBQU87QUFBQSxFQUNYO0FBQ0o7QUFFQSxTQUFTLFlBQVksTUFBYztBQUMvQixTQUFPLENBQUMsQ0FBQyxnQkFBZ0IsVUFBVSxNQUFNLFNBQVMsSUFBSSxF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
|
|
428
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcGFja2FnZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jLCByZWFkRmlsZVN5bmMsIHN0YXRTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IHJlYWRkaXIsIHJlYWRGaWxlLCBzdGF0LCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBpZ25vcmVFcnJvciwgaWdub3JlRXJyb3JTeW5jIH0gZnJvbSBcIi4vZXJyb3JzLmpzXCI7XG5pbXBvcnQgeyBpc0ZpbGUsIG1heWJlUmVhZEpzb25TeW5jLCBtYXliZVN0YXRTeW5jIH0gZnJvbSBcIi4vZmlsZS5qc1wiO1xuaW1wb3J0IHsgZ2xvYlN5bmMgfSBmcm9tIFwiLi9nbG9iLmpzXCI7XG5pbXBvcnQgeyBJbXBvcnRBbGlhc2VzIH0gZnJvbSBcIi4vaW1wb3J0LWFsaWFzZXMuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4vcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IHRvb2xzUGF0aCB9IGZyb20gXCIuL3Rvb2xzLXBhdGguY2pzXCI7XG5cbmV4cG9ydCBjbGFzcyBKc29uTm90Rm91bmRFcnJvciBleHRlbmRzIEVycm9yIHt9XG5cbmV4cG9ydCBjb25zdCBDT05GSUdfUEFUSCA9IGBzcmMvYnVpbGQuY29uZmlnLnRzYDtcbmV4cG9ydCBjb25zdCBDT0RFR0VOX1BBVEggPSBgY29kZWdlbmA7XG5cbmNvbnN0IHBhY2thZ2VGb3JQYXRoID0ge30gYXMgUmVjb3JkPHN0cmluZywgUGFja2FnZSB8IHVuZGVmaW5lZCB8IG51bGw+O1xuXG5mdW5jdGlvbiBpc0RpcmVjdG9yeShwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gISFpZ25vcmVFcnJvclN5bmMoXCJFTk9FTlRcIiwgKCkgPT4gc3RhdFN5bmMocGF0aCkuaXNEaXJlY3RvcnkoKSk7XG59XG5cbmV4cG9ydCBjbGFzcyBQYWNrYWdlIHtcbiAgICBwYXRoOiBzdHJpbmc7XG4gICAganNvbjogUGFja2FnZUpzb247XG4gICAgc3VwcG9ydHNFc206IGJvb2xlYW47XG4gICAgc3VwcG9ydHNDanM6IGJvb2xlYW47XG4gICAgaGFzU3JjOiBib29sZWFuO1xuICAgIGhhc1Rlc3RzOiBib29sZWFuO1xuICAgIGhhc0NvbmZpZzogYm9vbGVhbjtcbiAgICBpc0xpYnJhcnk6IGJvb2xlYW47XG4gICAgI2ltcG9ydEFsaWFzZXM/OiBJbXBvcnRBbGlhc2VzO1xuXG4gICAgY29uc3RydWN0b3Ioe1xuICAgICAgICBwYXRoID0gXCIuXCIsXG4gICAgICAgIG5hbWUsXG4gICAgfToge1xuICAgICAgICBwYXRoPzogc3RyaW5nO1xuICAgICAgICBuYW1lPzogc3RyaW5nO1xuICAgIH0gPSB7fSkge1xuICAgICAgICBjb25zdCB7IHJvb3QsIGpzb24gfSA9IHRoaXMuZmluZEpzb24oXCJwYWNrYWdlLmpzb25cIiwgcGF0aCwgbmFtZSk7XG4gICAgICAgIHRoaXMucGF0aCA9IHJvb3Q7XG4gICAgICAgIHRoaXMuanNvbiA9IGpzb247XG5cbiAgICAgICAgY29uc3QgeyBlc20sIGNqcyB9ID0gc2VsZWN0Rm9ybWF0cyh0aGlzLmpzb24pO1xuICAgICAgICB0aGlzLnN1cHBvcnRzRXNtID0gZXNtO1xuICAgICAgICB0aGlzLnN1cHBvcnRzQ2pzID0gY2pzO1xuXG4gICAgICAgIHRoaXMuaGFzU3JjID0gaXNEaXJlY3RvcnkodGhpcy5yZXNvbHZlKFwic3JjXCIpKTtcbiAgICAgICAgdGhpcy5oYXNUZXN0cyA9IGlzRGlyZWN0b3J5KHRoaXMucmVzb2x2ZShcInRlc3RcIikpO1xuXG4gICAgICAgIGNvbnN0IHJlZnMgPSBtYXliZVJlYWRKc29uU3luYyh0aGlzLnJlc29sdmUoXCJ0c2NvbmZpZy5qc29uXCIpKT8ucmVmZXJlbmNlcyBhcyB1bmRlZmluZWQgfCB7IHBhdGg6IHN0cmluZyB9W107XG4gICAgICAgIGlmIChyZWZzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJzcmNcIikpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYXNTcmMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJ0ZXN0XCIpKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzVGVzdHMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNMaWJyYXJ5ID0gISEodGhpcy5qc29uLm1haW4gfHwgdGhpcy5qc29uLm1vZHVsZSB8fCB0aGlzLmpzb24uZXhwb3J0cyk7XG5cbiAgICAgICAgdGhpcy5oYXNDb25maWcgPSB0aGlzLmhhc0ZpbGUodGhpcy5yZXNvbHZlKENPTkZJR19QQVRIKSk7XG4gICAgfVxuXG4gICAgZmluZEpzb24oZmlsZW5hbWU6IHN0cmluZywgcGF0aDogc3RyaW5nID0gdGhpcy5wYXRoLCB0aXRsZT86IHN0cmluZykge1xuICAgICAgICBwYXRoID0gcmVzb2x2ZShwYXRoKTtcbiAgICAgICAgd2hpbGUgKHRydWUpIHtcbiAgICAgICAgICAgIGNvbnN0IGpzb24gPSBpZ25vcmVFcnJvclN5bmMoW1wiRU5PRU5UXCIsIFwiRU5PVERJUlwiXSwgKCkgPT5cbiAgICAgICAgICAgICAgICBKU09OLnBhcnNlKHJlYWRGaWxlU3luYyhyZXNvbHZlKHBhdGgsIGZpbGVuYW1lKSkudG9TdHJpbmcoKSksXG4gICAgICAgICAgICApO1xuXG4gICAgICAgICAgICBpZiAoanNvbikge1xuICAgICAgICAgICAgICAgIGlmICh0aXRsZSA9PT0gdW5kZWZpbmVkIHx8IGpzb24ubmFtZSA9PT0gdGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgcm9vdDogcGF0aCwganNvbiB9O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHBhcmVudCA9IGRpcm5hbWUocGF0aCk7XG4gICAgICAgICAgICBpZiAocGFyZW50ID09PSBwYXRoKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEpzb25Ob3RGb3VuZEVycm9yKGBDb3VsZCBub3QgbG9jYXRlICR7dGl0bGUgPz8gZmlsZW5hbWV9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwYXRoID0gcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IG5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24ubmFtZSA/PyBgPCR7dGhpcy5wYXRofT5gO1xuICAgIH1cblxuICAgIGdldCB2ZXJzaW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5qc29uLnZlcnNpb24gPz8gXCI/XCI7XG4gICAgfVxuXG4gICAgZ2V0IGV4cG9ydHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24uZXhwb3J0cztcbiAgICB9XG5cbiAgICBnZXQgaGFzQ29kZWdlbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzRGlyZWN0b3J5KENPREVHRU5fUEFUSCk7XG4gICAgfVxuXG4gICAgcmVzb2x2ZSguLi5wYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIHJlc29sdmUodGhpcy5wYXRoLCAuLi5wYXRocyk7XG4gICAgfVxuXG4gICAgcmVsYXRpdmUocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiByZWxhdGl2ZSh0aGlzLnBhdGgsIHBhdGgpO1xuICAgIH1cblxuICAgIGFzeW5jIGdsb2IocGF0dGVybjogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgLy8gR2xvYiBvbmx5IHVuZGVyc3RhbmRzIGZvcndhcmQtc2xhc2ggYXMgc2VwYXJhdG9yIGJlY2F1c2UgcmVhc29uc1xuICAgICAgICBpZiAodHlwZW9mIHBhdHRlcm4gPT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgIHBhdHRlcm4gPSB0aGlzLnJlc29sdmUocGF0dGVybikucmVwbGFjZSgvXFxcXC9nLCBcIi9cIik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXR0ZXJuID0gcGF0dGVybi5tYXAocyA9PiB0aGlzLnJlc29sdmUocykucmVwbGFjZSgvXFxcXC9nLCBcIi9cIikpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3VycmVudCBnbG9iIGltcGxlbWVudGF0aW9uIGlzbid0IGFjdHVhbGx5IGFzeW5jIGFzIHRoaXMgaXMgZmFzdGVyIGFuZCB3ZSBvbmx5IHdhbGsgc21hbGwgZGlyZWN0b3J5IHRyZWVzXG4gICAgICAgIHJldHVybiBnbG9iU3luYyhwYXR0ZXJuKTtcbiAgICB9XG5cbiAgICBzdGFydCh3aGF0OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBuZXcgUHJvZ3Jlc3MoKTtcbiAgICAgICAgcHJvZ3Jlc3Muc3RhcnR1cCh3aGF0LCB0aGlzKTtcbiAgICAgICAgcmV0dXJuIHByb2dyZXNzO1xuICAgIH1cblxuICAgIGFzeW5jIGxhc3RNb2RpZmllZCguLi5wYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHMubWFwKHAgPT4gdGhpcy5yZXNvbHZlKHApKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhc3luYyBsYXN0TW9kaWZpZWRBYnNvbHV0ZShwYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgbGV0IG10aW1lID0gMDtcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBwYXRocy5tYXAoYXN5bmMgcCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhdHMgPSBhd2FpdCBpZ25vcmVFcnJvcihcIkVOT0VOVFwiLCBhc3luYyAoKSA9PiBhd2FpdCBzdGF0KHApKTtcbiAgICAgICAgICAgICAgICBpZiAoIXN0YXRzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBsZXQgdGhpc010aW1lO1xuICAgICAgICAgICAgICAgIGlmIChzdGF0cy5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhdGhzID0gKGF3YWl0IHJlYWRkaXIocCkpLm1hcChwMiA9PiByZXNvbHZlKHAsIHAyKSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXNNdGltZSA9IGF3YWl0IHRoaXMubGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXNNdGltZSA9IHN0YXRzLm10aW1lTXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0aGlzTXRpbWUgPiBtdGltZSkge1xuICAgICAgICAgICAgICAgICAgICBtdGltZSA9IHRoaXNNdGltZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIG10aW1lO1xuICAgIH1cblxuICAgIGdldCBkZXBlbmRlbmNpZXMoKSB7XG4gICAgICAgIGxldCByZXN1bHQgPSBBcnJheTxzdHJpbmc+KCk7XG4gICAgICAgIGZvciAoY29uc3QgdHlwZSBvZiBbXCJkZXBlbmRlbmNpZXNcIiwgXCJvcHRpb25hbERlcGVuZGVuY2llc1wiLCBcImRldkRlcGVuZGVuY2llc1wiLCBcInBlZXJEZXBlbmRlbmNpZXNcIl0pIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5qc29uW3R5cGVdID09PSBcIm9iamVjdFwiICYmIHRoaXMuanNvblt0eXBlXSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IFsuLi5yZXN1bHQsIC4uLk9iamVjdC5rZXlzKHRoaXMuanNvblt0eXBlXSldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbLi4ubmV3IFNldChyZXN1bHQpXTtcbiAgICB9XG5cbiAgICBnZXQgd29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gUGFja2FnZS53b3Jrc3BhY2VGb3IodGhpcy5wYXRoKTtcbiAgICB9XG5cbiAgICBnZXQgaXNXb3Jrc3BhY2UoKSB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHRoaXMuanNvbi53b3Jrc3BhY2VzKTtcbiAgICB9XG5cbiAgICBnZXQgcm9vdCgpOiBQYWNrYWdlIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLndvcmtzcGFjZTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKCEoZSBpbnN0YW5jZW9mIEpzb25Ob3RGb3VuZEVycm9yKSkge1xuICAgICAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgc3RhdGljIHNldCB3b3JraW5nRGlyKHdkOiBzdHJpbmcpIHtcbiAgICAgICAgd29ya2luZ0RpciA9IHdkO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgd29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy53b3Jrc3BhY2VGb3Iod29ya2luZ0Rpcik7XG4gICAgfVxuXG4gICAgc3RhdGljIHdvcmtzcGFjZUZvcihjd2Q6IHN0cmluZykge1xuICAgICAgICBpZiAoIXdvcmtzcGFjZSkge1xuICAgICAgICAgICAgd29ya3NwYWNlID0gZmluZChjd2QsIHBrZyA9PiBBcnJheS5pc0FycmF5KHBrZy5qc29uLndvcmtzcGFjZXMpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gd29ya3NwYWNlO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXQgdG9vbHMoKSB7XG4gICAgICAgIGlmICghdG9vbHMpIHtcbiAgICAgICAgICAgIHRvb2xzID0gbmV3IFBhY2thZ2UoeyBwYXRoOiB0b29sc1BhdGggfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRvb2xzO1xuICAgIH1cblxuICAgIHN0YXRpYyBmaW5kRXhwb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIHJldHVybiB0aGlzLndvcmtzcGFjZS5yZXNvbHZlSW1wb3J0KG5hbWUsIHR5cGUpO1xuICAgIH1cblxuICAgIHJlc29sdmVFeHBvcnQobmFtZTogc3RyaW5nLCB0eXBlOiBcImNqc1wiIHwgXCJlc21cIiA9IFwiZXNtXCIpIHtcbiAgICAgICAgaWYgKCFuYW1lLnN0YXJ0c1dpdGgoXCIuXCIpKSB7XG4gICAgICAgICAgICBuYW1lID0gYC4vJHtuYW1lfWA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZXhwb3J0RGV0YWlsID0gdHlwZW9mIHRoaXMuZXhwb3J0cyA9PT0gXCJvYmplY3RcIiA/IHRoaXMuZXhwb3J0cz8uW25hbWVdIDogdW5kZWZpbmVkO1xuXG4gICAgICAgIGlmICh0eXBlb2YgZXhwb3J0RGV0YWlsID09PSBcIm9iamVjdFwiKSB7XG4gICAgICAgICAgICBjb25zdCBleHAgPSBmaW5kRXhwb3J0Q29uZGl0aW9uKGV4cG9ydERldGFpbCwgdHlwZSk7XG4gICAgICAgICAgICBpZiAoZXhwKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzb2x2ZShleHApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG5hbWUgPT09IFwiLlwiKSB7XG4gICAgICAgICAgICBpZiAodHlwZSA9PT0gXCJlc21cIiAmJiB0aGlzLmpzb24ubW9kdWxlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzb2x2ZSh0aGlzLmpzb24ubW9kdWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aGlzLmpzb24ubWFpbikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc29sdmUodGhpcy5qc29uLm1haW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgcmVzb2x2ZSBleHBvcnQgJHtuYW1lfSBpbiBwYWNrYWdlICR7dGhpcy5uYW1lfWApO1xuICAgIH1cblxuICAgIGZpbmRQYWNrYWdlKG5hbWU6IHN0cmluZykge1xuICAgICAgICBsZXQgcmVzb2x2ZUluID0gdGhpcy5wYXRoO1xuICAgICAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICAgICAgaWYgKGlzRGlyZWN0b3J5KHJlc29sdmUocmVzb2x2ZUluLCBcIm5vZGVfbW9kdWxlc1wiLCBuYW1lKSkpIHtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IG5leHRSZXNvbHZlSW4gPSBkaXJuYW1lKHJlc29sdmVJbik7XG4gICAgICAgICAgICBpZiAobmV4dFJlc29sdmVJbiA9PT0gcmVzb2x2ZUluKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBtb2R1bGUgJHtuYW1lfSBmcm9tICR7dGhpcy5wYXRofWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzb2x2ZUluID0gbmV4dFJlc29sdmVJbjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQYWNrYWdlLmZvclBhdGgocmVzb2x2ZShyZXNvbHZlSW4sIFwibm9kZV9tb2R1bGVzXCIsIG5hbWUpKTtcbiAgICB9XG5cbiAgICByZXNvbHZlSW1wb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIGNvbnN0IHNlZ21lbnRzID0gbmFtZS5zcGxpdChcIi9cIik7XG4gICAgICAgIGxldCBwYWNrYWdlTmFtZSA9IHNlZ21lbnRzLnNoaWZ0KCkgYXMgc3RyaW5nO1xuICAgICAgICBpZiAocGFja2FnZU5hbWUuc3RhcnRzV2l0aChcIkBcIikgJiYgc2VnbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYWNrYWdlTmFtZSA9IGAke3BhY2thZ2VOYW1lfS8ke3NlZ21lbnRzLnNoaWZ0KCl9YDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBrZyA9IHRoaXMuZmluZFBhY2thZ2UocGFja2FnZU5hbWUpO1xuXG4gICAgICAgIHJldHVybiBwa2cucmVzb2x2ZUV4cG9ydChzZWdtZW50cy5sZW5ndGggPyBzZWdtZW50cy5qb2luKFwiL1wiKSA6IFwiLlwiLCB0eXBlKTtcbiAgICB9XG5cbiAgICBoYXNGaWxlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gISF0aGlzLiNtYXliZVN0YXQocGF0aCk/LmlzRmlsZSgpO1xuICAgIH1cblxuICAgIGhhc0RpcmVjdG9yeShwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy4jbWF5YmVTdGF0KHBhdGgpPy5pc0RpcmVjdG9yeSgpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlYWRGaWxlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVhZEZpbGUodGhpcy5yZXNvbHZlKHBhdGgpLCBcInV0Zi04XCIpO1xuICAgIH1cblxuICAgIHJlYWRGaWxlU3luYyhwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHJlYWRGaWxlU3luYyh0aGlzLnJlc29sdmUocGF0aCksIFwidXRmLThcIik7XG4gICAgfVxuXG4gICAgYXN5bmMgd3JpdGVGaWxlKHBhdGg6IHN0cmluZywgY29udGVudHM6IHVua25vd24pIHtcbiAgICAgICAgYXdhaXQgd3JpdGVGaWxlKHRoaXMucmVzb2x2ZShwYXRoKSwgYCR7Y29udGVudHN9YCk7XG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZSgpIHtcbiAgICAgICAgYXdhaXQgdGhpcy53cml0ZUZpbGUoam9pbih0aGlzLnBhdGgsIFwicGFja2FnZS5qc29uXCIpLCBKU09OLnN0cmluZ2lmeSh0aGlzLmpzb24sIHVuZGVmaW5lZCwgNCkpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlYWRKc29uKHBhdGg6IHN0cmluZykge1xuICAgICAgICBjb25zdCB0ZXh0ID0gYXdhaXQgdGhpcy5yZWFkRmlsZShwYXRoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHRleHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBpZiAoIShlIGluc3RhbmNlb2YgRXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgZSA9IG5ldyBFcnJvcihgJHtlfWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKGUgYXMgRXJyb3IpLm1lc3NhZ2UgPSBgRXJyb3IgcGFyc2luZyBcIiR7dGhpcy5yZXNvbHZlKHBhdGgpfVwiOiAkeyhlIGFzIEVycm9yKS5tZXNzYWdlfWA7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgd3JpdGVKc29uKHBhdGg6IHN0cmluZywgdmFsdWU6IHt9KSB7XG4gICAgICAgIGF3YWl0IHRoaXMud3JpdGVGaWxlKHBhdGgsIEpTT04uc3RyaW5naWZ5KHZhbHVlLCB1bmRlZmluZWQsIDQpKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgbWF5YmVGb3JQYXRoKHBhdGg6IHN0cmluZykge1xuICAgICAgICBmdW5jdGlvbiBmaW5kKHBhdGg6IHN0cmluZyk6IFBhY2thZ2UgfCBudWxsIHtcbiAgICAgICAgICAgIGxldCByZXN1bHQgPSBwYWNrYWdlRm9yUGF0aFtwYXRoXTtcbiAgICAgICAgICAgIGlmIChyZXN1bHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGlmIChleGlzdHNTeW5jKGpvaW4ocGF0aCwgXCJwYWNrYWdlLmpzb25cIikpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IG5ldyBQYWNrYWdlKHsgcGF0aCB9KTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXJlbnREaXIgPSBkaXJuYW1lKHBhdGgpO1xuICAgICAgICAgICAgICAgICAgICBpZiAocGFyZW50RGlyID09PSBwYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBmaW5kKHBhcmVudERpcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHBhY2thZ2VGb3JQYXRoW3BhdGhdID0gcmVzdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGZpbmQocGF0aCk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdCA/PyB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgc3RhdGljIGZvclBhdGgocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMubWF5YmVGb3JQYXRoKHBhdGgpO1xuICAgICAgICBpZiAocmVzdWx0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgZmluZCBwYWNrYWdlLmpzb24gZm9yIFwiJHtwYXRofVwiYCk7XG4gICAgfVxuXG4gICAgZ2V0IGltcG9ydEFsaWFzZXMoKTogSW1wb3J0QWxpYXNlcyB7XG4gICAgICAgIGlmICh0aGlzLiNpbXBvcnRBbGlhc2VzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLiNpbXBvcnRBbGlhc2VzO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jaW1wb3J0QWxpYXNlcyA9IG5ldyBJbXBvcnRBbGlhc2VzKFxuICAgICAgICAgICAgdGhpcy5qc29uLmltcG9ydHMsXG4gICAgICAgICAgICBQYWNrYWdlLm1heWJlRm9yUGF0aChkaXJuYW1lKHRoaXMucGF0aCkpPy5pbXBvcnRBbGlhc2VzLFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiB0aGlzLiNpbXBvcnRBbGlhc2VzO1xuICAgIH1cblxuICAgIGdldCBtb2R1bGVzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5saXN0TW9kdWxlcyhmYWxzZSk7XG4gICAgfVxuXG4gICAgZ2V0IHNvdXJjZU1vZHVsZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpc3RNb2R1bGVzKHRydWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG1hcCBvZiBtb2R1bGUgbmFtZSAtPiBpbXBsZW1lbnRhdGlvbiBmaWxlLiAgSWYgXCJzb3VyY2VcIiBpcyB0cnVlLCBzZWFyY2hlcyBzb3VyY2UgZmlsZXMgcmF0aGVyIHRoYW5cbiAgICAgKiB0cmFuc3BpbGVkIGZpbGVzLiAgV2UgZG8gdGhpcyByYXRoZXIgdGhhbiBmaW5kaW5nIHRyYW5zcGlsYXRpb24gZmlsZXMgdGhlbiBtYXBwaW5nIHRvIHNvdXJjZSBmaWxlcyBzbyB0aGlzIHdvcmtzXG4gICAgICogZXZlbiBpZiB0aGVyZSBpc24ndCBhIGJ1aWxkLlxuICAgICAqL1xuICAgIGxpc3RNb2R1bGVzKHNvdXJjZTogYm9vbGVhbiwgLi4uY29uZGl0aW9uczogc3RyaW5nW10pIHtcbiAgICAgICAgaWYgKCFjb25kaXRpb25zLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uZGl0aW9ucyA9IFt0aGlzLnN1cHBvcnRzRXNtID8gXCJpbXBvcnRcIiA6IFwicmVxdWlyZVwiLCBcImRlZmF1bHRcIl07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtb2R1bGVzID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAgICAgICBjb25zdCBleHBvcnRzID0gdGhpcy5leHBvcnRzO1xuICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIgJiYgZXhwb3J0cyAhPT0gbnVsbCkge1xuICAgICAgICAgICAgZmluZE1vZHVsZXMoc291cmNlLCBuZXcgU2V0KGNvbmRpdGlvbnMpLCBtb2R1bGVzLCB0aGlzLm5hbWUsIHRoaXMucGF0aCwgZXhwb3J0cyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbW9kdWxlcztcbiAgICB9XG5cbiAgICAjbWF5YmVTdGF0KHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gbWF5YmVTdGF0U3luYyh0aGlzLnJlc29sdmUocGF0aCkpO1xuICAgIH1cbn1cblxuZXhwb3J0IHR5cGUgUGFja2FnZUpzb24gPSB7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2ZXJzaW9uPzogc3RyaW5nO1xuICAgIGltcG9ydHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIG1hdHRlcj86IHtcbiAgICAgICAgdGVzdD86IGJvb2xlYW47XG4gICAgfTtcbiAgICBzY3JpcHRzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgICBleHBvcnRzPzogRXhwb3J0cztcbiAgICBtb2R1bGU/OiBzdHJpbmc7XG4gICAgbWFpbj86IHN0cmluZztcbiAgICB3b3Jrc3BhY2VzPzogQXJyYXk8c3RyaW5nPjtcbiAgICBkZXBlbmRlbmNpZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIGRldkRlcGVuZGVuY2llcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn07XG5cbmxldCB3b3JraW5nRGlyID0gXCIuXCI7XG5sZXQgd29ya3NwYWNlOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xubGV0IHRvb2xzOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xuXG5mdW5jdGlvbiBmaW5kKHN0YXJ0RGlyOiBzdHJpbmcsIHNlbGVjdG9yOiAocGtnOiBQYWNrYWdlKSA9PiBib29sZWFuKTogUGFja2FnZSB7XG4gICAgbGV0IHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogc3RhcnREaXIgfSk7XG4gICAgd2hpbGUgKCFzZWxlY3Rvcihwa2cpKSB7XG4gICAgICAgIHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogZGlybmFtZShwa2cucGF0aCkgfSk7XG4gICAgfVxuICAgIHJldHVybiBwa2c7XG59XG5cbmZ1bmN0aW9uIHNlbGVjdEZvcm1hdHMoanNvbjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBsZXQgZXNtOiBib29sZWFuLCBjanM6IGJvb2xlYW47XG5cbiAgICBpZiAodHlwZW9mIGpzb24gIT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHBhY2thZ2UgSlNPTiAke3R5cGVvZiBqc29ufWApO1xuICAgIH1cblxuICAgIGlmIChqc29uLnR5cGUgPT09IFwibW9kdWxlXCIpIHtcbiAgICAgICAgZXNtID0gdHJ1ZTtcbiAgICAgICAgY2pzID1cbiAgICAgICAgICAgIChqc29uLm1haW4gIT09IHVuZGVmaW5lZCAmJiBqc29uLm1vZHVsZSAhPT0gdW5kZWZpbmVkKSB8fFxuICAgICAgICAgICAgISFPYmplY3QudmFsdWVzKGpzb24uZXhwb3J0cyA/PyB7fSkuZmluZCgoZXhwOiBhbnkpID0+IGV4cC5yZXF1aXJlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjanMgPSB0cnVlO1xuICAgICAgICBlc20gPSAhIWpzb24ubW9kdWxlIHx8ICEhT2JqZWN0LnZhbHVlcyhqc29uLmV4cG9ydHMgPz8ge30pLmZpbmQoKGV4cDogYW55KSA9PiBleHAuaW1wb3J0KTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBlc20sIGNqcyB9O1xufVxuXG5mdW5jdGlvbiBmaW5kRXhwb3J0Q29uZGl0aW9uKGRldGFpbDogUmVjb3JkPHN0cmluZywgYW55PiwgdHlwZTogXCJlc21cIiB8IFwiY2pzXCIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmICh0eXBlID09PSBcImVzbVwiICYmIGRldGFpbC5pbXBvcnQpIHtcbiAgICAgICAgbGV0IGV4cCA9IGRldGFpbC5pbXBvcnQ7XG4gICAgICAgIGlmIChleHAgJiYgdHlwZW9mIGV4cCAhPT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgZXhwID0gZmluZEV4cG9ydENvbmRpdGlvbihleHAsIHR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChleHApIHtcbiAgICAgICAgICAgIHJldHVybiBleHA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsZXQgZXhwID0gZGV0YWlsLnJlcXVpcmUgPz8gZGV0YWlsLm5vZGUgPz8gZGV0YWlsLmRlZmF1bHQ7XG4gICAgaWYgKGV4cCAmJiB0eXBlb2YgZXhwICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGV4cCA9IGZpbmRFeHBvcnRDb25kaXRpb24oZXhwLCB0eXBlKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIGV4cCA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICByZXR1cm4gZXhwO1xuICAgIH1cbn1cblxudHlwZSBDb25kaXRpb25zID0geyBbbmFtZTogc3RyaW5nXTogRXhwb3J0cyB9O1xuXG50eXBlIEV4cG9ydHMgPSBzdHJpbmcgfCBDb25kaXRpb25zIHwgUmVjb3JkPHN0cmluZywgQ29uZGl0aW9ucz47XG5cbmZ1bmN0aW9uIGZpbmRNb2R1bGVzKFxuICAgIHNvdXJjZTogYm9vbGVhbixcbiAgICBjb25kaXRpb25zOiBTZXQ8c3RyaW5nPixcbiAgICB0YXJnZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICAgcHJlZml4OiBzdHJpbmcsXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGV4cG9ydHM/OiBFeHBvcnRzLFxuKSB7XG4gICAgaWYgKHR5cGVvZiBleHBvcnRzID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIGFkZE1vZHVsZUdsb2JzKHNvdXJjZSwgdGFyZ2V0LCBwcmVmaXgsIHBhdGgsIGV4cG9ydHMpO1xuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShleHBvcnRzKSkge1xuICAgICAgICBmb3IgKGNvbnN0IGVudHJ5IG9mIGV4cG9ydHMpIHtcbiAgICAgICAgICAgIGZpbmRNb2R1bGVzKHNvdXJjZSwgY29uZGl0aW9ucywgdGFyZ2V0LCBwcmVmaXgsIHBhdGgsIGVudHJ5KTtcbiAgICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIgJiYgZXhwb3J0cyAhPT0gbnVsbCkge1xuICAgICAgICBsZXQgc2VsZWN0ZWRDb25kaXRpb24gPSBmYWxzZTtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gZXhwb3J0cykge1xuICAgICAgICAgICAgaWYgKGtleS5zdGFydHNXaXRoKFwiLlwiKSkge1xuICAgICAgICAgICAgICAgIGZpbmRNb2R1bGVzKHNvdXJjZSwgY29uZGl0aW9ucywgdGFyZ2V0LCBqb2luKHByZWZpeCwga2V5KSwgcGF0aCwgZXhwb3J0c1trZXldKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoIXNlbGVjdGVkQ29uZGl0aW9uICYmIGNvbmRpdGlvbnMuaGFzKGtleSkpIHtcbiAgICAgICAgICAgICAgICBmaW5kTW9kdWxlcyhzb3VyY2UsIGNvbmRpdGlvbnMsIHRhcmdldCwgcHJlZml4LCBwYXRoLCBleHBvcnRzW2tleV0pO1xuICAgICAgICAgICAgICAgIHNlbGVjdGVkQ29uZGl0aW9uID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIk1hbGZvcm1lZCBleHBvcnRzIGZpZWxkIGluIHBhY2thZ2UuanNvblwiKTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGFkZE1vZHVsZUdsb2JzKHNvdXJjZTogYm9vbGVhbiwgdGFyZ2V0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+LCBuYW1lOiBzdHJpbmcsIGJhc2U6IHN0cmluZywgcGF0dGVybjogc3RyaW5nKSB7XG4gICAgbGV0IHBhdGggPSBqb2luKGJhc2UsIHBhdHRlcm4pO1xuICAgIGlmIChzb3VyY2UpIHtcbiAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXFwvZGlzdFxcLyg/OmVzbXxjanMpXFwvLywgXCIvc3JjL1wiKTtcbiAgICB9XG5cbiAgICBpZiAobmFtZS5pbmNsdWRlcyhcIipcIikpIHtcbiAgICAgICAgLy8gV2lsZGNhcmRcbiAgICAgICAgaWYgKCFuYW1lLmVuZHNXaXRoKFwiLypcIikpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgV2lsZGNhcmQgaW4gbW9kdWxlICR7bmFtZX0gZG9lcyBub3QgYXBwZWFyIGFzIGZpbmFsIHBhdGggc2VnbWVudGApO1xuICAgICAgICB9XG5cbiAgICAgICAgbmFtZSA9IG5hbWUuc3Vic3RyaW5nKDAsIG5hbWUubGVuZ3RoIC0gMik7XG4gICAgICAgIGNvbnN0IHBhdGhzID0gZ2xvYlN5bmMoc291cmNlID8gcGF0aC5yZXBsYWNlKC9cXC5qcyQvLCBcIi57dHMsanMsY2pzLG1qc31cIikgOiBwYXRoKTtcbiAgICAgICAgaWYgKCFwYXRocy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbWF0Y2ggZm9yIG1vZHVsZSAke25hbWV9IHBhdHRlcm4gJHtwYXR0ZXJufWApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgW3ByZWZpeCwgc3VmZml4XSA9IHBhdGguc3BsaXQoL1xcKisvKTtcbiAgICAgICAgY29uc3QgcHJlZml4TGVuZ3RoID0gcHJlZml4ID09PSB1bmRlZmluZWQgPyAwIDogcHJlZml4Lmxlbmd0aDtcbiAgICAgICAgY29uc3Qgc3VmZml4TGVuZ3RoID0gc3VmZml4ID09PSB1bmRlZmluZWQgPyAwIDogc3VmZml4Lmxlbmd0aDtcblxuICAgICAgICBmb3IgKGNvbnN0IHRoaXNQYXRoIG9mIHBhdGhzKSB7XG4gICAgICAgICAgICBjb25zdCBxdWFsaWZpZXIgPSB0aGlzUGF0aC5zdWJzdHJpbmcocHJlZml4TGVuZ3RoLCB0aGlzUGF0aC5sZW5ndGggLSBzdWZmaXhMZW5ndGgpO1xuICAgICAgICAgICAgY29uc3QgdGhpc05hbWUgPSBqb2luKG5hbWUsIHF1YWxpZmllcik7XG4gICAgICAgICAgICB0YXJnZXRbdGhpc05hbWVdID0gdGhpc1BhdGg7XG4gICAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHBhdGguaW5jbHVkZXMoXCIqXCIpKSB7XG4gICAgICAgIC8vIEEgd2lsZGNhcmQgcGF0aCBpcyBvbmx5IHZhbGlkIHdpdGggd2lsZGNhcmQgbmFtZVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpbGRjYXJkIGluIG1vZHVsZSBwYXRoIFwiJHtwYXRofVwiIGJ1dCBub3QgaW4gbW9kdWxlIFwiJHtuYW1lfVwiYCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gTm8gd2lsZGNhcmQgLS0gcmVtb3ZlIGRpcmVjdG9yeVxuICAgICAgICBuYW1lID0gbmFtZS5yZXBsYWNlKC9cXC8oPzpleHBvcnR8aW5kZXgpJC8sIFwiXCIpO1xuXG4gICAgICAgIC8vIExvb2sgZm9yIHNvdXJjZSBpZiBmaWxlIGlzbid0IHByZXNlbnRcbiAgICAgICAgbGV0IGZvdW5kID0gZmFsc2U7XG4gICAgICAgIGlmIChpc0ZpbGUocGF0aCkpIHtcbiAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIGlmIChzb3VyY2UgJiYgcGF0aC5lbmRzV2l0aChcIi5qc1wiKSkge1xuICAgICAgICAgICAgcGF0aCA9IHBhdGgucmVwbGFjZSgvXFwuanMkLywgXCIudHNcIik7XG4gICAgICAgICAgICBpZiAoaXNGaWxlKHBhdGgpKSB7XG4gICAgICAgICAgICAgICAgZm91bmQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFmb3VuZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNb2R1bGUgXCIke25hbWV9XCIgcGF0aCBcIiR7cGF0aH1cIiBub3QgZm91bmRgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRhcmdldFtuYW1lXSA9IHBhdGg7XG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsWUFBWSxjQUFjLGdCQUFnQjtBQUNuRCxTQUFTLFNBQVMsVUFBVSxNQUFNLGlCQUFpQjtBQUNuRCxTQUFTLFNBQVMsTUFBTSxVQUFVLGVBQWU7QUFDakQsU0FBUyxhQUFhLHVCQUF1QjtBQUM3QyxTQUFTLFFBQVEsbUJBQW1CLHFCQUFxQjtBQUN6RCxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLHFCQUFxQjtBQUM5QixTQUFTLGdCQUFnQjtBQUN6QixTQUFTLGlCQUFpQjtBQUVuQixNQUFNLDBCQUEwQixNQUFNO0FBQUM7QUFFdkMsTUFBTSxjQUFjO0FBQ3BCLE1BQU0sZUFBZTtBQUU1QixNQUFNLGlCQUFpQixDQUFDO0FBRXhCLFNBQVMsWUFBWSxNQUFjO0FBQy9CLFNBQU8sQ0FBQyxDQUFDLGdCQUFnQixVQUFVLE1BQU0sU0FBUyxJQUFJLEVBQUUsWUFBWSxDQUFDO0FBQ3pFO0FBRU8sTUFBTSxRQUFRO0FBQUEsRUFDakI7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBRUEsWUFBWTtBQUFBLElBQ1IsT0FBTztBQUFBLElBQ1A7QUFBQSxFQUNKLElBR0ksQ0FBQyxHQUFHO0FBQ0osVUFBTSxFQUFFLE1BQU0sS0FBSyxJQUFJLEtBQUssU0FBUyxnQkFBZ0IsTUFBTSxJQUFJO0FBQy9ELFNBQUssT0FBTztBQUNaLFNBQUssT0FBTztBQUVaLFVBQU0sRUFBRSxLQUFLLElBQUksSUFBSSxjQUFjLEtBQUssSUFBSTtBQUM1QyxTQUFLLGNBQWM7QUFDbkIsU0FB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bEgsTUFBSSxPQUFPLEtBQUssTUFBTSxPQUFPO0FBQzdCLE1BQUksUUFBUTtBQUNSLFdBQU8sS0FBSyxRQUFRLHlCQUF5QixPQUFPO0FBQUEsRUFDeEQ7QUFFQSxNQUFJLEtBQUssU0FBUyxHQUFHLEdBQUc7QUFFcEIsUUFBSSxDQUFDLEtBQUssU0FBUyxJQUFJLEdBQUc7QUFDdEIsWUFBTSxJQUFJLE1BQU0sc0JBQXNCLElBQUksd0NBQXdDO0FBQUEsSUFDdEY7QUFFQSxXQUFPLEtBQUssVUFBVSxHQUFHLEtBQUssU0FBUyxDQUFDO0FBQ3hDLFVBQU0sUUFBUSxTQUFTLFNBQVMsS0FBSyxRQUFRLFNBQVMsa0JBQWtCLElBQUksSUFBSTtBQUNoRixRQUFJLENBQUMsTUFBTSxRQUFRO0FBQ2YsWUFBTSxJQUFJLE1BQU0sdUJBQXVCLElBQUksWUFBWSxPQUFPLEVBQUU7QUFBQSxJQUNwRTtBQUVBLFVBQU0sQ0FBQyxRQUFRLE1BQU0sSUFBSSxLQUFLLE1BQU0sS0FBSztBQUN6QyxVQUFNLGVBQWUsV0FBVyxTQUFZLElBQUksT0FBTztBQUN2RCxVQUFNLGVBQWUsV0FBVyxTQUFZLElBQUksT0FBTztBQUV2RCxlQUFXLFlBQVksT0FBTztBQUMxQixZQUFNLFlBQVksU0FBUyxVQUFVLGNBQWMsU0FBUyxTQUFTLFlBQVk7QUFDakYsWUFBTSxXQUFXLEtBQUssTUFBTSxTQUFTO0FBQ3JDLGFBQU8sUUFBUSxJQUFJO0FBQUEsSUFDdkI7QUFBQSxFQUNKLFdBQVcsS0FBSyxTQUFTLEdBQUcsR0FBRztBQUUzQixVQUFNLElBQUksTUFBTSw0QkFBNEIsSUFBSSx3QkFBd0IsSUFBSSxHQUFHO0FBQUEsRUFDbkYsT0FBTztBQUVILFdBQU8sS0FBSyxRQUFRLHVCQUF1QixFQUFFO0FBRzdDLFFBQUksUUFBUTtBQUNaLFFBQUksT0FBTyxJQUFJLEdBQUc7QUFDZCxjQUFRO0FBQUEsSUFDWixXQUFXLFVBQVUsS0FBSyxTQUFTLEtBQUssR0FBRztBQUN2QyxhQUFPLEtBQUssUUFBUSxTQUFTLEtBQUs7QUFDbEMsVUFBSSxPQUFPLElBQUksR0FBRztBQUNkLGdCQUFRO0FBQUEsTUFDWjtBQUFBLElBQ0o7QUFFQSxRQUFJLENBQUMsT0FBTztBQUNSLFlBQU0sSUFBSSxNQUFNLFdBQVcsSUFBSSxXQUFXLElBQUksYUFBYTtBQUFBLElBQy9EO0FBRUEsV0FBTyxJQUFJLElBQUk7QUFBQSxFQUNuQjtBQUNKOyIsCiAgIm5hbWVzIjogWyJwYXRocyIsICJmaW5kIiwgInBhdGgiLCAicmVzdWx0IiwgImV4cCJdCn0K
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/package.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY,cAAc,gBAAgB;AACnD,SAAS,SAAS,UAAU,MAAM,iBAAiB;AACnD,SAAS,SAAS,MAAM,UAAU,eAAe;AACjD,SAAS,aAAa,uBAAuB;AAC7C,SAAS,QAAQ,mBAAmB,qBAAqB;AACzD,SAAS,gBAAgB;AACzB,SAAS,qBAAqB;AAC9B,SAAS,gBAAgB;AACzB,SAAS,iBAAiB;AAEnB,MAAM,0BAA0B,MAAM;AAAC;AAEvC,MAAM,cAAc;AACpB,MAAM,eAAe;AAE5B,MAAM,iBAAiB,CAAC;AAExB,SAAS,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["paths", "find", "path", "result", "exp"]
|
|
6
6
|
}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { Package } from "./package.js";
|
|
7
7
|
export declare const STATUS_ICON_SUCCESS: import("../ansi-text/text-builder.js").TextBuilder;
|
|
8
8
|
export declare const STATUS_ICON_FAILURE: import("../ansi-text/text-builder.js").TextBuilder;
|
|
9
|
+
export declare const STATUS_ICON_SKIPPED: import("../ansi-text/text-builder.js").TextBuilder;
|
|
9
10
|
export declare class Progress {
|
|
10
11
|
#private;
|
|
11
12
|
status: Progress.Status;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/util/progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,mBAAmB,oDAAkB,CAAC;AACnD,eAAO,MAAM,mBAAmB,oDAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../../src/util/progress.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,mBAAmB,oDAAkB,CAAC;AACnD,eAAO,MAAM,mBAAmB,oDAAuB,CAAC;AACxD,eAAO,MAAM,mBAAmB,oDAAsB,CAAC;AA2EvD,qBAAa,QAAQ;;IACjB,MAAM,kBAA2B;;IAWjC,SAAS,CAAC,IAAI,EAAE,OAAO;IAIvB,WAAW,CAAC,IAAI,EAAE,OAAO;IAIzB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;IAI9B,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO;IAcxD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;IAwBnC,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,OAAO,CAAC,IAAI,EAAE,MAAM;IAMpB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG;IAO/B,IAAI,CAAC,IAAI,EAAE,MAAM;IAIjB,KAAK;IAQL,CAAC,MAAM,CAAC,OAAO,CAAC;IAIhB,OAAO;IAMD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IA2B7C,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAiBtD;AAED,yBAAiB,QAAQ,CAAC;IACtB,KAAY,MAAM;QACd,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;QACnB,OAAO,YAAY;KACtB;IAED,SAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,UAyB9C;CACJ"}
|
|
@@ -9,6 +9,7 @@ import { std } from "../ansi-text/std.js";
|
|
|
9
9
|
import { ansi } from "../ansi-text/text-builder.js";
|
|
10
10
|
const STATUS_ICON_SUCCESS = ansi.green("\u2713");
|
|
11
11
|
const STATUS_ICON_FAILURE = ansi.bright.red("\u2717");
|
|
12
|
+
const STATUS_ICON_SKIPPED = ansi.dim.white("\u2043");
|
|
12
13
|
const SPINNER = "\u25D0\u25D3\u25D1\u25D2";
|
|
13
14
|
const SPINNER_INTERVAL = 100;
|
|
14
15
|
function packageIdentity(pkg) {
|
|
@@ -232,6 +233,7 @@ class Progress {
|
|
|
232
233
|
export {
|
|
233
234
|
Progress,
|
|
234
235
|
STATUS_ICON_FAILURE,
|
|
236
|
+
STATUS_ICON_SKIPPED,
|
|
235
237
|
STATUS_ICON_SUCCESS
|
|
236
238
|
};
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcHJvZ3Jlc3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgc3RkZXJyLCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBzY3JlZW4gfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3NjcmVlbi5qc1wiO1xuaW1wb3J0IHsgc3RkIH0gZnJvbSBcIi4uL2Fuc2ktdGV4dC9zdGQuanNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuL3BhY2thZ2UuanNcIjtcblxuZXhwb3J0IGNvbnN0IFNUQVRVU19JQ09OX1NVQ0NFU1MgPSBhbnNpLmdyZWVuKFwiXHUyNzEzXCIpO1xuZXhwb3J0IGNvbnN0IFNUQVRVU19JQ09OX0ZBSUxVUkUgPSBhbnNpLmJyaWdodC5yZWQoXCJcdTI3MTdcIik7XG5cbmNvbnN0IFNQSU5ORVIgPSBcIlx1MjVEMFx1MjVEM1x1MjVEMVx1MjVEMlwiOyAvL1wiXHUyODVDXHUyODE0XHUyODIyXHUyOEEzXCI7IC8vW1wiXHUyNkFCXHVGRTBFXCIsIFwiXHUyNkFBXHVGRTBFXCJdOyBcIlx1Mjg0OFx1MjgxNFx1MjgyMlx1Mjg4MVwiO1xuY29uc3QgU1BJTk5FUl9JTlRFUlZBTCA9IDEwMDtcblxuZnVuY3Rpb24gcGFja2FnZUlkZW50aXR5KHBrZzogUGFja2FnZSkge1xuICAgIGxldCBpZGVudGl0eSA9IGFuc2kuYm9sZChwa2cubmFtZSkudG9TdHJpbmcoKTtcbiAgICBpZiAocGtnLmpzb24udmVyc2lvbikge1xuICAgICAgICBpZGVudGl0eSA9IGAke2lkZW50aXR5fUAke3BrZy5qc29uLnZlcnNpb259YDtcbiAgICB9XG4gICAgcmV0dXJuIGlkZW50aXR5O1xufVxuXG4vKipcbiAqIEludGVyY2VwdCB3cml0ZXMgdG8gc3RkZXJyIGFuZCBzdGRvdXQgc28gd2UgY2FuIGVuc3VyZSBvdXIgdXBkYXRlcyBhcHBlYXIgb24gZGlmZmVyZW50IGxpbmVzIGZyb20gb3RoZXIgb3V0cHV0LlxuICovXG5jb25zdCB3cml0ZVN0YXR1cyA9ICgoKSA9PiB7XG4gICAgbGV0IGxhc3RTdGF0dXM6IHVuZGVmaW5lZCB8IHN0cmluZztcbiAgICBsZXQgbmVlZE5ld2xpbmUgPSBmYWxzZTtcblxuICAgIGZ1bmN0aW9uIGludGVyY2VwdChzdHJlYW06IE5vZGVKUy5Xcml0ZVN0cmVhbSkge1xuICAgICAgICBjb25zdCBhY3R1YWxXcml0ZSA9IHN0cmVhbS53cml0ZTtcbiAgICAgICAgc3RyZWFtLndyaXRlID0gKHBheWxvYWQ6IFVpbnQ4QXJyYXkgfCBzdHJpbmcsIC4uLnBhcmFtczogYW55W10pID0+IHtcbiAgICAgICAgICAgIGlmIChsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHBheWxvYWRbMF0gIT09IFwiXFxuXCIgJiYgcGF5bG9hZFswXSAhPT0gMHhhICYmIG5lZWROZXdsaW5lKSB7XG4gICAgICAgICAgICAgICAgICAgIGFjdHVhbFdyaXRlLmNhbGwoc3RyZWFtLCBcIlxcblwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGFzdFN0YXR1cyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFwYXlsb2FkLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBSZXF1aXJlIGEgbmV3bGluZSBmb3Igc3RhdHVzIHVwZGF0ZXMgYW55IHRpbWUgdGhlIGN1cnNvciBkb2VzIG5vdCBlbmQgYXQgdGhlIGJlZ2lubmluZyBvZiBhIGxpbmVcbiAgICAgICAgICAgIHN3aXRjaCAocGF5bG9hZFtwYXlsb2FkLmxlbmd0aCAtIDFdKSB7XG4gICAgICAgICAgICAgICAgY2FzZSBcIlxcblwiOlxuICAgICAgICAgICAgICAgIGNhc2UgMHhhOlxuICAgICAgICAgICAgICAgIGNhc2UgXCJcXHJcIjpcbiAgICAgICAgICAgICAgICBjYXNlIDB4ZDpcbiAgICAgICAgICAgICAgICAgICAgbmVlZE5ld2xpbmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBuZWVkTmV3bGluZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gYWN0dWFsV3JpdGUuY2FsbChzdHJlYW0sIHBheWxvYWQsIC4uLnBhcmFtcyk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgaW50ZXJjZXB0KHN0ZG91dCk7XG4gICAgaW50ZXJjZXB0KHN0ZGVycik7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gd3JpdGVTdGF0dXModGV4dDogc3RyaW5nLCB3aWxsT3ZlcndyaXRlID0gZmFsc2UpIHtcbiAgICAgICAgdGV4dCArPSB3aWxsT3ZlcndyaXRlID8gYCR7c2NyZWVuLmVyYXNlLnRvRW9sfVxccmAgOiBgJHtzY3JlZW4uZXJhc2UudG9Fb2x9XFxuYDtcbiAgICAgICAgaWYgKHRleHQgPT09IGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0ZC5vdXQuc3RhdGUoeyBidWZmZXI6IHRydWUgfSwgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgICAgICBsYXN0U3RhdHVzID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkTmV3bGluZSAmJiAhdGV4dC5zdGFydHNXaXRoKFwiXFxuXCIpKSB7XG4gICAgICAgICAgICAgICAgc3RkLm91dChcIlxcblwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3RkLm91dC53cml0ZVRydW5jYXRlZCh0ZXh0KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGFzdFN0YXR1cyA9IHRleHQ7XG4gICAgfTtcbn0pKCk7XG5cbmV4cG9ydCBjbGFzcyBQcm9ncmVzcyB7XG4gICAgc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN0YXJ0dXA7XG4gICAgI29uZ29pbmdUZXh0Pzogc3RyaW5nO1xuICAgICNzdGFydD86IG51bWJlcjtcbiAgICAjc3Bpbm5lciA9IFwiXHUyOUQ3XCI7XG4gICAgI3JlZnJlc2hJbnRlcnZhbD86IFJldHVyblR5cGU8dHlwZW9mIHNldEludGVydmFsPjtcbiAgICAjc3Bpbm5lclBvc2l0aW9uID0gMDtcbiAgICAjc3Bpbm5lcldpbmRvdz86IG51bWJlcjtcbiAgICAjc3VidGFza3MgPSBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgICBlbXBoYXNpemUodGV4dDogdW5rbm93bikge1xuICAgICAgICByZXR1cm4gYW5zaS5ib2xkKGAke3RleHR9YCk7XG4gICAgfVxuXG4gICAgZGVlbXBoYXNpemUodGV4dDogdW5rbm93bikge1xuICAgICAgICByZXR1cm4gYW5zaS5kaW0oYCR7dGV4dH1gKTtcbiAgICB9XG5cbiAgICBza2lwKHdoeTogc3RyaW5nLCBwa2c6IFBhY2thZ2UpIHtcbiAgICAgICAgc3RkLm91dC53cml0ZShhbnNpLmRpbShgU2tpcCAke3BhY2thZ2VJZGVudGl0eShwa2cpfTogJHt3aHl9XFxuXFxuYCkpO1xuICAgIH1cblxuICAgIHN0YXJ0dXAod2hhdDogc3RyaW5nLCBwa2dPck92ZXJ3cml0ZT86IFBhY2thZ2UgfCBib29sZWFuKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLnN0ZG91dC5pc1RUWSkge1xuICAgICAgICAgICAgdGhpcy4jdXBkYXRlU3Bpbm5lcigpO1xuICAgICAgICAgICAgdGhpcy4jcmVmcmVzaEludGVydmFsID0gc2V0SW50ZXJ2YWwodGhpcy5yZWZyZXNoLmJpbmQodGhpcyksIFNQSU5ORVJfSU5URVJWQUwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3RhcnR1cDtcbiAgICAgICAgaWYgKHBrZ09yT3ZlcndyaXRlID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHBrZ09yT3ZlcndyaXRlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgd3JpdGVTdGF0dXMod2hhdCwgcGtnT3JPdmVyd3JpdGUgPz8gdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB3cml0ZVN0YXR1cyhgJHt3aGF0fSAke3BhY2thZ2VJZGVudGl0eShwa2dPck92ZXJ3cml0ZSl9YCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGUodGV4dDogc3RyaW5nLCBleHRyYT86IHN0cmluZykge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5PbmdvaW5nO1xuICAgICAgICBsZXQgZHVyYXRpb247XG4gICAgICAgIGlmICh0aGlzLiNzdGFydCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLiNzdGFydCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgZHVyYXRpb24gPSBcIlwiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZHVyYXRpb24gPSB0aGlzLiNkdXJhdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBleHRyYSA9IGV4dHJhID09PSB1bmRlZmluZWQgPyBcIlwiIDogYCAke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI29uZ29pbmdUZXh0ID0gYCR7dGV4dH0gJHtkdXJhdGlvbn0ke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI3dyaXRlT25nb2luZygpO1xuICAgIH1cblxuICAgICN3cml0ZU9uZ29pbmcoKSB7XG4gICAgICAgIGlmICghdGhpcy4jb25nb2luZ1RleHQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN1YnRhc2sgPSB0aGlzLiNzdWJ0YXNrcy5sZW5ndGggPyBhbnNpLmRpbShgICgke3RoaXMuI3N1YnRhc2tzW3RoaXMuI3N1YnRhc2tzLmxlbmd0aCAtIDFdfSlgKSA6IFwiXCI7XG5cbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLnllbGxvdyh0aGlzLiNzcGlubmVyKX0gJHt0aGlzLiNvbmdvaW5nVGV4dH0ke3N1YnRhc2t9YCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgc3VjY2Vzcyh0ZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3VjY2VzcztcbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHtTVEFUVVNfSUNPTl9TVUNDRVNTfSAke3RleHR9ICR7dGhpcy4jZHVyYXRpb259YCk7XG4gICAgICAgIHRoaXMuI3N0YXJ0ID0gdGhpcy4jb25nb2luZ1RleHQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgZmFpbHVyZSh0ZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuRmFpbHVyZTtcbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHtTVEFUVVNfSUNPTl9GQUlMVVJFfSAke3RleHR9ICR7dGhpcy4jZHVyYXRpb259YCk7XG4gICAgICAgIHRoaXMuI3N0YXJ0ID0gdGhpcy4jb25nb2luZ1RleHQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaW5mbyhsYWJlbDogc3RyaW5nLCB2YWx1ZT86IGFueSkge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIGxhYmVsID0gYCR7YW5zaS5kaW0obGFiZWwpfSAke3ZhbHVlfWA7XG4gICAgICAgIH1cbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLmRpbShcIlx1MjAyM1wiKX0gJHtsYWJlbH1gKTtcbiAgICB9XG5cbiAgICB3YXJuKHRleHQ6IHN0cmluZykge1xuICAgICAgICBzdGQub3V0LndyaXRlKGAgICAgJHthbnNpLnllbGxvdyhcIldhcm5pbmc6XCIpfSAke3RleHR9XFxuYCk7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICh0aGlzLiNyZWZyZXNoSW50ZXJ2YWwpIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy4jcmVmcmVzaEludGVydmFsKTtcbiAgICAgICAgICAgIHRoaXMuI3JlZnJlc2hJbnRlcnZhbCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICB3cml0ZVN0YXR1cyhcIlwiKTtcbiAgICB9XG5cbiAgICBbU3ltYm9sLmRpc3Bvc2VdKCkge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcmVmcmVzaCgpIHtcbiAgICAgICAgaWYgKHRoaXMuI3VwZGF0ZVNwaW5uZXIoKSkge1xuICAgICAgICAgICAgdGhpcy4jd3JpdGVPbmdvaW5nKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyBzdWJ0YXNrKHRleHQ6IHN0cmluZywgZm46ICgpID0+IFByb21pc2U8dm9pZD4pIHtcbiAgICAgICAgdGhpcy4jc3VidGFza3MucHVzaCh0ZXh0KTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgZm4oKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuI3N1YnRhc2tzLnBvcCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3VwZGF0ZVNwaW5uZXIoKSB7XG4gICAgICAgIGlmICghc3Rkb3V0LmlzVFRZKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB3aW5kb3cgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gU1BJTk5FUl9JTlRFUlZBTCk7XG4gICAgICAgIGlmICh0aGlzLiNzcGlubmVyV2luZG93ID09PSB3aW5kb3cpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLiNzcGlubmVyV2luZG93ID0gd2luZG93O1xuXG4gICAgICAgIHRoaXMuI3NwaW5uZXJQb3NpdGlvbiA9ICh0aGlzLiNzcGlubmVyUG9zaXRpb24gKyAxKSAlIFNQSU5ORVIubGVuZ3RoO1xuICAgICAgICB0aGlzLiNzcGlubmVyID0gU1BJTk5FUlt0aGlzLiNzcGlubmVyUG9zaXRpb25dO1xuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGFzeW5jIHJ1bjxUPih3aGF0OiBzdHJpbmcsIGZuOiAoKSA9PiBUIHwgUHJvbWlzZTxUPikge1xuICAgICAgICB0aGlzLnVwZGF0ZSh3aGF0KTtcbiAgICAgICAgbGV0IHJlc3VsdDogVDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGZuKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuZmFpbHVyZSh3aGF0KTtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdWNjZXNzKHdoYXQpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGdldCAjZHVyYXRpb24oKSB7XG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gdGhpcy4jc3RhcnQgPyBuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIHRoaXMuI3N0YXJ0IDogMDtcbiAgICAgICAgcmV0dXJuIFByb2dyZXNzLmZvcm1hdER1cmF0aW9uKGR1cmF0aW9uKTtcbiAgICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUHJvZ3Jlc3Mge1xuICAgIGV4cG9ydCBlbnVtIFN0YXR1cyB7XG4gICAgICAgIFN0YXJ0dXAgPSBcInN0YXJ0dXBcIixcbiAgICAgICAgT25nb2luZyA9IFwib25nb2luZ1wiLFxuICAgICAgICBTdWNjZXNzID0gXCJzdWNjZXNzXCIsXG4gICAgICAgIEZhaWx1cmUgPSBcImZhaWx1cmVcIixcbiAgICB9XG5cbiAgICBleHBvcnQgZnVuY3Rpb24gZm9ybWF0RHVyYXRpb24oZHVyYXRpb246IG51bWJlcikge1xuICAgICAgICBkdXJhdGlvbiAvPSAxMDAwO1xuICAgICAgICBsZXQgdGltZTtcbiAgICAgICAgaWYgKGR1cmF0aW9uIDwgMTApIHtcbiAgICAgICAgICAgIHRpbWUgPSBkdXJhdGlvbi50b1ByZWNpc2lvbigyKTtcbiAgICAgICAgICAgIGlmICh0aW1lLnN0YXJ0c1dpdGgoXCIwLlwiKSkge1xuICAgICAgICAgICAgICAgIHRpbWUgPSB0aW1lLnNsaWNlKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgd2hpbGUgKHRpbWUuZW5kc1dpdGgoXCIwXCIpKSB7XG4gICAgICAgICAgICAgICAgdGltZSA9IHRpbWUuc2xpY2UoMCwgdGltZS5sZW5ndGggLSAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0aW1lLmVuZHNXaXRoKFwiLlwiKSkge1xuICAgICAgICAgICAgICAgIGlmICh0aW1lLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aW1lID0gXCIwXCI7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdGltZSA9IHRpbWUuc2xpY2UoMCwgdGltZS5sZW5ndGggLSAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aW1lICs9IFwic1wiO1xuICAgICAgICB9IGVsc2UgaWYgKGR1cmF0aW9uIDwgNjApIHtcbiAgICAgICAgICAgIHRpbWUgPSBgJHtNYXRoLnRydW5jKGR1cmF0aW9uKX1zYDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRpbWUgPSBgJHtNYXRoLnRydW5jKGR1cmF0aW9uIC8gNjApfW0gJHtNYXRoLnRydW5jKGR1cmF0aW9uKSAlIDYwfXNgO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgJHthbnNpLmRpbS55ZWxsb3d9KCR7dGltZX0pJHthbnNpLm5vdC5kaW0ubm90LnllbGxvd31gO1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFFBQVEsY0FBYztBQUMvQixTQUFTLGNBQWM7QUFDdkIsU0FBUyxXQUFXO0FBQ3BCLFNBQVMsWUFBWTtBQUdkLE1BQU0sc0JBQXNCLEtBQUssTUFBTSxRQUFHO0FBQzFDLE1BQU0sc0JBQXNCLEtBQUssT0FBTyxJQUFJLFFBQUc7QUFFdEQsTUFBTSxVQUFVO0FBQ2hCLE1BQU0sbUJBQW1CO0FBRXpCLFNBQVMsZ0JBQWdCLEtBQWM7QUFDbkMsTUFBSSxXQUFXLEtBQUssS0FBSyxJQUFJLElBQUksRUFBRSxTQUFTO0FBQzVDLE1BQUksSUFBSSxLQUFLLFNBQVM7QUFDbEIsZUFBVyxHQUFHLFFBQVEsSUFBSSxJQUFJLEtBQUssT0FBTztBQUFBLEVBQzlDO0FBQ0EsU0FBTztBQUNYO0FBS0EsTUFBTSxlQUFlLE1BQU07QUFDdkIsTUFBSTtBQUNKLE1BQUksY0FBYztBQUVsQixXQUFTLFVBQVUsUUFBNEI7QUFDM0MsVUFBTSxjQUFjLE9BQU87QUFDM0IsV0FBTyxRQUFRLENBQUMsWUFBaUMsV0FBa0I7QUFDL0QsVUFBSSxZQUFZO0FBQ1osWUFBSSxRQUFRLENBQUMsTUFBTSxRQUFRLFFBQVEsQ0FBQyxNQUFNLE1BQU8sYUFBYTtBQUMxRCxzQkFBWSxLQUFLLFFBQVEsSUFBSTtBQUFBLFFBQ2pDO0FBQ0EscUJBQWE7QUFBQSxNQUNqQjtBQUVBLFVBQUksQ0FBQyxRQUFRLFFBQVE7QUFDakIsZUFBTztBQUFBLE1BQ1g7QUFHQSxjQUFRLFFBQVEsUUFBUSxTQUFTLENBQUMsR0FBRztBQUFBLFFBQ2pDLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFBQSxRQUNMLEtBQUs7QUFDRCx3QkFBYztBQUNkO0FBQUEsUUFFSjtBQUNJLHdCQUFjO0FB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QUFLLE1BQU0sR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUFBLE1BQ3hDO0FBQ0EsVUFBSSxLQUFLLFNBQVMsR0FBRyxHQUFHO0FBQ3BCLFlBQUksS0FBSyxXQUFXLEdBQUc7QUFDbkIsaUJBQU87QUFBQSxRQUNYLE9BQU87QUFDSCxpQkFBTyxLQUFLLE1BQU0sR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUFBLFFBQ3hDO0FBQUEsTUFDSjtBQUNBLGNBQVE7QUFBQSxJQUNaLFdBQVcsV0FBVyxJQUFJO0FBQ3RCLGFBQU8sR0FBRyxLQUFLLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDbEMsT0FBTztBQUNILGFBQU8sR0FBRyxLQUFLLE1BQU0sV0FBVyxFQUFFLENBQUMsS0FBSyxLQUFLLE1BQU0sUUFBUSxJQUFJLEVBQUU7QUFBQSxJQUNyRTtBQUNBLFdBQU8sR0FBRyxLQUFLLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLE1BQU07QUFBQSxFQUNoRTtBQXpCTyxFQUFBQSxVQUFTO0FBQUEsR0FSSDsiLAogICJuYW1lcyI6IFsid3JpdGVTdGF0dXMiLCAiUHJvZ3Jlc3MiLCAiU3RhdHVzIl0KfQo=
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcHJvZ3Jlc3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgc3RkZXJyLCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBzY3JlZW4gfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3NjcmVlbi5qc1wiO1xuaW1wb3J0IHsgc3RkIH0gZnJvbSBcIi4uL2Fuc2ktdGV4dC9zdGQuanNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuL3BhY2thZ2UuanNcIjtcblxuZXhwb3J0IGNvbnN0IFNUQVRVU19JQ09OX1NVQ0NFU1MgPSBhbnNpLmdyZWVuKFwiXHUyNzEzXCIpO1xuZXhwb3J0IGNvbnN0IFNUQVRVU19JQ09OX0ZBSUxVUkUgPSBhbnNpLmJyaWdodC5yZWQoXCJcdTI3MTdcIik7XG5leHBvcnQgY29uc3QgU1RBVFVTX0lDT05fU0tJUFBFRCA9IGFuc2kuZGltLndoaXRlKFwiXHUyMDQzXCIpO1xuXG5jb25zdCBTUElOTkVSID0gXCJcdTI1RDBcdTI1RDNcdTI1RDFcdTI1RDJcIjsgLy9cIlx1Mjg1Q1x1MjgxNFx1MjgyMlx1MjhBM1wiOyAvL1tcIlx1MjZBQlx1RkUwRVwiLCBcIlx1MjZBQVx1RkUwRVwiXTsgXCJcdTI4NDhcdTI4MTRcdTI4MjJcdTI4ODFcIjtcbmNvbnN0IFNQSU5ORVJfSU5URVJWQUwgPSAxMDA7XG5cbmZ1bmN0aW9uIHBhY2thZ2VJZGVudGl0eShwa2c6IFBhY2thZ2UpIHtcbiAgICBsZXQgaWRlbnRpdHkgPSBhbnNpLmJvbGQocGtnLm5hbWUpLnRvU3RyaW5nKCk7XG4gICAgaWYgKHBrZy5qc29uLnZlcnNpb24pIHtcbiAgICAgICAgaWRlbnRpdHkgPSBgJHtpZGVudGl0eX1AJHtwa2cuanNvbi52ZXJzaW9ufWA7XG4gICAgfVxuICAgIHJldHVybiBpZGVudGl0eTtcbn1cblxuLyoqXG4gKiBJbnRlcmNlcHQgd3JpdGVzIHRvIHN0ZGVyciBhbmQgc3Rkb3V0IHNvIHdlIGNhbiBlbnN1cmUgb3VyIHVwZGF0ZXMgYXBwZWFyIG9uIGRpZmZlcmVudCBsaW5lcyBmcm9tIG90aGVyIG91dHB1dC5cbiAqL1xuY29uc3Qgd3JpdGVTdGF0dXMgPSAoKCkgPT4ge1xuICAgIGxldCBsYXN0U3RhdHVzOiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgbGV0IG5lZWROZXdsaW5lID0gZmFsc2U7XG5cbiAgICBmdW5jdGlvbiBpbnRlcmNlcHQoc3RyZWFtOiBOb2RlSlMuV3JpdGVTdHJlYW0pIHtcbiAgICAgICAgY29uc3QgYWN0dWFsV3JpdGUgPSBzdHJlYW0ud3JpdGU7XG4gICAgICAgIHN0cmVhbS53cml0ZSA9IChwYXlsb2FkOiBVaW50OEFycmF5IHwgc3RyaW5nLCAuLi5wYXJhbXM6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICBpZiAobGFzdFN0YXR1cykge1xuICAgICAgICAgICAgICAgIGlmIChwYXlsb2FkWzBdICE9PSBcIlxcblwiICYmIHBheWxvYWRbMF0gIT09IDB4YSAmJiBuZWVkTmV3bGluZSkge1xuICAgICAgICAgICAgICAgICAgICBhY3R1YWxXcml0ZS5jYWxsKHN0cmVhbSwgXCJcXG5cIik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGxhc3RTdGF0dXMgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghcGF5bG9hZC5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUmVxdWlyZSBhIG5ld2xpbmUgZm9yIHN0YXR1cyB1cGRhdGVzIGFueSB0aW1lIHRoZSBjdXJzb3IgZG9lcyBub3QgZW5kIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBsaW5lXG4gICAgICAgICAgICBzd2l0Y2ggKHBheWxvYWRbcGF5bG9hZC5sZW5ndGggLSAxXSkge1xuICAgICAgICAgICAgICAgIGNhc2UgXCJcXG5cIjpcbiAgICAgICAgICAgICAgICBjYXNlIDB4YTpcbiAgICAgICAgICAgICAgICBjYXNlIFwiXFxyXCI6XG4gICAgICAgICAgICAgICAgY2FzZSAweGQ6XG4gICAgICAgICAgICAgICAgICAgIG5lZWROZXdsaW5lID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgbmVlZE5ld2xpbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGFjdHVhbFdyaXRlLmNhbGwoc3RyZWFtLCBwYXlsb2FkLCAuLi5wYXJhbXMpO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGludGVyY2VwdChzdGRvdXQpO1xuICAgIGludGVyY2VwdChzdGRlcnIpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIHdyaXRlU3RhdHVzKHRleHQ6IHN0cmluZywgd2lsbE92ZXJ3cml0ZSA9IGZhbHNlKSB7XG4gICAgICAgIHRleHQgKz0gd2lsbE92ZXJ3cml0ZSA/IGAke3NjcmVlbi5lcmFzZS50b0VvbH1cXHJgIDogYCR7c2NyZWVuLmVyYXNlLnRvRW9sfVxcbmA7XG4gICAgICAgIGlmICh0ZXh0ID09PSBsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdGQub3V0LnN0YXRlKHsgYnVmZmVyOiB0cnVlIH0sICgpID0+IHtcbiAgICAgICAgICAgIGlmIChsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgbGFzdFN0YXR1cyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAobmVlZE5ld2xpbmUgJiYgIXRleHQuc3RhcnRzV2l0aChcIlxcblwiKSkge1xuICAgICAgICAgICAgICAgIHN0ZC5vdXQoXCJcXG5cIik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN0ZC5vdXQud3JpdGVUcnVuY2F0ZWQodGV4dCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGxhc3RTdGF0dXMgPSB0ZXh0O1xuICAgIH07XG59KSgpO1xuXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3Mge1xuICAgIHN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5TdGFydHVwO1xuICAgICNvbmdvaW5nVGV4dD86IHN0cmluZztcbiAgICAjc3RhcnQ/OiBudW1iZXI7XG4gICAgI3NwaW5uZXIgPSBcIlx1MjlEN1wiO1xuICAgICNyZWZyZXNoSW50ZXJ2YWw/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG4gICAgI3NwaW5uZXJQb3NpdGlvbiA9IDA7XG4gICAgI3NwaW5uZXJXaW5kb3c/OiBudW1iZXI7XG4gICAgI3N1YnRhc2tzID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgZW1waGFzaXplKHRleHQ6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIGFuc2kuYm9sZChgJHt0ZXh0fWApO1xuICAgIH1cblxuICAgIGRlZW1waGFzaXplKHRleHQ6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIGFuc2kuZGltKGAke3RleHR9YCk7XG4gICAgfVxuXG4gICAgc2tpcCh3aHk6IHN0cmluZywgcGtnOiBQYWNrYWdlKSB7XG4gICAgICAgIHN0ZC5vdXQud3JpdGUoYW5zaS5kaW0oYFNraXAgJHtwYWNrYWdlSWRlbnRpdHkocGtnKX06ICR7d2h5fVxcblxcbmApKTtcbiAgICB9XG5cbiAgICBzdGFydHVwKHdoYXQ6IHN0cmluZywgcGtnT3JPdmVyd3JpdGU/OiBQYWNrYWdlIHwgYm9vbGVhbikge1xuICAgICAgICBpZiAocHJvY2Vzcy5zdGRvdXQuaXNUVFkpIHtcbiAgICAgICAgICAgIHRoaXMuI3VwZGF0ZVNwaW5uZXIoKTtcbiAgICAgICAgICAgIHRoaXMuI3JlZnJlc2hJbnRlcnZhbCA9IHNldEludGVydmFsKHRoaXMucmVmcmVzaC5iaW5kKHRoaXMpLCBTUElOTkVSX0lOVEVSVkFMKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN0YXJ0dXA7XG4gICAgICAgIGlmIChwa2dPck92ZXJ3cml0ZSA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiBwa2dPck92ZXJ3cml0ZSA9PT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgICAgIHdyaXRlU3RhdHVzKHdoYXQsIHBrZ09yT3ZlcndyaXRlID8/IHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgd3JpdGVTdGF0dXMoYCR7d2hhdH0gJHtwYWNrYWdlSWRlbnRpdHkocGtnT3JPdmVyd3JpdGUpfWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlKHRleHQ6IHN0cmluZywgZXh0cmE/OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuT25nb2luZztcbiAgICAgICAgbGV0IGR1cmF0aW9uO1xuICAgICAgICBpZiAodGhpcy4jc3RhcnQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy4jc3RhcnQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGR1cmF0aW9uID0gXCJcIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGR1cmF0aW9uID0gdGhpcy4jZHVyYXRpb247XG4gICAgICAgIH1cbiAgICAgICAgZXh0cmEgPSBleHRyYSA9PT0gdW5kZWZpbmVkID8gXCJcIiA6IGAgJHtleHRyYX1gO1xuICAgICAgICB0aGlzLiNvbmdvaW5nVGV4dCA9IGAke3RleHR9ICR7ZHVyYXRpb259JHtleHRyYX1gO1xuICAgICAgICB0aGlzLiN3cml0ZU9uZ29pbmcoKTtcbiAgICB9XG5cbiAgICAjd3JpdGVPbmdvaW5nKCkge1xuICAgICAgICBpZiAoIXRoaXMuI29uZ29pbmdUZXh0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdWJ0YXNrID0gdGhpcy4jc3VidGFza3MubGVuZ3RoID8gYW5zaS5kaW0oYCAoJHt0aGlzLiNzdWJ0YXNrc1t0aGlzLiNzdWJ0YXNrcy5sZW5ndGggLSAxXX0pYCkgOiBcIlwiO1xuXG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7YW5zaS55ZWxsb3codGhpcy4jc3Bpbm5lcil9ICR7dGhpcy4jb25nb2luZ1RleHR9JHtzdWJ0YXNrfWAsIHRydWUpO1xuICAgIH1cblxuICAgIHN1Y2Nlc3ModGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN1Y2Nlc3M7XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7U1RBVFVTX0lDT05fU1VDQ0VTU30gJHt0ZXh0fSAke3RoaXMuI2R1cmF0aW9ufWApO1xuICAgICAgICB0aGlzLiNzdGFydCA9IHRoaXMuI29uZ29pbmdUZXh0ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGZhaWx1cmUodGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLkZhaWx1cmU7XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7U1RBVFVTX0lDT05fRkFJTFVSRX0gJHt0ZXh0fSAke3RoaXMuI2R1cmF0aW9ufWApO1xuICAgICAgICB0aGlzLiNzdGFydCA9IHRoaXMuI29uZ29pbmdUZXh0ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGluZm8obGFiZWw6IHN0cmluZywgdmFsdWU/OiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICBsYWJlbCA9IGAke2Fuc2kuZGltKGxhYmVsKX0gJHt2YWx1ZX1gO1xuICAgICAgICB9XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7YW5zaS5kaW0oXCJcdTIwMjNcIil9ICR7bGFiZWx9YCk7XG4gICAgfVxuXG4gICAgd2Fybih0ZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgc3RkLm91dC53cml0ZShgICAgICR7YW5zaS55ZWxsb3coXCJXYXJuaW5nOlwiKX0gJHt0ZXh0fVxcbmApO1xuICAgIH1cblxuICAgIGNsb3NlKCkge1xuICAgICAgICBpZiAodGhpcy4jcmVmcmVzaEludGVydmFsKSB7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuI3JlZnJlc2hJbnRlcnZhbCk7XG4gICAgICAgICAgICB0aGlzLiNyZWZyZXNoSW50ZXJ2YWwgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgd3JpdGVTdGF0dXMoXCJcIik7XG4gICAgfVxuXG4gICAgW1N5bWJvbC5kaXNwb3NlXSgpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cblxuICAgIHJlZnJlc2goKSB7XG4gICAgICAgIGlmICh0aGlzLiN1cGRhdGVTcGlubmVyKCkpIHtcbiAgICAgICAgICAgIHRoaXMuI3dyaXRlT25nb2luZygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYXN5bmMgc3VidGFzayh0ZXh0OiBzdHJpbmcsIGZuOiAoKSA9PiBQcm9taXNlPHZvaWQ+KSB7XG4gICAgICAgIHRoaXMuI3N1YnRhc2tzLnB1c2godGV4dCk7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IGZuKCk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLiNzdWJ0YXNrcy5wb3AoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICN1cGRhdGVTcGlubmVyKCkge1xuICAgICAgICBpZiAoIXN0ZG91dC5pc1RUWSkge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgd2luZG93ID0gTWF0aC5mbG9vcihuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIFNQSU5ORVJfSU5URVJWQUwpO1xuICAgICAgICBpZiAodGhpcy4jc3Bpbm5lcldpbmRvdyA9PT0gd2luZG93KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy4jc3Bpbm5lcldpbmRvdyA9IHdpbmRvdztcblxuICAgICAgICB0aGlzLiNzcGlubmVyUG9zaXRpb24gPSAodGhpcy4jc3Bpbm5lclBvc2l0aW9uICsgMSkgJSBTUElOTkVSLmxlbmd0aDtcbiAgICAgICAgdGhpcy4jc3Bpbm5lciA9IFNQSU5ORVJbdGhpcy4jc3Bpbm5lclBvc2l0aW9uXTtcblxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBhc3luYyBydW48VD4od2hhdDogc3RyaW5nLCBmbjogKCkgPT4gVCB8IFByb21pc2U8VD4pIHtcbiAgICAgICAgdGhpcy51cGRhdGUod2hhdCk7XG4gICAgICAgIGxldCByZXN1bHQ6IFQ7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBmbigpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmZhaWx1cmUod2hhdCk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3VjY2Vzcyh3aGF0KTtcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG5cbiAgICBnZXQgI2R1cmF0aW9uKCkge1xuICAgICAgICBjb25zdCBkdXJhdGlvbiA9IHRoaXMuI3N0YXJ0ID8gbmV3IERhdGUoKS5nZXRUaW1lKCkgLSB0aGlzLiNzdGFydCA6IDA7XG4gICAgICAgIHJldHVybiBQcm9ncmVzcy5mb3JtYXREdXJhdGlvbihkdXJhdGlvbik7XG4gICAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFByb2dyZXNzIHtcbiAgICBleHBvcnQgZW51bSBTdGF0dXMge1xuICAgICAgICBTdGFydHVwID0gXCJzdGFydHVwXCIsXG4gICAgICAgIE9uZ29pbmcgPSBcIm9uZ29pbmdcIixcbiAgICAgICAgU3VjY2VzcyA9IFwic3VjY2Vzc1wiLFxuICAgICAgICBGYWlsdXJlID0gXCJmYWlsdXJlXCIsXG4gICAgfVxuXG4gICAgZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdER1cmF0aW9uKGR1cmF0aW9uOiBudW1iZXIpIHtcbiAgICAgICAgZHVyYXRpb24gLz0gMTAwMDtcbiAgICAgICAgbGV0IHRpbWU7XG4gICAgICAgIGlmIChkdXJhdGlvbiA8IDEwKSB7XG4gICAgICAgICAgICB0aW1lID0gZHVyYXRpb24udG9QcmVjaXNpb24oMik7XG4gICAgICAgICAgICBpZiAodGltZS5zdGFydHNXaXRoKFwiMC5cIikpIHtcbiAgICAgICAgICAgICAgICB0aW1lID0gdGltZS5zbGljZSgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHdoaWxlICh0aW1lLmVuZHNXaXRoKFwiMFwiKSkge1xuICAgICAgICAgICAgICAgIHRpbWUgPSB0aW1lLnNsaWNlKDAsIHRpbWUubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGltZS5lbmRzV2l0aChcIi5cIikpIHtcbiAgICAgICAgICAgICAgICBpZiAodGltZS5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGltZSA9IFwiMFwiO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRpbWUgPSB0aW1lLnNsaWNlKDAsIHRpbWUubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGltZSArPSBcInNcIjtcbiAgICAgICAgfSBlbHNlIGlmIChkdXJhdGlvbiA8IDYwKSB7XG4gICAgICAgICAgICB0aW1lID0gYCR7TWF0aC50cnVuYyhkdXJhdGlvbil9c2A7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aW1lID0gYCR7TWF0aC50cnVuYyhkdXJhdGlvbiAvIDYwKX1tICR7TWF0aC50cnVuYyhkdXJhdGlvbikgJSA2MH1zYDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7YW5zaS5kaW0ueWVsbG93fSgke3RpbWV9KSR7YW5zaS5ub3QuZGltLm5vdC55ZWxsb3d9YDtcbiAgICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsU0FBUyxRQUFRLGNBQWM7QUFDL0IsU0FBUyxjQUFjO0FBQ3ZCLFNBQVMsV0FBVztBQUNwQixTQUFTLFlBQVk7QUFHZCxNQUFNLHNCQUFzQixLQUFLLE1BQU0sUUFBRztBQUMxQyxNQUFNLHNCQUFzQixLQUFLLE9BQU8sSUFBSSxRQUFHO0FBQy9DLE1BQU0sc0JBQXNCLEtBQUssSUFBSSxNQUFNLFFBQUc7QUFFckQsTUFBTSxVQUFVO0FBQ2hCLE1BQU0sbUJBQW1CO0FBRXpCLFNBQVMsZ0JBQWdCLEtBQWM7QUFDbkMsTUFBSSxXQUFXLEtBQUssS0FBSyxJQUFJLElBQUksRUFBRSxTQUFTO0FBQzVDLE1BQUksSUFBSSxLQUFLLFNBQVM7QUFDbEIsZUFBVyxHQUFHLFFBQVEsSUFBSSxJQUFJLEtBQUssT0FBTztBQUFBLEVBQzlDO0FBQ0EsU0FBTztBQUNYO0FBS0EsTUFBTSxlQUFlLE1BQU07QUFDdkIsTUFBSTtBQUNKLE1BQUksY0FBYztBQUVsQixXQUFTLFVBQVUsUUFBNEI7QUFDM0MsVUFBTSxjQUFjLE9BQU87QUFDM0IsV0FBTyxRQUFRLENBQUMsWUFBaUMsV0FBa0I7QUFDL0QsVUFBSSxZQUFZO0FBQ1osWUFBSSxRQUFRLENBQUMsTUFBTSxRQUFRLFFBQVEsQ0FBQyxNQUFNLE1BQU8sYUFBYTtBQUMxRCxzQkFBWSxLQUFLLFFBQVEsSUFBSTtBQUFBLFFBQ2pDO0FBQ0EscUJBQWE7QUFBQSxNQUNqQjtBQUVBLFVBQUksQ0FBQyxRQUFRLFFBQVE7QUFDakIsZUFBTztBQUFBLE1BQ1g7QUFHQSxjQUFRLFFBQVEsUUFBUSxTQUFTLENBQUMsR0FB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QUksS0FBSyxXQUFXLElBQUksR0FBRztBQUN2QixlQUFPLEtBQUssTUFBTSxDQUFDO0FBQUEsTUFDdkI7QUFDQSxhQUFPLEtBQUssU0FBUyxHQUFHLEdBQUc7QUFDdkIsZUFBTyxLQUFLLE1BQU0sR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUFBLE1BQ3hDO0FBQ0EsVUFBSSxLQUFLLFNBQVMsR0FBRyxHQUFHO0FBQ3BCLFlBQUksS0FBSyxXQUFXLEdBQUc7QUFDbkIsaUJBQU87QUFBQSxRQUNYLE9BQU87QUFDSCxpQkFBTyxLQUFLLE1BQU0sR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUFBLFFBQ3hDO0FBQUEsTUFDSjtBQUNBLGNBQVE7QUFBQSxJQUNaLFdBQVcsV0FBVyxJQUFJO0FBQ3RCLGFBQU8sR0FBRyxLQUFLLE1BQU0sUUFBUSxDQUFDO0FBQUEsSUFDbEMsT0FBTztBQUNILGFBQU8sR0FBRyxLQUFLLE1BQU0sV0FBVyxFQUFFLENBQUMsS0FBSyxLQUFLLE1BQU0sUUFBUSxJQUFJLEVBQUU7QUFBQSxJQUNyRTtBQUNBLFdBQU8sR0FBRyxLQUFLLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLE1BQU07QUFBQSxFQUNoRTtBQXpCTyxFQUFBQSxVQUFTO0FBQUEsR0FSSDsiLAogICJuYW1lcyI6IFsid3JpdGVTdGF0dXMiLCAiUHJvZ3Jlc3MiLCAiU3RhdHVzIl0KfQo=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/progress.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,QAAQ,cAAc;AAC/B,SAAS,cAAc;AACvB,SAAS,WAAW;AACpB,SAAS,YAAY;AAGd,MAAM,sBAAsB,KAAK,MAAM,QAAG;AAC1C,MAAM,sBAAsB,KAAK,OAAO,IAAI,QAAG;
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["writeStatus", "Progress", "Status"]
|
|
6
6
|
}
|
package/package.json
CHANGED
package/src/running/cli.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import { realpath } from "node:fs/promises";
|
|
7
8
|
import { dirname, resolve } from "node:path";
|
|
8
9
|
import { exit, stdout } from "node:process";
|
|
9
10
|
import { ensureCompiled } from "./ensure-compiled.js";
|
|
@@ -63,17 +64,8 @@ export async function main(argv = process.argv) {
|
|
|
63
64
|
exit(1);
|
|
64
65
|
}
|
|
65
66
|
|
|
66
|
-
script = resolve(script);
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (script.match(/[\\/]node_modules[\\/].bin[\\/]/)) {
|
|
70
|
-
// When executing a script linked under node_modules, search for the project from cwd. This occurs when running
|
|
71
|
-
// tooling such as "matter-test"
|
|
72
|
-
dir = process.cwd();
|
|
73
|
-
} else {
|
|
74
|
-
// When executing outside of node modules we want to build the project containing the script
|
|
75
|
-
dir = dirname(script);
|
|
76
|
-
}
|
|
67
|
+
script = await realpath(resolve(script));
|
|
68
|
+
const dir = dirname(script);
|
|
77
69
|
|
|
78
70
|
const { format, pkg } = await ensureCompiled(dir);
|
|
79
71
|
|
package/src/tsconfig.json
CHANGED
package/src/util/glob.ts
CHANGED
|
@@ -52,7 +52,7 @@ function globOnePartSync(mm: Minimatch, segments: ParseReturnFiltered[], fs: Fil
|
|
|
52
52
|
const stat = fs.stat(rootPath);
|
|
53
53
|
|
|
54
54
|
if (stat?.[rootPath.endsWith("/") ? "isDirectory" : "isFile"]) {
|
|
55
|
-
return [rootPath];
|
|
55
|
+
return [fs.resolve(rootPath)];
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
return [];
|
|
@@ -64,7 +64,7 @@ function globOnePartSync(mm: Minimatch, segments: ParseReturnFiltered[], fs: Fil
|
|
|
64
64
|
function match(path: string, segments: ParseReturnFiltered[]) {
|
|
65
65
|
// If the filter is empty then match current path
|
|
66
66
|
if (!segments.length) {
|
|
67
|
-
results.add(path);
|
|
67
|
+
results.add(fs.resolve(path));
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
70
|
|
|
@@ -79,7 +79,7 @@ function globOnePartSync(mm: Minimatch, segments: ParseReturnFiltered[], fs: Fil
|
|
|
79
79
|
|
|
80
80
|
// If filter is just GLOBSTAR then all paths match but search continues
|
|
81
81
|
if (segments.length === 1 && segments[0] === GLOBSTAR) {
|
|
82
|
-
results.add(path);
|
|
82
|
+
results.add(fs.resolve(path));
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
// Filter starts with magic so load directory entries to match
|
package/src/util/package.ts
CHANGED
|
@@ -21,26 +21,6 @@ export const CODEGEN_PATH = `codegen`;
|
|
|
21
21
|
|
|
22
22
|
const packageForPath = {} as Record<string, Package | undefined | null>;
|
|
23
23
|
|
|
24
|
-
function findJson(filename: string, path: string = ".", title?: string) {
|
|
25
|
-
path = resolve(path);
|
|
26
|
-
while (true) {
|
|
27
|
-
const json = ignoreErrorSync(["ENOENT", "ENOTDIR"], () =>
|
|
28
|
-
JSON.parse(readFileSync(resolve(path, filename)).toString()),
|
|
29
|
-
);
|
|
30
|
-
|
|
31
|
-
if (json) {
|
|
32
|
-
if (title === undefined || json.name === title) {
|
|
33
|
-
return { root: path, json };
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
const parent = dirname(path);
|
|
37
|
-
if (parent === path) {
|
|
38
|
-
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
39
|
-
}
|
|
40
|
-
path = parent;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
24
|
function isDirectory(path: string) {
|
|
45
25
|
return !!ignoreErrorSync("ENOENT", () => statSync(path).isDirectory());
|
|
46
26
|
}
|
|
@@ -63,7 +43,7 @@ export class Package {
|
|
|
63
43
|
path?: string;
|
|
64
44
|
name?: string;
|
|
65
45
|
} = {}) {
|
|
66
|
-
const { root, json } = findJson("package.json", path, name);
|
|
46
|
+
const { root, json } = this.findJson("package.json", path, name);
|
|
67
47
|
this.path = root;
|
|
68
48
|
this.json = json;
|
|
69
49
|
|
|
@@ -89,6 +69,26 @@ export class Package {
|
|
|
89
69
|
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
90
70
|
}
|
|
91
71
|
|
|
72
|
+
findJson(filename: string, path: string = this.path, title?: string) {
|
|
73
|
+
path = resolve(path);
|
|
74
|
+
while (true) {
|
|
75
|
+
const json = ignoreErrorSync(["ENOENT", "ENOTDIR"], () =>
|
|
76
|
+
JSON.parse(readFileSync(resolve(path, filename)).toString()),
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
if (json) {
|
|
80
|
+
if (title === undefined || json.name === title) {
|
|
81
|
+
return { root: path, json };
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
const parent = dirname(path);
|
|
85
|
+
if (parent === path) {
|
|
86
|
+
throw new JsonNotFoundError(`Could not locate ${title ?? filename}`);
|
|
87
|
+
}
|
|
88
|
+
path = parent;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
92
|
get name() {
|
|
93
93
|
return this.json.name ?? `<${this.path}>`;
|
|
94
94
|
}
|
package/src/util/progress.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { Package } from "./package.js";
|
|
|
12
12
|
|
|
13
13
|
export const STATUS_ICON_SUCCESS = ansi.green("✓");
|
|
14
14
|
export const STATUS_ICON_FAILURE = ansi.bright.red("✗");
|
|
15
|
+
export const STATUS_ICON_SKIPPED = ansi.dim.white("⁃");
|
|
15
16
|
|
|
16
17
|
const SPINNER = "◐◓◑◒"; //"⡜⠔⠢⢣"; //["⚫︎", "⚪︎"]; "⡈⠔⠢⢁";
|
|
17
18
|
const SPINNER_INTERVAL = 100;
|