@rudderstack/integrations-lib 0.2.40 → 0.2.42
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/build/cluster/manager.d.ts +6 -0
- package/build/cluster/manager.d.ts.map +1 -1
- package/build/cluster/manager.js +18 -3
- package/build/cluster/types.d.ts +27 -0
- package/build/cluster/types.d.ts.map +1 -1
- package/build/cluster/types.js +1 -1
- package/build/cluster/utils.d.ts +7 -1
- package/build/cluster/utils.d.ts.map +1 -1
- package/build/cluster/utils.js +14 -1
- package/build/constants.d.ts.map +1 -1
- package/build/constants.js +2 -1
- package/build/logger.js +5 -5
- package/package.json +1 -1
|
@@ -19,6 +19,12 @@ export declare class ClusterManager extends EventEmitter {
|
|
|
19
19
|
private healthCheckInterval;
|
|
20
20
|
private signalHandlers;
|
|
21
21
|
constructor(options?: ClusterManagerOptions);
|
|
22
|
+
/**
|
|
23
|
+
* Initialize the cluster manager with primary process configuration
|
|
24
|
+
*
|
|
25
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersetupprimaryoptions Node.js cluster.setupPrimary()}
|
|
26
|
+
*/
|
|
27
|
+
private initialize;
|
|
22
28
|
/**
|
|
23
29
|
* Starts the cluster manager
|
|
24
30
|
* In primary process: starts workers and health monitoring
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/cluster/manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EAMrB,MAAM,SAAS,CAAC;AAGjB;;;;;;;;;GASG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,eAAe,CAA8B;IAErD,OAAO,CAAC,mBAAmB,CAA+B;IAE1D,OAAO,CAAC,cAAc,CAAyC;gBAEnD,OAAO,GAAE,qBAA0B;IAM/C;;;;OAIG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IASnC;;OAEG;IACI,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;OAEG;YACW,YAAY;IAqB1B;;OAEG;YACW,WAAW;IAUzB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;OAEG;IACH,OAAO,CAAC,0BAA0B;
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/cluster/manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EAMrB,MAAM,SAAS,CAAC;AAGjB;;;;;;;;;GASG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAE1D,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,eAAe,CAA8B;IAErD,OAAO,CAAC,mBAAmB,CAA+B;IAE1D,OAAO,CAAC,cAAc,CAAyC;gBAEnD,OAAO,GAAE,qBAA0B;IAM/C;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAOlB;;;;OAIG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IASnC;;OAEG;IACI,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqB/C;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;OAEG;YACW,YAAY;IAqB1B;;OAEG;YACW,WAAW;IAUzB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAkBlC;;OAEG;IACH,OAAO,CAAC,WAAW;IAuBnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAM7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAiCzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAsBxB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,kBAAkB;IAM1B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAsBlC;;OAEG;YACW,eAAe;IA2B7B;;OAEG;YACW,kBAAkB;IAwChC;;OAEG;YACW,uBAAuB;IAOrC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;OAEG;YACW,cAAc;IAwB5B;;OAEG;IACI,cAAc,IAAI,MAAM;IAI/B;;OAEG;IACI,aAAa,IAAI,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAAC;IAQhF;;OAEG;IACI,SAAS,IAAI,OAAO;IAI3B;;OAEG;IACI,UAAU,IAAI,OAAO;CAG7B;AAGD,MAAM,WAAW,qBAAqB;IACpC,EAAE,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC5F,IAAI,CAAC,CAAC,SAAS,MAAM,oBAAoB,EACvC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,GAC3C,OAAO,CAAC;CACZ"}
|
package/build/cluster/manager.js
CHANGED
|
@@ -57,6 +57,17 @@ class ClusterManager extends events_1.EventEmitter {
|
|
|
57
57
|
this.healthCheckInterval = null;
|
|
58
58
|
this.signalHandlers = new Map();
|
|
59
59
|
this.options = (0, utils_1.validateAndDefaultOptions)(options);
|
|
60
|
+
this.initialize();
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Initialize the cluster manager with primary process configuration
|
|
64
|
+
*
|
|
65
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersetupprimaryoptions Node.js cluster.setupPrimary()}
|
|
66
|
+
*/
|
|
67
|
+
initialize() {
|
|
68
|
+
this.options.cluster.setupPrimary({
|
|
69
|
+
serialization: this.options.serialization,
|
|
70
|
+
});
|
|
60
71
|
this.setupSignalHandlers();
|
|
61
72
|
}
|
|
62
73
|
/**
|
|
@@ -166,7 +177,9 @@ class ClusterManager extends events_1.EventEmitter {
|
|
|
166
177
|
this.shutdown(message.signal);
|
|
167
178
|
break;
|
|
168
179
|
default:
|
|
169
|
-
|
|
180
|
+
if (!message.type.includes('Metrics')) {
|
|
181
|
+
logger.warn(`ignoring unknown message type in worker ${process.pid}: ${message.type}`);
|
|
182
|
+
}
|
|
170
183
|
break;
|
|
171
184
|
}
|
|
172
185
|
});
|
|
@@ -206,7 +219,9 @@ class ClusterManager extends events_1.EventEmitter {
|
|
|
206
219
|
workerState.pendingPing = false;
|
|
207
220
|
break;
|
|
208
221
|
default:
|
|
209
|
-
|
|
222
|
+
if (!message.type.includes('Metrics')) {
|
|
223
|
+
logger.warn(`Received unknown message type from worker ${this.getWorkerId(worker)} (pid: ${worker.process.pid}): ${message.type}`);
|
|
224
|
+
}
|
|
210
225
|
break;
|
|
211
226
|
}
|
|
212
227
|
}
|
|
@@ -454,4 +469,4 @@ class ClusterManager extends events_1.EventEmitter {
|
|
|
454
469
|
}
|
|
455
470
|
}
|
|
456
471
|
exports.ClusterManager = ClusterManager;
|
|
457
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbHVzdGVyL21hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsbUNBQXNDO0FBQ3RDLGtEQUFvQztBQVVwQyxtQ0FBaUY7QUFFakY7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxjQUFlLFNBQVEscUJBQVk7SUFlOUMsWUFBWSxVQUFpQyxFQUFFO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBYk8sWUFBTyxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBRWxELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsb0JBQWUsR0FBeUIsSUFBSSxDQUFDO1FBRTdDLHdCQUFtQixHQUEwQixJQUFJLENBQUM7UUFFbEQsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBOEIsQ0FBQztRQUk3RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUEsaUNBQXlCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsS0FBSztRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ25DLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzVCLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVEsQ0FBQyxNQUFlO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsT0FBTyxPQUFPLENBQUMsT0FBTyxF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QUMsQ0FBQztRQUM1RixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7T0FFRztJQUNJLGNBQWM7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxhQUFhO1FBQ2xCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZELEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNaLEdBQUcsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQ25DLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtTQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNJLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0NBQ0Y7QUE3Z0JELHdDQTZnQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1wYXJhbS1yZWFzc2lnbiAqL1xuaW1wb3J0IHsgV29ya2VyIH0gZnJvbSAnY2x1c3Rlcic7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICdldmVudHMnO1xuaW1wb3J0ICogYXMgbG9nZ2VyIGZyb20gJy4uL2xvZ2dlcic7XG5pbXBvcnQge1xuICBDbHVzdGVyTWFuYWdlck9wdGlvbnMsXG4gIENsdXN0ZXJNYW5hZ2VyRXZlbnRzLFxuICBXb3JrZXJTdGF0ZSxcbiAgSVBDTWVzc2FnZSxcbiAgUGluZ01lc3NhZ2UsXG4gIFBvbmdNZXNzYWdlLFxuICBTaHV0ZG93bk1lc3NhZ2UsXG59IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgZGVsYXksIHRpbWVvdXQsIHNhZmVFeGVjdXRlLCB2YWxpZGF0ZUFuZERlZmF1bHRPcHRpb25zIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQ2x1c3Rlck1hbmFnZXIgLSBBIGNsdXN0ZXIgbGlmZWN5Y2xlIG1hbmFnZW1lbnQgc3lzdGVtXG4gKlxuICogVGhlIG1hbmFnZXIgc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBmZWF0dXJlczpcbiAqIC0gR3JhY2VmdWwgc2h1dGRvd24gd2l0aCBjb25maWd1cmFibGUgdGltZW91dFxuICogLSBXb3JrZXIgaGVhbHRoIG1vbml0b3Jpbmcgd2l0aCBwaW5nL3BvbmcgbWVjaGFuaXNtXG4gKiAtIEF1dG9tYXRpYyB3b3JrZXIgcmVzdGFydCB3aXRoIGNvbmZpZ3VyYWJsZSBsaW1pdHNcbiAqIC0gU2lnbmFsIGhhbmRsaW5nIGZvciBzaHV0ZG93biB0cmlnZ2Vyc1xuICogLSBGbGV4aWJsZSBwcmltYXJ5IGFuZCB3b3JrZXIgZnVuY3Rpb24gaGFuZGxlcnNcbiAqL1xuZXhwb3J0IGNsYXNzIENsdXN0ZXJNYW5hZ2VyIGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBSZXF1aXJlZDxDbHVzdGVyTWFuYWdlck9wdGlvbnM+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgd29ya2VycyA9IG5ldyBNYXA8bnVtYmVyLCBXb3JrZXJTdGF0ZT4oKTtcblxuICBwcml2YXRlIHN0YXJ0ZWQgPSBmYWxzZTtcblxuICBwcml2YXRlIGlzU2h1dHRpbmdEb3duID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBzaHV0ZG93blByb21pc2U6IFByb21pc2U8dm9pZD4gfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIGhlYWx0aENoZWNrSW50ZXJ2YWw6IE5vZGVKUy5UaW1lb3V0IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBzaWduYWxIYW5kbGVycyA9IG5ldyBNYXA8Tm9kZUpTLlNpZ25hbHMsICgpID0+IHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogQ2x1c3Rlck1hbmFnZXJPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMub3B0aW9ucyA9IHZhbGlkYXRlQW5kRGVmYXVsdE9wdGlvbnMob3B0aW9ucyk7XG4gICAgdGhpcy5zZXR1cFNpZ25hbEhhbmRsZXJzKCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIHRoZSBjbHVzdGVyIG1hbmFnZXJcbiAgICogSW4gcHJpbWFyeSBwcm9jZXNzOiBzdGFydHMgd29ya2VycyBhbmQgaGVhbHRoIG1vbml0b3JpbmdcbiAgICogSW4gd29ya2VyIHByb2Nlc3M6IGV4ZWN1dGVzIHdvcmtlciBmdW5jdGlvblxuICAgKi9cbiAgcHVibGljIGFzeW5jIHN0YXJ0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLm9wdGlvbnMuY2x1c3Rlci5pc1ByaW1hcnkpIHtcbiAgICAgIGF3YWl0IHRoaXMuc3RhcnRQcmltYXJ5KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHRoaXMuc3RhcnRXb3JrZXIoKTtcbiAgICB9XG4gICAgdGhpcy5zdGFydGVkID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWF0ZXMgZ3JhY2VmdWwgc2h1dGRvd24gb2YgdGhlIGNsdXN0ZXJcbiAgICovXG4gIHB1YmxpYyBzaHV0ZG93bihzaWduYWw/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIXRoaXMuc3RhcnRlZCkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNodXRkb3duUHJvbWlzZSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2h1dGRvd25Qcm9taXNlO1xuICAgIH1cblxuICAgIHRoaXMuaXNTaHV0dGluZ0Rvd24gPSB0cnVlO1xuICAgIHRoaXMuZW1pdCgnc2h1dGRvd246c3RhcnRlZCcsIHNpZ25hbCk7XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLmNsdXN0ZXIuaXNQcmltYXJ5KSB7XG4gICAgICB0aGlzLnNodXRkb3duUHJvbWlzZSA9IHRoaXMuc2h1dGRvd25QcmltYXJ5KHNpZ25hbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2h1dGRvd25Qcm9taXNlID0gdGhpcy5zaHV0ZG93bldvcmtlcihzaWduYWwpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnNodXRkb3duUHJvbWlzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHVwIHNpZ25hbCBoYW5kbGVycyBmb3IgZ3JhY2VmdWwgc2h1dGRvd25cbiAgICovXG4gIHByaXZhdGUgc2V0dXBTaWduYWxIYW5kbGVycygpOiB2b2lkIHtcbiAgICB0aGlzLm9wdGlvbnMuc2h1dGRvd25TaWduYWxzLmZvckVhY2goKHNpZ25hbCkgPT4ge1xuICAgICAgY29uc3QgaGFuZGxlciA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5zaHV0ZG93bihzaWduYWwpO1xuICAgICAgfTtcbiAgICAgIHRoaXMuc2lnbmFsSGFuZGxlcnMuc2V0KHNpZ25hbCwgaGFuZGxlcik7XG4gICAgICBwcm9jZXNzLm9uKHNpZ25hbCwgaGFuZGxlcik7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBzaWduYWwgaGFuZGxlcnNcbiAgICovXG4gIHByaXZhdGUgcmVtb3ZlU2lnbmFsSGFuZGxlcnMoKTogdm9pZCB7XG4gICAgQXJyYXkuZnJvbSh0aGlzLnNpZ25hbEhhbmRsZXJzLmVudHJpZXMoKSkuZm9yRWFjaCgoW3NpZ25hbCwgaGFuZGxlcl0pID0+IHtcbiAgICAgIHByb2Nlc3MucmVtb3ZlTGlzdGVuZXIoc2lnbmFsLCBoYW5kbGVyKTtcbiAgICB9KTtcbiAgICB0aGlzLnNpZ25hbEhhbmRsZXJzLmNsZWFyKCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIHRoZSBwcmltYXJ5IHByb2Nlc3NcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgc3RhcnRQcmltYXJ5KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGxvZ2dlci5pbmZvKFxuICAgICAgYFByaW1hcnkgcHJvY2VzcyAocGlkOiAke3Byb2Nlc3MucGlkfSkgc3RhcnRpbmcgd2l0aCAke3RoaXMub3B0aW9ucy5udW1Xb3JrZXJzfSB3b3JrZXJzYCxcbiAgICApO1xuXG4gICAgLy8gRXhlY3V0ZSBwcmltYXJ5IGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLCBhbnkgZXJyb3Igd2lsbCBzdG9wIHRoZSBjbHVzdGVyIGZyb20gc3RhcnRpbmdcbiAgICBhd2FpdCB0aGlzLm9wdGlvbnMucHJpbWFyeUZuKCk7XG5cbiAgICAvLyBTZXQgdXAgY2x1c3RlciBldmVudCBoYW5kbGVyc1xuICAgIHRoaXMuc2V0dXBDbHVzdGVyRXZlbnRIYW5kbGVycygpO1xuXG4gICAgLy8gU3Bhd24gaW5pdGlhbCB3b3JrZXJzXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLm9wdGlvbnMubnVtV29ya2VyczsgaSArPSAxKSB7XG4gICAgICBjb25zdCB3b3JrZXJJZCA9IGkgKyAxOyAvLyBXb3JrZXIgSURzIHN0YXJ0IGZyb20gMVxuICAgICAgdGhpcy5zcGF3bldvcmtlcih3b3JrZXJJZCk7XG4gICAgfVxuXG4gICAgLy8gU3RhcnQgaGVhbHRoIG1vbml0b3JpbmdcbiAgICB0aGlzLnN0YXJ0SGVhbHRoTW9uaXRvcmluZygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBhIHdvcmtlciBwcm9jZXNzXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHN0YXJ0V29ya2VyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGxvZ2dlci5pbmZvKGBXb3JrZXIgJHt0aGlzLmdldEN1cnJlbnRXb3JrZXJJZCgpfSAocGlkOiAke3Byb2Nlc3MucGlkfSkgc3RhcnRpbmdgKTtcblxuICAgIC8vIFNldCB1cCBJUEMgbWVzc2FnZSBoYW5kbGVyc1xuICAgIHRoaXMuc2V0dXBXb3JrZXJNZXNzYWdlSGFuZGxlcnMoKTtcblxuICAgIC8vIEV4ZWN1dGUgd29ya2VyIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uLCBhbnkgZXJyb3Igd2lsbCBiZSBwcm9wYWdhdGVkXG4gICAgYXdhaXQgdGhpcy5vcHRpb25zLndvcmtlckZuKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB1cCBjbHVzdGVyIGV2ZW50IGhhbmRsZXJzIGZvciB0aGUgcHJpbWFyeSBwcm9jZXNzXG4gICAqL1xuICBwcml2YXRlIHNldHVwQ2x1c3RlckV2ZW50SGFuZGxlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25zLmNsdXN0ZXIub24oJ2V4aXQnLCAod29ya2VyOiBXb3JrZXIsIGNvZGU6IG51bWJlciwgc2lnbmFsOiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMuaGFuZGxlV29ya2VyRXhpdCh3b3JrZXIsIGNvZGUsIHNpZ25hbCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLm9wdGlvbnMuY2x1c3Rlci5vbignb25saW5lJywgKHdvcmtlcjogV29ya2VyKSA9PiB7XG4gICAgICBsb2dnZXIuaW5mbyhgV29ya2VyICR7dGhpcy5nZXRXb3JrZXJJZCh3b3JrZXIpfSAocGlkOiAke3dvcmtlci5wcm9jZXNzLnBpZH0pIGlzIG9ubGluZWApO1xuICAgICAgdGhpcy5lbWl0KCd3b3JrZXI6c3RhcnRlZCcsIHdvcmtlcik7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB1cCBJUEMgbWVzc2FnZSBoYW5kbGVycyBmb3Igd29ya2VyIHByb2Nlc3Nlc1xuICAgKi9cbiAgcHJpdmF0ZSBzZXR1cFdvcmtlck1lc3NhZ2VIYW5kbGVycygpOiB2b2lkIHtcbiAgICBwcm9jZXNzLm9uKCdtZXNzYWdlJywgKG1lc3NhZ2U6IElQQ01lc3NhZ2UpID0+IHtcbiAgICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICAgIGNhc2UgJ3BpbmcnOlxuICAgICAgICAgIHRoaXMuaGFuZGxlV29ya2VyUGluZyhtZXNzYWdlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnc2h1dGRvd24nOlxuICAgICAgICAgIHRoaXMuc2h1dGRvd24obWVzc2FnZS5zaWduYWwpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGxvZ2dlci53YXJuKGBpZ25vcmluZyB1bmtub3duIG1lc3NhZ2UgdHlwZSBpbiB3b3JrZXIgJHtwcm9jZXNzLnBpZH06ICR7bWVzc2FnZS50eXBlfWApO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwYXducyBhIG5ldyB3b3JrZXIgYW5kIHNldHMgdXAgaXRzIHN0YXRlXG4gICAqL1xuICBwcml2YXRlIHNwYXduV29ya2VyKGlkOiBudW1iZXIpOiBXb3JrZXIge1xuICAgIGNvbnN0IHdvcmtlciA9IHRoaXMub3B0aW9ucy5jbHVzdGVyLmZvcmsoe1xuICAgICAgV09SS0VSX0lEOiBpZCxcbiAgICB9KTtcbiAgICBjb25zdCB3b3JrZXJTdGF0ZTogV29ya2VyU3RhdGUgPSB7XG4gICAgICBpZCxcbiAgICAgIHdvcmtlcixcbiAgICAgIHJlc3RhcnRDb3VudDogMCxcbiAgICAgIGxhc3RQaW5nOiBEYXRlLm5vdygpLFxuICAgICAgcGVuZGluZ1Bpbmc6IGZhbHNlLFxuICAgICAgaXNTaHV0dGluZ0Rvd246IGZhbHNlLFxuICAgIH07XG5cbiAgICB0aGlzLndvcmtlcnMuc2V0KHdvcmtlci5pZCwgd29ya2VyU3RhdGUpO1xuXG4gICAgLy8gU2V0IHVwIHdvcmtlciBtZXNzYWdlIGhhbmRsZXJcbiAgICB3b3JrZXIub24oJ21lc3NhZ2UnLCAobWVzc2FnZTogSVBDTWVzc2FnZSkgPT4ge1xuICAgICAgdGhpcy5oYW5kbGVXb3JrZXJNZXNzYWdlKHdvcmtlciwgbWVzc2FnZSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gd29ya2VyO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgbWVzc2FnZXMgZnJvbSB3b3JrZXJzXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZVdvcmtlck1lc3NhZ2Uod29ya2VyOiBXb3JrZXIsIG1lc3NhZ2U6IElQQ01lc3NhZ2UpOiB2b2lkIHtcbiAgICBjb25zdCB3b3JrZXJTdGF0ZSA9IHRoaXMud29ya2Vycy5nZXQod29ya2VyLmlkKTtcbiAgICBpZiAoIXdvcmtlclN0YXRlKSByZXR1cm47XG5cbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSAncG9uZyc6XG4gICAgICAgIHdvcmtlclN0YXRlLmxhc3RQaW5nID0gRGF0ZS5ub3coKTtcbiAgICAgICAgd29ya2VyU3RhdGUucGVuZGluZ1BpbmcgPSBmYWxzZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBsb2dnZXIud2FybihcbiAgICAgICAgICBgUmVjZWl2ZWQgdW5rbm93biBtZXNzYWdlIHR5cGUgZnJvbSB3b3JrZXIgJHt0aGlzLmdldFdvcmtlcklkKHdvcmtlcil9IChwaWQ6ICR7XG4gICAgICAgICAgICB3b3JrZXIucHJvY2Vzcy5waWRcbiAgICAgICAgICB9KTogJHttZXNzYWdlLnR5cGV9YCxcbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgcGluZyBtZXNzYWdlcyBpbiB3b3JrZXIgcHJvY2Vzc2VzXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZVdvcmtlclBpbmcobWVzc2FnZTogUGluZ01lc3NhZ2UpOiB2b2lkIHtcbiAgICBjb25zdCBwb25nTWVzc2FnZTogUG9uZ01lc3NhZ2UgPSB7XG4gICAgICB0eXBlOiAncG9uZycsXG4gICAgICB0aW1lc3RhbXA6IG1lc3NhZ2UudGltZXN0YW1wLFxuICAgIH07XG5cbiAgICBpZiAocHJvY2Vzcy5zZW5kKSB7XG4gICAgICBwcm9jZXNzLnNlbmQocG9uZ01lc3NhZ2UpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgaGVhbHRoIG1vbml0b3JpbmcgZm9yIGFsbCB3b3JrZXJzXG4gICAqL1xuICBwcml2YXRlIHN0YXJ0SGVhbHRoTW9uaXRvcmluZygpOiB2b2lkIHtcbiAgICB0aGlzLmhlYWx0aENoZWNrSW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICB0aGlzLnBlcmZvcm1IZWFsdGhDaGVjaygpO1xuICAgIH0sIHRoaXMub3B0aW9ucy5waW5nRnJlcXVlbmN5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdG9wcyBoZWFsdGggbW9uaXRvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBzdG9wSGVhbHRoTW9uaXRvcmluZygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5oZWFsdGhDaGVja0ludGVydmFsKSB7XG4gICAgICBjbGVhckludGVydmFsKHRoaXMuaGVhbHRoQ2hlY2tJbnRlcnZhbCk7XG4gICAgICB0aGlzLmhlYWx0aENoZWNrSW50ZXJ2YWwgPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJmb3JtcyBoZWFsdGggY2hlY2sgb24gYWxsIHdvcmtlcnNcbiAgICovXG4gIHByaXZhdGUgcGVyZm9ybUhlYWx0aENoZWNrKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzU2h1dHRpbmdEb3duKSByZXR1cm47XG5cbiAgICBBcnJheS5mcm9tKHRoaXMud29ya2Vycy52YWx1ZXMoKSlcbiAgICAgIC5maWx0ZXIoKHdvcmtlclN0YXRlKSA9PiAhd29ya2VyU3RhdGUuaXNTaHV0dGluZ0Rvd24pXG4gICAgICAuZm9yRWFjaCgod29ya2VyU3RhdGUpID0+IHtcbiAgICAgICAgY29uc3QgdGltZVNpbmNlTGFzdFBpbmcgPSBEYXRlLm5vdygpIC0gd29ya2VyU3RhdGUubGFzdFBpbmc7XG5cbiAgICAgICAgaWYgKHdvcmtlclN0YXRlLnBlbmRpbmdQaW5nICYmIHRpbWVTaW5jZUxhc3RQaW5nID4gdGhpcy5vcHRpb25zLnBpbmdUaW1lb3V0KSB7XG4gICAgICAgICAgLy8gV29ya2VyIGlzIHN0dWNrLCBoYW5kbGUgaXRcbiAgICAgICAgICB0aGlzLmhhbmRsZVN0dWNrV29ya2VyKHdvcmtlclN0YXRlKTtcbiAgICAgICAgfSBlbHNlIGlmICghd29ya2VyU3RhdGUucGVuZGluZ1BpbmcpIHtcbiAgICAgICAgICAvLyBTZW5kIHBpbmcgdG8gd29ya2VyXG4gICAgICAgICAgdGhpcy5zZW5kUGluZ1RvV29ya2VyKHdvcmtlclN0YXRlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2VuZHMgYSBwaW5nIG1lc3NhZ2UgdG8gYSB3b3JrZXJcbiAgICovXG4gIHByaXZhdGUgc2VuZFBpbmdUb1dvcmtlcih3b3JrZXJTdGF0ZTogV29ya2VyU3RhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBwaW5nTWVzc2FnZTogUGluZ01lc3NhZ2UgPSB7XG4gICAgICB0eXBlOiAncGluZycsXG4gICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgfTtcblxuICAgIHdvcmtlclN0YXRlLnBlbmRpbmdQaW5nID0gdHJ1ZTtcbiAgICB0cnkge1xuICAgICAgd29ya2VyU3RhdGUud29ya2VyLnNlbmQocGluZ01lc3NhZ2UpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgIGBGYWlsZWQgdG8gc2VuZCBwaW5nIHRvIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke1xuICAgICAgICAgIHdvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZFxuICAgICAgICB9KTogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcil9YCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgYSBzdHVjayB3b3JrZXJcbiAgICovXG4gIHByaXZhdGUgaGFuZGxlU3R1Y2tXb3JrZXIod29ya2VyU3RhdGU6IFdvcmtlclN0YXRlKTogdm9pZCB7XG4gICAgbG9nZ2VyLmVycm9yKFxuICAgICAgYFdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke3dvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZH0pIGlzIHN0dWNrLCBraWxsaW5nIGl0YCxcbiAgICApO1xuICAgIHRoaXMuZW1pdCgnd29ya2VyOnN0dWNrJywgd29ya2VyU3RhdGUud29ya2VyKTtcblxuICAgIC8vIFJlbW92ZSB3b3JrZXIgc3RhdGVcbiAgICB0aGlzLndvcmtlcnMuZGVsZXRlKHdvcmtlclN0YXRlLndvcmtlci5pZCk7XG5cbiAgICAvLyBLaWxsIHRoZSB3b3JrZXJcbiAgICB3b3JrZXJTdGF0ZS53b3JrZXIua2lsbCgnU0lHS0lMTCcpO1xuXG4gICAgLy8gRGV0ZXJtaW5lIGlmIHdlIHNob3VsZCBzcGF3biBhIHJlcGxhY2VtZW50XG4gICAgY29uc3Qgc2hvdWxkU3Bhd24gPSB0aGlzLm9wdGlvbnMuc3R1Y2tXb3JrZXJSZXNwYXduRnVuYyh3b3JrZXJTdGF0ZS53b3JrZXIpO1xuXG4gICAgaWYgKHNob3VsZFNwYXduICYmICF0aGlzLmlzU2h1dHRpbmdEb3duKSB7XG4gICAgICBsb2dnZXIuaW5mbyhcbiAgICAgICAgYFNwYXduaW5nIHJlcGxhY2VtZW50IHdvcmtlciBmb3Igc3R1Y2sgd29ya2VyICR7d29ya2VyU3RhdGUuaWR9IChwaWQ6ICR7d29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MucGlkfSlgLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHsgcmVzdGFydENvdW50IH0gPSB3b3JrZXJTdGF0ZTsgLy8gUHJlc2VydmUgcmVzdGFydCBjb3VudFxuICAgICAgY29uc3QgbmV3V29ya2VyID0gdGhpcy5zcGF3bldvcmtlcih3b3JrZXJTdGF0ZS5pZCk7XG4gICAgICBjb25zdCBuZXdXb3JrZXJTdGF0ZSA9IHRoaXMud29ya2Vycy5nZXQobmV3V29ya2VyLmlkKTtcbiAgICAgIGlmIChuZXdXb3JrZXJTdGF0ZSkge1xuICAgICAgICBuZXdXb3JrZXJTdGF0ZS5yZXN0YXJ0Q291bnQgPSByZXN0YXJ0Q291bnQ7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZ2dlci5lcnJvcihcbiAgICAgICAgYFRyaWdnZXJpbmcgY2x1c3RlciBzaHV0ZG93biBkdWUgdG8gc3R1Y2sgd29ya2VyICR7d29ya2VyU3RhdGUuaWR9IChwaWQ6ICR7d29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MucGlkfSlgLFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2h1dGRvd24oJ1NUVUNLX1dPUktFUicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHdvcmtlciBleGl0IGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVXb3JrZXJFeGl0KHdvcmtlcjogV29ya2VyLCBjb2RlOiBudW1iZXIgfCBudWxsLCBzaWduYWw6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICBsb2dnZXIuaW5mbyhcbiAgICAgIGBXb3JrZXIgJHt0aGlzLmdldFdvcmtlcklkKHdvcmtlcil9IChwaWQ6ICR7XG4gICAgICAgIHdvcmtlci5wcm9jZXNzLnBpZFxuICAgICAgfSkgZGllZCB3aXRoIGNvZGUgJHtjb2RlfSBhbmQgc2lnbmFsICR7c2lnbmFsfWAsXG4gICAgKTtcbiAgICB0aGlzLmVtaXQoJ3dvcmtlcjpkaWVkJywgd29ya2VyLCBjb2RlLCBzaWduYWwpO1xuXG4gICAgY29uc3Qgd29ya2VyU3RhdGUgPSB0aGlzLndvcmtlcnMuZ2V0KHdvcmtlci5pZCk7XG4gICAgaWYgKCF3b3JrZXJTdGF0ZSkgcmV0dXJuO1xuXG4gICAgdGhpcy53b3JrZXJzLmRlbGV0ZSh3b3JrZXIuaWQpO1xuXG4gICAgLy8gSWYgd2UncmUgc2h1dHRpbmcgZG93biBvciB3b3JrZXIgd2FzIGtpbGxlZCBpbnRlbnRpb25hbGx5LCBkb24ndCByZXN0YXJ0XG4gICAgaWYgKHRoaXMuaXNTaHV0dGluZ0Rvd24gfHwgd29ya2VyU3RhdGUuaXNTaHV0dGluZ0Rvd24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBIYW5kbGUgdW5leHBlY3RlZCBleGl0XG4gICAgdGhpcy5oYW5kbGVVbmV4cGVjdGVkV29ya2VyRXhpdCh3b3JrZXJTdGF0ZSk7XG4gIH1cblxuICBwcml2YXRlIGdldFdvcmtlcklkKHdvcmtlcjogV29ya2VyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy53b3JrZXJzLmdldCh3b3JrZXIuaWQpPy5pZCA/PyB3b3JrZXIuaWQ7XG4gIH1cblxuICBwcml2YXRlIGdldEN1cnJlbnRXb3JrZXJJZCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGVudldvcmtlcklkID1cbiAgICAgIHByb2Nlc3MuZW52LldPUktFUl9JRCAhPT0gdW5kZWZpbmVkID8gTnVtYmVyKHByb2Nlc3MuZW52LldPUktFUl9JRCkgOiB1bmRlZmluZWQ7XG4gICAgcmV0dXJuIGVudldvcmtlcklkID8/IHRoaXMub3B0aW9ucy5jbHVzdGVyLndvcmtlcj8uaWQgPz8gLTE7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyB1bmV4cGVjdGVkIHdvcmtlciBleGl0cyB3aXRoIHJlc3RhcnQgbG9naWNcbiAgICovXG4gIHByaXZhdGUgaGFuZGxlVW5leHBlY3RlZFdvcmtlckV4aXQod29ya2VyU3RhdGU6IFdvcmtlclN0YXRlKTogdm9pZCB7XG4gICAgY29uc3QgcmVzdGFydENvdW50ID0gd29ya2VyU3RhdGUucmVzdGFydENvdW50ICsgMTtcblxuICAgIGlmIChyZXN0YXJ0Q291bnQgPD0gdGhpcy5vcHRpb25zLnJlc3RhcnRNYXhUaW1lcykge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICBgUmVzdGFydGluZyB3b3JrZXIgJHt3b3JrZXJTdGF0ZS5pZH0gKHBpZDogJHt3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5waWR9KSAoYXR0ZW1wdCAke3Jlc3RhcnRDb3VudH0vJHt0aGlzLm9wdGlvbnMucmVzdGFydE1heFRpbWVzfSlgLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IG5ld1dvcmtlciA9IHRoaXMuc3Bhd25Xb3JrZXIod29ya2VyU3RhdGUuaWQpO1xuICAgICAgY29uc3QgbmV3V29ya2VyU3RhdGUgPSB0aGlzLndvcmtlcnMuZ2V0KG5ld1dvcmtlci5pZCk7XG4gICAgICBpZiAobmV3V29ya2VyU3RhdGUpIHtcbiAgICAgICAgbmV3V29ya2VyU3RhdGUucmVzdGFydENvdW50ID0gcmVzdGFydENvdW50O1xuICAgICAgfVxuICAgICAgdGhpcy5lbWl0KCd3b3JrZXI6cmVzdGFydGVkJywgbmV3V29ya2VyLCB3b3JrZXJTdGF0ZS5yZXN0YXJ0Q291bnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgIGBSZXN0YXJ0IGxpbWl0ICgke3RoaXMub3B0aW9ucy5yZXN0YXJ0TWF4VGltZXN9KSBleGNlZWRlZCBmb3Igd29ya2VyICR7d29ya2VyU3RhdGUuaWR9IChwaWQ6ICR7d29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MucGlkfSksIHNodXR0aW5nIGRvd24gY2x1c3RlcmAsXG4gICAgICApO1xuICAgICAgdGhpcy5lbWl0KCd3b3JrZXI6cmVzdGFydC1saW1pdC1leGNlZWRlZCcsIHdvcmtlclN0YXRlLndvcmtlciwgd29ya2VyU3RhdGUucmVzdGFydENvdW50KTtcbiAgICAgIHRoaXMuc2h1dGRvd24oJ1JFU1RBUlRfTElNSVRfRVhDRUVERUQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2h1dHMgZG93biB0aGUgcHJpbWFyeSBwcm9jZXNzXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHNodXRkb3duUHJpbWFyeShzaWduYWw/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBsb2dnZXIuaW5mbyhcbiAgICAgIGBQcmltYXJ5IHByb2Nlc3MgKHBpZDogJHtwcm9jZXNzLnBpZH0pIHNodXR0aW5nIGRvd24gKHNpZ25hbDogJHtzaWduYWwgPz8gJ21hbnVhbCd9KWAsXG4gICAgKTtcblxuICAgIHRoaXMuc3RvcEhlYWx0aE1vbml0b3JpbmcoKTtcbiAgICB0aGlzLnJlbW92ZVNpZ25hbEhhbmRsZXJzKCk7XG5cbiAgICAvLyBTaHV0ZG93biBhbGwgd29ya2Vyc1xuICAgIGF3YWl0IHRoaXMuc2h1dGRvd25BbGxXb3JrZXJzKHNpZ25hbCk7XG5cbiAgICAvLyBFeGVjdXRlIHByaW1hcnkgc2h1dGRvd24gZnVuY3Rpb25cbiAgICBhd2FpdCBzYWZlRXhlY3V0ZShcbiAgICAgICgpID0+XG4gICAgICAgIHRpbWVvdXQoXG4gICAgICAgICAgdGhpcy5vcHRpb25zLnByaW1hcnlTaHV0ZG93bkZuKHNpZ25hbCksXG4gICAgICAgICAgdGhpcy5vcHRpb25zLnNodXRkb3duVGltZW91dCxcbiAgICAgICAgICAncHJpbWFyeSBzaHV0ZG93biB0aW1lb3V0JyxcbiAgICAgICAgKSxcbiAgICAgICdFcnJvciBpbiBwcmltYXJ5IHNodXRkb3duIGZ1bmN0aW9uJyxcbiAgICApO1xuXG4gICAgbG9nZ2VyLmluZm8oYFByaW1hcnkgcHJvY2VzcyAocGlkOiAke3Byb2Nlc3MucGlkfSkgc2h1dGRvd24gY29tcGxldGVkYCk7XG4gICAgdGhpcy5lbWl0KCdzaHV0ZG93bjpjb21wbGV0ZWQnKTtcbiAgICBwcm9jZXNzLmV4aXQoMCk7XG4gIH1cblxuICAvKipcbiAgICogU2h1dHMgZG93biBhbGwgd29ya2VycyBncmFjZWZ1bGx5XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHNodXRkb3duQWxsV29ya2VycyhzaWduYWw/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy53b3JrZXJzLnNpemUgPT09IDApIHJldHVybjtcblxuICAgIGxvZ2dlci5pbmZvKGBTaHV0dGluZyBkb3duICR7dGhpcy53b3JrZXJzLnNpemV9IHdvcmtlcnMuLi5gKTtcblxuICAgIC8vIE1hcmsgYWxsIHdvcmtlcnMgYXMgc2h1dHRpbmcgZG93biBhbmQgc2VuZCBzaHV0ZG93biBtZXNzYWdlXG4gICAgQXJyYXkuZnJvbSh0aGlzLndvcmtlcnMudmFsdWVzKCkpLmZvckVhY2goKHdvcmtlclN0YXRlKSA9PiB7XG4gICAgICB3b3JrZXJTdGF0ZS5pc1NodXR0aW5nRG93biA9IHRydWU7XG4gICAgICAvLyBPbmx5IHNlbmQgc2h1dGRvd24gbWVzc2FnZSBpZiB3b3JrZXIgaXMgc3RpbGwgY29ubmVjdGVkXG4gICAgICBpZiAoIXdvcmtlclN0YXRlLndvcmtlci5pc0RlYWQoKSAmJiB3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5jb25uZWN0ZWQpIHtcbiAgICAgICAgY29uc3Qgc2h1dGRvd25NZXNzYWdlOiBTaHV0ZG93bk1lc3NhZ2UgPSB7XG4gICAgICAgICAgdHlwZTogJ3NodXRkb3duJyxcbiAgICAgICAgICBzaWduYWwsXG4gICAgICAgIH07XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgd29ya2VyU3RhdGUud29ya2VyLnNlbmQoc2h1dGRvd25NZXNzYWdlKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAvLyBXb3JrZXIgSVBDIGNoYW5uZWwgaXMgYWxyZWFkeSBjbG9zZWQsIHdoaWNoIGlzIGZpbmVcbiAgICAgICAgICBsb2dnZXIud2FybihcbiAgICAgICAgICAgIGBGYWlsZWQgdG8gc2VuZCBzaHV0ZG93biBtZXNzYWdlIHRvIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke1xuICAgICAgICAgICAgICB3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5waWRcbiAgICAgICAgICAgIH0pOiAke2Vycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogU3RyaW5nKGVycm9yKX1gLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFdhaXQgZm9yIHdvcmtlcnMgdG8gZXhpdCBncmFjZWZ1bGx5IG9yIHRpbWVvdXRcbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGltZW91dChcbiAgICAgICAgdGhpcy53YWl0Rm9yQWxsV29ya2Vyc1RvRXhpdCgpLFxuICAgICAgICB0aGlzLm9wdGlvbnMuc2h1dGRvd25UaW1lb3V0LFxuICAgICAgICAnV29ya2VyIHNodXRkb3duIHRpbWVvdXQnLFxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nZ2VyLmVycm9yKCdHcmFjZWZ1bCBzaHV0ZG93biBmb3Igd29ya2VycyB0aW1lZCBvdXQsIGZvcmNpbmcgc2h1dGRvd24nKTtcbiAgICAgIHRoaXMuZm9yY2VLaWxsQWxsV29ya2VycygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXYWl0cyBmb3IgYWxsIHdvcmtlcnMgdG8gZXhpdFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyB3YWl0Rm9yQWxsV29ya2Vyc1RvRXhpdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB3aGlsZSAodGhpcy53b3JrZXJzLnNpemUgPiAwKSB7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYXdhaXQtaW4tbG9vcFxuICAgICAgYXdhaXQgZGVsYXkoMTAwKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRm9yY2Uga2lsbHMgYWxsIHJlbWFpbmluZyB3b3JrZXJzXG4gICAqL1xuICBwcml2YXRlIGZvcmNlS2lsbEFsbFdvcmtlcnMoKTogdm9pZCB7XG4gICAgQXJyYXkuZnJvbSh0aGlzLndvcmtlcnMudmFsdWVzKCkpLmZvckVhY2goKHdvcmtlclN0YXRlKSA9PiB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgIGBGb3JjZSBraWxsaW5nIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke3dvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZH0pYCxcbiAgICAgICk7XG4gICAgICB3b3JrZXJTdGF0ZS53b3JrZXIua2lsbCgnU0lHS0lMTCcpO1xuICAgIH0pO1xuICAgIHRoaXMud29ya2Vycy5jbGVhcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNodXRzIGRvd24gYSB3b3JrZXIgcHJvY2Vzc1xuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzaHV0ZG93bldvcmtlcihzaWduYWw/OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBsb2dnZXIuaW5mbyhcbiAgICAgIGBXb3JrZXIgJHt0aGlzLmdldEN1cnJlbnRXb3JrZXJJZCgpfSAocGlkOiAke3Byb2Nlc3MucGlkfSkgc2h1dHRpbmcgZG93biAoc2lnbmFsOiAke1xuICAgICAgICBzaWduYWwgPz8gJ21hbnVhbCdcbiAgICAgIH0pYCxcbiAgICApO1xuXG4gICAgdGhpcy5yZW1vdmVTaWduYWxIYW5kbGVycygpO1xuXG4gICAgLy8gRXhlY3V0ZSB3b3JrZXIgc2h1dGRvd24gZnVuY3Rpb25cbiAgICBhd2FpdCBzYWZlRXhlY3V0ZShcbiAgICAgICgpID0+XG4gICAgICAgIHRpbWVvdXQoXG4gICAgICAgICAgdGhpcy5vcHRpb25zLndvcmtlclNodXRkb3duRm4oc2lnbmFsKSxcbiAgICAgICAgICB0aGlzLm9wdGlvbnMuc2h1dGRvd25UaW1lb3V0LFxuICAgICAgICAgICd3b3JrZXIgc2h1dGRvd24gdGltZW91dCcsXG4gICAgICAgICksXG4gICAgICBgRXJyb3IgaW4gd29ya2VyICR7dGhpcy5nZXRDdXJyZW50V29ya2VySWQoKX0gKHBpZDogJHtwcm9jZXNzLnBpZH0pIHNodXRkb3duIGZ1bmN0aW9uYCxcbiAgICApO1xuXG4gICAgbG9nZ2VyLmluZm8oYFdvcmtlciAke3RoaXMuZ2V0Q3VycmVudFdvcmtlcklkKCl9IChwaWQ6ICR7cHJvY2Vzcy5waWR9KSBzaHV0ZG93biBjb21wbGV0ZWRgKTtcbiAgICBwcm9jZXNzLmV4aXQoMCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBudW1iZXIgb2YgYWN0aXZlIHdvcmtlcnNcbiAgICovXG4gIHB1YmxpYyBnZXRXb3JrZXJDb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLndvcmtlcnMuc2l6ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGluZm9ybWF0aW9uIGFib3V0IGFsbCB3b3JrZXJzXG4gICAqL1xuICBwdWJsaWMgZ2V0V29ya2VySW5mbygpOiBBcnJheTx7IGlkOiBudW1iZXI7IHBpZDogbnVtYmVyOyByZXN0YXJ0Q291bnQ6IG51bWJlciB9PiB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy53b3JrZXJzLnZhbHVlcygpKS5tYXAoKHN0YXRlKSA9PiAoe1xuICAgICAgaWQ6IHN0YXRlLmlkLFxuICAgICAgcGlkOiBzdGF0ZS53b3JrZXIucHJvY2Vzcy5waWQgPz8gLTEsXG4gICAgICByZXN0YXJ0Q291bnQ6IHN0YXRlLnJlc3RhcnRDb3VudCxcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjbHVzdGVyIGlzIGN1cnJlbnRseSBzdGFydGVkXG4gICAqL1xuICBwdWJsaWMgaXNTdGFydGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXJ0ZWQ7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjbHVzdGVyIGlzIGN1cnJlbnRseSBzaHV0dGluZyBkb3duXG4gICAqL1xuICBwdWJsaWMgaXNTaHV0ZG93bigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc1NodXR0aW5nRG93bjtcbiAgfVxufVxuXG4vLyBUeXBlLXNhZmUgZXZlbnQgZW1pdHRlciBpbnRlcmZhY2VcbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3Rlck1hbmFnZXJFbWl0dGVyIHtcbiAgb248SyBleHRlbmRzIGtleW9mIENsdXN0ZXJNYW5hZ2VyRXZlbnRzPihldmVudDogSywgbGlzdGVuZXI6IENsdXN0ZXJNYW5hZ2VyRXZlbnRzW0tdKTogdGhpcztcbiAgZW1pdDxLIGV4dGVuZHMga2V5b2YgQ2x1c3Rlck1hbmFnZXJFdmVudHM+KFxuICAgIGV2ZW50OiBLLFxuICAgIC4uLmFyZ3M6IFBhcmFtZXRlcnM8Q2x1c3Rlck1hbmFnZXJFdmVudHNbS10+XG4gICk6IGJvb2xlYW47XG59XG4iXX0=
|
|
472
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbHVzdGVyL21hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsbUNBQXNDO0FBQ3RDLGtEQUFvQztBQVVwQyxtQ0FBaUY7QUFFakY7Ozs7Ozs7OztHQVNHO0FBQ0gsTUFBYSxjQUFlLFNBQVEscUJBQVk7SUFlOUMsWUFBWSxVQUFpQyxFQUFFO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBYk8sWUFBTyxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBRWxELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsb0JBQWUsR0FBeUIsSUFBSSxDQUFDO1FBRTdDLHdCQUFtQixHQUEwQixJQUFJLENBQUM7UUFFbEQsbUJBQWMsR0FBRyxJQUFJLEdBQUcsRUFBOEIsQ0FBQztRQUk3RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUEsaUNBQXlCLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDbEQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssVUFBVTtRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7WUFDaEMsYUFBYSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtTQUMxQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkMsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUIsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksQ0FBQyxXQUFX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b250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXMgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXBhcmFtLXJlYXNzaWduICovXG5pbXBvcnQgeyBXb3JrZXIgfSBmcm9tICdjbHVzdGVyJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJ2V2ZW50cyc7XG5pbXBvcnQgKiBhcyBsb2dnZXIgZnJvbSAnLi4vbG9nZ2VyJztcbmltcG9ydCB7XG4gIENsdXN0ZXJNYW5hZ2VyT3B0aW9ucyxcbiAgQ2x1c3Rlck1hbmFnZXJFdmVudHMsXG4gIFdvcmtlclN0YXRlLFxuICBJUENNZXNzYWdlLFxuICBQaW5nTWVzc2FnZSxcbiAgUG9uZ01lc3NhZ2UsXG4gIFNodXRkb3duTWVzc2FnZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBkZWxheSwgdGltZW91dCwgc2FmZUV4ZWN1dGUsIHZhbGlkYXRlQW5kRGVmYXVsdE9wdGlvbnMgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBDbHVzdGVyTWFuYWdlciAtIEEgY2x1c3RlciBsaWZlY3ljbGUgbWFuYWdlbWVudCBzeXN0ZW1cbiAqXG4gKiBUaGUgbWFuYWdlciBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIGZlYXR1cmVzOlxuICogLSBHcmFjZWZ1bCBzaHV0ZG93biB3aXRoIGNvbmZpZ3VyYWJsZSB0aW1lb3V0XG4gKiAtIFdvcmtlciBoZWFsdGggbW9uaXRvcmluZyB3aXRoIHBpbmcvcG9uZyBtZWNoYW5pc21cbiAqIC0gQXV0b21hdGljIHdvcmtlciByZXN0YXJ0IHdpdGggY29uZmlndXJhYmxlIGxpbWl0c1xuICogLSBTaWduYWwgaGFuZGxpbmcgZm9yIHNodXRkb3duIHRyaWdnZXJzXG4gKiAtIEZsZXhpYmxlIHByaW1hcnkgYW5kIHdvcmtlciBmdW5jdGlvbiBoYW5kbGVyc1xuICovXG5leHBvcnQgY2xhc3MgQ2x1c3Rlck1hbmFnZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFJlcXVpcmVkPENsdXN0ZXJNYW5hZ2VyT3B0aW9ucz47XG5cbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZXJzID0gbmV3IE1hcDxudW1iZXIsIFdvcmtlclN0YXRlPigpO1xuXG4gIHByaXZhdGUgc3RhcnRlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgaXNTaHV0dGluZ0Rvd24gPSBmYWxzZTtcblxuICBwcml2YXRlIHNodXRkb3duUHJvbWlzZTogUHJvbWlzZTx2b2lkPiB8IG51bGwgPSBudWxsO1xuXG4gIHByaXZhdGUgaGVhbHRoQ2hlY2tJbnRlcnZhbDogTm9kZUpTLlRpbWVvdXQgfCBudWxsID0gbnVsbDtcblxuICBwcml2YXRlIHNpZ25hbEhhbmRsZXJzID0gbmV3IE1hcDxOb2RlSlMuU2lnbmFscywgKCkgPT4gdm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBDbHVzdGVyTWFuYWdlck9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5vcHRpb25zID0gdmFsaWRhdGVBbmREZWZhdWx0T3B0aW9ucyhvcHRpb25zKTtcbiAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSBjbHVzdGVyIG1hbmFnZXIgd2l0aCBwcmltYXJ5IHByb2Nlc3MgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL25vZGVqcy5vcmcvZG9jcy9sYXRlc3QvYXBpL2NsdXN0ZXIuaHRtbCNjbHVzdGVyc2V0dXBwcmltYXJ5b3B0aW9ucyBOb2RlLmpzIGNsdXN0ZXIuc2V0dXBQcmltYXJ5KCl9XG4gICAqL1xuICBwcml2YXRlIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25zLmNsdXN0ZXIuc2V0dXBQcmltYXJ5KHtcbiAgICAgIHNlcmlhbGl6YXRpb246IHRoaXMub3B0aW9ucy5zZXJpYWxpemF0aW9uLFxuICAgIH0pO1xuICAgIHRoaXMuc2V0dXBTaWduYWxIYW5kbGVycygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyB0aGUgY2x1c3RlciBtYW5hZ2VyXG4gICAqIEluIHByaW1hcnkgcHJvY2Vzczogc3RhcnRzIHdvcmtlcnMgYW5kIGhlYWx0aCBtb25pdG9yaW5nXG4gICAqIEluIHdvcmtlciBwcm9jZXNzOiBleGVjdXRlcyB3b3JrZXIgZnVuY3Rpb25cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzdGFydCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5vcHRpb25zLmNsdXN0ZXIuaXNQcmltYXJ5KSB7XG4gICAgICBhd2FpdCB0aGlzLnN0YXJ0UHJpbWFyeSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCB0aGlzLnN0YXJ0V29ya2VyKCk7XG4gICAgfVxuICAgIHRoaXMuc3RhcnRlZCA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhdGVzIGdyYWNlZnVsIHNodXRkb3duIG9mIHRoZSBjbHVzdGVyXG4gICAqL1xuICBwdWJsaWMgc2h1dGRvd24oc2lnbmFsPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCF0aGlzLnN0YXJ0ZWQpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zaHV0ZG93blByb21pc2UpIHtcbiAgICAgIHJldHVybiB0aGlzLnNodXRkb3duUHJvbWlzZTtcbiAgICB9XG5cbiAgICB0aGlzLmlzU2h1dHRpbmdEb3duID0gdHJ1ZTtcbiAgICB0aGlzLmVtaXQoJ3NodXRkb3duOnN0YXJ0ZWQnLCBzaWduYWwpO1xuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5jbHVzdGVyLmlzUHJpbWFyeSkge1xuICAgICAgdGhpcy5zaHV0ZG93blByb21pc2UgPSB0aGlzLnNodXRkb3duUHJpbWFyeShzaWduYWwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNodXRkb3duUHJvbWlzZSA9IHRoaXMuc2h1dGRvd25Xb3JrZXIoc2lnbmFsKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zaHV0ZG93blByb21pc2U7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB1cCBzaWduYWwgaGFuZGxlcnMgZm9yIGdyYWNlZnVsIHNodXRkb3duXG4gICAqL1xuICBwcml2YXRlIHNldHVwU2lnbmFsSGFuZGxlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25zLnNodXRkb3duU2lnbmFscy5mb3JFYWNoKChzaWduYWwpID0+IHtcbiAgICAgIGNvbnN0IGhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2h1dGRvd24oc2lnbmFsKTtcbiAgICAgIH07XG4gICAgICB0aGlzLnNpZ25hbEhhbmRsZXJzLnNldChzaWduYWwsIGhhbmRsZXIpO1xuICAgICAgcHJvY2Vzcy5vbihzaWduYWwsIGhhbmRsZXIpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgc2lnbmFsIGhhbmRsZXJzXG4gICAqL1xuICBwcml2YXRlIHJlbW92ZVNpZ25hbEhhbmRsZXJzKCk6IHZvaWQge1xuICAgIEFycmF5LmZyb20odGhpcy5zaWduYWxIYW5kbGVycy5lbnRyaWVzKCkpLmZvckVhY2goKFtzaWduYWwsIGhhbmRsZXJdKSA9PiB7XG4gICAgICBwcm9jZXNzLnJlbW92ZUxpc3RlbmVyKHNpZ25hbCwgaGFuZGxlcik7XG4gICAgfSk7XG4gICAgdGhpcy5zaWduYWxIYW5kbGVycy5jbGVhcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YXJ0cyB0aGUgcHJpbWFyeSBwcm9jZXNzXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHN0YXJ0UHJpbWFyeSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBsb2dnZXIuaW5mbyhcbiAgICAgIGBQcmltYXJ5IHByb2Nlc3MgKHBpZDogJHtwcm9jZXNzLnBpZH0pIHN0YXJ0aW5nIHdpdGggJHt0aGlzLm9wdGlvbnMubnVtV29ya2Vyc30gd29ya2Vyc2AsXG4gICAgKTtcblxuICAgIC8vIEV4ZWN1dGUgcHJpbWFyeSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiwgYW55IGVycm9yIHdpbGwgc3RvcCB0aGUgY2x1c3RlciBmcm9tIHN0YXJ0aW5nXG4gICAgYXdhaXQgdGhpcy5vcHRpb25zLnByaW1hcnlGbigpO1xuXG4gICAgLy8gU2V0IHVwIGNsdXN0ZXIgZXZlbnQgaGFuZGxlcnNcbiAgICB0aGlzLnNldHVwQ2x1c3RlckV2ZW50SGFuZGxlcnMoKTtcblxuICAgIC8vIFNwYXduIGluaXRpYWwgd29ya2Vyc1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5vcHRpb25zLm51bVdvcmtlcnM7IGkgKz0gMSkge1xuICAgICAgY29uc3Qgd29ya2VySWQgPSBpICsgMTsgLy8gV29ya2VyIElEcyBzdGFydCBmcm9tIDFcbiAgICAgIHRoaXMuc3Bhd25Xb3JrZXIod29ya2VySWQpO1xuICAgIH1cblxuICAgIC8vIFN0YXJ0IGhlYWx0aCBtb25pdG9yaW5nXG4gICAgdGhpcy5zdGFydEhlYWx0aE1vbml0b3JpbmcoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGFydHMgYSB3b3JrZXIgcHJvY2Vzc1xuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzdGFydFdvcmtlcigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBsb2dnZXIuaW5mbyhgV29ya2VyICR7dGhpcy5nZXRDdXJyZW50V29ya2VySWQoKX0gKHBpZDogJHtwcm9jZXNzLnBpZH0pIHN0YXJ0aW5nYCk7XG5cbiAgICAvLyBTZXQgdXAgSVBDIG1lc3NhZ2UgaGFuZGxlcnNcbiAgICB0aGlzLnNldHVwV29ya2VyTWVzc2FnZUhhbmRsZXJzKCk7XG5cbiAgICAvLyBFeGVjdXRlIHdvcmtlciBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiwgYW55IGVycm9yIHdpbGwgYmUgcHJvcGFnYXRlZFxuICAgIGF3YWl0IHRoaXMub3B0aW9ucy53b3JrZXJGbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdXAgY2x1c3RlciBldmVudCBoYW5kbGVycyBmb3IgdGhlIHByaW1hcnkgcHJvY2Vzc1xuICAgKi9cbiAgcHJpdmF0ZSBzZXR1cENsdXN0ZXJFdmVudEhhbmRsZXJzKCk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9ucy5jbHVzdGVyLm9uKCdleGl0JywgKHdvcmtlcjogV29ya2VyLCBjb2RlOiBudW1iZXIsIHNpZ25hbDogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZVdvcmtlckV4aXQod29ya2VyLCBjb2RlLCBzaWduYWwpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5vcHRpb25zLmNsdXN0ZXIub24oJ29ubGluZScsICh3b3JrZXI6IFdvcmtlcikgPT4ge1xuICAgICAgbG9nZ2VyLmluZm8oYFdvcmtlciAke3RoaXMuZ2V0V29ya2VySWQod29ya2VyKX0gKHBpZDogJHt3b3JrZXIucHJvY2Vzcy5waWR9KSBpcyBvbmxpbmVgKTtcbiAgICAgIHRoaXMuZW1pdCgnd29ya2VyOnN0YXJ0ZWQnLCB3b3JrZXIpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdXAgSVBDIG1lc3NhZ2UgaGFuZGxlcnMgZm9yIHdvcmtlciBwcm9jZXNzZXNcbiAgICovXG4gIHByaXZhdGUgc2V0dXBXb3JrZXJNZXNzYWdlSGFuZGxlcnMoKTogdm9pZCB7XG4gICAgcHJvY2Vzcy5vbignbWVzc2FnZScsIChtZXNzYWdlOiBJUENNZXNzYWdlKSA9PiB7XG4gICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgICBjYXNlICdwaW5nJzpcbiAgICAgICAgICB0aGlzLmhhbmRsZVdvcmtlclBpbmcobWVzc2FnZSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3NodXRkb3duJzpcbiAgICAgICAgICB0aGlzLnNodXRkb3duKG1lc3NhZ2Uuc2lnbmFsKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBpZiAoIW1lc3NhZ2UudHlwZS5pbmNsdWRlcygnTWV0cmljcycpKSB7XG4gICAgICAgICAgICBsb2dnZXIud2FybihgaWdub3JpbmcgdW5rbm93biBtZXNzYWdlIHR5cGUgaW4gd29ya2VyICR7cHJvY2Vzcy5waWR9OiAke21lc3NhZ2UudHlwZX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU3Bhd25zIGEgbmV3IHdvcmtlciBhbmQgc2V0cyB1cCBpdHMgc3RhdGVcbiAgICovXG4gIHByaXZhdGUgc3Bhd25Xb3JrZXIoaWQ6IG51bWJlcik6IFdvcmtlciB7XG4gICAgY29uc3Qgd29ya2VyID0gdGhpcy5vcHRpb25zLmNsdXN0ZXIuZm9yayh7XG4gICAgICBXT1JLRVJfSUQ6IGlkLFxuICAgIH0pO1xuICAgIGNvbnN0IHdvcmtlclN0YXRlOiBXb3JrZXJTdGF0ZSA9IHtcbiAgICAgIGlkLFxuICAgICAgd29ya2VyLFxuICAgICAgcmVzdGFydENvdW50OiAwLFxuICAgICAgbGFzdFBpbmc6IERhdGUubm93KCksXG4gICAgICBwZW5kaW5nUGluZzogZmFsc2UsXG4gICAgICBpc1NodXR0aW5nRG93bjogZmFsc2UsXG4gICAgfTtcblxuICAgIHRoaXMud29ya2Vycy5zZXQod29ya2VyLmlkLCB3b3JrZXJTdGF0ZSk7XG5cbiAgICAvLyBTZXQgdXAgd29ya2VyIG1lc3NhZ2UgaGFuZGxlclxuICAgIHdvcmtlci5vbignbWVzc2FnZScsIChtZXNzYWdlOiBJUENNZXNzYWdlKSA9PiB7XG4gICAgICB0aGlzLmhhbmRsZVdvcmtlck1lc3NhZ2Uod29ya2VyLCBtZXNzYWdlKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB3b3JrZXI7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyBtZXNzYWdlcyBmcm9tIHdvcmtlcnNcbiAgICovXG4gIHByaXZhdGUgaGFuZGxlV29ya2VyTWVzc2FnZSh3b3JrZXI6IFdvcmtlciwgbWVzc2FnZTogSVBDTWVzc2FnZSk6IHZvaWQge1xuICAgIGNvbnN0IHdvcmtlclN0YXRlID0gdGhpcy53b3JrZXJzLmdldCh3b3JrZXIuaWQpO1xuICAgIGlmICghd29ya2VyU3RhdGUpIHJldHVybjtcblxuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlICdwb25nJzpcbiAgICAgICAgd29ya2VyU3RhdGUubGFzdFBpbmcgPSBEYXRlLm5vdygpO1xuICAgICAgICB3b3JrZXJTdGF0ZS5wZW5kaW5nUGluZyA9IGZhbHNlO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGlmICghbWVzc2FnZS50eXBlLmluY2x1ZGVzKCdNZXRyaWNzJykpIHtcbiAgICAgICAgICBsb2dnZXIud2FybihcbiAgICAgICAgICAgIGBSZWNlaXZlZCB1bmtub3duIG1lc3NhZ2UgdHlwZSBmcm9tIHdvcmtlciAke3RoaXMuZ2V0V29ya2VySWQod29ya2VyKX0gKHBpZDogJHtcbiAgICAgICAgICAgICAgd29ya2VyLnByb2Nlc3MucGlkXG4gICAgICAgICAgICB9KTogJHttZXNzYWdlLnR5cGV9YCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHBpbmcgbWVzc2FnZXMgaW4gd29ya2VyIHByb2Nlc3Nlc1xuICAgKi9cbiAgcHJpdmF0ZSBoYW5kbGVXb3JrZXJQaW5nKG1lc3NhZ2U6IFBpbmdNZXNzYWdlKTogdm9pZCB7XG4gICAgY29uc3QgcG9uZ01lc3NhZ2U6IFBvbmdNZXNzYWdlID0ge1xuICAgICAgdHlwZTogJ3BvbmcnLFxuICAgICAgdGltZXN0YW1wOiBtZXNzYWdlLnRpbWVzdGFtcCxcbiAgICB9O1xuXG4gICAgaWYgKHByb2Nlc3Muc2VuZCkge1xuICAgICAgcHJvY2Vzcy5zZW5kKHBvbmdNZXNzYWdlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU3RhcnRzIGhlYWx0aCBtb25pdG9yaW5nIGZvciBhbGwgd29ya2Vyc1xuICAgKi9cbiAgcHJpdmF0ZSBzdGFydEhlYWx0aE1vbml0b3JpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5oZWFsdGhDaGVja0ludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgdGhpcy5wZXJmb3JtSGVhbHRoQ2hlY2soKTtcbiAgICB9LCB0aGlzLm9wdGlvbnMucGluZ0ZyZXF1ZW5jeSk7XG4gIH1cblxuICAvKipcbiAgICogU3RvcHMgaGVhbHRoIG1vbml0b3JpbmdcbiAgICovXG4gIHByaXZhdGUgc3RvcEhlYWx0aE1vbml0b3JpbmcoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaGVhbHRoQ2hlY2tJbnRlcnZhbCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmhlYWx0aENoZWNrSW50ZXJ2YWwpO1xuICAgICAgdGhpcy5oZWFsdGhDaGVja0ludGVydmFsID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGVyZm9ybXMgaGVhbHRoIGNoZWNrIG9uIGFsbCB3b3JrZXJzXG4gICAqL1xuICBwcml2YXRlIHBlcmZvcm1IZWFsdGhDaGVjaygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc1NodXR0aW5nRG93bikgcmV0dXJuO1xuXG4gICAgQXJyYXkuZnJvbSh0aGlzLndvcmtlcnMudmFsdWVzKCkpXG4gICAgICAuZmlsdGVyKCh3b3JrZXJTdGF0ZSkgPT4gIXdvcmtlclN0YXRlLmlzU2h1dHRpbmdEb3duKVxuICAgICAgLmZvckVhY2goKHdvcmtlclN0YXRlKSA9PiB7XG4gICAgICAgIGNvbnN0IHRpbWVTaW5jZUxhc3RQaW5nID0gRGF0ZS5ub3coKSAtIHdvcmtlclN0YXRlLmxhc3RQaW5nO1xuXG4gICAgICAgIGlmICh3b3JrZXJTdGF0ZS5wZW5kaW5nUGluZyAmJiB0aW1lU2luY2VMYXN0UGluZyA+IHRoaXMub3B0aW9ucy5waW5nVGltZW91dCkge1xuICAgICAgICAgIC8vIFdvcmtlciBpcyBzdHVjaywgaGFuZGxlIGl0XG4gICAgICAgICAgdGhpcy5oYW5kbGVTdHVja1dvcmtlcih3b3JrZXJTdGF0ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoIXdvcmtlclN0YXRlLnBlbmRpbmdQaW5nKSB7XG4gICAgICAgICAgLy8gU2VuZCBwaW5nIHRvIHdvcmtlclxuICAgICAgICAgIHRoaXMuc2VuZFBpbmdUb1dvcmtlcih3b3JrZXJTdGF0ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbmRzIGEgcGluZyBtZXNzYWdlIHRvIGEgd29ya2VyXG4gICAqL1xuICBwcml2YXRlIHNlbmRQaW5nVG9Xb3JrZXIod29ya2VyU3RhdGU6IFdvcmtlclN0YXRlKTogdm9pZCB7XG4gICAgY29uc3QgcGluZ01lc3NhZ2U6IFBpbmdNZXNzYWdlID0ge1xuICAgICAgdHlwZTogJ3BpbmcnLFxuICAgICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICAgIH07XG5cbiAgICB3b3JrZXJTdGF0ZS5wZW5kaW5nUGluZyA9IHRydWU7XG4gICAgdHJ5IHtcbiAgICAgIHdvcmtlclN0YXRlLndvcmtlci5zZW5kKHBpbmdNZXNzYWdlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICBgRmFpbGVkIHRvIHNlbmQgcGluZyB0byB3b3JrZXIgJHt3b3JrZXJTdGF0ZS5pZH0gKHBpZDogJHtcbiAgICAgICAgICB3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5waWRcbiAgICAgICAgfSk6ICR7ZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiBTdHJpbmcoZXJyb3IpfWAsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIYW5kbGVzIGEgc3R1Y2sgd29ya2VyXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZVN0dWNrV29ya2VyKHdvcmtlclN0YXRlOiBXb3JrZXJTdGF0ZSk6IHZvaWQge1xuICAgIGxvZ2dlci5lcnJvcihcbiAgICAgIGBXb3JrZXIgJHt3b3JrZXJTdGF0ZS5pZH0gKHBpZDogJHt3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5waWR9KSBpcyBzdHVjaywga2lsbGluZyBpdGAsXG4gICAgKTtcbiAgICB0aGlzLmVtaXQoJ3dvcmtlcjpzdHVjaycsIHdvcmtlclN0YXRlLndvcmtlcik7XG5cbiAgICAvLyBSZW1vdmUgd29ya2VyIHN0YXRlXG4gICAgdGhpcy53b3JrZXJzLmRlbGV0ZSh3b3JrZXJTdGF0ZS53b3JrZXIuaWQpO1xuXG4gICAgLy8gS2lsbCB0aGUgd29ya2VyXG4gICAgd29ya2VyU3RhdGUud29ya2VyLmtpbGwoJ1NJR0tJTEwnKTtcblxuICAgIC8vIERldGVybWluZSBpZiB3ZSBzaG91bGQgc3Bhd24gYSByZXBsYWNlbWVudFxuICAgIGNvbnN0IHNob3VsZFNwYXduID0gdGhpcy5vcHRpb25zLnN0dWNrV29ya2VyUmVzcGF3bkZ1bmMod29ya2VyU3RhdGUud29ya2VyKTtcblxuICAgIGlmIChzaG91bGRTcGF3biAmJiAhdGhpcy5pc1NodXR0aW5nRG93bikge1xuICAgICAgbG9nZ2VyLmluZm8oXG4gICAgICAgIGBTcGF3bmluZyByZXBsYWNlbWVudCB3b3JrZXIgZm9yIHN0dWNrIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke3dvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZH0pYCxcbiAgICAgICk7XG4gICAgICBjb25zdCB7IHJlc3RhcnRDb3VudCB9ID0gd29ya2VyU3RhdGU7IC8vIFByZXNlcnZlIHJlc3RhcnQgY291bnRcbiAgICAgIGNvbnN0IG5ld1dvcmtlciA9IHRoaXMuc3Bhd25Xb3JrZXIod29ya2VyU3RhdGUuaWQpO1xuICAgICAgY29uc3QgbmV3V29ya2VyU3RhdGUgPSB0aGlzLndvcmtlcnMuZ2V0KG5ld1dvcmtlci5pZCk7XG4gICAgICBpZiAobmV3V29ya2VyU3RhdGUpIHtcbiAgICAgICAgbmV3V29ya2VyU3RhdGUucmVzdGFydENvdW50ID0gcmVzdGFydENvdW50O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBsb2dnZXIuZXJyb3IoXG4gICAgICAgIGBUcmlnZ2VyaW5nIGNsdXN0ZXIgc2h1dGRvd24gZHVlIHRvIHN0dWNrIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke3dvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZH0pYCxcbiAgICAgICk7XG4gICAgICB0aGlzLnNodXRkb3duKCdTVFVDS19XT1JLRVInKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyB3b3JrZXIgZXhpdCBldmVudHNcbiAgICovXG4gIHByaXZhdGUgaGFuZGxlV29ya2VyRXhpdCh3b3JrZXI6IFdvcmtlciwgY29kZTogbnVtYmVyIHwgbnVsbCwgc2lnbmFsOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgbG9nZ2VyLmluZm8oXG4gICAgICBgV29ya2VyICR7dGhpcy5nZXRXb3JrZXJJZCh3b3JrZXIpfSAocGlkOiAke1xuICAgICAgICB3b3JrZXIucHJvY2Vzcy5waWRcbiAgICAgIH0pIGRpZWQgd2l0aCBjb2RlICR7Y29kZX0gYW5kIHNpZ25hbCAke3NpZ25hbH1gLFxuICAgICk7XG4gICAgdGhpcy5lbWl0KCd3b3JrZXI6ZGllZCcsIHdvcmtlciwgY29kZSwgc2lnbmFsKTtcblxuICAgIGNvbnN0IHdvcmtlclN0YXRlID0gdGhpcy53b3JrZXJzLmdldCh3b3JrZXIuaWQpO1xuICAgIGlmICghd29ya2VyU3RhdGUpIHJldHVybjtcblxuICAgIHRoaXMud29ya2Vycy5kZWxldGUod29ya2VyLmlkKTtcblxuICAgIC8vIElmIHdlJ3JlIHNodXR0aW5nIGRvd24gb3Igd29ya2VyIHdhcyBraWxsZWQgaW50ZW50aW9uYWxseSwgZG9uJ3QgcmVzdGFydFxuICAgIGlmICh0aGlzLmlzU2h1dHRpbmdEb3duIHx8IHdvcmtlclN0YXRlLmlzU2h1dHRpbmdEb3duKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIHVuZXhwZWN0ZWQgZXhpdFxuICAgIHRoaXMuaGFuZGxlVW5leHBlY3RlZFdvcmtlckV4aXQod29ya2VyU3RhdGUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRXb3JrZXJJZCh3b3JrZXI6IFdvcmtlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMud29ya2Vycy5nZXQod29ya2VyLmlkKT8uaWQgPz8gd29ya2VyLmlkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50V29ya2VySWQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBlbnZXb3JrZXJJZCA9XG4gICAgICBwcm9jZXNzLmVudi5XT1JLRVJfSUQgIT09IHVuZGVmaW5lZCA/IE51bWJlcihwcm9jZXNzLmVudi5XT1JLRVJfSUQpIDogdW5kZWZpbmVkO1xuICAgIHJldHVybiBlbnZXb3JrZXJJZCA/PyB0aGlzLm9wdGlvbnMuY2x1c3Rlci53b3JrZXI/LmlkID8/IC0xO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdW5leHBlY3RlZCB3b3JrZXIgZXhpdHMgd2l0aCByZXN0YXJ0IGxvZ2ljXG4gICAqL1xuICBwcml2YXRlIGhhbmRsZVVuZXhwZWN0ZWRXb3JrZXJFeGl0KHdvcmtlclN0YXRlOiBXb3JrZXJTdGF0ZSk6IHZvaWQge1xuICAgIGNvbnN0IHJlc3RhcnRDb3VudCA9IHdvcmtlclN0YXRlLnJlc3RhcnRDb3VudCArIDE7XG5cbiAgICBpZiAocmVzdGFydENvdW50IDw9IHRoaXMub3B0aW9ucy5yZXN0YXJ0TWF4VGltZXMpIHtcbiAgICAgIGxvZ2dlci5lcnJvcihcbiAgICAgICAgYFJlc3RhcnRpbmcgd29ya2VyICR7d29ya2VyU3RhdGUuaWR9IChwaWQ6ICR7d29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MucGlkfSkgKGF0dGVtcHQgJHtyZXN0YXJ0Q291bnR9LyR7dGhpcy5vcHRpb25zLnJlc3RhcnRNYXhUaW1lc30pYCxcbiAgICAgICk7XG4gICAgICBjb25zdCBuZXdXb3JrZXIgPSB0aGlzLnNwYXduV29ya2VyKHdvcmtlclN0YXRlLmlkKTtcbiAgICAgIGNvbnN0IG5ld1dvcmtlclN0YXRlID0gdGhpcy53b3JrZXJzLmdldChuZXdXb3JrZXIuaWQpO1xuICAgICAgaWYgKG5ld1dvcmtlclN0YXRlKSB7XG4gICAgICAgIG5ld1dvcmtlclN0YXRlLnJlc3RhcnRDb3VudCA9IHJlc3RhcnRDb3VudDtcbiAgICAgIH1cbiAgICAgIHRoaXMuZW1pdCgnd29ya2VyOnJlc3RhcnRlZCcsIG5ld1dvcmtlciwgd29ya2VyU3RhdGUucmVzdGFydENvdW50KTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICBgUmVzdGFydCBsaW1pdCAoJHt0aGlzLm9wdGlvbnMucmVzdGFydE1heFRpbWVzfSkgZXhjZWVkZWQgZm9yIHdvcmtlciAke3dvcmtlclN0YXRlLmlkfSAocGlkOiAke3dvcmtlclN0YXRlLndvcmtlci5wcm9jZXNzLnBpZH0pLCBzaHV0dGluZyBkb3duIGNsdXN0ZXJgLFxuICAgICAgKTtcbiAgICAgIHRoaXMuZW1pdCgnd29ya2VyOnJlc3RhcnQtbGltaXQtZXhjZWVkZWQnLCB3b3JrZXJTdGF0ZS53b3JrZXIsIHdvcmtlclN0YXRlLnJlc3RhcnRDb3VudCk7XG4gICAgICB0aGlzLnNodXRkb3duKCdSRVNUQVJUX0xJTUlUX0VYQ0VFREVEJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNodXRzIGRvd24gdGhlIHByaW1hcnkgcHJvY2Vzc1xuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzaHV0ZG93blByaW1hcnkoc2lnbmFsPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbG9nZ2VyLmluZm8oXG4gICAgICBgUHJpbWFyeSBwcm9jZXNzIChwaWQ6ICR7cHJvY2Vzcy5waWR9KSBzaHV0dGluZyBkb3duIChzaWduYWw6ICR7c2lnbmFsID8/ICdtYW51YWwnfSlgLFxuICAgICk7XG5cbiAgICB0aGlzLnN0b3BIZWFsdGhNb25pdG9yaW5nKCk7XG4gICAgdGhpcy5yZW1vdmVTaWduYWxIYW5kbGVycygpO1xuXG4gICAgLy8gU2h1dGRvd24gYWxsIHdvcmtlcnNcbiAgICBhd2FpdCB0aGlzLnNodXRkb3duQWxsV29ya2VycyhzaWduYWwpO1xuXG4gICAgLy8gRXhlY3V0ZSBwcmltYXJ5IHNodXRkb3duIGZ1bmN0aW9uXG4gICAgYXdhaXQgc2FmZUV4ZWN1dGUoXG4gICAgICAoKSA9PlxuICAgICAgICB0aW1lb3V0KFxuICAgICAgICAgIHRoaXMub3B0aW9ucy5wcmltYXJ5U2h1dGRvd25GbihzaWduYWwpLFxuICAgICAgICAgIHRoaXMub3B0aW9ucy5zaHV0ZG93blRpbWVvdXQsXG4gICAgICAgICAgJ3ByaW1hcnkgc2h1dGRvd24gdGltZW91dCcsXG4gICAgICAgICksXG4gICAgICAnRXJyb3IgaW4gcHJpbWFyeSBzaHV0ZG93biBmdW5jdGlvbicsXG4gICAgKTtcblxuICAgIGxvZ2dlci5pbmZvKGBQcmltYXJ5IHByb2Nlc3MgKHBpZDogJHtwcm9jZXNzLnBpZH0pIHNodXRkb3duIGNvbXBsZXRlZGApO1xuICAgIHRoaXMuZW1pdCgnc2h1dGRvd246Y29tcGxldGVkJyk7XG4gICAgcHJvY2Vzcy5leGl0KDApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNodXRzIGRvd24gYWxsIHdvcmtlcnMgZ3JhY2VmdWxseVxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBzaHV0ZG93bkFsbFdvcmtlcnMoc2lnbmFsPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMud29ya2Vycy5zaXplID09PSAwKSByZXR1cm47XG5cbiAgICBsb2dnZXIuaW5mbyhgU2h1dHRpbmcgZG93biAke3RoaXMud29ya2Vycy5zaXplfSB3b3JrZXJzLi4uYCk7XG5cbiAgICAvLyBNYXJrIGFsbCB3b3JrZXJzIGFzIHNodXR0aW5nIGRvd24gYW5kIHNlbmQgc2h1dGRvd24gbWVzc2FnZVxuICAgIEFycmF5LmZyb20odGhpcy53b3JrZXJzLnZhbHVlcygpKS5mb3JFYWNoKCh3b3JrZXJTdGF0ZSkgPT4ge1xuICAgICAgd29ya2VyU3RhdGUuaXNTaHV0dGluZ0Rvd24gPSB0cnVlO1xuICAgICAgLy8gT25seSBzZW5kIHNodXRkb3duIG1lc3NhZ2UgaWYgd29ya2VyIGlzIHN0aWxsIGNvbm5lY3RlZFxuICAgICAgaWYgKCF3b3JrZXJTdGF0ZS53b3JrZXIuaXNEZWFkKCkgJiYgd29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MuY29ubmVjdGVkKSB7XG4gICAgICAgIGNvbnN0IHNodXRkb3duTWVzc2FnZTogU2h1dGRvd25NZXNzYWdlID0ge1xuICAgICAgICAgIHR5cGU6ICdzaHV0ZG93bicsXG4gICAgICAgICAgc2lnbmFsLFxuICAgICAgICB9O1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHdvcmtlclN0YXRlLndvcmtlci5zZW5kKHNodXRkb3duTWVzc2FnZSk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgLy8gV29ya2VyIElQQyBjaGFubmVsIGlzIGFscmVhZHkgY2xvc2VkLCB3aGljaCBpcyBmaW5lXG4gICAgICAgICAgbG9nZ2VyLndhcm4oXG4gICAgICAgICAgICBgRmFpbGVkIHRvIHNlbmQgc2h1dGRvd24gbWVzc2FnZSB0byB3b3JrZXIgJHt3b3JrZXJTdGF0ZS5pZH0gKHBpZDogJHtcbiAgICAgICAgICAgICAgd29ya2VyU3RhdGUud29ya2VyLnByb2Nlc3MucGlkXG4gICAgICAgICAgICB9KTogJHtlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcil9YCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBXYWl0IGZvciB3b3JrZXJzIHRvIGV4aXQgZ3JhY2VmdWxseSBvciB0aW1lb3V0XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRpbWVvdXQoXG4gICAgICAgIHRoaXMud2FpdEZvckFsbFdvcmtlcnNUb0V4aXQoKSxcbiAgICAgICAgdGhpcy5vcHRpb25zLnNodXRkb3duVGltZW91dCxcbiAgICAgICAgJ1dvcmtlciBzaHV0ZG93biB0aW1lb3V0JyxcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZ2dlci5lcnJvcignR3JhY2VmdWwgc2h1dGRvd24gZm9yIHdvcmtlcnMgdGltZWQgb3V0LCBmb3JjaW5nIHNodXRkb3duJyk7XG4gICAgICB0aGlzLmZvcmNlS2lsbEFsbFdvcmtlcnMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogV2FpdHMgZm9yIGFsbCB3b3JrZXJzIHRvIGV4aXRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgd2FpdEZvckFsbFdvcmtlcnNUb0V4aXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgd2hpbGUgKHRoaXMud29ya2Vycy5zaXplID4gMCkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF3YWl0LWluLWxvb3BcbiAgICAgIGF3YWl0IGRlbGF5KDEwMCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlIGtpbGxzIGFsbCByZW1haW5pbmcgd29ya2Vyc1xuICAgKi9cbiAgcHJpdmF0ZSBmb3JjZUtpbGxBbGxXb3JrZXJzKCk6IHZvaWQge1xuICAgIEFycmF5LmZyb20odGhpcy53b3JrZXJzLnZhbHVlcygpKS5mb3JFYWNoKCh3b3JrZXJTdGF0ZSkgPT4ge1xuICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICBgRm9yY2Uga2lsbGluZyB3b3JrZXIgJHt3b3JrZXJTdGF0ZS5pZH0gKHBpZDogJHt3b3JrZXJTdGF0ZS53b3JrZXIucHJvY2Vzcy5waWR9KWAsXG4gICAgICApO1xuICAgICAgd29ya2VyU3RhdGUud29ya2VyLmtpbGwoJ1NJR0tJTEwnKTtcbiAgICB9KTtcbiAgICB0aGlzLndvcmtlcnMuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaHV0cyBkb3duIGEgd29ya2VyIHByb2Nlc3NcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgc2h1dGRvd25Xb3JrZXIoc2lnbmFsPzogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgbG9nZ2VyLmluZm8oXG4gICAgICBgV29ya2VyICR7dGhpcy5nZXRDdXJyZW50V29ya2VySWQoKX0gKHBpZDogJHtwcm9jZXNzLnBpZH0pIHNodXR0aW5nIGRvd24gKHNpZ25hbDogJHtcbiAgICAgICAgc2lnbmFsID8/ICdtYW51YWwnXG4gICAgICB9KWAsXG4gICAgKTtcblxuICAgIHRoaXMucmVtb3ZlU2lnbmFsSGFuZGxlcnMoKTtcblxuICAgIC8vIEV4ZWN1dGUgd29ya2VyIHNodXRkb3duIGZ1bmN0aW9uXG4gICAgYXdhaXQgc2FmZUV4ZWN1dGUoXG4gICAgICAoKSA9PlxuICAgICAgICB0aW1lb3V0KFxuICAgICAgICAgIHRoaXMub3B0aW9ucy53b3JrZXJTaHV0ZG93bkZuKHNpZ25hbCksXG4gICAgICAgICAgdGhpcy5vcHRpb25zLnNodXRkb3duVGltZW91dCxcbiAgICAgICAgICAnd29ya2VyIHNodXRkb3duIHRpbWVvdXQnLFxuICAgICAgICApLFxuICAgICAgYEVycm9yIGluIHdvcmtlciAke3RoaXMuZ2V0Q3VycmVudFdvcmtlcklkKCl9IChwaWQ6ICR7cHJvY2Vzcy5waWR9KSBzaHV0ZG93biBmdW5jdGlvbmAsXG4gICAgKTtcblxuICAgIGxvZ2dlci5pbmZvKGBXb3JrZXIgJHt0aGlzLmdldEN1cnJlbnRXb3JrZXJJZCgpfSAocGlkOiAke3Byb2Nlc3MucGlkfSkgc2h1dGRvd24gY29tcGxldGVkYCk7XG4gICAgcHJvY2Vzcy5leGl0KDApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbnVtYmVyIG9mIGFjdGl2ZSB3b3JrZXJzXG4gICAqL1xuICBwdWJsaWMgZ2V0V29ya2VyQ291bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy53b3JrZXJzLnNpemU7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBpbmZvcm1hdGlvbiBhYm91dCBhbGwgd29ya2Vyc1xuICAgKi9cbiAgcHVibGljIGdldFdvcmtlckluZm8oKTogQXJyYXk8eyBpZDogbnVtYmVyOyBwaWQ6IG51bWJlcjsgcmVzdGFydENvdW50OiBudW1iZXIgfT4ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMud29ya2Vycy52YWx1ZXMoKSkubWFwKChzdGF0ZSkgPT4gKHtcbiAgICAgIGlkOiBzdGF0ZS5pZCxcbiAgICAgIHBpZDogc3RhdGUud29ya2VyLnByb2Nlc3MucGlkID8/IC0xLFxuICAgICAgcmVzdGFydENvdW50OiBzdGF0ZS5yZXN0YXJ0Q291bnQsXG4gICAgfSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY2x1c3RlciBpcyBjdXJyZW50bHkgc3RhcnRlZFxuICAgKi9cbiAgcHVibGljIGlzU3RhcnRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGFydGVkO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY2x1c3RlciBpcyBjdXJyZW50bHkgc2h1dHRpbmcgZG93blxuICAgKi9cbiAgcHVibGljIGlzU2h1dGRvd24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNTaHV0dGluZ0Rvd247XG4gIH1cbn1cblxuLy8gVHlwZS1zYWZlIGV2ZW50IGVtaXR0ZXIgaW50ZXJmYWNlXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJNYW5hZ2VyRW1pdHRlciB7XG4gIG9uPEsgZXh0ZW5kcyBrZXlvZiBDbHVzdGVyTWFuYWdlckV2ZW50cz4oZXZlbnQ6IEssIGxpc3RlbmVyOiBDbHVzdGVyTWFuYWdlckV2ZW50c1tLXSk6IHRoaXM7XG4gIGVtaXQ8SyBleHRlbmRzIGtleW9mIENsdXN0ZXJNYW5hZ2VyRXZlbnRzPihcbiAgICBldmVudDogSyxcbiAgICAuLi5hcmdzOiBQYXJhbWV0ZXJzPENsdXN0ZXJNYW5hZ2VyRXZlbnRzW0tdPlxuICApOiBib29sZWFuO1xufVxuIl19
|
package/build/cluster/types.d.ts
CHANGED
|
@@ -1,9 +1,20 @@
|
|
|
1
1
|
import { Worker } from 'cluster';
|
|
2
2
|
/**
|
|
3
3
|
* Configuration options for ClusterManager
|
|
4
|
+
*
|
|
5
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersettings Node.js Cluster Settings}
|
|
4
6
|
*/
|
|
5
7
|
export interface ClusterManagerOptions {
|
|
6
8
|
cluster?: Cluster;
|
|
9
|
+
/**
|
|
10
|
+
* Serialization method for inter-process communication
|
|
11
|
+
*
|
|
12
|
+
* - `'json'`: Uses JSON serialization (default, compatible with all Node.js versions)
|
|
13
|
+
* - `'advanced'`: Uses advanced serialization (better performance, requires Node.js 16.0.0+)
|
|
14
|
+
*
|
|
15
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersettings Node.js Cluster Settings}
|
|
16
|
+
*/
|
|
17
|
+
serialization?: 'json' | 'advanced';
|
|
7
18
|
/** Function to execute in the primary process during start */
|
|
8
19
|
primaryFn?: () => void | Promise<void>;
|
|
9
20
|
/** Function to execute in the primary process after all workers have been shutdown and just before primary process shutdown */
|
|
@@ -27,6 +38,11 @@ export interface ClusterManagerOptions {
|
|
|
27
38
|
/** Number of worker processes to spawn (default: number of CPU cores) */
|
|
28
39
|
numWorkers?: number;
|
|
29
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Cluster interface for managing worker processes
|
|
43
|
+
*
|
|
44
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html Node.js Cluster Module}
|
|
45
|
+
*/
|
|
30
46
|
export interface Cluster {
|
|
31
47
|
worker?: Worker | undefined;
|
|
32
48
|
readonly isPrimary: boolean;
|
|
@@ -34,6 +50,17 @@ export interface Cluster {
|
|
|
34
50
|
on(event: string, listener: (...args: any[]) => void): Cluster;
|
|
35
51
|
on(event: 'exit', listener: (worker: Worker, code: number, signal: string) => void): this;
|
|
36
52
|
on(event: 'online', listener: (worker: Worker) => void): this;
|
|
53
|
+
/**
|
|
54
|
+
* Configure the primary process settings
|
|
55
|
+
*
|
|
56
|
+
* @param options - Configuration options for the primary process
|
|
57
|
+
* @param options.serialization - Serialization method for IPC messages
|
|
58
|
+
*
|
|
59
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersetupprimaryoptions Node.js cluster.setupPrimary()}
|
|
60
|
+
*/
|
|
61
|
+
setupPrimary(options: {
|
|
62
|
+
serialization: 'json' | 'advanced';
|
|
63
|
+
}): void;
|
|
37
64
|
}
|
|
38
65
|
/**
|
|
39
66
|
* Internal worker state tracking
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cluster/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cluster/types.ts"],"names":[],"mappings":"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"}
|
package/build/cluster/types.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2x1c3Rlci90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV29ya2VyIH0gZnJvbSAnY2x1c3Rlcic7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBDbHVzdGVyTWFuYWdlclxuICpcbiAqIEBzZWUge0BsaW5rIGh0dHBzOi8vbm9kZWpzLm9yZy9kb2NzL2xhdGVzdC9hcGkvY2x1c3Rlci5odG1sI2NsdXN0ZXJzZXR0aW5ncyBOb2RlLmpzIENsdXN0ZXIgU2V0dGluZ3N9XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2x1c3Rlck1hbmFnZXJPcHRpb25zIHtcbiAgY2x1c3Rlcj86IENsdXN0ZXI7XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6YXRpb24gbWV0aG9kIGZvciBpbnRlci1wcm9jZXNzIGNvbW11bmljYXRpb25cbiAgICpcbiAgICogLSBgJ2pzb24nYDogVXNlcyBKU09OIHNlcmlhbGl6YXRpb24gKGRlZmF1bHQsIGNvbXBhdGlibGUgd2l0aCBhbGwgTm9kZS5qcyB2ZXJzaW9ucylcbiAgICogLSBgJ2FkdmFuY2VkJ2A6IFVzZXMgYWR2YW5jZWQgc2VyaWFsaXphdGlvbiAoYmV0dGVyIHBlcmZvcm1hbmNlLCByZXF1aXJlcyBOb2RlLmpzIDE2LjAuMCspXG4gICAqXG4gICAqIEBzZWUge0BsaW5rIGh0dHBzOi8vbm9kZWpzLm9yZy9kb2NzL2xhdGVzdC9hcGkvY2x1c3Rlci5odG1sI2NsdXN0ZXJzZXR0aW5ncyBOb2RlLmpzIENsdXN0ZXIgU2V0dGluZ3N9XG4gICAqL1xuICBzZXJpYWxpemF0aW9uPzogJ2pzb24nIHwgJ2FkdmFuY2VkJztcblxuICAvKiogRnVuY3Rpb24gdG8gZXhlY3V0ZSBpbiB0aGUgcHJpbWFyeSBwcm9jZXNzIGR1cmluZyBzdGFydCAqL1xuICBwcmltYXJ5Rm4/OiAoKSA9PiB2b2lkIHwgUHJvbWlzZTx2b2lkPjtcblxuICAvKiogRnVuY3Rpb24gdG8gZXhlY3V0ZSBpbiB0aGUgcHJpbWFyeSBwcm9jZXNzIGFmdGVyIGFsbCB3b3JrZXJzIGhhdmUgYmVlbiBzaHV0ZG93biBhbmQganVzdCBiZWZvcmUgcHJpbWFyeSBwcm9jZXNzIHNodXRkb3duICovXG4gIHByaW1hcnlTaHV0ZG93bkZuPzogKHNpZ25hbD86IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAvKiogRnVuY3Rpb24gdG8gZXhlY3V0ZSBpbiB3b3JrZXIgcHJvY2Vzc2VzIGR1cmluZyBzdGFydCAqL1xuICB3b3JrZXJGbj86ICgpID0+IHZvaWQgfCBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKiBGdW5jdGlvbiB0byBleGVjdXRlIGluIHdvcmtlciBwcm9jZXNzZXMganVzdCBiZWZvcmUgd29ya2VyIHByb2Nlc3Mgc2h1dGRvd24gKi9cbiAgd29ya2VyU2h1dGRvd25Gbj86IChzaWduYWw/OiBzdHJpbmcpID0+IFByb21pc2U8dm9pZD47XG5cbiAgLyoqIEZyZXF1ZW5jeSBvZiB3b3JrZXIgaGVhbHRoIGNoZWNrcyBpbiBtaWxsaXNlY29uZHMgKGRlZmF1bHQ6IDEwMDAwKSAqL1xuICBwaW5nRnJlcXVlbmN5PzogbnVtYmVyO1xuXG4gIC8qKiBUaW1lb3V0IGZvciB3b3JrZXIgcGluZyByZXNwb25zZXMgaW4gbWlsbGlzZWNvbmRzIChkZWZhdWx0OiAzMDAwMCkgKi9cbiAgcGluZ1RpbWVvdXQ/OiBudW1iZXI7XG5cbiAgLyoqIENhbGxiYWNrIHRvIGRldGVybWluZSBhY3Rpb24gd2hlbiBhIHN0dWNrIHdvcmtlciBpcyBraWxsZWQsIGlmIHRydWUgYSBuZXcgd29ya2VyIHdpbGwgYmUgc3Bhd25lZCwgaWYgZmFsc2UgY2x1c3RlciB3aWxsIHNodXRkb3duIChkZWZhdWx0OiB0cnVlKSAqL1xuICBzdHVja1dvcmtlclJlc3Bhd25GdW5jPzogKHdvcmtlcjogV29ya2VyKSA9PiBib29sZWFuO1xuXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiB0aW1lcyB0byByZXN0YXJ0IGEgd29ya2VyIGFmdGVyIGl0IGhhcyBleGl0ZWQgdW5leHBlY3RlZGx5IChkZWZhdWx0OiAzKSAqL1xuICByZXN0YXJ0TWF4VGltZXM/OiBudW1iZXI7XG5cbiAgLyoqIFNpZ25hbHMgdGhhdCB0cmlnZ2VyIHNodXRkb3duIChkZWZhdWx0OiBbJ1NJR0lOVCcsICdTSUdURVJNJ10pICovXG4gIHNodXRkb3duU2lnbmFscz86IE5vZGVKUy5TaWduYWxzW107XG5cbiAgLyoqIFRpbWVvdXQgZm9yIGdyYWNlZnVsIHdvcmtlciBzaHV0ZG93biBpbiBtaWxsaXNlY29uZHMgKGRlZmF1bHQ6IDMwMDAwKSAqL1xuICBzaHV0ZG93blRpbWVvdXQ/OiBudW1iZXI7XG5cbiAgLyoqIE51bWJlciBvZiB3b3JrZXIgcHJvY2Vzc2VzIHRvIHNwYXduIChkZWZhdWx0OiBudW1iZXIgb2YgQ1BVIGNvcmVzKSAqL1xuICBudW1Xb3JrZXJzPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIENsdXN0ZXIgaW50ZXJmYWNlIGZvciBtYW5hZ2luZyB3b3JrZXIgcHJvY2Vzc2VzXG4gKlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9ub2RlanMub3JnL2RvY3MvbGF0ZXN0L2FwaS9jbHVzdGVyLmh0bWwgTm9kZS5qcyBDbHVzdGVyIE1vZHVsZX1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyIHtcbiAgd29ya2VyPzogV29ya2VyIHwgdW5kZWZpbmVkO1xuICByZWFkb25seSBpc1ByaW1hcnk6IGJvb2xlYW47XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gIGZvcmsoZW52PzogYW55KTogV29ya2VyO1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICBvbihldmVudDogc3RyaW5nLCBsaXN0ZW5lcjogKC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkKTogQ2x1c3RlcjtcbiAgb24oZXZlbnQ6ICdleGl0JywgbGlzdGVuZXI6ICh3b3JrZXI6IFdvcmtlciwgY29kZTogbnVtYmVyLCBzaWduYWw6IHN0cmluZykgPT4gdm9pZCk6IHRoaXM7XG4gIG9uKGV2ZW50OiAnb25saW5lJywgbGlzdGVuZXI6ICh3b3JrZXI6IFdvcmtlcikgPT4gdm9pZCk6IHRoaXM7XG4gIC8qKlxuICAgKiBDb25maWd1cmUgdGhlIHByaW1hcnkgcHJvY2VzcyBzZXR0aW5nc1xuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHByaW1hcnkgcHJvY2Vzc1xuICAgKiBAcGFyYW0gb3B0aW9ucy5zZXJpYWxpemF0aW9uIC0gU2VyaWFsaXphdGlvbiBtZXRob2QgZm9yIElQQyBtZXNzYWdlc1xuICAgKlxuICAgKiBAc2VlIHtAbGluayBodHRwczovL25vZGVqcy5vcmcvZG9jcy9sYXRlc3QvYXBpL2NsdXN0ZXIuaHRtbCNjbHVzdGVyc2V0dXBwcmltYXJ5b3B0aW9ucyBOb2RlLmpzIGNsdXN0ZXIuc2V0dXBQcmltYXJ5KCl9XG4gICAqL1xuICBzZXR1cFByaW1hcnkob3B0aW9uczogeyBzZXJpYWxpemF0aW9uOiAnanNvbicgfCAnYWR2YW5jZWQnIH0pOiB2b2lkO1xufVxuLyoqXG4gKiBJbnRlcm5hbCB3b3JrZXIgc3RhdGUgdHJhY2tpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZXJTdGF0ZSB7XG4gIGlkOiBudW1iZXI7XG4gIHdvcmtlcjogV29ya2VyO1xuICByZXN0YXJ0Q291bnQ6IG51bWJlcjsgLy8gTnVtYmVyIG9mIHRpbWVzIHRoZSB3b3JrZXIgaGFzIGJlZW4gcmVzdGFydGVkXG4gIGxhc3RQaW5nOiBudW1iZXI7IC8vIFRpbWVzdGFtcCBvZiB0aGUgbGFzdCBwaW5nIHJlY2VpdmVkIGZyb20gdGhlIHdvcmtlclxuICBwZW5kaW5nUGluZzogYm9vbGVhbjsgLy8gV2hldGhlciBhIHBpbmcgcmVzcG9uc2UgaXMgcGVuZGluZyBmcm9tIHRoZSB3b3JrZXJcbiAgaXNTaHV0dGluZ0Rvd246IGJvb2xlYW47IC8vIFdoZXRoZXIgdGhlIHdvcmtlciBpcyBpbiB0aGUgcHJvY2VzcyBvZiBzaHV0dGluZyBkb3duXG59XG5cbi8qKlxuICogRXZlbnRzIGVtaXR0ZWQgYnkgQ2x1c3Rlck1hbmFnZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyTWFuYWdlckV2ZW50cyB7XG4gICd3b3JrZXI6c3RhcnRlZCc6ICh3b3JrZXI6IFdvcmtlcikgPT4gdm9pZDtcbiAgJ3dvcmtlcjpkaWVkJzogKHdvcmtlcjogV29ya2VyLCBjb2RlOiBudW1iZXIgfCBudWxsLCBzaWduYWw6IHN0cmluZyB8IG51bGwpID0+IHZvaWQ7XG4gICd3b3JrZXI6c3R1Y2snOiAod29ya2VyOiBXb3JrZXIpID0+IHZvaWQ7XG4gICd3b3JrZXI6cmVzdGFydGVkJzogKHdvcmtlcjogV29ya2VyLCByZXN0YXJ0Q291bnQ6IG51bWJlcikgPT4gdm9pZDtcbiAgJ3dvcmtlcjpyZXN0YXJ0LWxpbWl0LWV4Y2VlZGVkJzogKHdvcmtlcjogV29ya2VyLCByZXN0YXJ0Q291bnQ6IG51bWJlcikgPT4gdm9pZDtcbiAgJ3NodXRkb3duOnN0YXJ0ZWQnOiAoc2lnbmFsPzogc3RyaW5nKSA9PiB2b2lkO1xuICAnc2h1dGRvd246Y29tcGxldGVkJzogKCkgPT4gdm9pZDtcbiAgZXJyb3I6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogTWVzc2FnZSB0eXBlcyBmb3IgaW50ZXItcHJvY2VzcyBjb21tdW5pY2F0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGluZ01lc3NhZ2Uge1xuICB0eXBlOiAncGluZyc7XG4gIHRpbWVzdGFtcDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvbmdNZXNzYWdlIHtcbiAgdHlwZTogJ3BvbmcnO1xuICB0aW1lc3RhbXA6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaHV0ZG93bk1lc3NhZ2Uge1xuICB0eXBlOiAnc2h1dGRvd24nO1xuICBzaWduYWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElQQ01lc3NhZ2UgPSBQaW5nTWVzc2FnZSB8IFBvbmdNZXNzYWdlIHwgU2h1dGRvd25NZXNzYWdlO1xuIl19
|
package/build/cluster/utils.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ClusterManagerOptions } from './types';
|
|
1
2
|
/**
|
|
2
3
|
* Utility functions for ClusterManager
|
|
3
4
|
*/
|
|
@@ -15,6 +16,11 @@ export declare function timeout<T>(promise: Promise<T>, ms: number, errorMessage
|
|
|
15
16
|
export declare function safeExecute<T>(fn: () => T | Promise<T>, errorMessage: string): Promise<T | undefined>;
|
|
16
17
|
/**
|
|
17
18
|
* Validates ClusterManagerOptions and provides defaults
|
|
19
|
+
*
|
|
20
|
+
* @param options - User-provided options
|
|
21
|
+
* @returns Required options with defaults applied
|
|
22
|
+
*
|
|
23
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersettings Node.js Cluster Settings}
|
|
18
24
|
*/
|
|
19
|
-
export declare function validateAndDefaultOptions(options:
|
|
25
|
+
export declare function validateAndDefaultOptions(options: ClusterManagerOptions): Required<ClusterManagerOptions>;
|
|
20
26
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cluster/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cluster/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGhD;;GAEG;AAEH;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI/C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAa7F;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAOxB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,qBAAqB,GAC7B,QAAQ,CAAC,qBAAqB,CAAC,CAwBjC"}
|
package/build/cluster/utils.js
CHANGED
|
@@ -85,11 +85,24 @@ async function safeExecute(fn, errorMessage) {
|
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
87
|
* Validates ClusterManagerOptions and provides defaults
|
|
88
|
+
*
|
|
89
|
+
* @param options - User-provided options
|
|
90
|
+
* @returns Required options with defaults applied
|
|
91
|
+
*
|
|
92
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersettings Node.js Cluster Settings}
|
|
88
93
|
*/
|
|
89
94
|
function validateAndDefaultOptions(options) {
|
|
90
95
|
const numCPUs = (0, os_1.cpus)().length;
|
|
91
96
|
return {
|
|
92
97
|
cluster: options.cluster ?? cluster_1.default,
|
|
98
|
+
/**
|
|
99
|
+
* Default serialization method
|
|
100
|
+
*
|
|
101
|
+
* Uses 'json' for maximum compatibility across Node.js versions
|
|
102
|
+
*
|
|
103
|
+
* @see {@link https://nodejs.org/docs/latest/api/cluster.html#clustersettings Node.js Cluster Settings}
|
|
104
|
+
*/
|
|
105
|
+
serialization: options.serialization ?? 'json',
|
|
93
106
|
primaryFn: options.primaryFn ?? (() => { }),
|
|
94
107
|
primaryShutdownFn: options.primaryShutdownFn ?? (async () => { }),
|
|
95
108
|
workerFn: options.workerFn ?? (() => { }),
|
|
@@ -103,4 +116,4 @@ function validateAndDefaultOptions(options) {
|
|
|
103
116
|
numWorkers: options.numWorkers ?? numCPUs,
|
|
104
117
|
};
|
|
105
118
|
}
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2x1c3Rlci91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLHNCQUlDO0FBS0QsMEJBYUM7QUFLRCxrQ0FVQztBQVVELDhEQTBCQztBQXJGRCwyQkFBMEI7QUFDMUIsc0RBQThCO0FBRTlCLGtEQUFvQztBQUVwQzs7R0FFRztBQUVIOztHQUVHO0FBQ0gsU0FBZ0IsS0FBSyxDQUFDLEVBQVU7SUFDOUIsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQzdCLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixPQUFPLENBQUksT0FBbUIsRUFBRSxFQUFVLEVBQUUsWUFBcUI7SUFDL0UsSUFBSSxhQUE2QixDQUFDO0lBQ2xDLE1BQU0sY0FBYyxHQUFHLElBQUksT0FBTyxDQUFRLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3RELGFBQWEsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQzlCLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLElBQUksNkJBQTZCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN6RSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDVCxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQztRQUNsQixPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRTtZQUNuQixZQUFZLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDO1FBQ0YsY0FBYztLQUNmLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7R0FFRztBQUNJLEtBQUssVUFBVSxXQUFXLENBQy9CLEVBQXdCLEVBQ3hCLFlBQW9CO0lBRXBCLElBQUksQ0FBQztRQUNILE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxZQUFZLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN4QyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQix5QkFBeUIsQ0FDdkMsT0FBOEI7SUFFOUIsTUFBTSxPQUFPLEdBQUcsSUFBQSxTQUFJLEdBQUUsQ0FBQyxNQUFNLENBQUM7SUFDOUIsT0FBTztRQUNMLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxJQUFJLGlCQUFPO1FBQ25DOzs7Ozs7V0FNRztRQUNILGFBQWEsRUFBRSxPQUFPLENBQUMsYUFBYSxJQUFJLE1BQU07UUFDOUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxHQUFTLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFDaEQsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLGlCQUFpQixJQUFJLENBQUMsS0FBSyxJQUFtQixFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQy9FLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUSxJQUFJLENBQUMsR0FBUyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQzlDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLEtBQUssSUFBbUIsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUM3RSxhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWEsSUFBSSxLQUFLO1FBQzdDLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVyxJQUFJLEtBQUs7UUFDekMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLHNCQUFzQixJQUFJLENBQUMsR0FBWSxFQUFFLENBQUMsSUFBSSxDQUFDO1FBQy9FLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZSxJQUFJLENBQUM7UUFDN0MsZUFBZSxFQUFFLE9BQU8sQ0FBQyxlQUFlLElBQUksQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDO1FBQ2pFLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZSxJQUFJLEtBQUs7UUFDakQsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksT0FBTztLQUMxQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNwdXMgfSBmcm9tICdvcyc7XG5pbXBvcnQgY2x1c3RlciBmcm9tICdjbHVzdGVyJztcbmltcG9ydCB7IENsdXN0ZXJNYW5hZ2VyT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0ICogYXMgbG9nZ2VyIGZyb20gJy4uL2xvZ2dlcic7XG5cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbnMgZm9yIENsdXN0ZXJNYW5hZ2VyXG4gKi9cblxuLyoqXG4gKiBDcmVhdGVzIGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIGFmdGVyIHRoZSBzcGVjaWZpZWQgdGltZW91dFxuICovXG5leHBvcnQgZnVuY3Rpb24gZGVsYXkobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKTtcbiAgfSk7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHByb21pc2UgdGhhdCByZWplY3RzIGFmdGVyIHRoZSBzcGVjaWZpZWQgdGltZW91dFxuICovXG5leHBvcnQgZnVuY3Rpb24gdGltZW91dDxUPihwcm9taXNlOiBQcm9taXNlPFQ+LCBtczogbnVtYmVyLCBlcnJvck1lc3NhZ2U/OiBzdHJpbmcpOiBQcm9taXNlPFQ+IHtcbiAgbGV0IHRpbWVvdXRIYW5kbGU6IE5vZGVKUy5UaW1lb3V0O1xuICBjb25zdCB0aW1lb3V0UHJvbWlzZSA9IG5ldyBQcm9taXNlPG5ldmVyPigoXywgcmVqZWN0KSA9PiB7XG4gICAgdGltZW91dEhhbmRsZSA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgcmVqZWN0KG5ldyBFcnJvcihlcnJvck1lc3NhZ2UgPz8gYE9wZXJhdGlvbiB0aW1lZCBvdXQgYWZ0ZXIgJHttc31tc2ApKTtcbiAgICB9LCBtcyk7XG4gIH0pO1xuICByZXR1cm4gUHJvbWlzZS5yYWNlKFtcbiAgICBwcm9taXNlLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXRIYW5kbGUpO1xuICAgIH0pLFxuICAgIHRpbWVvdXRQcm9taXNlLFxuICBdKTtcbn1cblxuLyoqXG4gKiBTYWZlbHkgZXhlY3V0ZXMgYW4gYXN5bmMgZnVuY3Rpb24gd2l0aCBlcnJvciBoYW5kbGluZ1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2FmZUV4ZWN1dGU8VD4oXG4gIGZuOiAoKSA9PiBUIHwgUHJvbWlzZTxUPixcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcsXG4pOiBQcm9taXNlPFQgfCB1bmRlZmluZWQ+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgZm4oKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBsb2dnZXIuZXJyb3IoYCR7ZXJyb3JNZXNzYWdlfTpgLCBlcnJvcik7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuXG4vKipcbiAqIFZhbGlkYXRlcyBDbHVzdGVyTWFuYWdlck9wdGlvbnMgYW5kIHByb3ZpZGVzIGRlZmF1bHRzXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBVc2VyLXByb3ZpZGVkIG9wdGlvbnNcbiAqIEByZXR1cm5zIFJlcXVpcmVkIG9wdGlvbnMgd2l0aCBkZWZhdWx0cyBhcHBsaWVkXG4gKlxuICogQHNlZSB7QGxpbmsgaHR0cHM6Ly9ub2RlanMub3JnL2RvY3MvbGF0ZXN0L2FwaS9jbHVzdGVyLmh0bWwjY2x1c3RlcnNldHRpbmdzIE5vZGUuanMgQ2x1c3RlciBTZXR0aW5nc31cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQW5kRGVmYXVsdE9wdGlvbnMoXG4gIG9wdGlvbnM6IENsdXN0ZXJNYW5hZ2VyT3B0aW9ucyxcbik6IFJlcXVpcmVkPENsdXN0ZXJNYW5hZ2VyT3B0aW9ucz4ge1xuICBjb25zdCBudW1DUFVzID0gY3B1cygpLmxlbmd0aDtcbiAgcmV0dXJuIHtcbiAgICBjbHVzdGVyOiBvcHRpb25zLmNsdXN0ZXIgPz8gY2x1c3RlcixcbiAgICAvKipcbiAgICAgKiBEZWZhdWx0IHNlcmlhbGl6YXRpb24gbWV0aG9kXG4gICAgICpcbiAgICAgKiBVc2VzICdqc29uJyBmb3IgbWF4aW11bSBjb21wYXRpYmlsaXR5IGFjcm9zcyBOb2RlLmpzIHZlcnNpb25zXG4gICAgICpcbiAgICAgKiBAc2VlIHtAbGluayBodHRwczovL25vZGVqcy5vcmcvZG9jcy9sYXRlc3QvYXBpL2NsdXN0ZXIuaHRtbCNjbHVzdGVyc2V0dGluZ3MgTm9kZS5qcyBDbHVzdGVyIFNldHRpbmdzfVxuICAgICAqL1xuICAgIHNlcmlhbGl6YXRpb246IG9wdGlvbnMuc2VyaWFsaXphdGlvbiA/PyAnanNvbicsXG4gICAgcHJpbWFyeUZuOiBvcHRpb25zLnByaW1hcnlGbiA/PyAoKCk6IHZvaWQgPT4ge30pLFxuICAgIHByaW1hcnlTaHV0ZG93bkZuOiBvcHRpb25zLnByaW1hcnlTaHV0ZG93bkZuID8/IChhc3luYyAoKTogUHJvbWlzZTx2b2lkPiA9PiB7fSksXG4gICAgd29ya2VyRm46IG9wdGlvbnMud29ya2VyRm4gPz8gKCgpOiB2b2lkID0+IHt9KSxcbiAgICB3b3JrZXJTaHV0ZG93bkZuOiBvcHRpb25zLndvcmtlclNodXRkb3duRm4gPz8gKGFzeW5jICgpOiBQcm9taXNlPHZvaWQ+ID0+IHt9KSxcbiAgICBwaW5nRnJlcXVlbmN5OiBvcHRpb25zLnBpbmdGcmVxdWVuY3kgPz8gMTAwMDAsXG4gICAgcGluZ1RpbWVvdXQ6IG9wdGlvbnMucGluZ1RpbWVvdXQgPz8gMzAwMDAsXG4gICAgc3R1Y2tXb3JrZXJSZXNwYXduRnVuYzogb3B0aW9ucy5zdHVja1dvcmtlclJlc3Bhd25GdW5jID8/ICgoKTogYm9vbGVhbiA9PiB0cnVlKSxcbiAgICByZXN0YXJ0TWF4VGltZXM6IG9wdGlvbnMucmVzdGFydE1heFRpbWVzID8/IDMsXG4gICAgc2h1dGRvd25TaWduYWxzOiBvcHRpb25zLnNodXRkb3duU2lnbmFscyA/PyBbJ1NJR0lOVCcsICdTSUdURVJNJ10sXG4gICAgc2h1dGRvd25UaW1lb3V0OiBvcHRpb25zLnNodXRkb3duVGltZW91dCA/PyAzMDAwMCxcbiAgICBudW1Xb3JrZXJzOiBvcHRpb25zLm51bVdvcmtlcnMgPz8gbnVtQ1BVcyxcbiAgfTtcbn1cbiJdfQ==
|
package/build/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAyDtF,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuHlC,CAAC;AAEF,eAAO,MAAM,sBAAsB,gCAAgC,CAAC;AAEpE,eAAO,MAAM,mBAAmB,UAA0C,CAAC;AAC3E,eAAO,MAAM,oBAAoB,UAA6C,CAAC;AAC/E,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAyDtF,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuHlC,CAAC;AAEF,eAAO,MAAM,sBAAsB,gCAAgC,CAAC;AAEpE,eAAO,MAAM,mBAAmB,UAA0C,CAAC;AAC3E,eAAO,MAAM,oBAAoB,UAA6C,CAAC;AAC/E,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAM5C,CAAC"}
|
package/build/constants.js
CHANGED
|
@@ -185,5 +185,6 @@ exports.LOGLEVELS = {
|
|
|
185
185
|
info: 2, // Logs about state of the application
|
|
186
186
|
warn: 1, // Logs about warnings which dont immediately halt the application
|
|
187
187
|
error: 0, // Logs about errors which dont immediately halt the application
|
|
188
|
+
none: -1, // No logging
|
|
188
189
|
};
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLHNCQUFzQixHQUF3RDtJQUN6RixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwrQkFBK0I7S0FDekM7SUFDRCxVQUFVLEVBQUU7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx3Q0FBd0M7S0FDbEQ7SUFDRCxZQUFZLEVBQUU7UUFDWixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxzQ0FBc0M7S0FDaEQ7SUFDRCxVQUFVLEVBQUU7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwwQ0FBMEM7S0FDcEQ7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx5QkFBeUI7S0FDbkM7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSw0QkFBNEI7S0FDdEM7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx1Q0FBdUM7S0FDakQ7SUFDRCxPQUFPLEVBQUU7UUFDUCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSw4QkFBOEI7S0FDeEM7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxxQ0FBcUM7S0FDL0M7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxrQ0FBa0M7S0FDNUM7SUFDRCxLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxvQ0FBb0M7S0FDOUM7SUFDRCxLQUFL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RSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDbEUsUUFBQSxTQUFTLEdBQTJCO0lBQy9DLEtBQUssRUFBRSxDQUFDLEVBQUUsNkJBQTZCO0lBQ3ZDLElBQUksRUFBRSxDQUFDLEVBQUUsc0NBQXNDO0lBQy9DLElBQUksRUFBRSxDQUFDLEVBQUUsa0VBQWtFO0lBQzNFLEtBQUssRUFBRSxDQUFDLEVBQUUsZ0VBQWdFO0NBQzNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTkVUV09SS19TVEFUVVNfRVJSX01BUDogUmVjb3JkPHN0cmluZywgeyBzdGF0dXM6IG51bWJlcjsgbWVzc2FnZTogc3RyaW5nIH0+ID0ge1xuICBFQUNDRVM6IHtcbiAgICBzdGF0dXM6IDQwMCxcbiAgICBtZXNzYWdlOiAnW0VBQ0NFU10gOjogUGVybWlzc2lvbiBkZW5pZWQnLFxuICB9LFxuICBFQUREUklOVVNFOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFQUREUklOVVNFXSA6OiBBZGRyZXNzIGFscmVhZHkgaW4gdXNlJyxcbiAgfSxcbiAgRUNPTk5SRUZVU0VEOiB7XG4gICAgc3RhdHVzOiA1MDAsXG4gICAgbWVzc2FnZTogJ1tFQ09OTlJFRlVTRURdIDo6IENvbm5lY3Rpb24gcmVmdXNlZCcsXG4gIH0sXG4gIEVDT05OUkVTRVQ6IHtcbiAgICBzdGF0dXM6IDUwMCxcbiAgICBtZXNzYWdlOiAnW0VDT05OUkVTRVRdIDo6IENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcicsXG4gIH0sXG4gIEVFWElTVDoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRUVYSVNUXSA6OiBGaWxlIGV4aXN0cycsXG4gIH0sXG4gIEVJU0RJUjoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRUVYSVNUXSA6OiBJcyBhIGRpcmVjdG9yeScsXG4gIH0sXG4gIEVNRklMRToge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU1GSUxFXSA6OiBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbScsXG4gIH0sXG4gIEVOT0VOVDoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU5PRU5UXSA6OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JyxcbiAgfSxcbiAgRU5PVERJUjoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU5PVERJUl0gOjogTm90IGEgZGlyZWN0b3J5JyxcbiAgfSxcbiAgRU5PVEVNUFRZOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFTk9URU1QVFldIDo6IERpcmVjdG9yeSBub3QgZW1wdHkpJyxcbiAgfSxcbiAgRU5PVEZPVU5EOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFTk9URk9VTkRdIDo6IEROUyBsb29rdXAgZmFpbGVkJyxcbiAgfSxcbiAgRVBFUk06IHtcbiAgICBzdGF0dXM6IDQwMCxcbiAgICBtZXNzYWdlOiAnW0VQRVJNXSA6OiBPcGVyYXRpb24gbm90IHBlcm1pdHRlZCcsXG4gIH0sXG4gIEVQSVBFOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFUElQRV0gOjogQnJva2VuIHBpcGUnLFxuICB9LFxuICBFVElNRURPVVQ6IHtcbiAgICBzdGF0dXM6IDUwMCxcbiAgICBtZXNzYWdlOiAnW0VUSU1FRE9VVF0gOjogT3BlcmF0aW9uIHRpbWVkIG91dCcsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgR0VORVJJQ19NQVBQSU5HX0NPTkZJRyA9IHtcbiAgYWRkcmVzczogWyd0cmFpdHMuYWRkcmVzcycsICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzJ10sXG4gIGNyZWF0ZWRBdDogWyd0cmFpdHMuY3JlYXRlZEF0JywgJ2NvbnRleHQudHJhaXRzLmNyZWF0ZWRBdCcsICd0aW1lc3RhbXAnLCAnb3JpZ2luYWxUaW1lc3RhbXAnXSxcbiAgY3JlYXRlZEF0T25seTogWyd0cmFpdHMuY3JlYXRlZEF0JywgJ2NvbnRleHQudHJhaXRzLmNyZWF0ZWRBdCddLFxuICBlbWFpbDogWyd0cmFpdHMuZW1haWwnLCAnY29udGV4dC50cmFpdHMuZW1haWwnLCAncHJvcGVydGllcy5lbWFpbCcsICdjb250ZXh0LmV4dGVybmFsSWQuMC5pZCddLFxuICBlbWFpbE9ubHk6IFsndHJhaXRzLmVtYWlsJywgJ2NvbnRleHQudHJhaXRzLmVtYWlsJywgJ3Byb3BlcnRpZXMuZW1haWwnXSxcbiAgdGltZXN0YW1wOiBbJ3RpbWVzdGFtcCcsICdvcmlnaW5hbFRpbWVzdGFtcCddLFxuICBoaXN0b3JpY2FsVGltZXN0YW1wOiBbJ3RpbWVzdGFtcCcsICdvcmlnaW5hbFRpbWVzdGFtcCddLFxuICB0cmFpdHM6IFsndHJhaXRzJywgJ2NvbnRleHQudHJhaXRzJ10sXG4gIGdyb3VwSWQ6IFsnZ3JvdXBJZCcsICd0cmFpdHMuZ3JvdXBJZCddLFxuICBncm91cFRyYWl0czogWyd0cmFpdHMnLCAnY29udGV4dC50cmFpdHMnXSxcbiAgdXNlcklkOiBbXG4gICAgJ3VzZXJJZCcsXG4gICAgJ3RyYWl0cy51c2VySWQnLFxuICAgICd0cmFpdHMuaWQnLFxuICAgICdjb250ZXh0LnRyYWl0cy51c2VySWQnLFxuICAgICdjb250ZXh0LnRyYWl0cy5pZCcsXG4gICAgJ2Fub255bW91c0lkJyxcbiAgXSxcbiAgdXNlcklkT25seTogW1xuICAgICd1c2VySWQnLFxuICAgICd0cmFpdHMudXNlcklkJyxcbiAgICAndHJhaXRzLmlkJyxcbiAgICAnY29udGV4dC50cmFpdHMudXNlcklkJyxcbiAgICAnY29udGV4dC50cmFpdHMuaWQnLFxuICBdLFxuICBuYW1lOiBbJ3RyYWl0cy5uYW1lJywgJ2NvbnRleHQudHJhaXRzLm5hbWUnXSxcbiAgdGl0bGU6IFsndHJhaXRzLnRpdGxlJywgJ2NvbnRleHQudHJhaXRzLnRpdGxlJ10sXG4gIGZpcnN0TmFtZTogW1xuICAgICd0cmFpdHMuZmlyc3ROYW1lJyxcbiAgICAndHJhaXRzLmZpcnN0bmFtZScsXG4gICAgJ3RyYWl0cy5maXJzdF9uYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3ROYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3RuYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3RfbmFtZScsXG4gIF0sXG4gIGxhc3ROYW1lOiBbXG4gICAgJ3RyYWl0cy5sYXN0TmFtZScsXG4gICAgJ3RyYWl0cy5sYXN0bmFtZScsXG4gICAgJ3RyYWl0cy5sYXN0X25hbWUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5sYXN0TmFtZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLmxhc3RuYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMubGFzdF9uYW1lJyxcbiAgXSxcbiAgbWlkZGxlTmFtZTogW1xuICAgICd0cmFpdHMubWlkZGxlTmFtZScsXG4gICAgJ3RyYWl0cy5taWRkbGVOYW1lJyxcbiAgICAndHJhaXRzLm1pZGRsZV9uYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMubWlkZGxlTmFtZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLm1pZGRsZU5hbWUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5taWRkbGVfbmFtZScsXG4gIF0sXG4gIGdlbmRlcjogWyd0cmFpdHMuZ2VuZGVyJywgJ2NvbnRleHQudHJhaXRzLmdlbmRlciddLFxuICBwaG9uZTogWyd0cmFpdHMucGhvbmUnLCAnY29udGV4dC50cmFpdHMucGhvbmUnLCAncHJvcGVydGllcy5waG9uZSddLFxuICBwYWdlVGl0bGU6IFsnY29udGV4dC5wYWdlLnRpdGxlJywgJ3Byb3BlcnRpZXMudGl0bGUnXSxcbiAgcGFnZVVybDogWydjb250ZXh0LnBhZ2UudXJsJywgJ3Byb3BlcnRpZXMudXJsJ10sXG4gIHBhZ2VQYXRoOiBbJ2NvbnRleHQucGFnZS5wYXRoJywgJ3Byb3BlcnRpZXMucGF0aCddLFxuICB3ZWJzaXRlOiBbJ3RyYWl0cy53ZWJzaXRlJywgJ2NvbnRleHQudHJhaXRzLndlYnNpdGUnLCAncHJvcGVydGllcy53ZWJzaXRlJ10sXG4gIEdBcGFnZVVybDogWydwcm9wZXJ0aWVzLnVybCcsICdjb250ZXh0LnBhZ2UudXJsJ10sXG4gIEdBcGFnZVJlZjogWydwcm9wZXJ0aWVzLnJlZmVycmVyJywgJ2NvbnRleHQucGFnZS5yZWZlcnJlciddLFxuICBHQXBhZ2VUaXRsZTogWydwcm9wZXJ0aWVzLnRpdGxlJywgJ2NvbnRleHQucGFnZS50aXRsZSddLFxuICBHQXBhZ2VTZWFyY2g6IFsncHJvcGVydGllcy5zZWFyY2gnLCAnY29udGV4dC5wYWdlLnNlYXJjaCddLFxuICBiaXJ0aGRheTogW1xuICAgICd0cmFpdHMuYmlydGhkYXknLFxuICAgICdjb250ZXh0LnRyYWl0cy5iaXJ0aGRheScsXG4gICAgJ3RyYWl0cy5kYXRlT2ZCaXJ0aCcsXG4gICAgJ2NvbnRleHQudHJhaXRzLmRhdGVPZkJpcnRoJyxcbiAgICAndHJhaXRzLmRhdGVvZmJpcnRoJyxcbiAgICAnY29udGV4dC5kYXRlb2ZiaXJ0aCcsXG4gICAgJ3RyYWl0cy5kb2InLFxuICAgICdjb250ZXh0LnRyYWl0cy5kb2InLFxuICAgICd0cmFpdHMuRE9CJyxcbiAgICAnY29udGV4dC50cmFpdHMuRE9CJyxcbiAgXSxcblxuICBzdGF0ZTogWyd0cmFpdHMuc3RhdGUnLCAnY29udGV4dC50cmFpdHMuc3RhdGUnXSxcbiAgY291bnRyeTogWyd0cmFpdHMuY291bnRyeScsICdjb250ZXh0LnRyYWl0cy5jb3VudHJ5J10sXG4gIHJlZ2lvbjogWyd0cmFpdHMucmVnaW9uJywgJ2NvbnRleHQudHJhaXRzLnJlZ2lvbiddLFxuICBjaXR5OiBbJ3RyYWl0cy5hZGRyZXNzLmNpdHknLCAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5jaXR5J10sXG5cbiAgYXZhdGFyOiBbXG4gICAgJ3RyYWl0cy5hdmF0YXInLFxuICAgICdjb250ZXh0LnRyYWl0cy5hdmF0YXInLFxuICAgICd0cmFpdHMuYXZhdGFyVVJMJyxcbiAgICAnY29udGV4dC50cmFpdHMuYXZhdGFyVVJMJyxcbiAgICAndHJhaXRzLmF2YXRhcl9VUkwnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hdmF0YXJfVVJMJyxcbiAgXSxcbiAgemlwY29kZTogW1xuICAgICd0cmFpdHMuemlwJyxcbiAgICAndHJhaXRzLnppcGNvZGUnLFxuICAgICd0cmFpdHMuemlwX2NvZGUnLFxuICAgICd0cmFpdHMuemlwQ29kZScsXG4gICAgJ3RyYWl0cy5wb3N0YWxjb2RlJyxcbiAgICAndHJhaXRzLnBvc3RhbF9jb2RlJyxcbiAgICAndHJhaXRzLnBvc3RhbENvZGUnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXBjb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MuemlwX2NvZGUnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXAnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXBDb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MucG9zdGFsY29kZScsXG4gICAgJ3RyYWl0cy5hZGRyZXNzLnBvc3RhbF9jb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MucG9zdGFsQ29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcCcsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcGNvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy56aXBfY29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcENvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5wb3N0YWxjb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMucG9zdGFsX2NvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5wb3N0YWxDb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy56aXAnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzLnppcGNvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzLnppcF9jb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy56aXBDb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5wb3N0YWxjb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5wb3N0YWxfY29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLmFkZHJlc3MucG9zdGFsQ29kZScsXG4gIF0sXG4gIHNlc3Npb25JZDogWydzZXNzaW9uX2lkJywgJ2NvbnRleHQuc2Vzc2lvbklkJ10sXG59O1xuXG5leHBvcnQgY29uc3QgTWFwcGVkVG9EZXN0aW5hdGlvbktleSA9ICdjb250ZXh0Lm1hcHBlZFRvRGVzdGluYXRpb24nO1xuXG5leHBvcnQgY29uc3QgR0VORVJJQ19UUlVFX1ZBTFVFUyA9IFsndHJ1ZScsICdUcnVlJywgJ1RSVUUnLCAndCcsICdUJywgJzEnXTtcbmV4cG9ydCBjb25zdCBHRU5FUklDX0ZBTFNFX1ZBTFVFUyA9IFsnZmFsc2UnLCAnRmFsc2UnLCAnRkFMU0UnLCAnZicsICdGJywgJzAnXTtcbmV4cG9ydCBjb25zdCBMT0dMRVZFTFM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7XG4gIGRlYnVnOiAzLCAvLyBNb3N0IHZlcmJvc2UgbG9nZ2luZyBsZXZlbFxuICBpbmZvOiAyLCAvLyBMb2dzIGFib3V0IHN0YXRlIG9mIHRoZSBhcHBsaWNhdGlvblxuICB3YXJuOiAxLCAvLyBMb2dzIGFib3V0IHdhcm5pbmdzIHdoaWNoIGRvbnQgaW1tZWRpYXRlbHkgaGFsdCB0aGUgYXBwbGljYXRpb25cbiAgZXJyb3I6IDAsIC8vIExvZ3MgYWJvdXQgZXJyb3JzIHdoaWNoIGRvbnQgaW1tZWRpYXRlbHkgaGFsdCB0aGUgYXBwbGljYXRpb25cbn07XG4iXX0=
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBYSxRQUFBLHNCQUFzQixHQUF3RDtJQUN6RixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwrQkFBK0I7S0FDekM7SUFDRCxVQUFVLEVBQUU7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx3Q0FBd0M7S0FDbEQ7SUFDRCxZQUFZLEVBQUU7UUFDWixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxzQ0FBc0M7S0FDaEQ7SUFDRCxVQUFVLEVBQUU7UUFDVixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwwQ0FBMEM7S0FDcEQ7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx5QkFBeUI7S0FDbkM7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSw0QkFBNEI7S0FDdEM7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx1Q0FBdUM7S0FDakQ7SUFDRCxPQUFPLEVBQUU7UUFDUCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSw4QkFBOEI7S0FDeEM7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxxQ0FBcUM7S0FDL0M7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxrQ0FBa0M7S0FDNUM7SUFDRCxLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxvQ0FBb0M7S0FDOUM7SUFDRCxLQUFLLEVBQUU7UUFDTCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSx3QkFBd0I7S0FDbEM7SUFDRCxTQUFTLEVBQUU7UUFDVCxNQUFNLEVBQUUsR0FBRztRQUNYLE9BQU8sRUFBRSxvQ0FBb0M7S0FDOUM7Q0FDRixDQUFDO0FBRVcsUUFBQSxzQkFBc0IsR0FBRztJQUNwQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQztJQUNyRCxTQUFTLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSwwQkFBMEIsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLENBQUM7SUFDN0YsYUFBYSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsMEJBQTBCLENBQUM7SUFDL0QsS0FBSyxFQUFFLENBQUMsY0FBYyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixDQUFDO0lBQzlGLFNBQVMsRUFBRSxDQUFDLGNBQWMsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsQ0FBQztJQUN2RSxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUM7SUFDN0MsbUJBQW1CLEVBQUUsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLENBQUM7SUFDdkQsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDO0lBQ3BDLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQztJQUN0QyxXQUFXLEVBQUUsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUM7SUFDekMsTUFBTSxFQUFFO1FBQ04sUUFBUTtRQUNSLGVBQWU7UUFDZixXQUFXO1FBQ1gsdUJBQXVCO1FBQ3ZCLG1CQUFtQjtRQUNuQixhQUFhO0tBQ2Q7SUFDRCxVQUFVLEVBQUU7UUFDVixRQUFRO1FBQ1IsZUFBZTtRQUNmLFdBQVc7UUFDWCx1QkFBdUI7UUFDdkIsbUJBQW1CO0tBQ3BCO0lBQ0QsSUFBSSxFQUFFLENBQUMsYUFBYSxFQUFFLHFCQUFxQixDQUFDO0lBQzVDLEtBQUssRUFBRSxDQUFDLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQztJQUMvQyxTQUFTLEVBQUU7UUFDVCxrQkFBa0I7UUFDbEIsa0JBQWtCO1FBQ2xCLG1CQUFtQjtRQUNuQiwwQkFBMEI7UUFDMUIsMEJBQTBCO1FBQzFCLDJCQUEyQjtLQUM1QjtJQUNELFFBQVEsRUFBRTtRQUNSLGlCQUFpQjtRQUNqQixpQkFBaUI7UUFDakIsa0JBQWtCO1FBQ2xCLHlCQUF5QjtRQUN6Qix5QkFBeUI7UUFDekIsMEJBQTBCO0tBQzNCO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsbUJBQW1CO1FBQ25CLG1CQUFtQjtRQUNuQixvQkFBb0I7UUFDcEIsMkJBQTJCO1FBQzNCLDJCQUEyQjtRQUMzQiw0QkFBNEI7S0FDN0I7SUFDRCxNQUFNLEVBQUUsQ0FBQyxlQUFlLEVBQUUsdUJBQXVCLENBQUM7SUFDbEQsS0FBSyxFQUFFLENBQUMsY0FBYyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDO0lBQ25FLFNBQVMsRUFBRSxDQUFDLG9CQUFvQixFQUFFLGtCQUFrQixDQUFDO0lBQ3JELE9BQU8sRUFBRSxDQUFDLGtCQUFrQixFQUFFLGdCQUFnQixDQUFDO0lBQy9DLFFBQVEsRUFBRSxDQUFDLG1CQUFtQixFQUFFLGlCQUFpQixDQUFDO0lBQ2xELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLHdCQUF3QixFQUFFLG9CQUFvQixDQUFDO0lBQzNFLFNBQVMsRUFBRSxDQUFDLGdCQUFnQixFQUFFLGtCQUFrQixDQUFDO0lBQ2pELFNBQVMsRUFBRSxDQUFDLHFCQUFxQixFQUFFLHVCQUF1QixDQUFDO0lBQzNELFdBQVcsRUFBRSxDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDO0lBQ3ZELFlBQVksRUFBRSxDQUFDLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDO0lBQzFELFFBQVEsRUFBRTtRQUNSLGlCQUFpQjtRQUNqQix5QkFBeUI7UUFDekIsb0JBQW9CO1FBQ3BCLDRCQUE0QjtRQUM1QixvQkFBb0I7UUFDcEIscUJBQXFCO1FBQ3JCLFlBQVk7UUFDWixvQkFBb0I7UUFDcEIsWUFBWTtRQUNaLG9CQUFvQjtLQUNyQjtJQUVELEtBQUssRUFBRSxDQUFDLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQztJQUMvQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQztJQUNyRCxNQUFNLEVBQUUsQ0FBQyxlQUFlLEVBQUUsdUJBQXVCLENBQUM7SUFDbEQsSUFBSSxFQUFFLENBQUMscUJBQXFCLEVBQUUsNkJBQTZCLENBQUM7SUFFNUQsTUFBTSxFQUFFO1FBQ04sZUFBZTtRQUNmLHVCQUF1QjtRQUN2QixrQkFBa0I7UUFDbEIsMEJBQTBCO1FBQzFCLG1CQUFtQjtRQUNuQiwyQkFBMkI7S0FDNUI7SUFDRCxPQUFPLEVBQUU7UUFDUCxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixnQkFBZ0I7UUFDaEIsbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixtQkFBbUI7UUFDbkIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6QixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsMkJBQTJCO1FBQzNCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLHdCQUF3QjtRQUN4QiwyQkFBMkI7UUFDM0IsNEJBQTRCO1FBQzVCLDJCQUEyQjtRQUMzQiw0QkFBNEI7UUFDNUIsZ0NBQWdDO1FBQ2hDLGlDQUFpQztRQUNqQyxnQ0FBZ0M7UUFDaEMsbUNBQW1DO1FBQ25DLG9DQUFvQztRQUNwQyxtQ0FBbUM7S0FDcEM7SUFDRCxTQUFTLEVBQUUsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUM7Q0FDL0MsQ0FBQztBQUVXLFFBQUEsc0JBQXNCLEdBQUcsNkJBQTZCLENBQUM7QUFFdkQsUUFBQSxtQkFBbUIsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDOUQsUUFBQSxvQkFBb0IsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDbEUsUUFBQSxTQUFTLEdBQTJCO0lBQy9DLEtBQUssRUFBRSxDQUFDLEVBQUUsNkJBQTZCO0lBQ3ZDLElBQUksRUFBRSxDQUFDLEVBQUUsc0NBQXNDO0lBQy9DLElBQUksRUFBRSxDQUFDLEVBQUUsa0VBQWtFO0lBQzNFLEtBQUssRUFBRSxDQUFDLEVBQUUsZ0VBQWdFO0lBQzFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxhQUFhO0NBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTkVUV09SS19TVEFUVVNfRVJSX01BUDogUmVjb3JkPHN0cmluZywgeyBzdGF0dXM6IG51bWJlcjsgbWVzc2FnZTogc3RyaW5nIH0+ID0ge1xuICBFQUNDRVM6IHtcbiAgICBzdGF0dXM6IDQwMCxcbiAgICBtZXNzYWdlOiAnW0VBQ0NFU10gOjogUGVybWlzc2lvbiBkZW5pZWQnLFxuICB9LFxuICBFQUREUklOVVNFOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFQUREUklOVVNFXSA6OiBBZGRyZXNzIGFscmVhZHkgaW4gdXNlJyxcbiAgfSxcbiAgRUNPTk5SRUZVU0VEOiB7XG4gICAgc3RhdHVzOiA1MDAsXG4gICAgbWVzc2FnZTogJ1tFQ09OTlJFRlVTRURdIDo6IENvbm5lY3Rpb24gcmVmdXNlZCcsXG4gIH0sXG4gIEVDT05OUkVTRVQ6IHtcbiAgICBzdGF0dXM6IDUwMCxcbiAgICBtZXNzYWdlOiAnW0VDT05OUkVTRVRdIDo6IENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcicsXG4gIH0sXG4gIEVFWElTVDoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRUVYSVNUXSA6OiBGaWxlIGV4aXN0cycsXG4gIH0sXG4gIEVJU0RJUjoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRUVYSVNUXSA6OiBJcyBhIGRpcmVjdG9yeScsXG4gIH0sXG4gIEVNRklMRToge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU1GSUxFXSA6OiBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbScsXG4gIH0sXG4gIEVOT0VOVDoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU5PRU5UXSA6OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JyxcbiAgfSxcbiAgRU5PVERJUjoge1xuICAgIHN0YXR1czogNDAwLFxuICAgIG1lc3NhZ2U6ICdbRU5PVERJUl0gOjogTm90IGEgZGlyZWN0b3J5JyxcbiAgfSxcbiAgRU5PVEVNUFRZOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFTk9URU1QVFldIDo6IERpcmVjdG9yeSBub3QgZW1wdHkpJyxcbiAgfSxcbiAgRU5PVEZPVU5EOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFTk9URk9VTkRdIDo6IEROUyBsb29rdXAgZmFpbGVkJyxcbiAgfSxcbiAgRVBFUk06IHtcbiAgICBzdGF0dXM6IDQwMCxcbiAgICBtZXNzYWdlOiAnW0VQRVJNXSA6OiBPcGVyYXRpb24gbm90IHBlcm1pdHRlZCcsXG4gIH0sXG4gIEVQSVBFOiB7XG4gICAgc3RhdHVzOiA0MDAsXG4gICAgbWVzc2FnZTogJ1tFUElQRV0gOjogQnJva2VuIHBpcGUnLFxuICB9LFxuICBFVElNRURPVVQ6IHtcbiAgICBzdGF0dXM6IDUwMCxcbiAgICBtZXNzYWdlOiAnW0VUSU1FRE9VVF0gOjogT3BlcmF0aW9uIHRpbWVkIG91dCcsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgR0VORVJJQ19NQVBQSU5HX0NPTkZJRyA9IHtcbiAgYWRkcmVzczogWyd0cmFpdHMuYWRkcmVzcycsICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzJ10sXG4gIGNyZWF0ZWRBdDogWyd0cmFpdHMuY3JlYXRlZEF0JywgJ2NvbnRleHQudHJhaXRzLmNyZWF0ZWRBdCcsICd0aW1lc3RhbXAnLCAnb3JpZ2luYWxUaW1lc3RhbXAnXSxcbiAgY3JlYXRlZEF0T25seTogWyd0cmFpdHMuY3JlYXRlZEF0JywgJ2NvbnRleHQudHJhaXRzLmNyZWF0ZWRBdCddLFxuICBlbWFpbDogWyd0cmFpdHMuZW1haWwnLCAnY29udGV4dC50cmFpdHMuZW1haWwnLCAncHJvcGVydGllcy5lbWFpbCcsICdjb250ZXh0LmV4dGVybmFsSWQuMC5pZCddLFxuICBlbWFpbE9ubHk6IFsndHJhaXRzLmVtYWlsJywgJ2NvbnRleHQudHJhaXRzLmVtYWlsJywgJ3Byb3BlcnRpZXMuZW1haWwnXSxcbiAgdGltZXN0YW1wOiBbJ3RpbWVzdGFtcCcsICdvcmlnaW5hbFRpbWVzdGFtcCddLFxuICBoaXN0b3JpY2FsVGltZXN0YW1wOiBbJ3RpbWVzdGFtcCcsICdvcmlnaW5hbFRpbWVzdGFtcCddLFxuICB0cmFpdHM6IFsndHJhaXRzJywgJ2NvbnRleHQudHJhaXRzJ10sXG4gIGdyb3VwSWQ6IFsnZ3JvdXBJZCcsICd0cmFpdHMuZ3JvdXBJZCddLFxuICBncm91cFRyYWl0czogWyd0cmFpdHMnLCAnY29udGV4dC50cmFpdHMnXSxcbiAgdXNlcklkOiBbXG4gICAgJ3VzZXJJZCcsXG4gICAgJ3RyYWl0cy51c2VySWQnLFxuICAgICd0cmFpdHMuaWQnLFxuICAgICdjb250ZXh0LnRyYWl0cy51c2VySWQnLFxuICAgICdjb250ZXh0LnRyYWl0cy5pZCcsXG4gICAgJ2Fub255bW91c0lkJyxcbiAgXSxcbiAgdXNlcklkT25seTogW1xuICAgICd1c2VySWQnLFxuICAgICd0cmFpdHMudXNlcklkJyxcbiAgICAndHJhaXRzLmlkJyxcbiAgICAnY29udGV4dC50cmFpdHMudXNlcklkJyxcbiAgICAnY29udGV4dC50cmFpdHMuaWQnLFxuICBdLFxuICBuYW1lOiBbJ3RyYWl0cy5uYW1lJywgJ2NvbnRleHQudHJhaXRzLm5hbWUnXSxcbiAgdGl0bGU6IFsndHJhaXRzLnRpdGxlJywgJ2NvbnRleHQudHJhaXRzLnRpdGxlJ10sXG4gIGZpcnN0TmFtZTogW1xuICAgICd0cmFpdHMuZmlyc3ROYW1lJyxcbiAgICAndHJhaXRzLmZpcnN0bmFtZScsXG4gICAgJ3RyYWl0cy5maXJzdF9uYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3ROYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3RuYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMuZmlyc3RfbmFtZScsXG4gIF0sXG4gIGxhc3ROYW1lOiBbXG4gICAgJ3RyYWl0cy5sYXN0TmFtZScsXG4gICAgJ3RyYWl0cy5sYXN0bmFtZScsXG4gICAgJ3RyYWl0cy5sYXN0X25hbWUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5sYXN0TmFtZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLmxhc3RuYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMubGFzdF9uYW1lJyxcbiAgXSxcbiAgbWlkZGxlTmFtZTogW1xuICAgICd0cmFpdHMubWlkZGxlTmFtZScsXG4gICAgJ3RyYWl0cy5taWRkbGVOYW1lJyxcbiAgICAndHJhaXRzLm1pZGRsZV9uYW1lJyxcbiAgICAnY29udGV4dC50cmFpdHMubWlkZGxlTmFtZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLm1pZGRsZU5hbWUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5taWRkbGVfbmFtZScsXG4gIF0sXG4gIGdlbmRlcjogWyd0cmFpdHMuZ2VuZGVyJywgJ2NvbnRleHQudHJhaXRzLmdlbmRlciddLFxuICBwaG9uZTogWyd0cmFpdHMucGhvbmUnLCAnY29udGV4dC50cmFpdHMucGhvbmUnLCAncHJvcGVydGllcy5waG9uZSddLFxuICBwYWdlVGl0bGU6IFsnY29udGV4dC5wYWdlLnRpdGxlJywgJ3Byb3BlcnRpZXMudGl0bGUnXSxcbiAgcGFnZVVybDogWydjb250ZXh0LnBhZ2UudXJsJywgJ3Byb3BlcnRpZXMudXJsJ10sXG4gIHBhZ2VQYXRoOiBbJ2NvbnRleHQucGFnZS5wYXRoJywgJ3Byb3BlcnRpZXMucGF0aCddLFxuICB3ZWJzaXRlOiBbJ3RyYWl0cy53ZWJzaXRlJywgJ2NvbnRleHQudHJhaXRzLndlYnNpdGUnLCAncHJvcGVydGllcy53ZWJzaXRlJ10sXG4gIEdBcGFnZVVybDogWydwcm9wZXJ0aWVzLnVybCcsICdjb250ZXh0LnBhZ2UudXJsJ10sXG4gIEdBcGFnZVJlZjogWydwcm9wZXJ0aWVzLnJlZmVycmVyJywgJ2NvbnRleHQucGFnZS5yZWZlcnJlciddLFxuICBHQXBhZ2VUaXRsZTogWydwcm9wZXJ0aWVzLnRpdGxlJywgJ2NvbnRleHQucGFnZS50aXRsZSddLFxuICBHQXBhZ2VTZWFyY2g6IFsncHJvcGVydGllcy5zZWFyY2gnLCAnY29udGV4dC5wYWdlLnNlYXJjaCddLFxuICBiaXJ0aGRheTogW1xuICAgICd0cmFpdHMuYmlydGhkYXknLFxuICAgICdjb250ZXh0LnRyYWl0cy5iaXJ0aGRheScsXG4gICAgJ3RyYWl0cy5kYXRlT2ZCaXJ0aCcsXG4gICAgJ2NvbnRleHQudHJhaXRzLmRhdGVPZkJpcnRoJyxcbiAgICAndHJhaXRzLmRhdGVvZmJpcnRoJyxcbiAgICAnY29udGV4dC5kYXRlb2ZiaXJ0aCcsXG4gICAgJ3RyYWl0cy5kb2InLFxuICAgICdjb250ZXh0LnRyYWl0cy5kb2InLFxuICAgICd0cmFpdHMuRE9CJyxcbiAgICAnY29udGV4dC50cmFpdHMuRE9CJyxcbiAgXSxcblxuICBzdGF0ZTogWyd0cmFpdHMuc3RhdGUnLCAnY29udGV4dC50cmFpdHMuc3RhdGUnXSxcbiAgY291bnRyeTogWyd0cmFpdHMuY291bnRyeScsICdjb250ZXh0LnRyYWl0cy5jb3VudHJ5J10sXG4gIHJlZ2lvbjogWyd0cmFpdHMucmVnaW9uJywgJ2NvbnRleHQudHJhaXRzLnJlZ2lvbiddLFxuICBjaXR5OiBbJ3RyYWl0cy5hZGRyZXNzLmNpdHknLCAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5jaXR5J10sXG5cbiAgYXZhdGFyOiBbXG4gICAgJ3RyYWl0cy5hdmF0YXInLFxuICAgICdjb250ZXh0LnRyYWl0cy5hdmF0YXInLFxuICAgICd0cmFpdHMuYXZhdGFyVVJMJyxcbiAgICAnY29udGV4dC50cmFpdHMuYXZhdGFyVVJMJyxcbiAgICAndHJhaXRzLmF2YXRhcl9VUkwnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hdmF0YXJfVVJMJyxcbiAgXSxcbiAgemlwY29kZTogW1xuICAgICd0cmFpdHMuemlwJyxcbiAgICAndHJhaXRzLnppcGNvZGUnLFxuICAgICd0cmFpdHMuemlwX2NvZGUnLFxuICAgICd0cmFpdHMuemlwQ29kZScsXG4gICAgJ3RyYWl0cy5wb3N0YWxjb2RlJyxcbiAgICAndHJhaXRzLnBvc3RhbF9jb2RlJyxcbiAgICAndHJhaXRzLnBvc3RhbENvZGUnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXBjb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MuemlwX2NvZGUnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXAnLFxuICAgICd0cmFpdHMuYWRkcmVzcy56aXBDb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MucG9zdGFsY29kZScsXG4gICAgJ3RyYWl0cy5hZGRyZXNzLnBvc3RhbF9jb2RlJyxcbiAgICAndHJhaXRzLmFkZHJlc3MucG9zdGFsQ29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcCcsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcGNvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy56aXBfY29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLnppcENvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5wb3N0YWxjb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMucG9zdGFsX2NvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5wb3N0YWxDb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy56aXAnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzLnppcGNvZGUnLFxuICAgICdjb250ZXh0LnRyYWl0cy5hZGRyZXNzLnppcF9jb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy56aXBDb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5wb3N0YWxjb2RlJyxcbiAgICAnY29udGV4dC50cmFpdHMuYWRkcmVzcy5wb3N0YWxfY29kZScsXG4gICAgJ2NvbnRleHQudHJhaXRzLmFkZHJlc3MucG9zdGFsQ29kZScsXG4gIF0sXG4gIHNlc3Npb25JZDogWydzZXNzaW9uX2lkJywgJ2NvbnRleHQuc2Vzc2lvbklkJ10sXG59O1xuXG5leHBvcnQgY29uc3QgTWFwcGVkVG9EZXN0aW5hdGlvbktleSA9ICdjb250ZXh0Lm1hcHBlZFRvRGVzdGluYXRpb24nO1xuXG5leHBvcnQgY29uc3QgR0VORVJJQ19UUlVFX1ZBTFVFUyA9IFsndHJ1ZScsICdUcnVlJywgJ1RSVUUnLCAndCcsICdUJywgJzEnXTtcbmV4cG9ydCBjb25zdCBHRU5FUklDX0ZBTFNFX1ZBTFVFUyA9IFsnZmFsc2UnLCAnRmFsc2UnLCAnRkFMU0UnLCAnZicsICdGJywgJzAnXTtcbmV4cG9ydCBjb25zdCBMT0dMRVZFTFM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7XG4gIGRlYnVnOiAzLCAvLyBNb3N0IHZlcmJvc2UgbG9nZ2luZyBsZXZlbFxuICBpbmZvOiAyLCAvLyBMb2dzIGFib3V0IHN0YXRlIG9mIHRoZSBhcHBsaWNhdGlvblxuICB3YXJuOiAxLCAvLyBMb2dzIGFib3V0IHdhcm5pbmdzIHdoaWNoIGRvbnQgaW1tZWRpYXRlbHkgaGFsdCB0aGUgYXBwbGljYXRpb25cbiAgZXJyb3I6IDAsIC8vIExvZ3MgYWJvdXQgZXJyb3JzIHdoaWNoIGRvbnQgaW1tZWRpYXRlbHkgaGFsdCB0aGUgYXBwbGljYXRpb25cbiAgbm9uZTogLTEsIC8vIE5vIGxvZ2dpbmdcbn07XG4iXX0=
|
package/build/logger.js
CHANGED
|
@@ -16,27 +16,27 @@ const setLogLevel = (level) => {
|
|
|
16
16
|
};
|
|
17
17
|
exports.setLogLevel = setLogLevel;
|
|
18
18
|
const debug = (...args) => {
|
|
19
|
-
if (constants_1.LOGLEVELS
|
|
19
|
+
if (constants_1.LOGLEVELS[logLevel] >= constants_1.LOGLEVELS.debug) {
|
|
20
20
|
console.debug(...args);
|
|
21
21
|
}
|
|
22
22
|
};
|
|
23
23
|
exports.debug = debug;
|
|
24
24
|
const info = (...args) => {
|
|
25
|
-
if (constants_1.LOGLEVELS
|
|
25
|
+
if (constants_1.LOGLEVELS[logLevel] >= constants_1.LOGLEVELS.info) {
|
|
26
26
|
console.info(...args);
|
|
27
27
|
}
|
|
28
28
|
};
|
|
29
29
|
exports.info = info;
|
|
30
30
|
const warn = (...args) => {
|
|
31
|
-
if (constants_1.LOGLEVELS
|
|
31
|
+
if (constants_1.LOGLEVELS[logLevel] >= constants_1.LOGLEVELS.warn) {
|
|
32
32
|
console.warn(...args);
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
exports.warn = warn;
|
|
36
36
|
const error = (...args) => {
|
|
37
|
-
if (constants_1.LOGLEVELS
|
|
37
|
+
if (constants_1.LOGLEVELS[logLevel] >= constants_1.LOGLEVELS.error) {
|
|
38
38
|
console.error(...args);
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
41
|
exports.error = error;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQkFBMEI7QUFDMUIsMkNBQXdDO0FBRXhDLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQztBQUV2QixNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQVcsRUFBRSxFQUFFO0lBQ2xDLElBQUkscUJBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTLElBQUkscUJBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUM1RCxPQUFPLE9BQU8sQ0FBQyxDQUFDLDJCQUEyQjtJQUM3QyxDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDLENBQUM7QUE4QjhDLGtDQUFXO0FBNUIzRCxNQUFNLFdBQVcsR0FBRyxDQUFDLEtBQWEsRUFBRSxFQUFFO0lBQ3BDLFFBQVEsR0FBRyxXQUFXLENBQUMsS0FBSyxJQUFJLFFBQVEsQ0FBQyxDQUFDO0FBQzVDLENBQUMsQ0FBQztBQTBCMkIsa0NBQVc7QUF4QnhDLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFXLEVBQUUsRUFBRTtJQUMvQixJQUFJLHFCQUFTLENBQUMsUUFBUSxDQUFDLElBQUkscUJBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztBQUNILENBQUMsQ0FBQztBQW9CTyxzQkFBSztBQWxCZCxNQUFNLElBQUksR0FBRyxDQUFDLEdBQUcsSUFBVyxFQUFFLEVBQUU7SUFDOUIsSUFBSSxxQkFBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLHFCQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3hCLENBQUM7QUFDSCxDQUFDLENBQUM7QUFjcUIsb0JBQUk7QUFaM0IsTUFBTSxJQUFJLEdBQUcsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFO0lBQzlCLElBQUkscUJBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxxQkFBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBUXdDLG9CQUFJO0FBTjlDLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFXLEVBQUUsRUFBRTtJQUMvQixJQUFJLHFCQUFTLENBQUMsUUFBUSxDQUFDLElBQUkscUJBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVjLHNCQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogaXN0YW5idWwgaWdub3JlIGZpbGUgKi9cbmltcG9ydCB7IExPR0xFVkVMUyB9IGZyb20gJy4vY29uc3RhbnRzJztcblxubGV0IGxvZ0xldmVsID0gJ2Vycm9yJztcblxuY29uc3QgZ2V0TG9nTGV2ZWwgPSAobHZsOiBzdHJpbmcpID0+IHtcbiAgaWYgKExPR0xFVkVMU1tsdmxdID09PSB1bmRlZmluZWQgfHwgTE9HTEVWRUxTW2x2bF0gPT09IG51bGwpIHtcbiAgICByZXR1cm4gJ2Vycm9yJzsgLy8gd2hlbiBsb2dsZXZlbCBpcyBpbnZhbGlkXG4gIH1cbiAgcmV0dXJuIGx2bDtcbn07XG5cbmNvbnN0IHNldExvZ0xldmVsID0gKGxldmVsOiBzdHJpbmcpID0+IHtcbiAgbG9nTGV2ZWwgPSBnZXRMb2dMZXZlbChsZXZlbCB8fCBsb2dMZXZlbCk7XG59O1xuXG5jb25zdCBkZWJ1ZyA9ICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICBpZiAoTE9HTEVWRUxTW2xvZ0xldmVsXSA+PSBMT0dMRVZFTFMuZGVidWcpIHtcbiAgICBjb25zb2xlLmRlYnVnKC4uLmFyZ3MpO1xuICB9XG59O1xuXG5jb25zdCBpbmZvID0gKC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gIGlmIChMT0dMRVZFTFNbbG9nTGV2ZWxdID49IExPR0xFVkVMUy5pbmZvKSB7XG4gICAgY29uc29sZS5pbmZvKC4uLmFyZ3MpO1xuICB9XG59O1xuXG5jb25zdCB3YXJuID0gKC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gIGlmIChMT0dMRVZFTFNbbG9nTGV2ZWxdID49IExPR0xFVkVMUy53YXJuKSB7XG4gICAgY29uc29sZS53YXJuKC4uLmFyZ3MpO1xuICB9XG59O1xuXG5jb25zdCBlcnJvciA9ICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICBpZiAoTE9HTEVWRUxTW2xvZ0xldmVsXSA+PSBMT0dMRVZFTFMuZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKC4uLmFyZ3MpO1xuICB9XG59O1xuXG5leHBvcnQgeyBkZWJ1ZywgZXJyb3IsIGluZm8sIHNldExvZ0xldmVsLCB3YXJuLCBnZXRMb2dMZXZlbCB9O1xuIl19
|