@matter/tools 0.13.0-alpha.0-20250311-3eb0af5f2 → 0.13.0-alpha.0-20250322-f085fa576
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/building/graph.d.ts.map +1 -1
- package/dist/cjs/building/graph.js +6 -3
- package/dist/cjs/building/graph.js.map +1 -1
- package/dist/cjs/util/package.d.ts +16 -5
- package/dist/cjs/util/package.d.ts.map +1 -1
- package/dist/cjs/util/package.js +7 -4
- package/dist/cjs/util/package.js.map +1 -1
- package/dist/cjs/util/progress.js +1 -1
- package/dist/cjs/util/progress.js.map +1 -1
- package/dist/cjs/versioning/versioner.d.ts +1 -1
- package/dist/cjs/versioning/versioner.d.ts.map +1 -1
- package/dist/cjs/versioning/versioner.js.map +1 -1
- package/dist/esm/building/graph.d.ts.map +1 -1
- package/dist/esm/building/graph.js +7 -4
- package/dist/esm/building/graph.js.map +1 -1
- package/dist/esm/util/package.d.ts +16 -5
- package/dist/esm/util/package.d.ts.map +1 -1
- package/dist/esm/util/package.js +8 -5
- package/dist/esm/util/package.js.map +1 -1
- package/dist/esm/util/progress.js +2 -2
- package/dist/esm/util/progress.js.map +1 -1
- package/dist/esm/versioning/versioner.d.ts +1 -1
- package/dist/esm/versioning/versioner.d.ts.map +1 -1
- package/dist/esm/versioning/versioner.js +1 -1
- package/dist/esm/versioning/versioner.js.map +1 -1
- package/package.json +3 -3
- package/src/building/graph.ts +6 -3
- package/src/util/package.ts +20 -10
- package/src/util/progress.ts +1 -1
- package/src/versioning/versioner.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/building/graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAuB,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE9E;;;;;GAKG;AACH,qBAAa,KAAK;;IACQ,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAAlD,SAAS,aAAsB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAElD,GAAG,CAAC,IAAI,EAAE,MAAM;WAQH,IAAI,CAAC,GAAG,UAAoB;WAK5B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAuC3D,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,UAAO;IAsDvD,OAAO;
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/building/graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAuB,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE9E;;;;;GAKG;AACH,qBAAa,KAAK;;IACQ,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAAlD,SAAS,aAAsB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAElD,GAAG,CAAC,IAAI,EAAE,MAAM;WAQH,IAAI,CAAC,GAAG,UAAoB;WAK5B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAuC3D,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,UAAO;IAsDvD,OAAO;CAgGV;AAED,yBAAiB,KAAK,CAAC;IACnB,UAAiB,IAAI;QACjB,GAAG,EAAE,OAAO,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,IAAI,EAAE,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,gBAAgB,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KACpB;CACJ"}
|
|
@@ -68,7 +68,7 @@ class Graph {
|
|
|
68
68
|
}
|
|
69
69
|
const nodeMap = await this.#loadNodes(workspace);
|
|
70
70
|
const rootPkg = new import_package.Package({ path });
|
|
71
|
-
const rootNode = nodeMap[rootPkg.
|
|
71
|
+
const rootNode = nodeMap[rootPkg.name];
|
|
72
72
|
if (!rootNode) {
|
|
73
73
|
return;
|
|
74
74
|
}
|
|
@@ -173,12 +173,15 @@ class Graph {
|
|
|
173
173
|
}
|
|
174
174
|
static async #loadNodes(workspace) {
|
|
175
175
|
const workspaces = workspace.json.workspaces;
|
|
176
|
+
if (workspaces === void 0) {
|
|
177
|
+
throw new Error(`No workspaces defined in ${workspace.name}`);
|
|
178
|
+
}
|
|
176
179
|
const nodeMap = {};
|
|
177
180
|
const allDeps = {};
|
|
178
181
|
for (const path of workspaces.values()) {
|
|
179
182
|
const pkg = new import_package.Package({ path: workspace.resolve(path) });
|
|
180
|
-
allDeps[pkg.
|
|
181
|
-
nodeMap[pkg.
|
|
183
|
+
allDeps[pkg.name] = pkg.dependencies;
|
|
184
|
+
nodeMap[pkg.name] = {
|
|
182
185
|
pkg,
|
|
183
186
|
project: new import_project.Project(pkg),
|
|
184
187
|
dependencies: [],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/building/graph.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAAmB;AACnB,qBAA2C;AAC3C,sBAAyB;AACzB,mBAAmC;AAEnC,qBAA+D;AAX/D;AAAA;AAAA;AAAA;AAAA;AAmBO,MAAM,MAAM;AAAA,EACL,YAAqB,OAAqB;AAArB;AAAA,EAAsB;AAAA,EAErD,IAAI,MAAc;AACd,UAAM,OAAO,KAAK,MAAM,KAAK,CAAAA,UAAQA,MAAK,IAAI,SAAS,IAAI;AAC3D,QAAI,SAAS,QAAW;AACpB,YAAM,IAAI,MAAM,0BAA0B,IAAI,GAAG;AAAA,IACrD;AACA,WAAO;AAAA,EACX;AAAA,EAEA,aAAa,KAAK,MAAM,uBAAQ,WAAW;AACvC,UAAM,UAAU,MAAM,KAAK,WAAW,IAAI,SAAS;AACnD,WAAO,MAAM,KAAK,aAAa,OAAO,OAAO,OAAO,CAAC;AAAA,EACzD;AAAA,EAEA,aAAa,WAAW,MAA0C;AAC9D,QAAI;AACJ,QAAI;AACA,kBAAY,uBAAQ,aAAa,IAAI;AAAA,IACzC,SAAS,GAAG;AACR,UAAI,aAAa,kCAAmB;AAEhC;AAAA,MACJ;AACA,YAAM;AAAA,IACV;AAEA,UAAM,UAAU,MAAM,KAAK,WAAW,SAAS;AAE/C,UAAM,UAAU,IAAI,uBAAQ,EAAE,KAAW,CAAC;AAC1C,UAAM,WAAW,QAAQ,QAAQ,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["node", "colors"]
|
|
6
6
|
}
|
|
@@ -25,7 +25,7 @@ export declare class Package {
|
|
|
25
25
|
});
|
|
26
26
|
get name(): string;
|
|
27
27
|
get version(): string;
|
|
28
|
-
get exports():
|
|
28
|
+
get exports(): Exports | undefined;
|
|
29
29
|
get hasCodegen(): boolean;
|
|
30
30
|
resolve(...paths: string[]): string;
|
|
31
31
|
relative(path: string): string;
|
|
@@ -66,13 +66,24 @@ export declare class Package {
|
|
|
66
66
|
listModules(source: boolean, ...conditions: string[]): Record<string, string>;
|
|
67
67
|
}
|
|
68
68
|
export type PackageJson = {
|
|
69
|
-
name
|
|
70
|
-
version
|
|
71
|
-
imports
|
|
69
|
+
name?: string;
|
|
70
|
+
version?: string;
|
|
71
|
+
imports?: Record<string, string>;
|
|
72
72
|
matter?: {
|
|
73
73
|
test?: boolean;
|
|
74
74
|
};
|
|
75
75
|
scripts?: Record<string, string>;
|
|
76
|
-
|
|
76
|
+
exports?: Exports;
|
|
77
|
+
module?: string;
|
|
78
|
+
main?: string;
|
|
79
|
+
workspaces?: Array<string>;
|
|
80
|
+
dependencies?: Record<string, string>;
|
|
81
|
+
devDependencies?: Record<string, string>;
|
|
82
|
+
[key: string]: unknown;
|
|
77
83
|
};
|
|
84
|
+
type Conditions = {
|
|
85
|
+
[name: string]: Exports;
|
|
86
|
+
};
|
|
87
|
+
type Exports = string | Conditions | Record<string, Conditions>;
|
|
88
|
+
export {};
|
|
78
89
|
//# sourceMappingURL=package.d.ts.map
|
|
@@ -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;AA4BtC,qBAAa,OAAO;;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;gBAGP,EACR,IAAU,EACV,IAAI,GACP,GAAE;QACC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACZ;IA2BN,IAAI,IAAI,WAEP;IAED,IAAI,OAAO,WAEV;IAED,IAAI,OAAO,
|
|
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
|
@@ -100,10 +100,10 @@ class Package {
|
|
|
100
100
|
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
101
101
|
}
|
|
102
102
|
get name() {
|
|
103
|
-
return this.json.name
|
|
103
|
+
return this.json.name ?? `<${this.path}>`;
|
|
104
104
|
}
|
|
105
105
|
get version() {
|
|
106
|
-
return this.json.version;
|
|
106
|
+
return this.json.version ?? "?";
|
|
107
107
|
}
|
|
108
108
|
get exports() {
|
|
109
109
|
return this.json.exports;
|
|
@@ -205,8 +205,8 @@ class Package {
|
|
|
205
205
|
if (!name.startsWith(".")) {
|
|
206
206
|
name = `./${name}`;
|
|
207
207
|
}
|
|
208
|
-
const exportDetail = this.exports?.[name];
|
|
209
|
-
if (exportDetail) {
|
|
208
|
+
const exportDetail = typeof this.exports === "object" ? this.exports?.[name] : void 0;
|
|
209
|
+
if (typeof exportDetail === "object") {
|
|
210
210
|
const exp = findExportCondition(exportDetail, type);
|
|
211
211
|
if (exp) {
|
|
212
212
|
return this.resolve(exp);
|
|
@@ -353,6 +353,9 @@ function find(startDir, selector) {
|
|
|
353
353
|
}
|
|
354
354
|
function selectFormats(json) {
|
|
355
355
|
let esm, cjs;
|
|
356
|
+
if (typeof json !== "object") {
|
|
357
|
+
throw new Error(`Invalid package JSON ${typeof json}`);
|
|
358
|
+
}
|
|
356
359
|
if (json.type === "module") {
|
|
357
360
|
esm = true;
|
|
358
361
|
cjs = json.main !== void 0 && json.module !== void 0 || !!Object.values(json.exports ?? {}).find((exp) => exp.require);
|
|
@@ -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,SAAS,UAAkB,OAAe,KAAK,OAAgB;AACpE,aAAO,0BAAQ,IAAI;AACnB,SAAO,MAAM;AACT,UAAM,WAAO;AAAA,MAAgB,CAAC,UAAU,SAAS;AAAA,MAAG,MAChD,KAAK,UAAM,iCAAa,0BAAQ,MAAM,QAAQ,CAAC,EAAE,SAAS,CAAC;AAAA,IAC/D;AAEA,QAAI,MAAM;AACN,UAAI,UAAU,UAAa,KAAK,SAAS,OAAO;AAC5C,eAAO,EAAE,MAAM,MAAM,KAAK;AAAA,MAC9B;AAAA,IACJ;AACA,UAAM,aAAS,0BAAQ,IAAI;AAC3B,QAAI,WAAW,MAAM;AACjB,YAAM,IAAI,kBAAkB,oBAAoB,SAAS,QAAQ,EAAE;AAAA,IACvE;AACA,WAAO;AAAA,EACX;AACJ;AAEA,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,SAAS,gBAAgB,MAAM,IAAI;AAC1D,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,IAAI,OAAO;AACP,WAAO,KAAK,KAAK;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["paths", "find", "path", "result", "exp"]
|
|
6
6
|
}
|
|
@@ -33,7 +33,7 @@ var import_text_builder = require("../ansi-text/text-builder.js");
|
|
|
33
33
|
const SPINNER = "\u25D0\u25D3\u25D1\u25D2";
|
|
34
34
|
const SPINNER_INTERVAL = 100;
|
|
35
35
|
function packageIdentity(pkg) {
|
|
36
|
-
let identity = import_text_builder.ansi.bold(pkg.
|
|
36
|
+
let identity = import_text_builder.ansi.bold(pkg.name).toString();
|
|
37
37
|
if (pkg.json.version) {
|
|
38
38
|
identity = `${identity}@${pkg.json.version}`;
|
|
39
39
|
}
|
|
@@ -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,0BAA+B;AAC/B,oBAAuB;AACvB,iBAAoB;AACpB,0BAAqB;AATrB;AAAA;AAAA;AAAA;AAAA;AAYA,MAAM,UAAU;AAChB,MAAM,mBAAmB;AAEzB,SAAS,gBAAgB,KAAc;AACnC,MAAI,WAAW,yBAAK,KAAK,IAAI,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["writeStatus", "Progress", "Status"]
|
|
6
6
|
}
|
|
@@ -9,7 +9,7 @@ export declare class Versioner {
|
|
|
9
9
|
#private;
|
|
10
10
|
get pkg(): Package;
|
|
11
11
|
get version(): string | undefined;
|
|
12
|
-
get appliedVersion(): string;
|
|
12
|
+
get appliedVersion(): string | undefined;
|
|
13
13
|
constructor(pkg: Package, version?: string);
|
|
14
14
|
set(): Promise<void>;
|
|
15
15
|
apply(progress?: Progress): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../src/versioning/versioner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/C,qBAAa,SAAS;;IAKlB,IAAI,GAAG,YAEN;IAED,IAAI,OAAO,uBAEV;IAED,IAAI,cAAc,
|
|
1
|
+
{"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../src/versioning/versioner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/C,qBAAa,SAAS;;IAKlB,IAAI,GAAG,YAEN;IAED,IAAI,OAAO,uBAEV;IAED,IAAI,cAAc,uBAEjB;gBAEW,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM;IAcpC,GAAG;IAIH,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ;IAiBzB,GAAG;CAsEZ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/versioning/versioner.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,qBAAyC;AACzC,sBAA8B;AAC9B,0BAAqB;AACrB,mBAAsB;AACtB,qBAAwB;AAVxB;AAAA;AAAA;AAAA;AAAA;AAcA,MAAM,eAAe;AAEd,MAAM,UAAU;AAAA,EACnB;AAAA,EACA;AAAA,EACA,WAAW,oBAAI,IAAY;AAAA,EAE3B,IAAI,MAAM;AACN,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,iBAAiB;AACjB,WAAO,KAAK,KAAK,KAAK;AAAA,EAC1B;AAAA,EAEA,YAAY,KAAc,SAAkB;AACxC,SAAK,OAAO,IAAI;AAEhB,QAAI,YAAY,QAAW;AACvB,gBAAU,KAAK,aAAa;AAAA,IAChC;AAEA,QAAI,WAAW,CAAC,QAAQ,MAAM,6CAA6C,GAAG;AAC1E,YAAM,IAAI,MAAM,WAAW,OAAO,yDAAyD;AAAA,IAC/F;AAEA,SAAK,WAAW;AAAA,EACpB;AAAA,EAEA,MAAM,MAAM;AACR,cAAM,2BAAU,KAAK,cAAc,KAAK,gBAAgB;AAAA,EAC5D;AAAA,EAEA,MAAM,MAAM,UAAqB;AAC7B,UAAM,QAAQ,MAAM,mBAAM,KAAK,KAAK,IAAI;AACxC,SAAK,WAAW,IAAI,IAAI,MAAM,MAAM,IAAI,UAAQ,KAAK,IAAI,IAAI,CAAC;AAE9D,eAAW,QAAQ,MAAM,OAAO;AAC5B,YAAM,OAAO,SAAS,yBAAK,KAAK,KAAK,gBAAgB,CAAC,OAAO,yBAAK,KAAK,KAAK,IAAI,IAAI,CAAC;AACrF,gBAAU,OAAO,IAAI;AACrB,UAAI,KAAK,UAAU,KAAK,GAAG,GAAG;AAC1B,kBAAU,QAAQ,IAAI;AACtB,cAAM,KAAK,IAAI,KAAK;AAAA,MACxB,OAAO;AACH,kBAAU,QAAQ,GAAG,IAAI,cAAc;AAAA,MAC3C;AACA,gBAAM,oBAAG,KAAK,KAAK,QAAQ,SAAS,GAAG,KAAK,IAAI,QAAQ,SAAS,CAAC;AAAA,IACtE;AAAA,EACJ;AAAA,EAEA,MAAM,MAAM;AACR,cAAM,wBAAQ,OAAO,CAAC,OAAO,MAAM,IAAI,KAAK,gBAAgB,EAAE,CAAC;AAAA,EACnE;AAAA,EAEA,IAAI,mBAAmB;AACnB,QAAI,KAAK,aAAa,QAAW;AAC7B,YAAM,IAAI,MAAM,2BAA2B,KAAK,YAAY,iBAAiB;AAAA,IACjF;AACA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,KAAK,KAAK,QAAQ,YAAY;AAAA,EACzC;AAAA,EAEA,eAAe;AACX,UAAM,cAAc,KAAK;AACzB,QAAI,KAAC,2BAAW,WAAW,GAAG;AAC1B,aAAO;AAAA,IACX;AAEA,UAAM,cAAU,6BAAa,WAAW,EAAE,SAAS,EAAE,KAAK;AAC1D,QAAI,QAAQ,WAAW,GAAG;AACtB,YAAM,IAAI,MAAM,gBAAgB,WAAW,WAAW;AAAA,IAC1D;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,UAAU,KAAc;AACpB,UAAM,OAAO,IAAI;AACjB,QAAI,UAAU;AAEd,QAAI,KAAK,YAAY,KAAK,kBAAkB;AACxC,WAAK,UAAU,KAAK;AACpB,gBAAU;AAAA,IACd;AAEA,eAAW,OAAO,MAAM;AACpB,UAAI,QAAQ,kBAAkB,CAAC,IAAI,SAAS,cAAc,GAAG;AACzD;AAAA,MACJ;AAEA,YAAM,OAAO,KAAK,GAAG;AACrB,UAAI,OAAO,SAAS,UAAU;AAC1B;AAAA,MACJ;AAEA,UAAI,KAAK,aAAa,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/building/graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAuB,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE9E;;;;;GAKG;AACH,qBAAa,KAAK;;IACQ,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAAlD,SAAS,aAAsB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAElD,GAAG,CAAC,IAAI,EAAE,MAAM;WAQH,IAAI,CAAC,GAAG,UAAoB;WAK5B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAuC3D,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,UAAO;IAsDvD,OAAO;
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/building/graph.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAqB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAuB,gBAAgB,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE9E;;;;;GAKG;AACH,qBAAa,KAAK;;IACQ,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAAlD,SAAS,aAAsB,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;IAElD,GAAG,CAAC,IAAI,EAAE,MAAM;WAQH,IAAI,CAAC,GAAG,UAAoB;WAK5B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAuC3D,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,WAAW,UAAO;IAsDvD,OAAO;CAgGV;AAED,yBAAiB,KAAK,CAAC;IACnB,UAAiB,IAAI;QACjB,GAAG,EAAE,OAAO,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,EAAE,IAAI,EAAE,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,gBAAgB,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,OAAO,CAAC;KACpB;CACJ"}
|
|
@@ -35,7 +35,7 @@ class Graph {
|
|
|
35
35
|
}
|
|
36
36
|
const nodeMap = await this.#loadNodes(workspace);
|
|
37
37
|
const rootPkg = new Package({ path });
|
|
38
|
-
const rootNode = nodeMap[rootPkg.
|
|
38
|
+
const rootNode = nodeMap[rootPkg.name];
|
|
39
39
|
if (!rootNode) {
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
@@ -140,12 +140,15 @@ class Graph {
|
|
|
140
140
|
}
|
|
141
141
|
static async #loadNodes(workspace) {
|
|
142
142
|
const workspaces = workspace.json.workspaces;
|
|
143
|
+
if (workspaces === void 0) {
|
|
144
|
+
throw new Error(`No workspaces defined in ${workspace.name}`);
|
|
145
|
+
}
|
|
143
146
|
const nodeMap = {};
|
|
144
147
|
const allDeps = {};
|
|
145
148
|
for (const path of workspaces.values()) {
|
|
146
149
|
const pkg = new Package({ path: workspace.resolve(path) });
|
|
147
|
-
allDeps[pkg.
|
|
148
|
-
nodeMap[pkg.
|
|
150
|
+
allDeps[pkg.name] = pkg.dependencies;
|
|
151
|
+
nodeMap[pkg.name] = {
|
|
149
152
|
pkg,
|
|
150
153
|
project: new Project(pkg),
|
|
151
154
|
dependencies: [],
|
|
@@ -187,4 +190,4 @@ function formatDep(node) {
|
|
|
187
190
|
export {
|
|
188
191
|
Graph
|
|
189
192
|
};
|
|
190
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL2dyYXBoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCBjb2xvcnMgZnJvbSBcImFuc2ktY29sb3JzXCI7XG5pbXBvcnQgeyBKc29uTm90Rm91bmRFcnJvciwgUGFja2FnZSB9IGZyb20gXCIuLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4uL3V0aWwvcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IEludGVybmFsQnVpbGRFcnJvciB9IGZyb20gXCIuL2Vycm9yLmpzXCI7XG5pbXBvcnQgeyBQcm9qZWN0QnVpbGRlciB9IGZyb20gXCIuL3Byb2plY3QtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgQlVJTERfSU5GT19MT0NBVElPTiwgQnVpbGRJbmZvcm1hdGlvbiwgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3QuanNcIjtcblxuLyoqXG4gKiBHcmFwaCBvZiBkZXBlbmRlbmNpZXMgZm9yIHdvcmtzcGFjZSBwYWNrYWdlcy5cbiAqXG4gKiBXZSB1c2UgdGhpcyBpbmZvcm1hdGlvbiB0byBkZXRlcm1pbmUgd2hpY2ggcGFja2FnZXMgYXJlIFwiZGlydHlcIiBhbmQgbmVlZCByZWJ1aWxkLiAgSW4gdGhlIGZ1dHVyZSB3ZSBjYW4gYWxzbyB1c2UgZm9yXG4gKiBwYXJhbGxlbCBidWlsZCwgb25seSB0cmlja3kgcGFydCB0aGVyZSBpcyBzaG93aW5nIHN0YXR1cy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoIHtcbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocmVhZG9ubHkgbm9kZXM6IEdyYXBoLk5vZGVbXSkge31cblxuICAgIGdldChuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubm9kZXMuZmluZChub2RlID0+IG5vZGUucGtnLm5hbWUgPT09IG5hbWUpO1xuICAgICAgICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBsb2NhdGUgcGFja2FnZSBcIiR7bmFtZX1cImApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cblxuICAgIHN0YXRpYyBhc3luYyBsb2FkKHBrZyA9IFBhY2thZ2Uud29ya3NwYWNlKSB7XG4gICAgICAgIGNvbnN0IG5vZGVNYXAgPSBhd2FpdCB0aGlzLiNsb2FkTm9kZXMocGtnLndvcmtzcGFjZSk7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLiNjcmVhdGVHcmFwaChPYmplY3QudmFsdWVzKG5vZGVNYXApKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXN5bmMgZm9yUHJvamVjdChwYXRoOiBzdHJpbmcpOiBQcm9taXNlPEdyYXBoIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGxldCB3b3Jrc3BhY2U7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB3b3Jrc3BhY2UgPSBQYWNrYWdlLndvcmtzcGFjZUZvcihwYXRoKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBKc29uTm90Rm91bmRFcnJvcikge1xuICAgICAgICAgICAgICAgIC8vIFByb2plY3QgaXMgbm90IGluIGEgd29ya3NwYWNlXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5vZGVNYXAgPSBhd2FpdCB0aGlzLiNsb2FkTm9kZXMod29ya3NwYWNlKTtcblxuICAgICAgICBjb25zdCByb290UGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiBwYXRoIH0pO1xuICAgICAgICBjb25zdCByb290Tm9kZSA9IG5vZGVNYXBbcm9vdFBrZy5qc29uLm5hbWVdO1xuICAgICAgICBpZiAoIXJvb3ROb2RlKSB7XG4gICAgICAgICAgICAvLyBQcm9qZWN0IHJlc2lkZXMgdW5kZXIgYSB3b3Jrc3BhY2UgYnV0IGlzIG5vdCBwYXJ0IG9mIHRoZSB3b3Jrc3BhY2VcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5vZGVzID0gbmV3IFNldDxHcmFwaC5Ob2RlPigpO1xuICAgICAgICBmdW5jdGlvbiBhZGROb2RlKG5vZGU6IEdyYXBoLk5vZGUpIHtcbiAgICAgICAgICAgIGlmIChub2Rlcy5oYXMobm9kZSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBub2Rlcy5hZGQobm9kZSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGRlcGVuZGVuY3kgb2Ygbm9kZS5kZXBlbmRlbmNpZXMpIHtcbiAgICAgICAgICAgICAgICBhZGROb2RlKGRlcGVuZGVuY3kpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYWRkTm9kZShyb290Tm9kZSk7XG5cbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuI2NyZWF0ZUdyYXBoKFsuLi5ub2Rlc10pO1xuICAgIH1cblxuICAgIC8vIFRPRE8gLSBwYXJhbGxlbGl6YXRpb24gd2lsbCBiZSB0cml2aWFsIGV4Y2VwdCBuZWVkIHRvIHVwZGF0ZSBQcm9ncmVzcyB0byBzdXBwb3J0IGRpc3BsYXkgb2YgbXVsdGlwbGUgc2ltdWx0YW5lb3VzXG4gICAgLy8gdGFza3NcbiAgICBhc3luYyBidWlsZChidWlsZGVyOiBQcm9qZWN0QnVpbGRlciwgc2hvd1NraXBwZWQgPSB0cnVlKSB7XG4gICAgICAgIGNvbnN0IHRvQnVpbGQgPSBuZXcgU2V0KHRoaXMubm9kZXMpO1xuXG4gICAgICAgIGNvbnN0IG5lZWRzQ29uZmlnID0gdGhpcy5ub2Rlcy5maW5kKG5vZGUgPT4gbm9kZS5wa2cuaGFzQ29uZmlnKTtcbiAgICAgICAgaWYgKGJ1aWxkZXIuaGFzQ2xlYW4gfHwgbmVlZHNDb25maWcpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgLy8gV2UgY2xlYW4gYWxsIHBhY2thZ2VzIGJlZm9yZSBlbmdhZ2luZyB0eXBlc2NyaXB0IGJlY2F1c2Ugb3RoZXJ3aXNlIGl0IHNlZW1zIHRvIGdldCBjb25mdXNlZFxuICAgICAgICAgICAgICAgIGlmIChidWlsZGVyLmhhc0NsZWFuKSB7XG4gICAgICAgICAgICAgICAgICAgIGJ1aWxkZXIuY2xlYXJDbGVhbigpO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5ub2Rlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgbm9kZS5wcm9qZWN0LmNsZWFuKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBub2RlLmluZm8gPSB7fTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFdlIGNvbmZpZ3VyZSBlYWNoIGJ1aWxkIGJlZm9yZSBidWlsZGluZyBzbyB0aGF0IGFueSBnZW5lcmF0ZWQgZmlsZXMgYXJlIGluIHBsYWNlIGJlZm9yZSB3ZSBpbml0aWF0ZSB0aGUgYnVpbGRcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5ub2Rlcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIW5vZGUucGtnLmhhc0NvbmZpZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgYnVpbGRlci5jb25maWd1cmUobm9kZS5wcm9qZWN0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcIlRlcm1pbmF0aW5nIGR1ZSB0byBwcmVidWlsZCBlcnJvcjpcIiwgZSk7XG4gICAgICAgICAgICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgd2hpbGUgKHRvQnVpbGQuc2l6ZSkge1xuICAgICAgICAgICAgbGV0IG5vZGU7XG5cbiAgICAgICAgICAgIG5vZGVzOiBmb3IgKG5vZGUgb2YgdG9CdWlsZCkge1xuICAgICAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIG5vZGUuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChkZXAuaXNEaXJ0eSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWUgbm9kZXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghbm9kZSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludGVybmFsIGxvZ2ljIGVycm9yOiBObyB1bmJ1aWx0IHByb2plY3QgaGFzIGZ1bGx5IGJ1aWx0IGRlcGVuZGVuY2llc1wiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChub2RlLmlzRGlydHkgfHwgYnVpbGRlci51bmNvbmRpdGlvbmFsKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgYnVpbGRlci5idWlsZChub2RlLnByb2plY3QpO1xuICAgICAgICAgICAgICAgIG5vZGUuaW5mby50aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHNob3dTa2lwcGVkKSB7XG4gICAgICAgICAgICAgICAgbmV3IFByb2dyZXNzKCkuc2tpcChcIlVwIHRvIGRhdGVcIiwgbm9kZS5wa2cpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0b0J1aWxkLmRlbGV0ZShub2RlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGRpc3BsYXkoKSB7XG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiB0aGlzLm5vZGVzKSB7XG4gICAgICAgICAgICBjb25zdCBwcm9ncmVzcyA9IG5vZGUucGtnLnN0YXJ0KFwiTm9kZVwiKTtcbiAgICAgICAgICAgIHByb2dyZXNzLmluZm8oXCJwYXRoXCIsIG5vZGUucGtnLnBhdGgpO1xuICAgICAgICAgICAgcHJvZ3Jlc3MuaW5mbyhcIm1vZGlmaWVkXCIsIGZvcm1hdFRpbWUobm9kZS5tb2RpZnlUaW1lKSk7XG4gICAgICAgICAgICBwcm9ncmVzcy5pbmZvKFwiYnVpbHRcIiwgZm9ybWF0VGltZShub2RlLmluZm8udGltZXN0YW1wID8/IDApKTtcbiAgICAgICAgICAgIHByb2dyZXNzLmluZm8oXCJkaXJ0eVwiLCBub2RlLmlzRGlydHkgPyBjb2xvcnMuZGltLnJlZChcInllc1wiKSA6IGNvbG9ycy5kaW0uZ3JlZW4oXCJub1wiKSk7XG4gICAgICAgICAgICBwcm9ncmVzcy5pbmZvKFwiZGVwZW5kZW5jaWVzXCIsIG5vZGUuZGVwZW5kZW5jaWVzLm1hcChmb3JtYXREZXApLmpvaW4oXCIsIFwiKSk7XG4gICAgICAgICAgICBwcm9ncmVzcy5jbG9zZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIGFzeW5jICNjcmVhdGVHcmFwaChub2RlczogR3JhcGguTm9kZVtdKSB7XG4gICAgICAgIGNvbnN0IGdyYXBoID0gbmV3IEdyYXBoKG5vZGVzKTtcblxuICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgICAgICAgIGdyYXBoLm5vZGVzLm1hcChhc3luYyBub2RlID0+IHtcbiAgICAgICAgICAgICAgICBpZiAobm9kZS5wa2cuaGFzRmlsZShCVUlMRF9JTkZPX0xPQ0FUSU9OKSkge1xuICAgICAgICAgICAgICAgICAgICBub2RlLmluZm8gPSBhd2FpdCBub2RlLnBrZy5yZWFkSnNvbihCVUlMRF9JTkZPX0xPQ0FUSU9OKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBub2RlLm1vZGlmeVRpbWUgPSBhd2FpdCBub2RlLnBrZy5sYXN0TW9kaWZpZWQoXCJwYWNrYWdlLmpzb25cIiwgXCJzcmNcIiwgXCJ0ZXN0XCIpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIG5vZGU7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBzdGFjayA9IEFycmF5PEdyYXBoLk5vZGU+KCk7XG4gICAgICAgIGZ1bmN0aW9uIGZpbmRDaXJjdWxhcihub2RlOiBHcmFwaC5Ob2RlKSB7XG4gICAgICAgICAgICBpZiAoc3RhY2suaW5kZXhPZihub2RlKSAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICBzdGFjay5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnRlcm5hbEJ1aWxkRXJyb3IoYENpcmN1bGFyIGRlcGVuZGVuY3k6ICR7c3RhY2subWFwKGZvcm1hdERlcCkuam9pbihcIiBcdTI1QjggXCIpfWApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3RhY2sucHVzaChub2RlKTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgZGVwIG9mIG5vZGUuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICAgICAgZmluZENpcmN1bGFyKGRlcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdGFjay5wb3AoKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgZ3JhcGgubm9kZXMpIHtcbiAgICAgICAgICAgIGZpbmRDaXJjdWxhcihub2RlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBncmFwaDtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXN5bmMgI2xvYWROb2Rlcyh3b3Jrc3BhY2U6IFBhY2thZ2UpIHtcbiAgICAgICAgY29uc3Qgd29ya3NwYWNlcyA9IHdvcmtzcGFjZS5qc29uLndvcmtzcGFjZXM7XG5cbiAgICAgICAgY29uc3Qgbm9kZU1hcCA9IHt9IGFzIFJlY29yZDxzdHJpbmcsIEdyYXBoLk5vZGU+O1xuICAgICAgICBjb25zdCBhbGxEZXBzID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+O1xuICAgICAgICBmb3IgKGNvbnN0IHBhdGggb2Ygd29ya3NwYWNlcy52YWx1ZXMoKSkge1xuICAgICAgICAgICAgY29uc3QgcGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiB3b3Jrc3BhY2UucmVzb2x2ZShwYXRoKSB9KTtcbiAgICAgICAgICAgIGFsbERlcHNbcGtnLmpzb24ubmFtZV0gPSBwa2cuZGVwZW5kZW5jaWVzO1xuICAgICAgICAgICAgbm9kZU1hcFtwa2cuanNvbi5uYW1lXSA9IHtcbiAgICAgICAgICAgICAgICBwa2csXG4gICAgICAgICAgICAgICAgcHJvamVjdDogbmV3IFByb2plY3QocGtnKSxcbiAgICAgICAgICAgICAgICBkZXBlbmRlbmNpZXM6IFtdLFxuICAgICAgICAgICAgICAgIGluZm86IHt9LFxuICAgICAgICAgICAgICAgIG1vZGlmeVRpbWU6IDAsXG5cbiAgICAgICAgICAgICAgICBnZXQgYnVpbGRUaW1lKCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pbmZvLnRpbWVzdGFtcCA/IG5ldyBEYXRlKHRoaXMuaW5mby50aW1lc3RhbXApLmdldFRpbWUoKSA6IDA7XG4gICAgICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgICAgIGdldCBpc0RpcnR5KCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5tb2RpZnlUaW1lID4gdGhpcy5idWlsZFRpbWUgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICEhdGhpcy5kZXBlbmRlbmNpZXMuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXAgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwLmlzRGlydHkgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlcC5idWlsZFRpbWUgPiB0aGlzLmJ1aWxkVGltZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGRlcC5pbmZvLmFwaVNoYSA9PT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVwLmluZm8uYXBpU2hhICE9PSB0aGlzLmluZm8uZGVwZW5kZW5jeUFwaVNoYXM/LltkZXAucGtnLm5hbWVdKSksXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGNvbnN0IG5hbWUgaW4gYWxsRGVwcykge1xuICAgICAgICAgICAgZm9yIChjb25zdCBkZXAgb2YgYWxsRGVwc1tuYW1lXSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRlcE5vZGUgPSBub2RlTWFwW2RlcF07XG5cbiAgICAgICAgICAgICAgICAvLyBOb3RlIC0tIGFsbG93IG5vZGVzIHRvIHJlZmVyZW5jZSB0aGVtc2VsdmVzLCBzZWVtcyB0byBiZSBuZWNlc3Nhcnkgb24gdG9vbHMgZm9yIHVzZSBvZiB0c2NcbiAgICAgICAgICAgICAgICBpZiAoZGVwTm9kZSAmJiBkZXBOb2RlICE9PSBub2RlTWFwW25hbWVdKSB7XG4gICAgICAgICAgICAgICAgICAgIG5vZGVNYXBbbmFtZV0uZGVwZW5kZW5jaWVzLnB1c2goZGVwTm9kZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5vZGVNYXA7XG4gICAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIEdyYXBoIHtcbiAgICBleHBvcnQgaW50ZXJmYWNlIE5vZGUge1xuICAgICAgICBwa2c6IFBhY2thZ2U7XG4gICAgICAgIHByb2plY3Q6IFByb2plY3Q7XG4gICAgICAgIGRlcGVuZGVuY2llczogTm9kZVtdO1xuICAgICAgICBidWlsZFRpbWU6IG51bWJlcjtcbiAgICAgICAgaW5mbzogQnVpbGRJbmZvcm1hdGlvbjtcbiAgICAgICAgbW9kaWZ5VGltZTogbnVtYmVyO1xuICAgICAgICBpc0RpcnR5OiBib29sZWFuO1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZm9ybWF0VGltZSh0aW1lOiBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICBpZiAoIXRpbWUpIHtcbiAgICAgICAgcmV0dXJuIGNvbG9ycy5kaW0ucmVkKFwibmV2ZXJcIik7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdGltZSA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICB0aW1lID0gbmV3IERhdGUodGltZSkuZ2V0VGltZSgpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IERhdGUodGltZSAtIG5ldyBEYXRlKCkuZ2V0VGltZXpvbmVPZmZzZXQoKSkudG9JU09TdHJpbmcoKS5zcGxpdChcIi5cIilbMF0ucmVwbGFjZShcIlRcIiwgXCIgXCIpO1xufVxuXG5mdW5jdGlvbiBmb3JtYXREZXAobm9kZTogR3JhcGguTm9kZSkge1xuICAgIHJldHVybiBub2RlLnBrZy5uYW1lLnJlcGxhY2UoL15AbWF0dGVyXFwvLywgXCJcIik7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsT0FBTyxZQUFZO0FBQ25CLFNBQVMsbUJBQW1CLGVBQWU7QUFDM0MsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUywwQkFBMEI7QUFFbkMsU0FBUyxxQkFBdUMsZUFBZTtBQVF4RCxNQUFNLE1BQU07QUFBQSxFQUNMLFlBQXFCLE9BQXFCO0FBQXJCO0FBQUEsRUFBc0I7QUFBQSxFQUVyRCxJQUFJLE1BQWM7QUFDZCxVQUFNLE9BQU8sS0FBSyxNQUFNLEtBQUssQ0FBQUEsVUFBUUEsTUFBSyxJQUFJLFNBQVMsSUFBSTtBQUMzRCxRQUFJLFNBQVMsUUFBVztBQUNwQixZQUFNLElBQUksTUFBTSwwQkFBMEIsSUFBSSxHQUFHO0FBQUEsSUFDckQ7QUFDQSxXQUFPO0FBQUEsRUFDWDtBQUFBLEVBRUEsYUFBYSxLQUFLLE1BQU0sUUFBUSxXQUFXO0FBQ3ZDLFVBQU0sVUFBVSxNQUFNLEtBQUssV0FBVyxJQUFJLFNBQVM7QUFDbkQsV0FBTyxNQUFNLEtBQUssYUFBYSxPQUFPLE9BQU8sT0FBTyxDQUFDO0FBQUEsRUFDekQ7QUFBQSxFQUVBLGFBQWEsV0FBVyxNQUEwQztBQUM5RCxRQUFJO0FBQ0osUUFBSTtBQUNBLGtCQUFZLFFBQVEsYUFBYSxJQUFJO0FBQUEsSUFDekMsU0FBUyxHQUFHO0FBQ1IsVUFBSSxhQUFhLG1CQUFtQjtBQUVoQztBQUFBLE1BQ0o7QUFDQSxZQUFNO0FBQUEsSUFDVjtBQUVBLFVBQU0sVUFBVSxNQUFNLEtBQUssV0FBVyxTQUFTO0FBRS9DLFVBQU0sVUFBVSxJQUFJLFFBQVEsRUFBRSxLQUFXLENBQUM7QUFDMUMsVUFBTSxXQUFXLFFBQVEsUUFBUSxLQUFLLElBQUk7QUFDMUMsUUFBSSxDQUFDLFVBQVU7QUFFWDtBQUFBLElBQ0o7QUFFQSxVQUFNLFFBQVEsb0JBQUksSUFBZ0I7QUFDbEMsYUFBUyxRQUFRLE1BQWtCO0FBQy9CLFVBQUksTUFBTSxJQUFJLElBQUksR0FBRztBQUNqQjtBQUFBLE1BQ0o7QUFDQSxZQUFNLElBQUksSUFBSTtBQUNkLGlCQUFXLGNBQWMsS0FBSyxjQUFjO0FBQ3hDLGdCQUFRLFVBQVU7QUFBQSxNQUN0QjtBQUFBLElBQ0o7QUFFQSxZQUFRLFFBQVE7QUFFaEIsV0FBTyxNQUFNLEtBQUssYUFBYSxDQUFDLEdBQUcsS0FBSyxDQUFDO0FBQUEsRUFDN0M7QUFBQTtBQUFBO0FBQUEsRUFJQSxNQUFNLE1BQU0sU0FBeUIsY0FBYyxNQUFNO0FBQ3JELFVBQU0sVUFBVSxJQUFJLElBQUksS0FBSyxLQUFLO0FBRWxDLFVBQU0sY0FBYyxLQUFLLE1BQU0sS0FBSyxVQUFRLEtBQUssSUFBSSxTQUFTO0FBQzlELFFBQUksUUFBUSxZQUFZLGFBQWE7QUFDakMsVUFBSTtBQUVBLFlBQUksUUFBUSxVQUFVO0FBQ2xCLGtCQUFRLFdBQVc7QUFDbkIscUJBQVcsUUFBUSxLQUFLLE9BQU87QUFDM0Isa0JBQU0sS0FBSyxRQUFRLE1BQU07QUFDekIsaUJBQUssT0FBTyxDQUFDO0FBQUEsVUFDakI7QUFBQSxRQUNKO0FBR0EsbUJBQVcsUUFBUSxLQUFLLE9BQU87QUFDM0IsY0FBSSxDQUFDLEtBQUssSUFBSSxXQUFXO0FBQ3JCO0FBQUEsVUFDSjtBQUNBLGdCQUFNLFFBQVEsVUFBVSxLQUFLLE9BQU87QUFBQSxRQUN4QztBQUFBLE1BQ0osU0FBUyxHQUFHO0FBQ1IsZ0JBQVEsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRCxnQkFBUSxLQUFLLENBQUM7QUFBQSxNQUNsQjtBQUFBLElBQ0o7QUFFQSxXQUFPLFFBQVEsTUFBTTtBQUNqQixVQUFJO0FBRUosWUFBTyxNQUFLLFFBQVEsU0FBUztBQUN6QixtQkFBVyxPQUFPLEtBQUssY0FBYztBQUNqQyxjQUFJLElBQUksU0FBUztBQUNiLHFCQUFTO0FBQUEsVUFDYjtBQUFBLFFBQ0o7QUFDQTtBQUFBLE1BQ0o7QUFFQSxVQUFJLENBQUMsTUFBTTtBQUNQLGNBQU0sSUFBSSxNQUFNLHVFQUF1RTtBQUFBLE1BQzNGO0FBQ0EsVUFBSSxLQUFLLFdBQVcsUUFBUSxlQUFlO0FBQ3ZDLGNBQU0sUUFBUSxNQUFNLEtBQUssT0FBTztBQUNoQyxhQUFLLEtBQUssYUFBWSxvQkFBSSxLQUFLLEdBQUUsWUFBWTtBQUFBLE1BQ2pELFdBQVcsYUFBYTtBQUNwQixZQUFJLFNBQVMsRUFBRSxLQUFLLGNBQWMsS0FBSyxHQUFHO0FBQUEsTUFDOUM7QUFFQSxjQUFRLE9BQU8sSUFBSTtBQUFBLElBQ3ZCO0FBQUEsRUFDSjtBQUFBLEVBRUEsVUFBVTtBQUNOLGVBQVcsUUFBUSxLQUFLLE9BQU87QUFDM0IsWUFBTSxXQUFXLEtBQUssSUFBSSxNQUFNLE1BQU07QUFDdEMsZUFBUyxLQUFLLFFBQVEsS0FBSyxJQUFJLElBQUk7QUFDbkMsZUFBUyxLQUFLLFlBQVksV0FBVyxLQUFLLFVBQVUsQ0FBQztBQUNyRCxlQUFTLEtBQUssU0FBUyxXQUFXLEtBQUssS0FBSyxhQUFhLENBQUMsQ0FBQztBQUMzRCxlQUFTLEtBQUssU0FBUyxLQUFLLFVBQVUsT0FBTyxJQUFJLElBQUksS0FBSyxJQUFJLE9BQU8sSUFBSSxNQUFNLElBQUksQ0FBQztBQUNwRixlQUFTLEtBQUssZ0JBQWdCLEtBQUssYUFBYSxJQUFJLFNBQVMsRUFBRSxLQUFLLElBQUksQ0FBQztBQUN6RSxlQUFTLE1BQU07QUFBQSxJQUNuQjtBQUFBLEVBQ0o7QUFBQSxFQUVBLGFBQWEsYUFBYSxPQUFxQjtBQUMzQyxVQUFNLFFBQVEsSUFBSSxNQUFNLEtBQUs7QUFFN0IsVUFBTSxRQUFRO0FBQUEsTUFDVixNQUFNLE1BQU0sSUFBSSxPQUFNLFNBQVE7QUFDMUIsWUFBSSxLQUFLLElBQUksUUFBUSxtQkFBbUIsR0FBRztBQUN2QyxlQUFLLE9BQU8sTUFBTSxLQUFLLElBQUksU0FBUyxtQkFBbUI7QUFBQSxRQUMzRDtBQUVBLGFBQUssYUFBYSxNQUFNLEtBQUssSUFBSSxhQUFhLGdCQUFnQixPQUFPLE1BQU07QUFFM0UsZUFBTztBQUFBLE1BQ1gsQ0FBQztBQUFBLElBQ0w7QUFFQSxVQUFNLFFBQVEsTUFBa0I7QUFDaEMsYUFBUyxhQUFhLE1BQWtCO0FBQ3BDLFVBQUksTUFBTSxRQUFRLElBQUksTUFBTSxJQUFJO0FBQzVCLGNBQU0sS0FBSyxJQUFJO0FBQ2YsY0FBTSxJQUFJLG1CQUFtQix3QkFBd0IsTUFBTSxJQUFJLFNBQVMsRUFBRSxLQUFLLFVBQUssQ0FBQyxFQUFFO0FBQUEsTUFDM0Y7QUFDQSxZQUFNLEtBQUssSUFBSTtBQUNmLGlCQUFXLE9BQU8sS0FBSyxjQUFjO0FBQ2pDLHFCQUFhLEdBQUc7QUFBQSxNQUNwQjtBQUNBLFlBQU0sSUFBSTtBQUFBLElBQ2Q7QUFDQSxlQUFXLFFBQVEsTUFBTSxPQUFPO0FBQzVCLG1CQUFhLElBQUk7QUFBQSxJQUNyQjtBQUVBLFdBQU87QUFBQSxFQUNYO0FBQUEsRUFFQSxhQUFhLFdBQVcsV0FBb0I7QUFDeEMsVUFBTSxhQUFhLFVBQVUsS0FBSztBQUVsQyxVQUFNLFVBQVUsQ0FBQztBQUNqQixVQUFNLFVBQVUsQ0FBQztBQUNqQixlQUFXLFFBQVEsV0FBVyxPQUFPLEdBQUc7QUFDcEMsWUFBTSxNQUFNLElBQUksUUFBUSxFQUFFLE1BQU0sVUFBVSxRQUFRLElBQUksRUFBRSxDQUFDO0FBQ3pELGNBQVEsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJO0FBQzdCLGNBQVEsSUFBSSxLQUFLLElBQUksSUFBSTtBQUFBLFFBQ3JCO0FBQUEsUUFDQSxTQUFTLElBQUksUUFBUSxHQUFHO0FBQUEsUUFDeEIsY0FBYyxDQUFDO0FBQUEsUUFDZixNQUFNLENBQUM7QUFBQSxRQUNQLFlBQVk7QUFBQSxRQUVaLElBQUksWUFBWTtBQUNaLGlCQUFPLEtBQUssS0FBSyxZQUFZLElBQUksS0FBSyxLQUFLLEtBQUssU0FBUyxFQUFFLFFBQVEsSUFBSTtBQUFBLFFBQzNFO0FBQUEsUUFFQSxJQUFJLFVBQVU7QUFDVixpQkFDSSxLQUFLLGFBQWEsS0FBSyxhQUN2QixDQUFDLENBQUMsS0FBSyxhQUFhO0FBQUEsWUFDaEIsU0FDSSxJQUFJLFdBQ0gsSUFBSSxZQUFZLEtBQUssY0FDakIsSUFBSSxLQUFLLFdBQVcsVUFDakIsSUFBSSxLQUFLLFdBQVcsS0FBSyxLQUFLLG9CQUFvQixJQUFJLElBQUksSUFBSTtBQUFBLFVBQzlFO0FBQUEsUUFFUjtBQUFBLE1BQ0o7QUFBQSxJQUNKO0FBRUEsZUFBVyxRQUFRLFNBQVM7QUFDeEIsaUJBQVcsT0FBTyxRQUFRLElBQUksR0FBRztBQUM3QixjQUFNLFVBQVUsUUFBUSxHQUFHO0FBRzNCLFlBQUksV0FBVyxZQUFZLFFBQVEsSUFBSSxHQUFHO0FBQ3RDLGtCQUFRLElBQUksRUFBRSxhQUFhLEtBQUssT0FBTztBQUFBLFFBQzNDO0FBQUEsTUFDSjtBQUFBLElBQ0o7QUFFQSxXQUFPO0FBQUEsRUFDWDtBQUNKO0FBY0EsU0FBUyxXQUFXLE1BQXVCO0FBQ3ZDLE1BQUksQ0FBQyxNQUFNO0FBQ1AsV0FBTyxPQUFPLElBQUksSUFBSSxPQUFPO0FBQUEsRUFDakM7QUFDQSxNQUFJLE9BQU8sU0FBUyxVQUFVO0FBQzFCLFdBQU8sSUFBSSxLQUFLLElBQUksRUFBRSxRQUFRO0FBQUEsRUFDbEM7QUFDQSxTQUFPLElBQUksS0FBSyxRQUFPLG9CQUFJLEtBQUssR0FBRSxrQkFBa0IsQ0FBQyxFQUFFLFlBQVksRUFBRSxNQUFNLEdBQUcsRUFBRSxDQUFDLEVBQUUsUUFBUSxLQUFLLEdBQUc7QUFDdkc7QUFFQSxTQUFTLFVBQVUsTUFBa0I7QUFDakMsU0FBTyxLQUFLLElBQUksS0FBSyxRQUFRLGNBQWMsRUFBRTtBQUNqRDsiLAogICJuYW1lcyI6IFsibm9kZSJdCn0K
|
|
193
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2J1aWxkaW5nL2dyYXBoLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCBjb2xvcnMgZnJvbSBcImFuc2ktY29sb3JzXCI7XG5pbXBvcnQgeyBKc29uTm90Rm91bmRFcnJvciwgUGFja2FnZSB9IGZyb20gXCIuLi91dGlsL3BhY2thZ2UuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4uL3V0aWwvcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IEludGVybmFsQnVpbGRFcnJvciB9IGZyb20gXCIuL2Vycm9yLmpzXCI7XG5pbXBvcnQgeyBQcm9qZWN0QnVpbGRlciB9IGZyb20gXCIuL3Byb2plY3QtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgQlVJTERfSU5GT19MT0NBVElPTiwgQnVpbGRJbmZvcm1hdGlvbiwgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3QuanNcIjtcblxuLyoqXG4gKiBHcmFwaCBvZiBkZXBlbmRlbmNpZXMgZm9yIHdvcmtzcGFjZSBwYWNrYWdlcy5cbiAqXG4gKiBXZSB1c2UgdGhpcyBpbmZvcm1hdGlvbiB0byBkZXRlcm1pbmUgd2hpY2ggcGFja2FnZXMgYXJlIFwiZGlydHlcIiBhbmQgbmVlZCByZWJ1aWxkLiAgSW4gdGhlIGZ1dHVyZSB3ZSBjYW4gYWxzbyB1c2UgZm9yXG4gKiBwYXJhbGxlbCBidWlsZCwgb25seSB0cmlja3kgcGFydCB0aGVyZSBpcyBzaG93aW5nIHN0YXR1cy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoIHtcbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocmVhZG9ubHkgbm9kZXM6IEdyYXBoLk5vZGVbXSkge31cblxuICAgIGdldChuYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMubm9kZXMuZmluZChub2RlID0+IG5vZGUucGtnLm5hbWUgPT09IG5hbWUpO1xuICAgICAgICBpZiAobm9kZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBsb2NhdGUgcGFja2FnZSBcIiR7bmFtZX1cImApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBub2RlO1xuICAgIH1cblxuICAgIHN0YXRpYyBhc3luYyBsb2FkKHBrZyA9IFBhY2thZ2Uud29ya3NwYWNlKSB7XG4gICAgICAgIGNvbnN0IG5vZGVNYXAgPSBhd2FpdCB0aGlzLiNsb2FkTm9kZXMocGtnLndvcmtzcGFjZSk7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLiNjcmVhdGVHcmFwaChPYmplY3QudmFsdWVzKG5vZGVNYXApKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXN5bmMgZm9yUHJvamVjdChwYXRoOiBzdHJpbmcpOiBQcm9taXNlPEdyYXBoIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGxldCB3b3Jrc3BhY2U7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB3b3Jrc3BhY2UgPSBQYWNrYWdlLndvcmtzcGFjZUZvcihwYXRoKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBKc29uTm90Rm91bmRFcnJvcikge1xuICAgICAgICAgICAgICAgIC8vIFByb2plY3QgaXMgbm90IGluIGEgd29ya3NwYWNlXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5vZGVNYXAgPSBhd2FpdCB0aGlzLiNsb2FkTm9kZXMod29ya3NwYWNlKTtcblxuICAgICAgICBjb25zdCByb290UGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiBwYXRoIH0pO1xuICAgICAgICBjb25zdCByb290Tm9kZSA9IG5vZGVNYXBbcm9vdFBrZy5uYW1lXTtcbiAgICAgICAgaWYgKCFyb290Tm9kZSkge1xuICAgICAgICAgICAgLy8gUHJvamVjdCByZXNpZGVzIHVuZGVyIGEgd29ya3NwYWNlIGJ1dCBpcyBub3QgcGFydCBvZiB0aGUgd29ya3NwYWNlXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBub2RlcyA9IG5ldyBTZXQ8R3JhcGguTm9kZT4oKTtcbiAgICAgICAgZnVuY3Rpb24gYWRkTm9kZShub2RlOiBHcmFwaC5Ob2RlKSB7XG4gICAgICAgICAgICBpZiAobm9kZXMuaGFzKG5vZGUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbm9kZXMuYWRkKG5vZGUpO1xuICAgICAgICAgICAgZm9yIChjb25zdCBkZXBlbmRlbmN5IG9mIG5vZGUuZGVwZW5kZW5jaWVzKSB7XG4gICAgICAgICAgICAgICAgYWRkTm9kZShkZXBlbmRlbmN5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGFkZE5vZGUocm9vdE5vZGUpO1xuXG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLiNjcmVhdGVHcmFwaChbLi4ubm9kZXNdKTtcbiAgICB9XG5cbiAgICAvLyBUT0RPIC0gcGFyYWxsZWxpemF0aW9uIHdpbGwgYmUgdHJpdmlhbCBleGNlcHQgbmVlZCB0byB1cGRhdGUgUHJvZ3Jlc3MgdG8gc3VwcG9ydCBkaXNwbGF5IG9mIG11bHRpcGxlIHNpbXVsdGFuZW91c1xuICAgIC8vIHRhc2tzXG4gICAgYXN5bmMgYnVpbGQoYnVpbGRlcjogUHJvamVjdEJ1aWxkZXIsIHNob3dTa2lwcGVkID0gdHJ1ZSkge1xuICAgICAgICBjb25zdCB0b0J1aWxkID0gbmV3IFNldCh0aGlzLm5vZGVzKTtcblxuICAgICAgICBjb25zdCBuZWVkc0NvbmZpZyA9IHRoaXMubm9kZXMuZmluZChub2RlID0+IG5vZGUucGtnLmhhc0NvbmZpZyk7XG4gICAgICAgIGlmIChidWlsZGVyLmhhc0NsZWFuIHx8IG5lZWRzQ29uZmlnKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIC8vIFdlIGNsZWFuIGFsbCBwYWNrYWdlcyBiZWZvcmUgZW5nYWdpbmcgdHlwZXNjcmlwdCBiZWNhdXNlIG90aGVyd2lzZSBpdCBzZWVtcyB0byBnZXQgY29uZnVzZWRcbiAgICAgICAgICAgICAgICBpZiAoYnVpbGRlci5oYXNDbGVhbikge1xuICAgICAgICAgICAgICAgICAgICBidWlsZGVyLmNsZWFyQ2xlYW4oKTtcbiAgICAgICAgICAgICAgICAgICAgZm9yIChjb25zdCBub2RlIG9mIHRoaXMubm9kZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IG5vZGUucHJvamVjdC5jbGVhbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgbm9kZS5pbmZvID0ge307XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBXZSBjb25maWd1cmUgZWFjaCBidWlsZCBiZWZvcmUgYnVpbGRpbmcgc28gdGhhdCBhbnkgZ2VuZXJhdGVkIGZpbGVzIGFyZSBpbiBwbGFjZSBiZWZvcmUgd2UgaW5pdGlhdGUgdGhlIGJ1aWxkXG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBub2RlIG9mIHRoaXMubm9kZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFub2RlLnBrZy5oYXNDb25maWcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IGJ1aWxkZXIuY29uZmlndXJlKG5vZGUucHJvamVjdCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJUZXJtaW5hdGluZyBkdWUgdG8gcHJlYnVpbGQgZXJyb3I6XCIsIGUpO1xuICAgICAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHdoaWxlICh0b0J1aWxkLnNpemUpIHtcbiAgICAgICAgICAgIGxldCBub2RlO1xuXG4gICAgICAgICAgICBub2RlczogZm9yIChub2RlIG9mIHRvQnVpbGQpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGRlcCBvZiBub2RlLmRlcGVuZGVuY2llcykge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGVwLmlzRGlydHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlIG5vZGVzO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIW5vZGUpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJJbnRlcm5hbCBsb2dpYyBlcnJvcjogTm8gdW5idWlsdCBwcm9qZWN0IGhhcyBmdWxseSBidWlsdCBkZXBlbmRlbmNpZXNcIik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAobm9kZS5pc0RpcnR5IHx8IGJ1aWxkZXIudW5jb25kaXRpb25hbCkge1xuICAgICAgICAgICAgICAgIGF3YWl0IGJ1aWxkZXIuYnVpbGQobm9kZS5wcm9qZWN0KTtcbiAgICAgICAgICAgICAgICBub2RlLmluZm8udGltZXN0YW1wID0gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChzaG93U2tpcHBlZCkge1xuICAgICAgICAgICAgICAgIG5ldyBQcm9ncmVzcygpLnNraXAoXCJVcCB0byBkYXRlXCIsIG5vZGUucGtnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdG9CdWlsZC5kZWxldGUobm9kZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBkaXNwbGF5KCkge1xuICAgICAgICBmb3IgKGNvbnN0IG5vZGUgb2YgdGhpcy5ub2Rlcykge1xuICAgICAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBub2RlLnBrZy5zdGFydChcIk5vZGVcIik7XG4gICAgICAgICAgICBwcm9ncmVzcy5pbmZvKFwicGF0aFwiLCBub2RlLnBrZy5wYXRoKTtcbiAgICAgICAgICAgIHByb2dyZXNzLmluZm8oXCJtb2RpZmllZFwiLCBmb3JtYXRUaW1lKG5vZGUubW9kaWZ5VGltZSkpO1xuICAgICAgICAgICAgcHJvZ3Jlc3MuaW5mbyhcImJ1aWx0XCIsIGZvcm1hdFRpbWUobm9kZS5pbmZvLnRpbWVzdGFtcCA/PyAwKSk7XG4gICAgICAgICAgICBwcm9ncmVzcy5pbmZvKFwiZGlydHlcIiwgbm9kZS5pc0RpcnR5ID8gY29sb3JzLmRpbS5yZWQoXCJ5ZXNcIikgOiBjb2xvcnMuZGltLmdyZWVuKFwibm9cIikpO1xuICAgICAgICAgICAgcHJvZ3Jlc3MuaW5mbyhcImRlcGVuZGVuY2llc1wiLCBub2RlLmRlcGVuZGVuY2llcy5tYXAoZm9ybWF0RGVwKS5qb2luKFwiLCBcIikpO1xuICAgICAgICAgICAgcHJvZ3Jlc3MuY2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHN0YXRpYyBhc3luYyAjY3JlYXRlR3JhcGgobm9kZXM6IEdyYXBoLk5vZGVbXSkge1xuICAgICAgICBjb25zdCBncmFwaCA9IG5ldyBHcmFwaChub2Rlcyk7XG5cbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgICAgICBncmFwaC5ub2Rlcy5tYXAoYXN5bmMgbm9kZSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKG5vZGUucGtnLmhhc0ZpbGUoQlVJTERfSU5GT19MT0NBVElPTikpIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZS5pbmZvID0gYXdhaXQgbm9kZS5wa2cucmVhZEpzb24oQlVJTERfSU5GT19MT0NBVElPTik7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbm9kZS5tb2RpZnlUaW1lID0gYXdhaXQgbm9kZS5wa2cubGFzdE1vZGlmaWVkKFwicGFja2FnZS5qc29uXCIsIFwic3JjXCIsIFwidGVzdFwiKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgc3RhY2sgPSBBcnJheTxHcmFwaC5Ob2RlPigpO1xuICAgICAgICBmdW5jdGlvbiBmaW5kQ2lyY3VsYXIobm9kZTogR3JhcGguTm9kZSkge1xuICAgICAgICAgICAgaWYgKHN0YWNrLmluZGV4T2Yobm9kZSkgIT09IC0xKSB7XG4gICAgICAgICAgICAgICAgc3RhY2sucHVzaChub2RlKTtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW50ZXJuYWxCdWlsZEVycm9yKGBDaXJjdWxhciBkZXBlbmRlbmN5OiAke3N0YWNrLm1hcChmb3JtYXREZXApLmpvaW4oXCIgXHUyNUI4IFwiKX1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0YWNrLnB1c2gobm9kZSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGRlcCBvZiBub2RlLmRlcGVuZGVuY2llcykge1xuICAgICAgICAgICAgICAgIGZpbmRDaXJjdWxhcihkZXApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3RhY2sucG9wKCk7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChjb25zdCBub2RlIG9mIGdyYXBoLm5vZGVzKSB7XG4gICAgICAgICAgICBmaW5kQ2lyY3VsYXIobm9kZSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZ3JhcGg7XG4gICAgfVxuXG4gICAgc3RhdGljIGFzeW5jICNsb2FkTm9kZXMod29ya3NwYWNlOiBQYWNrYWdlKSB7XG4gICAgICAgIGNvbnN0IHdvcmtzcGFjZXMgPSB3b3Jrc3BhY2UuanNvbi53b3Jrc3BhY2VzO1xuICAgICAgICBpZiAod29ya3NwYWNlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHdvcmtzcGFjZXMgZGVmaW5lZCBpbiAke3dvcmtzcGFjZS5uYW1lfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgbm9kZU1hcCA9IHt9IGFzIFJlY29yZDxzdHJpbmcsIEdyYXBoLk5vZGU+O1xuICAgICAgICBjb25zdCBhbGxEZXBzID0ge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nW10+O1xuICAgICAgICBmb3IgKGNvbnN0IHBhdGggb2Ygd29ya3NwYWNlcy52YWx1ZXMoKSkge1xuICAgICAgICAgICAgY29uc3QgcGtnID0gbmV3IFBhY2thZ2UoeyBwYXRoOiB3b3Jrc3BhY2UucmVzb2x2ZShwYXRoKSB9KTtcbiAgICAgICAgICAgIGFsbERlcHNbcGtnLm5hbWVdID0gcGtnLmRlcGVuZGVuY2llcztcbiAgICAgICAgICAgIG5vZGVNYXBbcGtnLm5hbWVdID0ge1xuICAgICAgICAgICAgICAgIHBrZyxcbiAgICAgICAgICAgICAgICBwcm9qZWN0OiBuZXcgUHJvamVjdChwa2cpLFxuICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogW10sXG4gICAgICAgICAgICAgICAgaW5mbzoge30sXG4gICAgICAgICAgICAgICAgbW9kaWZ5VGltZTogMCxcblxuICAgICAgICAgICAgICAgIGdldCBidWlsZFRpbWUoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmluZm8udGltZXN0YW1wID8gbmV3IERhdGUodGhpcy5pbmZvLnRpbWVzdGFtcCkuZ2V0VGltZSgpIDogMDtcbiAgICAgICAgICAgICAgICB9LFxuXG4gICAgICAgICAgICAgICAgZ2V0IGlzRGlydHkoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm1vZGlmeVRpbWUgPiB0aGlzLmJ1aWxkVGltZSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgISF0aGlzLmRlcGVuZGVuY2llcy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcCA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXAuaXNEaXJ0eSB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVwLmJ1aWxkVGltZSA+IHRoaXMuYnVpbGRUaW1lICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVwLmluZm8uYXBpU2hhID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXAuaW5mby5hcGlTaGEgIT09IHRoaXMuaW5mby5kZXBlbmRlbmN5QXBpU2hhcz8uW2RlcC5wa2cubmFtZV0pKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAoY29uc3QgbmFtZSBpbiBhbGxEZXBzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGRlcCBvZiBhbGxEZXBzW25hbWVdKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZGVwTm9kZSA9IG5vZGVNYXBbZGVwXTtcblxuICAgICAgICAgICAgICAgIC8vIE5vdGUgLS0gYWxsb3cgbm9kZXMgdG8gcmVmZXJlbmNlIHRoZW1zZWx2ZXMsIHNlZW1zIHRvIGJlIG5lY2Vzc2FyeSBvbiB0b29scyBmb3IgdXNlIG9mIHRzY1xuICAgICAgICAgICAgICAgIGlmIChkZXBOb2RlICYmIGRlcE5vZGUgIT09IG5vZGVNYXBbbmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgbm9kZU1hcFtuYW1lXS5kZXBlbmRlbmNpZXMucHVzaChkZXBOb2RlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbm9kZU1hcDtcbiAgICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgR3JhcGgge1xuICAgIGV4cG9ydCBpbnRlcmZhY2UgTm9kZSB7XG4gICAgICAgIHBrZzogUGFja2FnZTtcbiAgICAgICAgcHJvamVjdDogUHJvamVjdDtcbiAgICAgICAgZGVwZW5kZW5jaWVzOiBOb2RlW107XG4gICAgICAgIGJ1aWxkVGltZTogbnVtYmVyO1xuICAgICAgICBpbmZvOiBCdWlsZEluZm9ybWF0aW9uO1xuICAgICAgICBtb2RpZnlUaW1lOiBudW1iZXI7XG4gICAgICAgIGlzRGlydHk6IGJvb2xlYW47XG4gICAgfVxufVxuXG5mdW5jdGlvbiBmb3JtYXRUaW1lKHRpbWU6IG51bWJlciB8IHN0cmluZykge1xuICAgIGlmICghdGltZSkge1xuICAgICAgICByZXR1cm4gY29sb3JzLmRpbS5yZWQoXCJuZXZlclwiKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB0aW1lID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHRpbWUgPSBuZXcgRGF0ZSh0aW1lKS5nZXRUaW1lKCk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgRGF0ZSh0aW1lIC0gbmV3IERhdGUoKS5nZXRUaW1lem9uZU9mZnNldCgpKS50b0lTT1N0cmluZygpLnNwbGl0KFwiLlwiKVswXS5yZXBsYWNlKFwiVFwiLCBcIiBcIik7XG59XG5cbmZ1bmN0aW9uIGZvcm1hdERlcChub2RlOiBHcmFwaC5Ob2RlKSB7XG4gICAgcmV0dXJuIG5vZGUucGtnLm5hbWUucmVwbGFjZSgvXkBtYXR0ZXJcXC8vLCBcIlwiKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxPQUFPLFlBQVk7QUFDbkIsU0FBUyxtQkFBbUIsZUFBZTtBQUMzQyxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLDBCQUEwQjtBQUVuQyxTQUFTLHFCQUF1QyxlQUFlO0FBUXhELE1BQU0sTUFBTTtBQUFBLEVBQ0wsWUFBcUIsT0FBcUI7QUFBckI7QUFBQSxFQUFzQjtBQUFB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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/building/graph.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,OAAO,YAAY;AACnB,SAAS,mBAAmB,eAAe;AAC3C,SAAS,gBAAgB;AACzB,SAAS,0BAA0B;AAEnC,SAAS,qBAAuC,eAAe;AAQxD,MAAM,MAAM;AAAA,EACL,YAAqB,OAAqB;AAArB;AAAA,EAAsB;AAAA,EAErD,IAAI,MAAc;AACd,UAAM,OAAO,KAAK,MAAM,KAAK,CAAAA,UAAQA,MAAK,IAAI,SAAS,IAAI;AAC3D,QAAI,SAAS,QAAW;AACpB,YAAM,IAAI,MAAM,0BAA0B,IAAI,GAAG;AAAA,IACrD;AACA,WAAO;AAAA,EACX;AAAA,EAEA,aAAa,KAAK,MAAM,QAAQ,WAAW;AACvC,UAAM,UAAU,MAAM,KAAK,WAAW,IAAI,SAAS;AACnD,WAAO,MAAM,KAAK,aAAa,OAAO,OAAO,OAAO,CAAC;AAAA,EACzD;AAAA,EAEA,aAAa,WAAW,MAA0C;AAC9D,QAAI;AACJ,QAAI;AACA,kBAAY,QAAQ,aAAa,IAAI;AAAA,IACzC,SAAS,GAAG;AACR,UAAI,aAAa,mBAAmB;AAEhC;AAAA,MACJ;AACA,YAAM;AAAA,IACV;AAEA,UAAM,UAAU,MAAM,KAAK,WAAW,SAAS;AAE/C,UAAM,UAAU,IAAI,QAAQ,EAAE,KAAW,CAAC;AAC1C,UAAM,WAAW,QAAQ,QAAQ,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["node"]
|
|
6
6
|
}
|
|
@@ -25,7 +25,7 @@ export declare class Package {
|
|
|
25
25
|
});
|
|
26
26
|
get name(): string;
|
|
27
27
|
get version(): string;
|
|
28
|
-
get exports():
|
|
28
|
+
get exports(): Exports | undefined;
|
|
29
29
|
get hasCodegen(): boolean;
|
|
30
30
|
resolve(...paths: string[]): string;
|
|
31
31
|
relative(path: string): string;
|
|
@@ -66,13 +66,24 @@ export declare class Package {
|
|
|
66
66
|
listModules(source: boolean, ...conditions: string[]): Record<string, string>;
|
|
67
67
|
}
|
|
68
68
|
export type PackageJson = {
|
|
69
|
-
name
|
|
70
|
-
version
|
|
71
|
-
imports
|
|
69
|
+
name?: string;
|
|
70
|
+
version?: string;
|
|
71
|
+
imports?: Record<string, string>;
|
|
72
72
|
matter?: {
|
|
73
73
|
test?: boolean;
|
|
74
74
|
};
|
|
75
75
|
scripts?: Record<string, string>;
|
|
76
|
-
|
|
76
|
+
exports?: Exports;
|
|
77
|
+
module?: string;
|
|
78
|
+
main?: string;
|
|
79
|
+
workspaces?: Array<string>;
|
|
80
|
+
dependencies?: Record<string, string>;
|
|
81
|
+
devDependencies?: Record<string, string>;
|
|
82
|
+
[key: string]: unknown;
|
|
77
83
|
};
|
|
84
|
+
type Conditions = {
|
|
85
|
+
[name: string]: Exports;
|
|
86
|
+
};
|
|
87
|
+
type Exports = string | Conditions | Record<string, Conditions>;
|
|
88
|
+
export {};
|
|
78
89
|
//# sourceMappingURL=package.d.ts.map
|
|
@@ -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;AA4BtC,qBAAa,OAAO;;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;gBAGP,EACR,IAAU,EACV,IAAI,GACP,GAAE;QACC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACZ;IA2BN,IAAI,IAAI,WAEP;IAED,IAAI,OAAO,WAEV;IAED,IAAI,OAAO,
|
|
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
|
@@ -74,10 +74,10 @@ class Package {
|
|
|
74
74
|
this.hasConfig = this.hasFile(this.resolve(CONFIG_PATH));
|
|
75
75
|
}
|
|
76
76
|
get name() {
|
|
77
|
-
return this.json.name
|
|
77
|
+
return this.json.name ?? `<${this.path}>`;
|
|
78
78
|
}
|
|
79
79
|
get version() {
|
|
80
|
-
return this.json.version;
|
|
80
|
+
return this.json.version ?? "?";
|
|
81
81
|
}
|
|
82
82
|
get exports() {
|
|
83
83
|
return this.json.exports;
|
|
@@ -179,8 +179,8 @@ class Package {
|
|
|
179
179
|
if (!name.startsWith(".")) {
|
|
180
180
|
name = `./${name}`;
|
|
181
181
|
}
|
|
182
|
-
const exportDetail = this.exports?.[name];
|
|
183
|
-
if (exportDetail) {
|
|
182
|
+
const exportDetail = typeof this.exports === "object" ? this.exports?.[name] : void 0;
|
|
183
|
+
if (typeof exportDetail === "object") {
|
|
184
184
|
const exp = findExportCondition(exportDetail, type);
|
|
185
185
|
if (exp) {
|
|
186
186
|
return this.resolve(exp);
|
|
@@ -327,6 +327,9 @@ function find(startDir, selector) {
|
|
|
327
327
|
}
|
|
328
328
|
function selectFormats(json) {
|
|
329
329
|
let esm, cjs;
|
|
330
|
+
if (typeof json !== "object") {
|
|
331
|
+
throw new Error(`Invalid package JSON ${typeof json}`);
|
|
332
|
+
}
|
|
330
333
|
if (json.type === "module") {
|
|
331
334
|
esm = true;
|
|
332
335
|
cjs = json.main !== void 0 && json.module !== void 0 || !!Object.values(json.exports ?? {}).find((exp) => exp.require);
|
|
@@ -422,4 +425,4 @@ export {
|
|
|
422
425
|
JsonNotFoundError,
|
|
423
426
|
Package
|
|
424
427
|
};
|
|
425
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcGFja2FnZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IDIwMjItMjAyNSBNYXR0ZXIuanMgQXV0aG9yc1xuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBleGlzdHNTeW5jLCByZWFkRmlsZVN5bmMsIHN0YXRTeW5jIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbmltcG9ydCB7IHJlYWRkaXIsIHJlYWRGaWxlLCBzdGF0LCB3cml0ZUZpbGUgfSBmcm9tIFwibm9kZTpmcy9wcm9taXNlc1wiO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiwgcmVsYXRpdmUsIHJlc29sdmUgfSBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBpZ25vcmVFcnJvciwgaWdub3JlRXJyb3JTeW5jIH0gZnJvbSBcIi4vZXJyb3JzLmpzXCI7XG5pbXBvcnQgeyBpc0ZpbGUsIG1heWJlUmVhZEpzb25TeW5jLCBtYXliZVN0YXRTeW5jIH0gZnJvbSBcIi4vZmlsZS5qc1wiO1xuaW1wb3J0IHsgZ2xvYlN5bmMgfSBmcm9tIFwiLi9nbG9iLmpzXCI7XG5pbXBvcnQgeyBJbXBvcnRBbGlhc2VzIH0gZnJvbSBcIi4vaW1wb3J0LWFsaWFzZXMuanNcIjtcbmltcG9ydCB7IFByb2dyZXNzIH0gZnJvbSBcIi4vcHJvZ3Jlc3MuanNcIjtcbmltcG9ydCB7IHRvb2xzUGF0aCB9IGZyb20gXCIuL3Rvb2xzLXBhdGguY2pzXCI7XG5cbmV4cG9ydCBjbGFzcyBKc29uTm90Rm91bmRFcnJvciBleHRlbmRzIEVycm9yIHt9XG5cbmV4cG9ydCBjb25zdCBDT05GSUdfUEFUSCA9IGBzcmMvYnVpbGQuY29uZmlnLnRzYDtcbmV4cG9ydCBjb25zdCBDT0RFR0VOX1BBVEggPSBgY29kZWdlbmA7XG5cbmNvbnN0IHBhY2thZ2VGb3JQYXRoID0ge30gYXMgUmVjb3JkPHN0cmluZywgUGFja2FnZSB8IHVuZGVmaW5lZCB8IG51bGw+O1xuXG5mdW5jdGlvbiBmaW5kSnNvbihmaWxlbmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmcgPSBcIi5cIiwgdGl0bGU/OiBzdHJpbmcpIHtcbiAgICBwYXRoID0gcmVzb2x2ZShwYXRoKTtcbiAgICB3aGlsZSAodHJ1ZSkge1xuICAgICAgICBjb25zdCBqc29uID0gaWdub3JlRXJyb3JTeW5jKFtcIkVOT0VOVFwiLCBcIkVOT1RESVJcIl0sICgpID0+XG4gICAgICAgICAgICBKU09OLnBhcnNlKHJlYWRGaWxlU3luYyhyZXNvbHZlKHBhdGgsIGZpbGVuYW1lKSkudG9TdHJpbmcoKSksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGpzb24pIHtcbiAgICAgICAgICAgIGlmICh0aXRsZSA9PT0gdW5kZWZpbmVkIHx8IGpzb24ubmFtZSA9PT0gdGl0bGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4geyByb290OiBwYXRoLCBqc29uIH07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcGFyZW50ID0gZGlybmFtZShwYXRoKTtcbiAgICAgICAgaWYgKHBhcmVudCA9PT0gcGF0aCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEpzb25Ob3RGb3VuZEVycm9yKGBDb3VsZCBub3QgbG9jYXRlICR7dGl0bGUgPz8gZmlsZW5hbWV9YCk7XG4gICAgICAgIH1cbiAgICAgICAgcGF0aCA9IHBhcmVudDtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGlzRGlyZWN0b3J5KHBhdGg6IHN0cmluZykge1xuICAgIHJldHVybiAhIWlnbm9yZUVycm9yU3luYyhcIkVOT0VOVFwiLCAoKSA9PiBzdGF0U3luYyhwYXRoKS5pc0RpcmVjdG9yeSgpKTtcbn1cblxuZXhwb3J0IGNsYXNzIFBhY2thZ2Uge1xuICAgIHBhdGg6IHN0cmluZztcbiAgICBqc29uOiBQYWNrYWdlSnNvbjtcbiAgICBzdXBwb3J0c0VzbTogYm9vbGVhbjtcbiAgICBzdXBwb3J0c0NqczogYm9vbGVhbjtcbiAgICBoYXNTcmM6IGJvb2xlYW47XG4gICAgaGFzVGVzdHM6IGJvb2xlYW47XG4gICAgaGFzQ29uZmlnOiBib29sZWFuO1xuICAgIGlzTGlicmFyeTogYm9vbGVhbjtcbiAgICAjaW1wb3J0QWxpYXNlcz86IEltcG9ydEFsaWFzZXM7XG5cbiAgICBjb25zdHJ1Y3Rvcih7XG4gICAgICAgIHBhdGggPSBcIi5cIixcbiAgICAgICAgbmFtZSxcbiAgICB9OiB7XG4gICAgICAgIHBhdGg/OiBzdHJpbmc7XG4gICAgICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgfSA9IHt9KSB7XG4gICAgICAgIGNvbnN0IHsgcm9vdCwganNvbiB9ID0gZmluZEpzb24oXCJwYWNrYWdlLmpzb25cIiwgcGF0aCwgbmFtZSk7XG4gICAgICAgIHRoaXMucGF0aCA9IHJvb3Q7XG4gICAgICAgIHRoaXMuanNvbiA9IGpzb247XG5cbiAgICAgICAgY29uc3QgeyBlc20sIGNqcyB9ID0gc2VsZWN0Rm9ybWF0cyh0aGlzLmpzb24pO1xuICAgICAgICB0aGlzLnN1cHBvcnRzRXNtID0gZXNtO1xuICAgICAgICB0aGlzLnN1cHBvcnRzQ2pzID0gY2pzO1xuXG4gICAgICAgIHRoaXMuaGFzU3JjID0gaXNEaXJlY3RvcnkodGhpcy5yZXNvbHZlKFwic3JjXCIpKTtcbiAgICAgICAgdGhpcy5oYXNUZXN0cyA9IGlzRGlyZWN0b3J5KHRoaXMucmVzb2x2ZShcInRlc3RcIikpO1xuXG4gICAgICAgIGNvbnN0IHJlZnMgPSBtYXliZVJlYWRKc29uU3luYyh0aGlzLnJlc29sdmUoXCJ0c2NvbmZpZy5qc29uXCIpKT8ucmVmZXJlbmNlcyBhcyB1bmRlZmluZWQgfCB7IHBhdGg6IHN0cmluZyB9W107XG4gICAgICAgIGlmIChyZWZzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJzcmNcIikpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5oYXNTcmMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghcmVmcy5maW5kKHJlZiA9PiB0aGlzLnJlc29sdmUocmVmLnBhdGgpID09PSB0aGlzLnJlc29sdmUoXCJ0ZXN0XCIpKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuaGFzVGVzdHMgPSBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNMaWJyYXJ5ID0gISEodGhpcy5qc29uLm1haW4gfHwgdGhpcy5qc29uLm1vZHVsZSB8fCB0aGlzLmpzb24uZXhwb3J0cyk7XG5cbiAgICAgICAgdGhpcy5oYXNDb25maWcgPSB0aGlzLmhhc0ZpbGUodGhpcy5yZXNvbHZlKENPTkZJR19QQVRIKSk7XG4gICAgfVxuXG4gICAgZ2V0IG5hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmpzb24ubmFtZTtcbiAgICB9XG5cbiAgICBnZXQgdmVyc2lvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuanNvbi52ZXJzaW9uO1xuICAgIH1cblxuICAgIGdldCBleHBvcnRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5qc29uLmV4cG9ydHM7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0NvZGVnZW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0RpcmVjdG9yeShDT0RFR0VOX1BBVEgpO1xuICAgIH1cblxuICAgIHJlc29sdmUoLi4ucGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHJldHVybiByZXNvbHZlKHRoaXMucGF0aCwgLi4ucGF0aHMpO1xuICAgIH1cblxuICAgIHJlbGF0aXZlKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVsYXRpdmUodGhpcy5wYXRoLCBwYXRoKTtcbiAgICB9XG5cbiAgICBhc3luYyBnbG9iKHBhdHRlcm46IHN0cmluZyB8IHN0cmluZ1tdKSB7XG4gICAgICAgIC8vIEdsb2Igb25seSB1bmRlcnN0YW5kcyBmb3J3YXJkLXNsYXNoIGFzIHNlcGFyYXRvciBiZWNhdXNlIHJlYXNvbnNcbiAgICAgICAgaWYgKHR5cGVvZiBwYXR0ZXJuID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICBwYXR0ZXJuID0gdGhpcy5yZXNvbHZlKHBhdHRlcm4pLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGF0dGVybiA9IHBhdHRlcm4ubWFwKHMgPT4gdGhpcy5yZXNvbHZlKHMpLnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEN1cnJlbnQgZ2xvYiBpbXBsZW1lbnRhdGlvbiBpc24ndCBhY3R1YWxseSBhc3luYyBhcyB0aGlzIGlzIGZhc3RlciBhbmQgd2Ugb25seSB3YWxrIHNtYWxsIGRpcmVjdG9yeSB0cmVlc1xuICAgICAgICByZXR1cm4gZ2xvYlN5bmMocGF0dGVybik7XG4gICAgfVxuXG4gICAgc3RhcnQod2hhdDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHByb2dyZXNzID0gbmV3IFByb2dyZXNzKCk7XG4gICAgICAgIHByb2dyZXNzLnN0YXJ0dXAod2hhdCwgdGhpcyk7XG4gICAgICAgIHJldHVybiBwcm9ncmVzcztcbiAgICB9XG5cbiAgICBhc3luYyBsYXN0TW9kaWZpZWQoLi4ucGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhc3RNb2RpZmllZEFic29sdXRlKHBhdGhzLm1hcChwID0+IHRoaXMucmVzb2x2ZShwKSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgbGFzdE1vZGlmaWVkQWJzb2x1dGUocGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIGxldCBtdGltZSA9IDA7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgcGF0aHMubWFwKGFzeW5jIHAgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXRzID0gYXdhaXQgaWdub3JlRXJyb3IoXCJFTk9FTlRcIiwgYXN5bmMgKCkgPT4gYXdhaXQgc3RhdChwKSk7XG4gICAgICAgICAgICAgICAgaWYgKCFzdGF0cykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGV0IHRoaXNNdGltZTtcbiAgICAgICAgICAgICAgICBpZiAoc3RhdHMuaXNEaXJlY3RvcnkoKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXRocyA9IChhd2FpdCByZWFkZGlyKHApKS5tYXAocDIgPT4gcmVzb2x2ZShwLCBwMikpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzTXRpbWUgPSBhd2FpdCB0aGlzLmxhc3RNb2RpZmllZEFic29sdXRlKHBhdGhzKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzTXRpbWUgPSBzdGF0cy5tdGltZU1zO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodGhpc010aW1lID4gbXRpbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgbXRpbWUgPSB0aGlzTXRpbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBtdGltZTtcbiAgICB9XG5cbiAgICBnZXQgZGVwZW5kZW5jaWVzKCkge1xuICAgICAgICBsZXQgcmVzdWx0ID0gQXJyYXk8c3RyaW5nPigpO1xuICAgICAgICBmb3IgKGNvbnN0IHR5cGUgb2YgW1wiZGVwZW5kZW5jaWVzXCIsIFwib3B0aW9uYWxEZXBlbmRlbmNpZXNcIiwgXCJkZXZEZXBlbmRlbmNpZXNcIiwgXCJwZWVyRGVwZW5kZW5jaWVzXCJdKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHRoaXMuanNvblt0eXBlXSA9PT0gXCJvYmplY3RcIiAmJiB0aGlzLmpzb25bdHlwZV0gIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBbLi4ucmVzdWx0LCAuLi5PYmplY3Qua2V5cyh0aGlzLmpzb25bdHlwZV0pXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gWy4uLm5ldyBTZXQocmVzdWx0KV07XG4gICAgfVxuXG4gICAgZ2V0IHdvcmtzcGFjZSgpIHtcbiAgICAgICAgcmV0dXJuIFBhY2thZ2Uud29ya3NwYWNlRm9yKHRoaXMucGF0aCk7XG4gICAgfVxuXG4gICAgZ2V0IGlzV29ya3NwYWNlKCkge1xuICAgICAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh0aGlzLmpzb24ud29ya3NwYWNlcyk7XG4gICAgfVxuXG4gICAgZ2V0IHJvb3QoKTogUGFja2FnZSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy53b3Jrc3BhY2U7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiBKc29uTm90Rm91bmRFcnJvcikpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHN0YXRpYyBzZXQgd29ya2luZ0Rpcih3ZDogc3RyaW5nKSB7XG4gICAgICAgIHdvcmtpbmdEaXIgPSB3ZDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0IHdvcmtzcGFjZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMud29ya3NwYWNlRm9yKHdvcmtpbmdEaXIpO1xuICAgIH1cblxuICAgIHN0YXRpYyB3b3Jrc3BhY2VGb3IoY3dkOiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF3b3Jrc3BhY2UpIHtcbiAgICAgICAgICAgIHdvcmtzcGFjZSA9IGZpbmQoY3dkLCBwa2cgPT4gQXJyYXkuaXNBcnJheShwa2cuanNvbi53b3Jrc3BhY2VzKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHdvcmtzcGFjZTtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0IHRvb2xzKCkge1xuICAgICAgICBpZiAoIXRvb2xzKSB7XG4gICAgICAgICAgICB0b29scyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogdG9vbHNQYXRoIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0b29scztcbiAgICB9XG5cbiAgICBzdGF0aWMgZmluZEV4cG9ydChuYW1lOiBzdHJpbmcsIHR5cGU6IFwiY2pzXCIgfCBcImVzbVwiID0gXCJlc21cIikge1xuICAgICAgICByZXR1cm4gdGhpcy53b3Jrc3BhY2UucmVzb2x2ZUltcG9ydChuYW1lLCB0eXBlKTtcbiAgICB9XG5cbiAgICByZXNvbHZlRXhwb3J0KG5hbWU6IHN0cmluZywgdHlwZTogXCJjanNcIiB8IFwiZXNtXCIgPSBcImVzbVwiKSB7XG4gICAgICAgIGlmICghbmFtZS5zdGFydHNXaXRoKFwiLlwiKSkge1xuICAgICAgICAgICAgbmFtZSA9IGAuLyR7bmFtZX1gO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGV4cG9ydERldGFpbCA9IHRoaXMuZXhwb3J0cz8uW25hbWVdO1xuXG4gICAgICAgIGlmIChleHBvcnREZXRhaWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGV4cCA9IGZpbmRFeHBvcnRDb25kaXRpb24oZXhwb3J0RGV0YWlsLCB0eXBlKTtcbiAgICAgICAgICAgIGlmIChleHApIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZXNvbHZlKGV4cCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobmFtZSA9PT0gXCIuXCIpIHtcbiAgICAgICAgICAgIGlmICh0eXBlID09PSBcImVzbVwiICYmIHRoaXMuanNvbi5tb2R1bGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5yZXNvbHZlKHRoaXMuanNvbi5tb2R1bGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHRoaXMuanNvbi5tYWluKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucmVzb2x2ZSh0aGlzLmpzb24ubWFpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZXNvbHZlIGV4cG9ydCAke25hbWV9IGluIHBhY2thZ2UgJHt0aGlzLm5hbWV9YCk7XG4gICAgfVxuXG4gICAgZmluZFBhY2thZ2UobmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGxldCByZXNvbHZlSW4gPSB0aGlzLnBhdGg7XG4gICAgICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICAgICAgICBpZiAoaXNEaXJlY3RvcnkocmVzb2x2ZShyZXNvbHZlSW4sIFwibm9kZV9tb2R1bGVzXCIsIG5hbWUpKSkge1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgbmV4dFJlc29sdmVJbiA9IGRpcm5hbWUocmVzb2x2ZUluKTtcbiAgICAgICAgICAgIGlmIChuZXh0UmVzb2x2ZUluID09PSByZXNvbHZlSW4pIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIG1vZHVsZSAke25hbWV9IGZyb20gJHt0aGlzLnBhdGh9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXNvbHZlSW4gPSBuZXh0UmVzb2x2ZUluO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFBhY2thZ2UuZm9yUGF0aChyZXNvbHZlKHJlc29sdmVJbiwgXCJub2RlX21vZHVsZXNcIiwgbmFtZSkpO1xuICAgIH1cblxuICAgIHJlc29sdmVJbXBvcnQobmFtZTogc3RyaW5nLCB0eXBlOiBcImNqc1wiIHwgXCJlc21cIiA9IFwiZXNtXCIpIHtcbiAgICAgICAgY29uc3Qgc2VnbWVudHMgPSBuYW1lLnNwbGl0KFwiL1wiKTtcbiAgICAgICAgbGV0IHBhY2thZ2VOYW1lID0gc2VnbWVudHMuc2hpZnQoKSBhcyBzdHJpbmc7XG4gICAgICAgIGlmIChwYWNrYWdlTmFtZS5zdGFydHNXaXRoKFwiQFwiKSAmJiBzZWdtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHBhY2thZ2VOYW1lID0gYCR7cGFja2FnZU5hbWV9LyR7c2VnbWVudHMuc2hpZnQoKX1gO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGtnID0gdGhpcy5maW5kUGFja2FnZShwYWNrYWdlTmFtZSk7XG5cbiAgICAgICAgcmV0dXJuIHBrZy5yZXNvbHZlRXhwb3J0KHNlZ21lbnRzLmxlbmd0aCA/IHNlZ21lbnRzLmpvaW4oXCIvXCIpIDogXCIuXCIsIHR5cGUpO1xuICAgIH1cblxuICAgIGhhc0ZpbGUocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuI21heWJlU3RhdChwYXRoKT8uaXNGaWxlKCk7XG4gICAgfVxuXG4gICAgaGFzRGlyZWN0b3J5KHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gISF0aGlzLiNtYXliZVN0YXQocGF0aCk/LmlzRGlyZWN0b3J5KCk7XG4gICAgfVxuXG4gICAgYXN5bmMgcmVhZEZpbGUocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiByZWFkRmlsZSh0aGlzLnJlc29sdmUocGF0aCksIFwidXRmLThcIik7XG4gICAgfVxuXG4gICAgcmVhZEZpbGVTeW5jKHBhdGg6IHN0cmluZykge1xuICAgICAgICByZXR1cm4gcmVhZEZpbGVTeW5jKHRoaXMucmVzb2x2ZShwYXRoKSwgXCJ1dGYtOFwiKTtcbiAgICB9XG5cbiAgICBhc3luYyB3cml0ZUZpbGUocGF0aDogc3RyaW5nLCBjb250ZW50czogdW5rbm93bikge1xuICAgICAgICBhd2FpdCB3cml0ZUZpbGUodGhpcy5yZXNvbHZlKHBhdGgpLCBgJHtjb250ZW50c31gKTtcbiAgICB9XG5cbiAgICBhc3luYyBzYXZlKCkge1xuICAgICAgICBhd2FpdCB0aGlzLndyaXRlRmlsZShqb2luKHRoaXMucGF0aCwgXCJwYWNrYWdlLmpzb25cIiksIEpTT04uc3RyaW5naWZ5KHRoaXMuanNvbiwgdW5kZWZpbmVkLCA0KSk7XG4gICAgfVxuXG4gICAgYXN5bmMgcmVhZEpzb24ocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHRleHQgPSBhd2FpdCB0aGlzLnJlYWRGaWxlKHBhdGgpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UodGV4dCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmICghKGUgaW5zdGFuY2VvZiBFcnJvcikpIHtcbiAgICAgICAgICAgICAgICBlID0gbmV3IEVycm9yKGAke2V9YCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAoZSBhcyBFcnJvcikubWVzc2FnZSA9IGBFcnJvciBwYXJzaW5nIFwiJHt0aGlzLnJlc29sdmUocGF0aCl9XCI6ICR7KGUgYXMgRXJyb3IpLm1lc3NhZ2V9YDtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyB3cml0ZUpzb24ocGF0aDogc3RyaW5nLCB2YWx1ZToge30pIHtcbiAgICAgICAgYXdhaXQgdGhpcy53cml0ZUZpbGUocGF0aCwgSlNPTi5zdHJpbmdpZnkodmFsdWUsIHVuZGVmaW5lZCwgNCkpO1xuICAgIH1cblxuICAgIHN0YXRpYyBtYXliZUZvclBhdGgocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIGZ1bmN0aW9uIGZpbmQocGF0aDogc3RyaW5nKTogUGFja2FnZSB8IG51bGwge1xuICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHBhY2thZ2VGb3JQYXRoW3BhdGhdO1xuICAgICAgICAgICAgaWYgKHJlc3VsdCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgaWYgKGV4aXN0c1N5bmMoam9pbihwYXRoLCBcInBhY2thZ2UuanNvblwiKSkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gbmV3IFBhY2thZ2UoeyBwYXRoIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmVudERpciA9IGRpcm5hbWUocGF0aCk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChwYXJlbnREaXIgPT09IHBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZpbmQocGFyZW50RGlyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcGFja2FnZUZvclBhdGhbcGF0aF0gPSByZXN1bHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzdWx0ID0gZmluZChwYXRoKTtcblxuICAgICAgICByZXR1cm4gcmVzdWx0ID8/IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZm9yUGF0aChwYXRoOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5tYXliZUZvclBhdGgocGF0aCk7XG4gICAgICAgIGlmIChyZXN1bHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBmaW5kIHBhY2thZ2UuanNvbiBmb3IgXCIke3BhdGh9XCJgKTtcbiAgICB9XG5cbiAgICBnZXQgaW1wb3J0QWxpYXNlcygpOiBJbXBvcnRBbGlhc2VzIHtcbiAgICAgICAgaWYgKHRoaXMuI2ltcG9ydEFsaWFzZXMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuI2ltcG9ydEFsaWFzZXM7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLiNpbXBvcnRBbGlhc2VzID0gbmV3IEltcG9ydEFsaWFzZXMoXG4gICAgICAgICAgICB0aGlzLmpzb24uaW1wb3J0cyxcbiAgICAgICAgICAgIFBhY2thZ2UubWF5YmVGb3JQYXRoKGRpcm5hbWUodGhpcy5wYXRoKSk/LmltcG9ydEFsaWFzZXMsXG4gICAgICAgICk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuI2ltcG9ydEFsaWFzZXM7XG4gICAgfVxuXG4gICAgZ2V0IG1vZHVsZXMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxpc3RNb2R1bGVzKGZhbHNlKTtcbiAgICB9XG5cbiAgICBnZXQgc291cmNlTW9kdWxlcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGlzdE1vZHVsZXModHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgbWFwIG9mIG1vZHVsZSBuYW1lIC0+IGltcGxlbWVudGF0aW9uIGZpbGUuICBJZiBcInNvdXJjZVwiIGlzIHRydWUsIHNlYXJjaGVzIHNvdXJjZSBmaWxlcyByYXRoZXIgdGhhblxuICAgICAqIHRyYW5zcGlsZWQgZmlsZXMuICBXZSBkbyB0aGlzIHJhdGhlciB0aGFuIGZpbmRpbmcgdHJhbnNwaWxhdGlvbiBmaWxlcyB0aGVuIG1hcHBpbmcgdG8gc291cmNlIGZpbGVzIHNvIHRoaXMgd29ya3NcbiAgICAgKiBldmVuIGlmIHRoZXJlIGlzbid0IGEgYnVpbGQuXG4gICAgICovXG4gICAgbGlzdE1vZHVsZXMoc291cmNlOiBib29sZWFuLCAuLi5jb25kaXRpb25zOiBzdHJpbmdbXSkge1xuICAgICAgICBpZiAoIWNvbmRpdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25kaXRpb25zID0gW3RoaXMuc3VwcG9ydHNFc20gPyBcImltcG9ydFwiIDogXCJyZXF1aXJlXCIsIFwiZGVmYXVsdFwiXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1vZHVsZXMgPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gICAgICAgIGNvbnN0IGV4cG9ydHMgPSB0aGlzLmV4cG9ydHM7XG4gICAgICAgIGlmICh0eXBlb2YgZXhwb3J0cyA9PT0gXCJvYmplY3RcIiAmJiBleHBvcnRzICE9PSBudWxsKSB7XG4gICAgICAgICAgICBmaW5kTW9kdWxlcyhzb3VyY2UsIG5ldyBTZXQoY29uZGl0aW9ucyksIG1vZHVsZXMsIHRoaXMubmFtZSwgdGhpcy5wYXRoLCBleHBvcnRzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtb2R1bGVzO1xuICAgIH1cblxuICAgICNtYXliZVN0YXQocGF0aDogc3RyaW5nKSB7XG4gICAgICAgIHJldHVybiBtYXliZVN0YXRTeW5jKHRoaXMucmVzb2x2ZShwYXRoKSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBQYWNrYWdlSnNvbiA9IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdmVyc2lvbjogc3RyaW5nO1xuICAgIGltcG9ydHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gICAgbWF0dGVyPzoge1xuICAgICAgICB0ZXN0PzogYm9vbGVhbjtcbiAgICB9O1xuICAgIHNjcmlwdHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn07XG5cbmxldCB3b3JraW5nRGlyID0gXCIuXCI7XG5sZXQgd29ya3NwYWNlOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xubGV0IHRvb2xzOiBQYWNrYWdlIHwgdW5kZWZpbmVkO1xuXG5mdW5jdGlvbiBmaW5kKHN0YXJ0RGlyOiBzdHJpbmcsIHNlbGVjdG9yOiAocGtnOiBQYWNrYWdlKSA9PiBib29sZWFuKTogUGFja2FnZSB7XG4gICAgbGV0IHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogc3RhcnREaXIgfSk7XG4gICAgd2hpbGUgKCFzZWxlY3Rvcihwa2cpKSB7XG4gICAgICAgIHBrZyA9IG5ldyBQYWNrYWdlKHsgcGF0aDogZGlybmFtZShwa2cucGF0aCkgfSk7XG4gICAgfVxuICAgIHJldHVybiBwa2c7XG59XG5cbmZ1bmN0aW9uIHNlbGVjdEZvcm1hdHMoanNvbjogYW55KSB7XG4gICAgbGV0IGVzbTogYm9vbGVhbiwgY2pzOiBib29sZWFuO1xuXG4gICAgaWYgKGpzb24udHlwZSA9PT0gXCJtb2R1bGVcIikge1xuICAgICAgICBlc20gPSB0cnVlO1xuICAgICAgICBjanMgPVxuICAgICAgICAgICAgKGpzb24ubWFpbiAhPT0gdW5kZWZpbmVkICYmIGpzb24ubW9kdWxlICE9PSB1bmRlZmluZWQpIHx8XG4gICAgICAgICAgICAhIU9iamVjdC52YWx1ZXMoanNvbi5leHBvcnRzID8/IHt9KS5maW5kKChleHA6IGFueSkgPT4gZXhwLnJlcXVpcmUpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGNqcyA9IHRydWU7XG4gICAgICAgIGVzbSA9ICEhanNvbi5tb2R1bGUgfHwgISFPYmplY3QudmFsdWVzKGpzb24uZXhwb3J0cyA/PyB7fSkuZmluZCgoZXhwOiBhbnkpID0+IGV4cC5pbXBvcnQpO1xuICAgIH1cblxuICAgIHJldHVybiB7IGVzbSwgY2pzIH07XG59XG5cbmZ1bmN0aW9uIGZpbmRFeHBvcnRDb25kaXRpb24oZGV0YWlsOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCB0eXBlOiBcImVzbVwiIHwgXCJjanNcIik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKHR5cGUgPT09IFwiZXNtXCIgJiYgZGV0YWlsLmltcG9ydCkge1xuICAgICAgICBsZXQgZXhwID0gZGV0YWlsLmltcG9ydDtcbiAgICAgICAgaWYgKGV4cCAmJiB0eXBlb2YgZXhwICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICBleHAgPSBmaW5kRXhwb3J0Q29uZGl0aW9uKGV4cCwgdHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGV4cCkge1xuICAgICAgICAgICAgcmV0dXJuIGV4cDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxldCBleHAgPSBkZXRhaWwucmVxdWlyZSA/PyBkZXRhaWwubm9kZSA/PyBkZXRhaWwuZGVmYXVsdDtcbiAgICBpZiAoZXhwICYmIHR5cGVvZiBleHAgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgZXhwID0gZmluZEV4cG9ydENvbmRpdGlvbihleHAsIHR5cGUpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgZXhwID09PSBcInN0cmluZ1wiKSB7XG4gICAgICAgIHJldHVybiBleHA7XG4gICAgfVxufVxuXG50eXBlIENvbmRpdGlvbnMgPSB7IFtuYW1lOiBzdHJpbmddOiBFeHBvcnRzIH07XG5cbnR5cGUgRXhwb3J0cyA9IHN0cmluZyB8IENvbmRpdGlvbnMgfCBSZWNvcmQ8c3RyaW5nLCBDb25kaXRpb25zPjtcblxuZnVuY3Rpb24gZmluZE1vZHVsZXMoXG4gICAgc291cmNlOiBib29sZWFuLFxuICAgIGNvbmRpdGlvbnM6IFNldDxzdHJpbmc+LFxuICAgIHRhcmdldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgICBwcmVmaXg6IHN0cmluZyxcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgZXhwb3J0czogRXhwb3J0cyxcbikge1xuICAgIGlmICh0eXBlb2YgZXhwb3J0cyA9PT0gXCJzdHJpbmdcIikge1xuICAgICAgICBhZGRNb2R1bGVHbG9icyhzb3VyY2UsIHRhcmdldCwgcHJlZml4LCBwYXRoLCBleHBvcnRzKTtcbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoZXhwb3J0cykpIHtcbiAgICAgICAgZm9yIChjb25zdCBlbnRyeSBvZiBleHBvcnRzKSB7XG4gICAgICAgICAgICBmaW5kTW9kdWxlcyhzb3VyY2UsIGNvbmRpdGlvbnMsIHRhcmdldCwgcHJlZml4LCBwYXRoLCBlbnRyeSk7XG4gICAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBleHBvcnRzID09PSBcIm9iamVjdFwiICYmIGV4cG9ydHMgIT09IG51bGwpIHtcbiAgICAgICAgbGV0IHNlbGVjdGVkQ29uZGl0aW9uID0gZmFsc2U7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIGV4cG9ydHMpIHtcbiAgICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aChcIi5cIikpIHtcbiAgICAgICAgICAgICAgICBmaW5kTW9kdWxlcyhzb3VyY2UsIGNvbmRpdGlvbnMsIHRhcmdldCwgam9pbihwcmVmaXgsIGtleSksIHBhdGgsIGV4cG9ydHNba2V5XSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKCFzZWxlY3RlZENvbmRpdGlvbiAmJiBjb25kaXRpb25zLmhhcyhrZXkpKSB7XG4gICAgICAgICAgICAgICAgZmluZE1vZHVsZXMoc291cmNlLCBjb25kaXRpb25zLCB0YXJnZXQsIHByZWZpeCwgcGF0aCwgZXhwb3J0c1trZXldKTtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZENvbmRpdGlvbiA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJNYWxmb3JtZWQgZXhwb3J0cyBmaWVsZCBpbiBwYWNrYWdlLmpzb25cIik7XG4gICAgfVxufVxuXG5mdW5jdGlvbiBhZGRNb2R1bGVHbG9icyhzb3VyY2U6IGJvb2xlYW4sIHRhcmdldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiwgbmFtZTogc3RyaW5nLCBiYXNlOiBzdHJpbmcsIHBhdHRlcm46IHN0cmluZykge1xuICAgIGxldCBwYXRoID0gam9pbihiYXNlLCBwYXR0ZXJuKTtcbiAgICBpZiAoc291cmNlKSB7XG4gICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoL1xcL2Rpc3RcXC8oPzplc218Y2pzKVxcLy8sIFwiL3NyYy9cIik7XG4gICAgfVxuXG4gICAgaWYgKG5hbWUuaW5jbHVkZXMoXCIqXCIpKSB7XG4gICAgICAgIC8vIFdpbGRjYXJkXG4gICAgICAgIGlmICghbmFtZS5lbmRzV2l0aChcIi8qXCIpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFdpbGRjYXJkIGluIG1vZHVsZSAke25hbWV9IGRvZXMgbm90IGFwcGVhciBhcyBmaW5hbCBwYXRoIHNlZ21lbnRgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG5hbWUgPSBuYW1lLnN1YnN0cmluZygwLCBuYW1lLmxlbmd0aCAtIDIpO1xuICAgICAgICBjb25zdCBwYXRocyA9IGdsb2JTeW5jKHNvdXJjZSA/IHBhdGgucmVwbGFjZSgvXFwuanMkLywgXCIue3RzLGpzLGNqcyxtanN9XCIpIDogcGF0aCk7XG4gICAgICAgIGlmICghcGF0aHMubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1hdGNoIGZvciBtb2R1bGUgJHtuYW1lfSBwYXR0ZXJuICR7cGF0dGVybn1gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IFtwcmVmaXgsIHN1ZmZpeF0gPSBwYXRoLnNwbGl0KC9cXCorLyk7XG4gICAgICAgIGNvbnN0IHByZWZpeExlbmd0aCA9IHByZWZpeCA9PT0gdW5kZWZpbmVkID8gMCA6IHByZWZpeC5sZW5ndGg7XG4gICAgICAgIGNvbnN0IHN1ZmZpeExlbmd0aCA9IHN1ZmZpeCA9PT0gdW5kZWZpbmVkID8gMCA6IHN1ZmZpeC5sZW5ndGg7XG5cbiAgICAgICAgZm9yIChjb25zdCB0aGlzUGF0aCBvZiBwYXRocykge1xuICAgICAgICAgICAgY29uc3QgcXVhbGlmaWVyID0gdGhpc1BhdGguc3Vic3RyaW5nKHByZWZpeExlbmd0aCwgdGhpc1BhdGgubGVuZ3RoIC0gc3VmZml4TGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHRoaXNOYW1lID0gam9pbihuYW1lLCBxdWFsaWZpZXIpO1xuICAgICAgICAgICAgdGFyZ2V0W3RoaXNOYW1lXSA9IHRoaXNQYXRoO1xuICAgICAgICB9XG4gICAgfSBlbHNlIGlmIChwYXRoLmluY2x1ZGVzKFwiKlwiKSkge1xuICAgICAgICAvLyBBIHdpbGRjYXJkIHBhdGggaXMgb25seSB2YWxpZCB3aXRoIHdpbGRjYXJkIG5hbWVcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBXaWxkY2FyZCBpbiBtb2R1bGUgcGF0aCBcIiR7cGF0aH1cIiBidXQgbm90IGluIG1vZHVsZSBcIiR7bmFtZX1cImApO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIE5vIHdpbGRjYXJkIC0tIHJlbW92ZSBkaXJlY3RvcnlcbiAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZSgvXFwvKD86ZXhwb3J0fGluZGV4KSQvLCBcIlwiKTtcblxuICAgICAgICAvLyBMb29rIGZvciBzb3VyY2UgaWYgZmlsZSBpc24ndCBwcmVzZW50XG4gICAgICAgIGxldCBmb3VuZCA9IGZhbHNlO1xuICAgICAgICBpZiAoaXNGaWxlKHBhdGgpKSB7XG4gICAgICAgICAgICBmb3VuZCA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoc291cmNlICYmIHBhdGguZW5kc1dpdGgoXCIuanNcIikpIHtcbiAgICAgICAgICAgIHBhdGggPSBwYXRoLnJlcGxhY2UoL1xcLmpzJC8sIFwiLnRzXCIpO1xuICAgICAgICAgICAgaWYgKGlzRmlsZShwYXRoKSkge1xuICAgICAgICAgICAgICAgIGZvdW5kID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZm91bmQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgTW9kdWxlIFwiJHtuYW1lfVwiIHBhdGggXCIke3BhdGh9XCIgbm90IGZvdW5kYCk7XG4gICAgICAgIH1cblxuICAgICAgICB0YXJnZXRbbmFtZV0gPSBwYXRoO1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFlBQVksY0FBYyxnQkFBZ0I7QUFDbkQsU0FBUyxTQUFTLFVBQVUsTUFBTSxpQkFBaUI7QUFDbkQsU0FBUyxTQUFTLE1BQU0sVUFBVSxlQUFlO0FBQ2pELFNBQVMsYUFBYSx1QkFBdUI7QUFDN0MsU0FBUyxRQUFRLG1CQUFtQixxQkFBcUI7QUFDekQsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyxxQkFBcUI7QUFDOUIsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUyxpQkFBaUI7QUFFbkIsTUFBTSwwQkFBMEIsTUFBTTtBQUFDO0FBRXZDLE1BQU0sY0FBYztBQUNwQixNQUFNLGVBQWU7QUFFNUIsTUFBTSxpQkFBaUIsQ0FBQztBQUV4QixTQUFTLFNBQVMsVUFBa0Is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R0FBRztBQUUzQixVQUFNLElBQUksTUFBTSw0QkFBNEIsSUFBSSx3QkFBd0IsSUFBSSxHQUFHO0FBQUEsRUFDbkYsT0FBTztBQUVILFdBQU8sS0FBSyxRQUFRLHVCQUF1QixFQUFFO0FBRzdDLFFBQUksUUFBUTtBQUNaLFFBQUksT0FBTyxJQUFJLEdBQUc7QUFDZCxjQUFRO0FBQUEsSUFDWixXQUFXLFVBQVUsS0FBSyxTQUFTLEtBQUssR0FBRztBQUN2QyxhQUFPLEtBQUssUUFBUSxTQUFTLEtBQUs7QUFDbEMsVUFBSSxPQUFPLElBQUksR0FBRztBQUNkLGdCQUFRO0FBQUEsTUFDWjtBQUFBLElBQ0o7QUFFQSxRQUFJLENBQUMsT0FBTztBQUNSLFlBQU0sSUFBSSxNQUFNLFdBQVcsSUFBSSxXQUFXLElBQUksYUFBYTtBQUFBLElBQy9EO0FBRUEsV0FBTyxJQUFJLElBQUk7QUFBQSxFQUNuQjtBQUNKOyIsCiAgIm5hbWVzIjogWyJwYXRocyIsICJmaW5kIiwgInBhdGgiLCAicmVzdWx0IiwgImV4cCJdCn0K
|
|
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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
|
|
@@ -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,SAAS,UAAkB,OAAe,KAAK,OAAgB;AACpE,SAAO,QAAQ,IAAI;AACnB,SAAO,MAAM;AACT,UAAM,OAAO;AAAA,MAAgB,CAAC,UAAU,SAAS;AAAA,MAAG,MAChD,KAAK,MAAM,aAAa,QAAQ,MAAM,QAAQ,CAAC,EAAE,SAAS,CAAC;AAAA,IAC/D;AAEA,QAAI,MAAM;AACN,UAAI,UAAU,UAAa,KAAK,SAAS,OAAO;AAC5C,eAAO,EAAE,MAAM,MAAM,KAAK;AAAA,MAC9B;AAAA,IACJ;AACA,UAAM,SAAS,QAAQ,IAAI;AAC3B,QAAI,WAAW,MAAM;AACjB,YAAM,IAAI,kBAAkB,oBAAoB,SAAS,QAAQ,EAAE;AAAA,IACvE;AACA,WAAO;AAAA,EACX;AACJ;AAEA,SAAS,YAAY,MAAc;AAC/B,SAAO,CAAC,CAAC,gBAAgB,UAAU,MAAM,SAAS,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,SAAS,gBAAgB,MAAM,IAAI;AAC1D,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,OAAO,kBAAkB,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,IAAI,OAAO;AACP,WAAO,KAAK,KAAK;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["paths", "find", "path", "result", "exp"]
|
|
6
6
|
}
|
|
@@ -10,7 +10,7 @@ import { ansi } from "../ansi-text/text-builder.js";
|
|
|
10
10
|
const SPINNER = "\u25D0\u25D3\u25D1\u25D2";
|
|
11
11
|
const SPINNER_INTERVAL = 100;
|
|
12
12
|
function packageIdentity(pkg) {
|
|
13
|
-
let identity = ansi.bold(pkg.
|
|
13
|
+
let identity = ansi.bold(pkg.name).toString();
|
|
14
14
|
if (pkg.json.version) {
|
|
15
15
|
identity = `${identity}@${pkg.json.version}`;
|
|
16
16
|
}
|
|
@@ -198,4 +198,4 @@ class Progress {
|
|
|
198
198
|
export {
|
|
199
199
|
Progress
|
|
200
200
|
};
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcHJvZ3Jlc3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgc3RkZXJyLCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBzY3JlZW4gfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3NjcmVlbi5qc1wiO1xuaW1wb3J0IHsgc3RkIH0gZnJvbSBcIi4uL2Fuc2ktdGV4dC9zdGQuanNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuL3BhY2thZ2UuanNcIjtcblxuY29uc3QgU1BJTk5FUiA9IFwiXHUyNUQwXHUyNUQzXHUyNUQxXHUyNUQyXCI7IC8vXCJcdTI4NUNcdTI4MTRcdTI4MjJcdTI4QTNcIjsgLy9bXCJcdTI2QUJcdUZFMEVcIiwgXCJcdTI2QUFcdUZFMEVcIl07IFwiXHUyODQ4XHUyODE0XHUyODIyXHUyODgxXCI7XG5jb25zdCBTUElOTkVSX0lOVEVSVkFMID0gMTAwO1xuXG5mdW5jdGlvbiBwYWNrYWdlSWRlbnRpdHkocGtnOiBQYWNrYWdlKSB7XG4gICAgbGV0IGlkZW50aXR5ID0gYW5zaS5ib2xkKHBrZy5qc29uLm5hbWUpLnRvU3RyaW5nKCk7XG4gICAgaWYgKHBrZy5qc29uLnZlcnNpb24pIHtcbiAgICAgICAgaWRlbnRpdHkgPSBgJHtpZGVudGl0eX1AJHtwa2cuanNvbi52ZXJzaW9ufWA7XG4gICAgfVxuICAgIHJldHVybiBpZGVudGl0eTtcbn1cblxuLyoqXG4gKiBJbnRlcmNlcHQgd3JpdGVzIHRvIHN0ZGVyciBhbmQgc3Rkb3V0IHNvIHdlIGNhbiBlbnN1cmUgb3VyIHVwZGF0ZXMgYXBwZWFyIG9uIGRpZmZlcmVudCBsaW5lcyBmcm9tIG90aGVyIG91dHB1dC5cbiAqL1xuY29uc3Qgd3JpdGVTdGF0dXMgPSAoKCkgPT4ge1xuICAgIGxldCBsYXN0U3RhdHVzOiB1bmRlZmluZWQgfCBzdHJpbmc7XG4gICAgbGV0IG5lZWROZXdsaW5lID0gZmFsc2U7XG5cbiAgICBmdW5jdGlvbiBpbnRlcmNlcHQoc3RyZWFtOiBOb2RlSlMuV3JpdGVTdHJlYW0pIHtcbiAgICAgICAgY29uc3QgYWN0dWFsV3JpdGUgPSBzdHJlYW0ud3JpdGU7XG4gICAgICAgIHN0cmVhbS53cml0ZSA9IChwYXlsb2FkOiBVaW50OEFycmF5IHwgc3RyaW5nLCAuLi5wYXJhbXM6IGFueVtdKSA9PiB7XG4gICAgICAgICAgICBpZiAobGFzdFN0YXR1cykge1xuICAgICAgICAgICAgICAgIGFjdHVhbFdyaXRlLmNhbGwoc3RyZWFtLCBcIlxcblwiKTtcbiAgICAgICAgICAgICAgICBsYXN0U3RhdHVzID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXBheWxvYWQubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFJlcXVpcmUgYSBuZXdsaW5lIGZvciBzdGF0dXMgdXBkYXRlcyBhbnkgdGltZSB0aGUgY3Vyc29yIGRvZXMgbm90IGVuZCBhdCB0aGUgYmVnaW5uaW5nIG9mIGEgbGluZVxuICAgICAgICAgICAgbmVlZE5ld2xpbmUgPSBwYXlsb2FkW3BheWxvYWQubGVuZ3RoIC0gMV0gIT09IFwiXFxuXCIgJiYgcGF5bG9hZFtwYXlsb2FkLmxlbmd0aCAtIDFdICE9PSBcIlxcclwiO1xuXG4gICAgICAgICAgICByZXR1cm4gYWN0dWFsV3JpdGUuY2FsbChzdHJlYW0sIHBheWxvYWQsIC4uLnBhcmFtcyk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgaW50ZXJjZXB0KHN0ZG91dCk7XG4gICAgaW50ZXJjZXB0KHN0ZGVycik7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gd3JpdGVTdGF0dXModGV4dDogc3RyaW5nLCB3aWxsT3ZlcndyaXRlID0gZmFsc2UpIHtcbiAgICAgICAgdGV4dCArPSB3aWxsT3ZlcndyaXRlID8gYCR7c2NyZWVuLmVyYXNlLnRvRW9sfVxccmAgOiBgJHtzY3JlZW4uZXJhc2UudG9Fb2x9XFxuYDtcbiAgICAgICAgaWYgKHRleHQgPT09IGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0ZC5vdXQuc3RhdGUoeyBidWZmZXI6IHRydWUgfSwgKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgICAgICBsYXN0U3RhdHVzID0gdW5kZWZpbmVkO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChuZWVkTmV3bGluZSAmJiAhdGV4dC5zdGFydHNXaXRoKFwiXFxuXCIpKSB7XG4gICAgICAgICAgICAgICAgc3RkLm91dChcIlxcblwiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgc3RkLm91dC53cml0ZVRydW5jYXRlZCh0ZXh0KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGFzdFN0YXR1cyA9IHRleHQ7XG4gICAgfTtcbn0pKCk7XG5cbmV4cG9ydCBjbGFzcyBQcm9ncmVzcyB7XG4gICAgc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN0YXJ0dXA7XG4gICAgI29uZ29pbmdUZXh0Pzogc3RyaW5nO1xuICAgICNzdGFydD86IG51bWJlcjtcbiAgICAjc3Bpbm5lciA9IFwiXHUyOUQ3XCI7XG4gICAgI3JlZnJlc2hJbnRlcnZhbD86IFJldHVyblR5cGU8dHlwZW9mIHNldEludGVydmFsPjtcbiAgICAjc3Bpbm5lclBvc2l0aW9uID0gMDtcbiAgICAjc3Bpbm5lcldpbmRvdz86IG51bWJlcjtcbiAgICAjc3VidGFza3MgPSBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgICBlbXBoYXNpemUodGV4dDogdW5rbm93bikge1xuICAgICAgICByZXR1cm4gYW5zaS5ib2xkKGAke3RleHR9YCk7XG4gICAgfVxuXG4gICAgZGVlbXBoYXNpemUodGV4dDogdW5rbm93bikge1xuICAgICAgICByZXR1cm4gYW5zaS5kaW0oYCR7dGV4dH1gKTtcbiAgICB9XG5cbiAgICBza2lwKHdoeTogc3RyaW5nLCBwa2c6IFBhY2thZ2UpIHtcbiAgICAgICAgc3RkLm91dC53cml0ZShhbnNpLmRpbShgU2tpcCAke3BhY2thZ2VJZGVudGl0eShwa2cpfTogJHt3aHl9XFxuXFxuYCkpO1xuICAgIH1cblxuICAgIHN0YXJ0dXAod2hhdDogc3RyaW5nLCBwa2dPck92ZXJ3cml0ZT86IFBhY2thZ2UgfCBib29sZWFuKSB7XG4gICAgICAgIGlmIChwcm9jZXNzLnN0ZG91dC5pc1RUWSkge1xuICAgICAgICAgICAgdGhpcy4jdXBkYXRlU3Bpbm5lcigpO1xuICAgICAgICAgICAgdGhpcy4jcmVmcmVzaEludGVydmFsID0gc2V0SW50ZXJ2YWwodGhpcy5yZWZyZXNoLmJpbmQodGhpcyksIFNQSU5ORVJfSU5URVJWQUwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3RhcnR1cDtcbiAgICAgICAgaWYgKHBrZ09yT3ZlcndyaXRlID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHBrZ09yT3ZlcndyaXRlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgd3JpdGVTdGF0dXMod2hhdCwgcGtnT3JPdmVyd3JpdGUgPz8gdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB3cml0ZVN0YXR1cyhgJHt3aGF0fSAke3BhY2thZ2VJZGVudGl0eShwa2dPck92ZXJ3cml0ZSl9YCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1cGRhdGUodGV4dDogc3RyaW5nLCBleHRyYT86IHN0cmluZykge1xuICAgICAgICB0aGlzLnN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5PbmdvaW5nO1xuICAgICAgICBsZXQgZHVyYXRpb247XG4gICAgICAgIGlmICh0aGlzLiNzdGFydCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLiNzdGFydCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuICAgICAgICAgICAgZHVyYXRpb24gPSBcIlwiO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZHVyYXRpb24gPSB0aGlzLiNkdXJhdGlvbjtcbiAgICAgICAgfVxuICAgICAgICBleHRyYSA9IGV4dHJhID09PSB1bmRlZmluZWQgPyBcIlwiIDogYCAke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI29uZ29pbmdUZXh0ID0gYCR7dGV4dH0gJHtkdXJhdGlvbn0ke2V4dHJhfWA7XG4gICAgICAgIHRoaXMuI3dyaXRlT25nb2luZygpO1xuICAgIH1cblxuICAgICN3cml0ZU9uZ29pbmcoKSB7XG4gICAgICAgIGlmICghdGhpcy4jb25nb2luZ1RleHQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN1YnRhc2sgPSB0aGlzLiNzdWJ0YXNrcy5sZW5ndGggPyBhbnNpLmRpbShgICgke3RoaXMuI3N1YnRhc2tzW3RoaXMuI3N1YnRhc2tzLmxlbmd0aCAtIDFdfSlgKSA6IFwiXCI7XG5cbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLnllbGxvdyh0aGlzLiNzcGlubmVyKX0gJHt0aGlzLiNvbmdvaW5nVGV4dH0ke3N1YnRhc2t9YCwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgc3VjY2Vzcyh0ZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuU3VjY2VzcztcbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLmdyZWVuKFwiXHUyNzEzXCIpfSAke3RleHR9ICR7dGhpcy4jZHVyYXRpb259YCk7XG4gICAgICAgIHRoaXMuI3N0YXJ0ID0gdGhpcy4jb25nb2luZ1RleHQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgZmFpbHVyZSh0ZXh0OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuRmFpbHVyZTtcbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLmJyaWdodC5yZWQoXCJcdTI3MTdcIil9ICR7dGV4dH0gJHt0aGlzLiNkdXJhdGlvbn1gKTtcbiAgICAgICAgdGhpcy4jc3RhcnQgPSB0aGlzLiNvbmdvaW5nVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpbmZvKGxhYmVsOiBzdHJpbmcsIHZhbHVlPzogYW55KSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgbGFiZWwgPSBgJHthbnNpLmRpbShsYWJlbCl9ICR7dmFsdWV9YDtcbiAgICAgICAgfVxuICAgICAgICB3cml0ZVN0YXR1cyhgICAke2Fuc2kuZGltKFwiXHUyMDIzXCIpfSAke2xhYmVsfWApO1xuICAgIH1cblxuICAgIHdhcm4odGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHN0ZC5vdXQud3JpdGUoYCAgICAke2Fuc2kueWVsbG93KFwiV2FybmluZzpcIil9ICR7dGV4dH1cXG5gKTtcbiAgICB9XG5cbiAgICBjbG9zZSgpIHtcbiAgICAgICAgaWYgKHRoaXMuI3JlZnJlc2hJbnRlcnZhbCkge1xuICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLiNyZWZyZXNoSW50ZXJ2YWwpO1xuICAgICAgICAgICAgdGhpcy4jcmVmcmVzaEludGVydmFsID0gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIHdyaXRlU3RhdHVzKFwiXCIpO1xuICAgIH1cblxuICAgIFtTeW1ib2wuZGlzcG9zZV0oKSB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG5cbiAgICByZWZyZXNoKCkge1xuICAgICAgICBpZiAodGhpcy4jdXBkYXRlU3Bpbm5lcigpKSB7XG4gICAgICAgICAgICB0aGlzLiN3cml0ZU9uZ29pbmcoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jIHN1YnRhc2sodGV4dDogc3RyaW5nLCBmbjogKCkgPT4gUHJvbWlzZTx2b2lkPikge1xuICAgICAgICB0aGlzLiNzdWJ0YXNrcy5wdXNoKHRleHQpO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBhd2FpdCBmbigpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy4jc3VidGFza3MucG9wKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjdXBkYXRlU3Bpbm5lcigpIHtcbiAgICAgICAgaWYgKCFzdGRvdXQuaXNUVFkpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdpbmRvdyA9IE1hdGguZmxvb3IobmV3IERhdGUoKS5nZXRUaW1lKCkgLyBTUElOTkVSX0lOVEVSVkFMKTtcbiAgICAgICAgaWYgKHRoaXMuI3NwaW5uZXJXaW5kb3cgPT09IHdpbmRvdykge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuI3NwaW5uZXJXaW5kb3cgPSB3aW5kb3c7XG5cbiAgICAgICAgdGhpcy4jc3Bpbm5lclBvc2l0aW9uID0gKHRoaXMuI3NwaW5uZXJQb3NpdGlvbiArIDEpICUgU1BJTk5FUi5sZW5ndGg7XG4gICAgICAgIHRoaXMuI3NwaW5uZXIgPSBTUElOTkVSW3RoaXMuI3NwaW5uZXJQb3NpdGlvbl07XG5cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgYXN5bmMgcnVuPFQ+KHdoYXQ6IHN0cmluZywgZm46ICgpID0+IFQgfCBQcm9taXNlPFQ+KSB7XG4gICAgICAgIHRoaXMudXBkYXRlKHdoYXQpO1xuICAgICAgICBsZXQgcmVzdWx0OiBUO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgZm4oKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5mYWlsdXJlKHdoYXQpO1xuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnN1Y2Nlc3Mod2hhdCk7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgZ2V0ICNkdXJhdGlvbigpIHtcbiAgICAgICAgbGV0IG1zID0gdGhpcy4jc3RhcnQgPyBuZXcgRGF0ZSgpLmdldFRpbWUoKSAtIHRoaXMuI3N0YXJ0IDogMDtcbiAgICAgICAgaWYgKG1zIDwgMTAwMCkge1xuICAgICAgICAgICAgbXMgPSBNYXRoLnJvdW5kKG1zIC8gMTApIC8gMTAwO1xuICAgICAgICB9IGVsc2UgaWYgKG1zIDwgMTAwMDApIHtcbiAgICAgICAgICAgIG1zID0gTWF0aC5yb3VuZChtcyAvIDEwMCkgLyAxMDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1zID0gTWF0aC50cnVuYyhtcyAvIDEwMDApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgJHthbnNpLmRpbS55ZWxsb3d9KCR7bXN9cykke2Fuc2kubm90LmRpbS5ub3QueWVsbG93fWA7XG4gICAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIFByb2dyZXNzIHtcbiAgICBleHBvcnQgZW51bSBTdGF0dXMge1xuICAgICAgICBTdGFydHVwID0gXCJzdGFydHVwXCIsXG4gICAgICAgIE9uZ29pbmcgPSBcIm9uZ29pbmdcIixcbiAgICAgICAgU3VjY2VzcyA9IFwic3VjY2Vzc1wiLFxuICAgICAgICBGYWlsdXJlID0gXCJmYWlsdXJlXCIsXG4gICAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLFNBQVMsUUFBUSxjQUFjO0FBQy9CLFNBQVMsY0FBYztBQUN2QixTQUFTLFdBQVc7QUFDcEIsU0FBUyxZQUFZO0FBR3JCLE1BQU0sVUFBVTtBQUNoQixNQUFNLG1CQUFtQjtBQUV6QixTQUFTLGdCQUFnQixLQUFjO0FB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LFFBQUksS0FBSyxLQUFLLFVBQVMsb0JBQUksS0FBSyxHQUFFLFFBQVEsSUFBSSxLQUFLLFNBQVM7QUFDNUQsUUFBSSxLQUFLLEtBQU07QUFDWCxXQUFLLEtBQUssTUFBTSxLQUFLLEVBQUUsSUFBSTtBQUFBLElBQy9CLFdBQVcsS0FBSyxLQUFPO0FBQ25CLFdBQUssS0FBSyxNQUFNLEtBQUssR0FBRyxJQUFJO0FBQUEsSUFDaEMsT0FBTztBQUNILFdBQUssS0FBSyxNQUFNLEtBQUssR0FBSTtBQUFBLElBQzdCO0FBQ0EsV0FBTyxHQUFHLEtBQUssSUFBSSxNQUFNLElBQUksRUFBRSxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksTUFBTTtBQUFBLEVBQy9EO0FBQ0o7QUFBQSxDQUVPLENBQVVDLGNBQVY7QUFDSSxNQUFLO0FBQUwsSUFBS0MsWUFBTDtBQUNILElBQUFBLFFBQUEsYUFBVTtBQUNWLElBQUFBLFFBQUEsYUFBVTtBQUNWLElBQUFBLFFBQUEsYUFBVTtBQUNWLElBQUFBLFFBQUEsYUFBVTtBQUFBLEtBSkYsU0FBQUQsVUFBQSxXQUFBQSxVQUFBO0FBQUEsR0FEQzsiLAogICJuYW1lcyI6IFsid3JpdGVTdGF0dXMiLCAiUHJvZ3Jlc3MiLCAiU3RhdHVzIl0KfQo=
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3V0aWwvcHJvZ3Jlc3MudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAyMDIyLTIwMjUgTWF0dGVyLmpzIEF1dGhvcnNcbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuaW1wb3J0IHsgc3RkZXJyLCBzdGRvdXQgfSBmcm9tIFwibm9kZTpwcm9jZXNzXCI7XG5pbXBvcnQgeyBzY3JlZW4gfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3NjcmVlbi5qc1wiO1xuaW1wb3J0IHsgc3RkIH0gZnJvbSBcIi4uL2Fuc2ktdGV4dC9zdGQuanNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgUGFja2FnZSB9IGZyb20gXCIuL3BhY2thZ2UuanNcIjtcblxuY29uc3QgU1BJTk5FUiA9IFwiXHUyNUQwXHUyNUQzXHUyNUQxXHUyNUQyXCI7IC8vXCJcdTI4NUNcdTI4MTRcdTI4MjJcdTI4QTNcIjsgLy9bXCJcdTI2QUJcdUZFMEVcIiwgXCJcdTI2QUFcdUZFMEVcIl07IFwiXHUyODQ4XHUyODE0XHUyODIyXHUyODgxXCI7XG5jb25zdCBTUElOTkVSX0lOVEVSVkFMID0gMTAwO1xuXG5mdW5jdGlvbiBwYWNrYWdlSWRlbnRpdHkocGtnOiBQYWNrYWdlKSB7XG4gICAgbGV0IGlkZW50aXR5ID0gYW5zaS5ib2xkKHBrZy5uYW1lKS50b1N0cmluZygpO1xuICAgIGlmIChwa2cuanNvbi52ZXJzaW9uKSB7XG4gICAgICAgIGlkZW50aXR5ID0gYCR7aWRlbnRpdHl9QCR7cGtnLmpzb24udmVyc2lvbn1gO1xuICAgIH1cbiAgICByZXR1cm4gaWRlbnRpdHk7XG59XG5cbi8qKlxuICogSW50ZXJjZXB0IHdyaXRlcyB0byBzdGRlcnIgYW5kIHN0ZG91dCBzbyB3ZSBjYW4gZW5zdXJlIG91ciB1cGRhdGVzIGFwcGVhciBvbiBkaWZmZXJlbnQgbGluZXMgZnJvbSBvdGhlciBvdXRwdXQuXG4gKi9cbmNvbnN0IHdyaXRlU3RhdHVzID0gKCgpID0+IHtcbiAgICBsZXQgbGFzdFN0YXR1czogdW5kZWZpbmVkIHwgc3RyaW5nO1xuICAgIGxldCBuZWVkTmV3bGluZSA9IGZhbHNlO1xuXG4gICAgZnVuY3Rpb24gaW50ZXJjZXB0KHN0cmVhbTogTm9kZUpTLldyaXRlU3RyZWFtKSB7XG4gICAgICAgIGNvbnN0IGFjdHVhbFdyaXRlID0gc3RyZWFtLndyaXRlO1xuICAgICAgICBzdHJlYW0ud3JpdGUgPSAocGF5bG9hZDogVWludDhBcnJheSB8IHN0cmluZywgLi4ucGFyYW1zOiBhbnlbXSkgPT4ge1xuICAgICAgICAgICAgaWYgKGxhc3RTdGF0dXMpIHtcbiAgICAgICAgICAgICAgICBhY3R1YWxXcml0ZS5jYWxsKHN0cmVhbSwgXCJcXG5cIik7XG4gICAgICAgICAgICAgICAgbGFzdFN0YXR1cyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFwYXlsb2FkLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBSZXF1aXJlIGEgbmV3bGluZSBmb3Igc3RhdHVzIHVwZGF0ZXMgYW55IHRpbWUgdGhlIGN1cnNvciBkb2VzIG5vdCBlbmQgYXQgdGhlIGJlZ2lubmluZyBvZiBhIGxpbmVcbiAgICAgICAgICAgIG5lZWROZXdsaW5lID0gcGF5bG9hZFtwYXlsb2FkLmxlbmd0aCAtIDFdICE9PSBcIlxcblwiICYmIHBheWxvYWRbcGF5bG9hZC5sZW5ndGggLSAxXSAhPT0gXCJcXHJcIjtcblxuICAgICAgICAgICAgcmV0dXJuIGFjdHVhbFdyaXRlLmNhbGwoc3RyZWFtLCBwYXlsb2FkLCAuLi5wYXJhbXMpO1xuICAgICAgICB9O1xuICAgIH1cblxuICAgIGludGVyY2VwdChzdGRvdXQpO1xuICAgIGludGVyY2VwdChzdGRlcnIpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIHdyaXRlU3RhdHVzKHRleHQ6IHN0cmluZywgd2lsbE92ZXJ3cml0ZSA9IGZhbHNlKSB7XG4gICAgICAgIHRleHQgKz0gd2lsbE92ZXJ3cml0ZSA/IGAke3NjcmVlbi5lcmFzZS50b0VvbH1cXHJgIDogYCR7c2NyZWVuLmVyYXNlLnRvRW9sfVxcbmA7XG4gICAgICAgIGlmICh0ZXh0ID09PSBsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdGQub3V0LnN0YXRlKHsgYnVmZmVyOiB0cnVlIH0sICgpID0+IHtcbiAgICAgICAgICAgIGlmIChsYXN0U3RhdHVzKSB7XG4gICAgICAgICAgICAgICAgbGFzdFN0YXR1cyA9IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAobmVlZE5ld2xpbmUgJiYgIXRleHQuc3RhcnRzV2l0aChcIlxcblwiKSkge1xuICAgICAgICAgICAgICAgIHN0ZC5vdXQoXCJcXG5cIik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHN0ZC5vdXQud3JpdGVUcnVuY2F0ZWQodGV4dCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGxhc3RTdGF0dXMgPSB0ZXh0O1xuICAgIH07XG59KSgpO1xuXG5leHBvcnQgY2xhc3MgUHJvZ3Jlc3Mge1xuICAgIHN0YXR1cyA9IFByb2dyZXNzLlN0YXR1cy5TdGFydHVwO1xuICAgICNvbmdvaW5nVGV4dD86IHN0cmluZztcbiAgICAjc3RhcnQ/OiBudW1iZXI7XG4gICAgI3NwaW5uZXIgPSBcIlx1MjlEN1wiO1xuICAgICNyZWZyZXNoSW50ZXJ2YWw/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRJbnRlcnZhbD47XG4gICAgI3NwaW5uZXJQb3NpdGlvbiA9IDA7XG4gICAgI3NwaW5uZXJXaW5kb3c/OiBudW1iZXI7XG4gICAgI3N1YnRhc2tzID0gQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7fVxuXG4gICAgZW1waGFzaXplKHRleHQ6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIGFuc2kuYm9sZChgJHt0ZXh0fWApO1xuICAgIH1cblxuICAgIGRlZW1waGFzaXplKHRleHQ6IHVua25vd24pIHtcbiAgICAgICAgcmV0dXJuIGFuc2kuZGltKGAke3RleHR9YCk7XG4gICAgfVxuXG4gICAgc2tpcCh3aHk6IHN0cmluZywgcGtnOiBQYWNrYWdlKSB7XG4gICAgICAgIHN0ZC5vdXQud3JpdGUoYW5zaS5kaW0oYFNraXAgJHtwYWNrYWdlSWRlbnRpdHkocGtnKX06ICR7d2h5fVxcblxcbmApKTtcbiAgICB9XG5cbiAgICBzdGFydHVwKHdoYXQ6IHN0cmluZywgcGtnT3JPdmVyd3JpdGU/OiBQYWNrYWdlIHwgYm9vbGVhbikge1xuICAgICAgICBpZiAocHJvY2Vzcy5zdGRvdXQuaXNUVFkpIHtcbiAgICAgICAgICAgIHRoaXMuI3VwZGF0ZVNwaW5uZXIoKTtcbiAgICAgICAgICAgIHRoaXMuI3JlZnJlc2hJbnRlcnZhbCA9IHNldEludGVydmFsKHRoaXMucmVmcmVzaC5iaW5kKHRoaXMpLCBTUElOTkVSX0lOVEVSVkFMKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN0YXJ0dXA7XG4gICAgICAgIGlmIChwa2dPck92ZXJ3cml0ZSA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiBwa2dPck92ZXJ3cml0ZSA9PT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgICAgIHdyaXRlU3RhdHVzKHdoYXQsIHBrZ09yT3ZlcndyaXRlID8/IHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgd3JpdGVTdGF0dXMoYCR7d2hhdH0gJHtwYWNrYWdlSWRlbnRpdHkocGtnT3JPdmVyd3JpdGUpfWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdXBkYXRlKHRleHQ6IHN0cmluZywgZXh0cmE/OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5zdGF0dXMgPSBQcm9ncmVzcy5TdGF0dXMuT25nb2luZztcbiAgICAgICAgbGV0IGR1cmF0aW9uO1xuICAgICAgICBpZiAodGhpcy4jc3RhcnQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy4jc3RhcnQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTtcbiAgICAgICAgICAgIGR1cmF0aW9uID0gXCJcIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGR1cmF0aW9uID0gdGhpcy4jZHVyYXRpb247XG4gICAgICAgIH1cbiAgICAgICAgZXh0cmEgPSBleHRyYSA9PT0gdW5kZWZpbmVkID8gXCJcIiA6IGAgJHtleHRyYX1gO1xuICAgICAgICB0aGlzLiNvbmdvaW5nVGV4dCA9IGAke3RleHR9ICR7ZHVyYXRpb259JHtleHRyYX1gO1xuICAgICAgICB0aGlzLiN3cml0ZU9uZ29pbmcoKTtcbiAgICB9XG5cbiAgICAjd3JpdGVPbmdvaW5nKCkge1xuICAgICAgICBpZiAoIXRoaXMuI29uZ29pbmdUZXh0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdWJ0YXNrID0gdGhpcy4jc3VidGFza3MubGVuZ3RoID8gYW5zaS5kaW0oYCAoJHt0aGlzLiNzdWJ0YXNrc1t0aGlzLiNzdWJ0YXNrcy5sZW5ndGggLSAxXX0pYCkgOiBcIlwiO1xuXG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7YW5zaS55ZWxsb3codGhpcy4jc3Bpbm5lcil9ICR7dGhpcy4jb25nb2luZ1RleHR9JHtzdWJ0YXNrfWAsIHRydWUpO1xuICAgIH1cblxuICAgIHN1Y2Nlc3ModGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLlN1Y2Nlc3M7XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7YW5zaS5ncmVlbihcIlx1MjcxM1wiKX0gJHt0ZXh0fSAke3RoaXMuI2R1cmF0aW9ufWApO1xuICAgICAgICB0aGlzLiNzdGFydCA9IHRoaXMuI29uZ29pbmdUZXh0ID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGZhaWx1cmUodGV4dDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuc3RhdHVzID0gUHJvZ3Jlc3MuU3RhdHVzLkZhaWx1cmU7XG4gICAgICAgIHdyaXRlU3RhdHVzKGAgICR7YW5zaS5icmlnaHQucmVkKFwiXHUyNzE3XCIpfSAke3RleHR9ICR7dGhpcy4jZHVyYXRpb259YCk7XG4gICAgICAgIHRoaXMuI3N0YXJ0ID0gdGhpcy4jb25nb2luZ1RleHQgPSB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaW5mbyhsYWJlbDogc3RyaW5nLCB2YWx1ZT86IGFueSkge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIGxhYmVsID0gYCR7YW5zaS5kaW0obGFiZWwpfSAke3ZhbHVlfWA7XG4gICAgICAgIH1cbiAgICAgICAgd3JpdGVTdGF0dXMoYCAgJHthbnNpLmRpbShcIlx1MjAyM1wiKX0gJHtsYWJlbH1gKTtcbiAgICB9XG5cbiAgICB3YXJuKHRleHQ6IHN0cmluZykge1xuICAgICAgICBzdGQub3V0LndyaXRlKGAgICAgJHthbnNpLnllbGxvdyhcIldhcm5pbmc6XCIpfSAke3RleHR9XFxuYCk7XG4gICAgfVxuXG4gICAgY2xvc2UoKSB7XG4gICAgICAgIGlmICh0aGlzLiNyZWZyZXNoSW50ZXJ2YWwpIHtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy4jcmVmcmVzaEludGVydmFsKTtcbiAgICAgICAgICAgIHRoaXMuI3JlZnJlc2hJbnRlcnZhbCA9IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgICB3cml0ZVN0YXR1cyhcIlwiKTtcbiAgICB9XG5cbiAgICBbU3ltYm9sLmRpc3Bvc2VdKCkge1xuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgcmVmcmVzaCgpIHtcbiAgICAgICAgaWYgKHRoaXMuI3VwZGF0ZVNwaW5uZXIoKSkge1xuICAgICAgICAgICAgdGhpcy4jd3JpdGVPbmdvaW5nKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhc3luYyBzdWJ0YXNrKHRleHQ6IHN0cmluZywgZm46ICgpID0+IFByb21pc2U8dm9pZD4pIHtcbiAgICAgICAgdGhpcy4jc3VidGFza3MucHVzaCh0ZXh0KTtcblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYXdhaXQgZm4oKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuI3N1YnRhc2tzLnBvcCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3VwZGF0ZVNwaW5uZXIoKSB7XG4gICAgICAgIGlmICghc3Rkb3V0LmlzVFRZKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB3aW5kb3cgPSBNYXRoLmZsb29yKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gU1BJTk5FUl9JTlRFUlZBTCk7XG4gICAgICAgIGlmICh0aGlzLiNzcGlubmVyV2luZG93ID09PSB3aW5kb3cpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLiNzcGlubmVyV2luZG93ID0gd2luZG93O1xuXG4gICAgICAgIHRoaXMuI3NwaW5uZXJQb3NpdGlvbiA9ICh0aGlzLiNzcGlubmVyUG9zaXRpb24gKyAxKSAlIFNQSU5ORVIubGVuZ3RoO1xuICAgICAgICB0aGlzLiNzcGlubmVyID0gU1BJTk5FUlt0aGlzLiNzcGlubmVyUG9zaXRpb25dO1xuXG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGFzeW5jIHJ1bjxUPih3aGF0OiBzdHJpbmcsIGZuOiAoKSA9PiBUIHwgUHJvbWlzZTxUPikge1xuICAgICAgICB0aGlzLnVwZGF0ZSh3aGF0KTtcbiAgICAgICAgbGV0IHJlc3VsdDogVDtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGZuKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuZmFpbHVyZSh3aGF0KTtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdWNjZXNzKHdoYXQpO1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIGdldCAjZHVyYXRpb24oKSB7XG4gICAgICAgIGxldCBtcyA9IHRoaXMuI3N0YXJ0ID8gbmV3IERhdGUoKS5nZXRUaW1lKCkgLSB0aGlzLiNzdGFydCA6IDA7XG4gICAgICAgIGlmIChtcyA8IDEwMDApIHtcbiAgICAgICAgICAgIG1zID0gTWF0aC5yb3VuZChtcyAvIDEwKSAvIDEwMDtcbiAgICAgICAgfSBlbHNlIGlmIChtcyA8IDEwMDAwKSB7XG4gICAgICAgICAgICBtcyA9IE1hdGgucm91bmQobXMgLyAxMDApIC8gMTA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtcyA9IE1hdGgudHJ1bmMobXMgLyAxMDAwKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7YW5zaS5kaW0ueWVsbG93fSgke21zfXMpJHthbnNpLm5vdC5kaW0ubm90LnllbGxvd31gO1xuICAgIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQcm9ncmVzcyB7XG4gICAgZXhwb3J0IGVudW0gU3RhdHVzIHtcbiAgICAgICAgU3RhcnR1cCA9IFwic3RhcnR1cFwiLFxuICAgICAgICBPbmdvaW5nID0gXCJvbmdvaW5nXCIsXG4gICAgICAgIFN1Y2Nlc3MgPSBcInN1Y2Nlc3NcIixcbiAgICAgICAgRmFpbHVyZSA9IFwiZmFpbHVyZVwiLFxuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFFBQVEsY0FBYztBQUMvQixTQUFTLGNBQWM7QUFDdkIsU0FBUyxXQUFXO0FBQ3BCLFNBQVMsWUFBWTtBQUdyQixNQUFNLFVBQVU7QUFDaEIsTUFBTSxtQkFBbUI7QUFFekIsU0FBUyxnQkFBZ0IsS0FBYztBQUNuQyxN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LEtBQUssVUFBUyxvQkFBSSxLQUFLLEdBQUUsUUFBUSxJQUFJLEtBQUssU0FBUztBQUM1RCxRQUFJLEtBQUssS0FBTTtBQUNYLFdBQUssS0FBSyxNQUFNLEtBQUssRUFBRSxJQUFJO0FBQUEsSUFDL0IsV0FBVyxLQUFLLEtBQU87QUFDbkIsV0FBSyxLQUFLLE1BQU0sS0FBSyxHQUFHLElBQUk7QUFBQSxJQUNoQyxPQUFPO0FBQ0gsV0FBSyxLQUFLLE1BQU0sS0FBSyxHQUFJO0FBQUEsSUFDN0I7QUFDQSxXQUFPLEdBQUcsS0FBSyxJQUFJLE1BQU0sSUFBSSxFQUFFLEtBQUssS0FBSyxJQUFJLElBQUksSUFBSSxNQUFNO0FBQUEsRUFDL0Q7QUFDSjtBQUFBLENBRU8sQ0FBVUMsY0FBVjtBQUNJLE1BQUs7QUFBTCxJQUFLQyxZQUFMO0FBQ0gsSUFBQUEsUUFBQSxhQUFVO0FBQ1YsSUFBQUEsUUFBQSxhQUFVO0FBQ1YsSUFBQUEsUUFBQSxhQUFVO0FBQ1YsSUFBQUEsUUFBQSxhQUFVO0FBQUEsS0FKRixTQUFBRCxVQUFBLFdBQUFBLFVBQUE7QUFBQSxHQURDOyIsCiAgIm5hbWVzIjogWyJ3cml0ZVN0YXR1cyIsICJQcm9ncmVzcyIsICJTdGF0dXMiXQp9Cg==
|
|
@@ -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;AAGrB,MAAM,UAAU;AAChB,MAAM,mBAAmB;AAEzB,SAAS,gBAAgB,KAAc;AACnC,MAAI,WAAW,KAAK,KAAK,IAAI,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["writeStatus", "Progress", "Status"]
|
|
6
6
|
}
|
|
@@ -9,7 +9,7 @@ export declare class Versioner {
|
|
|
9
9
|
#private;
|
|
10
10
|
get pkg(): Package;
|
|
11
11
|
get version(): string | undefined;
|
|
12
|
-
get appliedVersion(): string;
|
|
12
|
+
get appliedVersion(): string | undefined;
|
|
13
13
|
constructor(pkg: Package, version?: string);
|
|
14
14
|
set(): Promise<void>;
|
|
15
15
|
apply(progress?: Progress): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../src/versioning/versioner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/C,qBAAa,SAAS;;IAKlB,IAAI,GAAG,YAEN;IAED,IAAI,OAAO,uBAEV;IAED,IAAI,cAAc,
|
|
1
|
+
{"version":3,"file":"versioner.d.ts","sourceRoot":"","sources":["../../../src/versioning/versioner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAI/C,qBAAa,SAAS;;IAKlB,IAAI,GAAG,YAEN;IAED,IAAI,OAAO,uBAEV;IAED,IAAI,cAAc,uBAEjB;gBAEW,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM;IAcpC,GAAG;IAIH,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ;IAiBzB,GAAG;CAsEZ"}
|
|
@@ -112,4 +112,4 @@ class Versioner {
|
|
|
112
112
|
export {
|
|
113
113
|
Versioner
|
|
114
114
|
};
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3ZlcnNpb25pbmcvdmVyc2lvbmVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IGV4aXN0c1N5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gXCJub2RlOmZzXCI7XG5pbXBvcnQgeyBjcCwgd3JpdGVGaWxlIH0gZnJvbSBcIm5vZGU6ZnMvcHJvbWlzZXNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgR3JhcGggfSBmcm9tIFwiLi4vYnVpbGRpbmcvZ3JhcGguanNcIjtcbmltcG9ydCB7IGV4ZWN1dGUgfSBmcm9tIFwiLi4vcnVubmluZy9leGVjdXRlLmpzXCI7XG5pbXBvcnQgeyBQYWNrYWdlIH0gZnJvbSBcIi4uL3V0aWwvcGFja2FnZS5qc1wiO1xuaW1wb3J0IHsgUHJvZ3Jlc3MgfSBmcm9tIFwiLi4vdXRpbC9wcm9ncmVzcy5qc1wiO1xuXG5jb25zdCBWRVJTSU9OX0ZJTEUgPSBcInZlcnNpb24udHh0XCI7XG5cbmV4cG9ydCBjbGFzcyBWZXJzaW9uZXIge1xuICAgICNwa2c6IFBhY2thZ2U7XG4gICAgI3ZlcnNpb24/OiBzdHJpbmc7XG4gICAgI21lbWJlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGdldCBwa2coKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiNwa2c7XG4gICAgfVxuXG4gICAgZ2V0IHZlcnNpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiN2ZXJzaW9uO1xuICAgIH1cblxuICAgIGdldCBhcHBsaWVkVmVyc2lvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI3BrZy5qc29uLnZlcnNpb247XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocGtnOiBQYWNrYWdlLCB2ZXJzaW9uPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuI3BrZyA9IHBrZy53b3Jrc3BhY2U7XG5cbiAgICAgICAgaWYgKHZlcnNpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdmVyc2lvbiA9IHRoaXMuI3JlYWRWZXJzaW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmVyc2lvbiAmJiAhdmVyc2lvbi5tYXRjaCgvXig/OlxcZCtcXC5cXGQrXFwuXFxkKyg/Oi1bYS16MC05Li1dKyk/fFthLXpdKykkLykpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmVyc2lvbiAke3ZlcnNpb259IGlzIGludmFsaWQgKG11c3QgYmUgc2VtYW50aWMgb3Igc2luZ2xlIGxvd2VyY2FzZSB3b3JkKWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jdmVyc2lvbiA9IHZlcnNpb247XG4gICAgfVxuXG4gICAgYXN5bmMgc2V0KCkge1xuICAgICAgICBhd2FpdCB3cml0ZUZpbGUodGhpcy4jdmVyc2lvbkZpbGUsIHRoaXMuI2RlZmluaXRlVmVyc2lvbik7XG4gICAgfVxuXG4gICAgYXN5bmMgYXBwbHkocHJvZ3Jlc3M/OiBQcm9ncmVzcykge1xuICAgICAgICBjb25zdCBncmFwaCA9IGF3YWl0IEdyYXBoLmxvYWQodGhpcy4jcGtnKTtcbiAgICAgICAgdGhpcy4jbWVtYmVycyA9IG5ldyBTZXQoZ3JhcGgubm9kZXMubWFwKG5vZGUgPT4gbm9kZS5wa2cubmFtZSkpO1xuXG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBncmFwaC5ub2Rlcykge1xuICAgICAgICAgICAgY29uc3Qgd2hhdCA9IGBBcHBseSAke2Fuc2kuYm9sZCh0aGlzLiNkZWZpbml0ZVZlcnNpb24pfSB0byAke2Fuc2kuYm9sZChub2RlLnBrZy5uYW1lKX1gO1xuICAgICAgICAgICAgcHJvZ3Jlc3M/
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3ZlcnNpb25pbmcvdmVyc2lvbmVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgMjAyMi0yMDI1IE1hdHRlci5qcyBBdXRob3JzXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5cbmltcG9ydCB7IGV4aXN0c1N5bmMsIHJlYWRGaWxlU3luYyB9IGZyb20gXCJub2RlOmZzXCI7XG5pbXBvcnQgeyBjcCwgd3JpdGVGaWxlIH0gZnJvbSBcIm5vZGU6ZnMvcHJvbWlzZXNcIjtcbmltcG9ydCB7IGFuc2kgfSBmcm9tIFwiLi4vYW5zaS10ZXh0L3RleHQtYnVpbGRlci5qc1wiO1xuaW1wb3J0IHsgR3JhcGggfSBmcm9tIFwiLi4vYnVpbGRpbmcvZ3JhcGguanNcIjtcbmltcG9ydCB7IGV4ZWN1dGUgfSBmcm9tIFwiLi4vcnVubmluZy9leGVjdXRlLmpzXCI7XG5pbXBvcnQgeyBQYWNrYWdlIH0gZnJvbSBcIi4uL3V0aWwvcGFja2FnZS5qc1wiO1xuaW1wb3J0IHsgUHJvZ3Jlc3MgfSBmcm9tIFwiLi4vdXRpbC9wcm9ncmVzcy5qc1wiO1xuXG5jb25zdCBWRVJTSU9OX0ZJTEUgPSBcInZlcnNpb24udHh0XCI7XG5cbmV4cG9ydCBjbGFzcyBWZXJzaW9uZXIge1xuICAgICNwa2c6IFBhY2thZ2U7XG4gICAgI3ZlcnNpb24/OiBzdHJpbmc7XG4gICAgI21lbWJlcnMgPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICAgIGdldCBwa2coKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiNwa2c7XG4gICAgfVxuXG4gICAgZ2V0IHZlcnNpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiN2ZXJzaW9uO1xuICAgIH1cblxuICAgIGdldCBhcHBsaWVkVmVyc2lvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuI3BrZy5qc29uLnZlcnNpb247XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocGtnOiBQYWNrYWdlLCB2ZXJzaW9uPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuI3BrZyA9IHBrZy53b3Jrc3BhY2U7XG5cbiAgICAgICAgaWYgKHZlcnNpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdmVyc2lvbiA9IHRoaXMuI3JlYWRWZXJzaW9uKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodmVyc2lvbiAmJiAhdmVyc2lvbi5tYXRjaCgvXig/OlxcZCtcXC5cXGQrXFwuXFxkKyg/Oi1bYS16MC05Li1dKyk/fFthLXpdKykkLykpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmVyc2lvbiAke3ZlcnNpb259IGlzIGludmFsaWQgKG11c3QgYmUgc2VtYW50aWMgb3Igc2luZ2xlIGxvd2VyY2FzZSB3b3JkKWApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy4jdmVyc2lvbiA9IHZlcnNpb247XG4gICAgfVxuXG4gICAgYXN5bmMgc2V0KCkge1xuICAgICAgICBhd2FpdCB3cml0ZUZpbGUodGhpcy4jdmVyc2lvbkZpbGUsIHRoaXMuI2RlZmluaXRlVmVyc2lvbik7XG4gICAgfVxuXG4gICAgYXN5bmMgYXBwbHkocHJvZ3Jlc3M/OiBQcm9ncmVzcykge1xuICAgICAgICBjb25zdCBncmFwaCA9IGF3YWl0IEdyYXBoLmxvYWQodGhpcy4jcGtnKTtcbiAgICAgICAgdGhpcy4jbWVtYmVycyA9IG5ldyBTZXQoZ3JhcGgubm9kZXMubWFwKG5vZGUgPT4gbm9kZS5wa2cubmFtZSkpO1xuXG4gICAgICAgIGZvciAoY29uc3Qgbm9kZSBvZiBncmFwaC5ub2Rlcykge1xuICAgICAgICAgICAgY29uc3Qgd2hhdCA9IGBBcHBseSAke2Fuc2kuYm9sZCh0aGlzLiNkZWZpbml0ZVZlcnNpb24pfSB0byAke2Fuc2kuYm9sZChub2RlLnBrZy5uYW1lKX1gO1xuICAgICAgICAgICAgcHJvZ3Jlc3M/LnVwZGF0ZSh3aGF0KTtcbiAgICAgICAgICAgIGlmICh0aGlzLiNhcHBseU9uZShub2RlLnBrZykpIHtcbiAgICAgICAgICAgICAgICBwcm9ncmVzcz8uc3VjY2Vzcyh3aGF0KTtcbiAgICAgICAgICAgICAgICBhd2FpdCBub2RlLnBrZy5zYXZlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHByb2dyZXNzPy5zdWNjZXNzKGAke3doYXR9IChubyBjaGFuZ2UpYCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhd2FpdCBjcCh0aGlzLiNwa2cucmVzb2x2ZShcIkxJQ0VOU0VcIiksIG5vZGUucGtnLnJlc29sdmUoXCJMSUNFTlNFXCIpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFzeW5jIHRhZygpIHtcbiAgICAgICAgYXdhaXQgZXhlY3V0ZShcImdpdFwiLCBbXCJ0YWdcIiwgXCItZlwiLCBgdiR7dGhpcy4jZGVmaW5pdGVWZXJzaW9ufWBdKTtcbiAgICB9XG5cbiAgICBnZXQgI2RlZmluaXRlVmVyc2lvbigpIHtcbiAgICAgICAgaWYgKHRoaXMuI3ZlcnNpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyB2ZXJzaW9uIHN1cHBsaWVkIGFuZCAke3RoaXMuI3ZlcnNpb25GaWxlfSBkb2VzIG5vdCBleGlzdGApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLiN2ZXJzaW9uO1xuICAgIH1cblxuICAgIGdldCAjdmVyc2lvbkZpbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLiNwa2cucmVzb2x2ZShWRVJTSU9OX0ZJTEUpO1xuICAgIH1cblxuICAgICNyZWFkVmVyc2lvbigpIHtcbiAgICAgICAgY29uc3QgdmVyc2lvbkZpbGUgPSB0aGlzLiN2ZXJzaW9uRmlsZTtcbiAgICAgICAgaWYgKCFleGlzdHNTeW5jKHZlcnNpb25GaWxlKSkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZlcnNpb24gPSByZWFkRmlsZVN5bmModmVyc2lvbkZpbGUpLnRvU3RyaW5nKCkudHJpbSgpO1xuICAgICAgICBpZiAodmVyc2lvbi5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVmVyc2lvbiBmaWxlICR7dmVyc2lvbkZpbGV9IGlzIGVtcHR5YCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdmVyc2lvbjtcbiAgICB9XG5cbiAgICAjYXBwbHlPbmUocGtnOiBQYWNrYWdlKSB7XG4gICAgICAgIGNvbnN0IGpzb24gPSBwa2cuanNvbjtcbiAgICAgICAgbGV0IGNoYW5nZWQgPSBmYWxzZTtcblxuICAgICAgICBpZiAoanNvbi52ZXJzaW9uICE9PSB0aGlzLiNkZWZpbml0ZVZlcnNpb24pIHtcbiAgICAgICAgICAgIGpzb24udmVyc2lvbiA9IHRoaXMuI2RlZmluaXRlVmVyc2lvbjtcbiAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4ganNvbikge1xuICAgICAgICAgICAgaWYgKGtleSAhPT0gXCJkZXBlbmRlbmNpZXNcIiAmJiAha2V5LmVuZHNXaXRoKFwiRGVwZW5kZW5jaWVzXCIpKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGRlcHMgPSBqc29uW2tleV07XG4gICAgICAgICAgICBpZiAodHlwZW9mIGRlcHMgIT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKHRoaXMuI2FwcGx5VG9EZXBzKGRlcHMgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPikpIHtcbiAgICAgICAgICAgICAgICBjaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjaGFuZ2VkO1xuICAgIH1cblxuICAgICNhcHBseVRvRGVwcyhkZXBzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSB7XG4gICAgICAgIGxldCBjaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IHZlcnNpb24gPSB0aGlzLiNkZWZpbml0ZVZlcnNpb247XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIGRlcHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLiNtZW1iZXJzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgICAgICAgaWYgKGRlcHNba2V5XSA9PT0gdmVyc2lvbikge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZGVwc1trZXldID0gdGhpcy4jZGVmaW5pdGVWZXJzaW9uO1xuICAgICAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjaGFuZ2VkO1xuICAgIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxTQUFTLFlBQVksb0JBQW9CO0FBQ3pDLFNBQVMsSUFBSSxpQkFBaUI7QUFDOUIsU0FBUyxZQUFZO0FBQ3JCLFNBQVMsYUFBYTtBQUN0QixTQUFTLGVBQWU7QUFJeEIsTUFBTSxlQUFlO0FBRWQsTUFBTSxVQUFVO0FBQUEsRUFDbkI7QUFBQSxFQUNBO0FBQUEsRUFDQSxXQUFXLG9CQUFJLElBQVk7QUFBQSxFQUUzQixJQUFJLE1BQU07QUFDTixXQUFPLEtBQUs7QUFBQSxFQUNoQjtBQUFBLEVBRUEsSUFBSSxVQUFVO0FBQ1YsV0FBTyxLQUFLO0FBQUEsRUFDaEI7QUFBQSxFQUVBLElBQUksaUJBQWlCO0FBQ2pCLFdBQU8sS0FBSyxLQUFLLEtBQUs7QUFBQSxFQUMxQjtBQUFBLEVBRUEsWUFBWSxLQUFjLFNBQWtCO0FBQ3hDLFNBQUssT0FBTyxJQUFJO0FBRWhCLFFBQUksWUFBWSxRQUFXO0FBQ3ZCLGdC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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/versioning/versioner.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,YAAY,oBAAoB;AACzC,SAAS,IAAI,iBAAiB;AAC9B,SAAS,YAAY;AACrB,SAAS,aAAa;AACtB,SAAS,eAAe;AAIxB,MAAM,eAAe;AAEd,MAAM,UAAU;AAAA,EACnB;AAAA,EACA;AAAA,EACA,WAAW,oBAAI,IAAY;AAAA,EAE3B,IAAI,MAAM;AACN,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,UAAU;AACV,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,iBAAiB;AACjB,WAAO,KAAK,KAAK,KAAK;AAAA,EAC1B;AAAA,EAEA,YAAY,KAAc,SAAkB;AACxC,SAAK,OAAO,IAAI;AAEhB,QAAI,YAAY,QAAW;AACvB,gBAAU,KAAK,aAAa;AAAA,IAChC;AAEA,QAAI,WAAW,CAAC,QAAQ,MAAM,6CAA6C,GAAG;AAC1E,YAAM,IAAI,MAAM,WAAW,OAAO,yDAAyD;AAAA,IAC/F;AAEA,SAAK,WAAW;AAAA,EACpB;AAAA,EAEA,MAAM,MAAM;AACR,UAAM,UAAU,KAAK,cAAc,KAAK,gBAAgB;AAAA,EAC5D;AAAA,EAEA,MAAM,MAAM,UAAqB;AAC7B,UAAM,QAAQ,MAAM,MAAM,KAAK,KAAK,IAAI;AACxC,SAAK,WAAW,IAAI,IAAI,MAAM,MAAM,IAAI,UAAQ,KAAK,IAAI,IAAI,CAAC;AAE9D,eAAW,QAAQ,MAAM,OAAO;AAC5B,YAAM,OAAO,SAAS,KAAK,KAAK,KAAK,gBAAgB,CAAC,OAAO,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC;AACrF,gBAAU,OAAO,IAAI;AACrB,UAAI,KAAK,UAAU,KAAK,GAAG,GAAG;AAC1B,kBAAU,QAAQ,IAAI;AACtB,cAAM,KAAK,IAAI,KAAK;AAAA,MACxB,OAAO;AACH,kBAAU,QAAQ,GAAG,IAAI,cAAc;AAAA,MAC3C;AACA,YAAM,GAAG,KAAK,KAAK,QAAQ,SAAS,GAAG,KAAK,IAAI,QAAQ,SAAS,CAAC;AAAA,IACtE;AAAA,EACJ;AAAA,EAEA,MAAM,MAAM;AACR,UAAM,QAAQ,OAAO,CAAC,OAAO,MAAM,IAAI,KAAK,gBAAgB,EAAE,CAAC;AAAA,EACnE;AAAA,EAEA,IAAI,mBAAmB;AACnB,QAAI,KAAK,aAAa,QAAW;AAC7B,YAAM,IAAI,MAAM,2BAA2B,KAAK,YAAY,iBAAiB;AAAA,IACjF;AACA,WAAO,KAAK;AAAA,EAChB;AAAA,EAEA,IAAI,eAAe;AACf,WAAO,KAAK,KAAK,QAAQ,YAAY;AAAA,EACzC;AAAA,EAEA,eAAe;AACX,UAAM,cAAc,KAAK;AACzB,QAAI,CAAC,WAAW,WAAW,GAAG;AAC1B,aAAO;AAAA,IACX;AAEA,UAAM,UAAU,aAAa,WAAW,EAAE,SAAS,EAAE,KAAK;AAC1D,QAAI,QAAQ,WAAW,GAAG;AACtB,YAAM,IAAI,MAAM,gBAAgB,WAAW,WAAW;AAAA,IAC1D;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,UAAU,KAAc;AACpB,UAAM,OAAO,IAAI;AACjB,QAAI,UAAU;AAEd,QAAI,KAAK,YAAY,KAAK,kBAAkB;AACxC,WAAK,UAAU,KAAK;AACpB,gBAAU;AAAA,IACd;AAEA,eAAW,OAAO,MAAM;AACpB,UAAI,QAAQ,kBAAkB,CAAC,IAAI,SAAS,cAAc,GAAG;AACzD;AAAA,MACJ;AAEA,YAAM,OAAO,KAAK,GAAG;AACrB,UAAI,OAAO,SAAS,UAAU;AAC1B;AAAA,MACJ;AAEA,UAAI,KAAK,aAAa,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@matter/tools",
|
|
3
|
-
"version": "0.13.0-alpha.0-
|
|
3
|
+
"version": "0.13.0-alpha.0-20250322-f085fa576",
|
|
4
4
|
"description": "Matter.js tooling",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -65,11 +65,11 @@
|
|
|
65
65
|
"minimatch": "^10.0.1",
|
|
66
66
|
"typescript": "~5.8.2",
|
|
67
67
|
"type-fest": "^4.37.0",
|
|
68
|
-
"typedoc": "^0.
|
|
68
|
+
"typedoc": "^0.28.0",
|
|
69
69
|
"typedoc-github-theme": "^0.2.1"
|
|
70
70
|
},
|
|
71
71
|
"optionalDependencies": {
|
|
72
|
-
"@esbuild/linux-x64": "^0.25.
|
|
72
|
+
"@esbuild/linux-x64": "^0.25.1"
|
|
73
73
|
},
|
|
74
74
|
"devDependencies": {
|
|
75
75
|
"@types/madge": "^5.0.3",
|
package/src/building/graph.ts
CHANGED
|
@@ -48,7 +48,7 @@ export class Graph {
|
|
|
48
48
|
const nodeMap = await this.#loadNodes(workspace);
|
|
49
49
|
|
|
50
50
|
const rootPkg = new Package({ path: path });
|
|
51
|
-
const rootNode = nodeMap[rootPkg.
|
|
51
|
+
const rootNode = nodeMap[rootPkg.name];
|
|
52
52
|
if (!rootNode) {
|
|
53
53
|
// Project resides under a workspace but is not part of the workspace
|
|
54
54
|
return;
|
|
@@ -174,13 +174,16 @@ export class Graph {
|
|
|
174
174
|
|
|
175
175
|
static async #loadNodes(workspace: Package) {
|
|
176
176
|
const workspaces = workspace.json.workspaces;
|
|
177
|
+
if (workspaces === undefined) {
|
|
178
|
+
throw new Error(`No workspaces defined in ${workspace.name}`);
|
|
179
|
+
}
|
|
177
180
|
|
|
178
181
|
const nodeMap = {} as Record<string, Graph.Node>;
|
|
179
182
|
const allDeps = {} as Record<string, string[]>;
|
|
180
183
|
for (const path of workspaces.values()) {
|
|
181
184
|
const pkg = new Package({ path: workspace.resolve(path) });
|
|
182
|
-
allDeps[pkg.
|
|
183
|
-
nodeMap[pkg.
|
|
185
|
+
allDeps[pkg.name] = pkg.dependencies;
|
|
186
|
+
nodeMap[pkg.name] = {
|
|
184
187
|
pkg,
|
|
185
188
|
project: new Project(pkg),
|
|
186
189
|
dependencies: [],
|
package/src/util/package.ts
CHANGED
|
@@ -90,11 +90,11 @@ export class Package {
|
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
get name() {
|
|
93
|
-
return this.json.name
|
|
93
|
+
return this.json.name ?? `<${this.path}>`;
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
get version() {
|
|
97
|
-
return this.json.version;
|
|
97
|
+
return this.json.version ?? "?";
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
get exports() {
|
|
@@ -218,9 +218,9 @@ export class Package {
|
|
|
218
218
|
if (!name.startsWith(".")) {
|
|
219
219
|
name = `./${name}`;
|
|
220
220
|
}
|
|
221
|
-
const exportDetail = this.exports?.[name];
|
|
221
|
+
const exportDetail = typeof this.exports === "object" ? this.exports?.[name] : undefined;
|
|
222
222
|
|
|
223
|
-
if (exportDetail) {
|
|
223
|
+
if (typeof exportDetail === "object") {
|
|
224
224
|
const exp = findExportCondition(exportDetail, type);
|
|
225
225
|
if (exp) {
|
|
226
226
|
return this.resolve(exp);
|
|
@@ -386,14 +386,20 @@ export class Package {
|
|
|
386
386
|
}
|
|
387
387
|
|
|
388
388
|
export type PackageJson = {
|
|
389
|
-
name
|
|
390
|
-
version
|
|
391
|
-
imports
|
|
389
|
+
name?: string;
|
|
390
|
+
version?: string;
|
|
391
|
+
imports?: Record<string, string>;
|
|
392
392
|
matter?: {
|
|
393
393
|
test?: boolean;
|
|
394
394
|
};
|
|
395
395
|
scripts?: Record<string, string>;
|
|
396
|
-
|
|
396
|
+
exports?: Exports;
|
|
397
|
+
module?: string;
|
|
398
|
+
main?: string;
|
|
399
|
+
workspaces?: Array<string>;
|
|
400
|
+
dependencies?: Record<string, string>;
|
|
401
|
+
devDependencies?: Record<string, string>;
|
|
402
|
+
[key: string]: unknown;
|
|
397
403
|
};
|
|
398
404
|
|
|
399
405
|
let workingDir = ".";
|
|
@@ -408,9 +414,13 @@ function find(startDir: string, selector: (pkg: Package) => boolean): Package {
|
|
|
408
414
|
return pkg;
|
|
409
415
|
}
|
|
410
416
|
|
|
411
|
-
function selectFormats(json:
|
|
417
|
+
function selectFormats(json: Record<string, unknown>) {
|
|
412
418
|
let esm: boolean, cjs: boolean;
|
|
413
419
|
|
|
420
|
+
if (typeof json !== "object") {
|
|
421
|
+
throw new Error(`Invalid package JSON ${typeof json}`);
|
|
422
|
+
}
|
|
423
|
+
|
|
414
424
|
if (json.type === "module") {
|
|
415
425
|
esm = true;
|
|
416
426
|
cjs =
|
|
@@ -455,7 +465,7 @@ function findModules(
|
|
|
455
465
|
target: Record<string, string>,
|
|
456
466
|
prefix: string,
|
|
457
467
|
path: string,
|
|
458
|
-
exports
|
|
468
|
+
exports?: Exports,
|
|
459
469
|
) {
|
|
460
470
|
if (typeof exports === "string") {
|
|
461
471
|
addModuleGlobs(source, target, prefix, path, exports);
|
package/src/util/progress.ts
CHANGED
|
@@ -14,7 +14,7 @@ const SPINNER = "◐◓◑◒"; //"⡜⠔⠢⢣"; //["⚫︎", "⚪︎"]; "⡈
|
|
|
14
14
|
const SPINNER_INTERVAL = 100;
|
|
15
15
|
|
|
16
16
|
function packageIdentity(pkg: Package) {
|
|
17
|
-
let identity = ansi.bold(pkg.
|
|
17
|
+
let identity = ansi.bold(pkg.name).toString();
|
|
18
18
|
if (pkg.json.version) {
|
|
19
19
|
identity = `${identity}@${pkg.json.version}`;
|
|
20
20
|
}
|