@datagrok-libraries/utils 3.3.1 → 3.3.2
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/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computation-view.d.ts","sourceRoot":"","sources":["computation-view.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAG7C;;;;;;;;;;;;;;KAcK;AACL,8BAAsB,eAAgB,SAAQ,YAAY;IAQ/C,OAAO,EAAE;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAA;KACzB;IAXH;;;;OAIG;gBAED,QAAQ,EAAE,MAAM,EACT,OAAO,GAAE;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAA;KACiB;IAoB7C;;MAEE;IACF,QAAQ,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,YAAY,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,OAAO,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE7C;;MAEE;IACF,SAAS,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE/C;;MAEE;IACF,cAAc,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAEpD;;;MAGE;IACF,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"computation-view.d.ts","sourceRoot":"","sources":["computation-view.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAG7C;;;;;;;;;;;;;;KAcK;AACL,8BAAsB,eAAgB,SAAQ,YAAY;IAQ/C,OAAO,EAAE;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAA;KACzB;IAXH;;;;OAIG;gBAED,QAAQ,EAAE,MAAM,EACT,OAAO,GAAE;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAA;KACiB;IAoB7C;;MAEE;IACF,QAAQ,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,YAAY,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,OAAO,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE7C;;MAEE;IACF,SAAS,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE/C;;MAEE;IACF,cAAc,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAEpD;;;MAGE;IACF,QAAQ,EAAE,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAGtC;IAEF;;;;;MAKE;IACO,eAAe;IA4DxB;;;MAGE;YACY,cAAc;CAW7B"}
|
package/src/computation-view.js
CHANGED
|
@@ -63,9 +63,8 @@ export class ComputationView extends FunctionView {
|
|
|
63
63
|
* @stability Stable
|
|
64
64
|
*/
|
|
65
65
|
this.getAbout = () => __awaiter(this, void 0, void 0, function* () {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
return pack ? `${pack.friendlyName} v.${pack.version}.\nLast updated on ${dayjs(pack.updatedOn).format('YYYY MMM D, HH:mm')}` : `No package info was found`;
|
|
66
|
+
const pack = yield grok.dapi.packages.find(this.parentCall.func.package.id);
|
|
67
|
+
return pack ? `${pack.friendlyName}.\nLast updated on ${dayjs(pack.updatedOn).format('YYYY MMM D, HH:mm')}` : `No package info was found`;
|
|
69
68
|
});
|
|
70
69
|
if (!options.parentCall)
|
|
71
70
|
options.parentCall = grok.functions.getCurrentCall();
|
|
@@ -145,8 +144,7 @@ export class ComputationView extends FunctionView {
|
|
|
145
144
|
*/
|
|
146
145
|
getPackageUrls() {
|
|
147
146
|
return __awaiter(this, void 0, void 0, function* () {
|
|
148
|
-
|
|
149
|
-
const pack = (yield grok.dapi.packages.list()).find((pack) => { var _a; return pack.id === ((_a = this.parentCall) === null || _a === void 0 ? void 0 : _a.func.package.id); });
|
|
147
|
+
const pack = yield grok.dapi.packages.find(this.parentCall.func.package.id);
|
|
150
148
|
const reportBugUrl = (yield (pack === null || pack === void 0 ? void 0 : pack.getProperties())).REPORT_BUG_URL;
|
|
151
149
|
if (reportBugUrl && !this.reportBug)
|
|
152
150
|
this.reportBug = () => __awaiter(this, void 0, void 0, function* () { window.open(reportBugUrl, '_blank'); });
|
|
@@ -156,4 +154,4 @@ export class ComputationView extends FunctionView {
|
|
|
156
154
|
});
|
|
157
155
|
}
|
|
158
156
|
}
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0YXRpb24tdmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbXB1dGF0aW9uLXZpZXcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLDRCQUE0QjtBQUM1QixPQUFPLEtBQUssSUFBSSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCOzs7Ozs7Ozs7Ozs7OztLQWNLO0FBQ0wsTUFBTSxPQUFnQixlQUFnQixTQUFRLFlBQVk7SUFDeEQ7Ozs7T0FJRztJQUNILFlBQ0UsUUFBZ0IsRUFDVCxVQUlILEVBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDO1FBRTNDLEtBQUssQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFObEIsWUFBTyxHQUFQLE9BQU8sQ0FJNkI7UUFvQjdDOztVQUVFO1FBQ0YsYUFBUSxHQUErRCxJQUFJLENBQUM7UUFFNUU7O1VBRUU7UUFDRixpQkFBWSxHQUEyRCxJQUFJLENBQUM7UUFFNUU7O1VBRUU7UUFDRixZQUFPLEdBQWlDLElBQUksQ0FBQztRQUU3Qzs7VUFFRTtRQUNGLGNBQVMsR0FBaUMsSUFBSSxDQUFDO1FBRS9DOztVQUVFO1FBQ0YsbUJBQWMsR0FBaUMsSUFBSSxDQUFDO1FBRXBEOzs7VUFHRTtRQUNGLGFBQVEsR0FBbUMsR0FBUyxFQUFFO1lBQ3BELG9FQUFvRTtZQUNwRSxNQUFNLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFB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LDBDQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFBLENBQUEsRUFBQSxDQUFDLENBQUM7WUFFNUcsTUFBTSxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUEsSUFBSSxhQUFKLElBQUksdUJBQUosSUFBSSxDQUFFLGFBQWEsRUFBRSxDQUFRLENBQUEsQ0FBQyxjQUFjLENBQUM7WUFDekUsSUFBSSxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztnQkFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFTLEVBQUUsZ0RBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQztZQUV4RSxNQUFNLGFBQWEsR0FBRyxDQUFDLE1BQU0sQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsYUFBYSxFQUFFLENBQVEsQ0FBQSxDQUFDLG1CQUFtQixDQUFDO1lBQy9FLElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7Z0JBQ3ZDLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBUyxFQUFFLGdEQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUM7UUFDaEYsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB2YWxpZC1qc2RvYyAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmltcG9ydCB7RnVuY3Rpb25WaWV3fSBmcm9tICcuL2Z1bmN0aW9uLXZpZXcnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBoYW5kbGluZyBDb21wdXRlIG1vZGVscyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhZ3Jvay1haS9wdWJsaWMvYmxvYi9tYXN0ZXIvaGVscC9jb21wdXRlL2NvbXB1dGUubWQpLlxuICogSW4gbW9zdCBjYXNlcywgdGhlIGNvbXB1dGF0aW9uIGlzIGEgc2ltcGxlIHtAbGluayBGdW5jfVxuICogRXh0ZW5kIGl0IGluIGNhc2VzIHdoZXJlIGEgYmVoYXZpb3Igb3IgVUkgbm90IHN1cHBvcnRlZCBieSB0aGUge0BsaW5rIEZ1bmN0aW9uVmlld30gaXMgbmVlZGVkLlxuICpcbiAqIEl0IHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25hbGl0eSBvdXQtb2YtdGhlLWJveCwgd2hlcmUgZWFjaCBzZWN0aW9uIGNvdWxkIGJlIGN1c3RvbWl6ZWQ6XG4gKiAtIGEgc3RydWN0dXJlZCB3YXkgdG8gcmVwcmVzZW50IGlucHV0IGFuZCBvdXRwdXQgcGFyYW1ldGVyczoge0BsaW5rIHBhcmFtZXRlcnN9XG4gKiAtIGdlbmVyaWMgd2F5IHRvIGdlbmVyYXRlIFVJIGZvciBpbnB1dHMsIG91dHB1dHMsIGFuZCBpbnRlcmFjdGl2aXR5IChydW5uaW5nIHRoZSBtb2RlbCwgZXRjKVxuICogICAtIHBlcnNpc3RpbmcgaGlzdG9yaWNhbCByZXN1bHRzIHRvIHRoZSBkYiAodmlhIHtAbGluayBwYXJhbWV0ZXJzfSlcbiAqIC0gZXhwb3J0ICh0byBFeGNlbCBhbmQgUERGKToge0BsaW5rIGV4cG9ydH1cbiAqIC0gZWFzeSBsb2FkaW5nIG9mIGhpc3RvcmljYWwgcnVuc1xuICogLSByb3V0aW5nXG4gKiAtIGVudGVyaW5nIHRoZSByZWFsLCBtZWFzdXJlZCAoYXMgb3Bwb3NlZCB0byBwcmVkaWN0ZWQpIHZhbHVlcyBtYW51YWxseVxuICogLSBub3RpZmljYXRpb25zIGZvciBjaGFuZ2luZyBpbnB1dHMsIGNvbXBsZXRpb24gb2YgY29tcHV0YXRpb25zLCBldGM6IHtAbGluayBvbklucHV0Q2hhbmdlZH1cbiAqICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29tcHV0YXRpb25WaWV3IGV4dGVuZHMgRnVuY3Rpb25WaWV3IHtcbiAgLyoqXG4gICAqIE92ZXJyaWRlZCB0bzpcbiAgICogMSkgYWRkIGdldHRpbmcgSGVscCBhbmQgUmVwb3J0QnVnIFVSTHMgZnJvbSB0aGUgcGFja2FnZS5cbiAgICogMikgY2hhbmdlIHJvdXRpbmcgbG9naWMgZm9yIG1vZGVsc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgZnVuY05hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgb3B0aW9uczoge1xuICAgICAgaGlzdG9yeUVuYWJsZWQ6IGJvb2xlYW4sXG4gICAgICBpc1RhYmJlZDogYm9vbGVhbixcbiAgICAgIHBhcmVudENhbGw/OiBERy5GdW5jQ2FsbFxuICAgIH0gPSB7aGlzdG9yeUVuYWJsZWQ6IHRydWUsIGlzVGFiYmVkOiBmYWxzZX1cbiAgKSB7XG4gICAgc3VwZXIoZnVuY05hbWUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFvcHRpb25zLnBhcmVudENhbGwpIG9wdGlvbnMucGFyZW50Q2FsbCA9IGdyb2suZnVuY3Rpb25zLmdldEN1cnJlbnRDYWxsKCk7XG5cbiAgICBjb25zdCBwYXJlbnRDYWxsID0gb3B0aW9ucy5wYXJlbnRDYWxsO1xuICAgIHRoaXMucGFyZW50Q2FsbCA9IHBhcmVudENhbGw7XG4gICAgdGhpcy5wYXJlbnRWaWV3ID0gcGFyZW50Q2FsbD8ucGFyZW50Q2FsbC5hdXhbJ3ZpZXcnXTtcbiAgICB0aGlzLmJhc2VQYXRoID0gYC8ke3BhcmVudENhbGw/LmZ1bmMubmFtZX1gO1xuXG4gICAgdGhpcy5zdWJzLnB1c2godGhpcy5vbkZ1bmNDYWxsUmVhZHkuc3Vic2NyaWJlKHtcbiAgICAgIGNvbXBsZXRlOiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZ2V0UGFja2FnZVVybHMoKTtcbiAgICAgICAgdGhpcy5idWlsZFJpYmJvbk1lbnUoKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VWaWV3TmFtZShwYXJlbnRDYWxsLmZ1bmMuZnJpZW5kbHlOYW1lKTtcbiAgICAgIH1cbiAgICB9KSk7XG4gIH1cblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgbW9ja3NcbiAgICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIGdldE1vY2tzOiAoe21vY2tOYW1lOiBzdHJpbmcsIGFjdGlvbjogKCkgPT4gUHJvbWlzZTx2b2lkPn1bXSkgfCBudWxsID0gbnVsbDtcblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgdGVtcGxhdGVzXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBnZXRUZW1wbGF0ZXM6ICh7bmFtZTogc3RyaW5nLCBhY3Rpb246ICgpID0+IFByb21pc2U8dm9pZD59W10pIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE92ZXJyaWRlIHRvIGN1c3RvbWl6ZSBnZXR0aW5nIGhlbHAgZmVhdHVyZS4gQ2FsbGVkIHdoZW4gXCJIZWxwXCIgaXMgY2xpY2tlZC5cbiAgICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIGdldEhlbHA6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgYnVnIHJlcG9ydGluZyBmZWF0dXJlLiBDYWxsZWQgd2hlbiBcIlJlcG9ydCBhIGJ1Z1wiIGlzIGNsaWNrZWQuXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICByZXBvcnRCdWc6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgZmVhdHVyZSByZXF1ZXN0IGZlYXR1cmUuIENhbGxlZCB3aGVuIFwiUmVxdWVzdCBhIGZlYXR1cmVcIiBpcyBjbGlja2VkLlxuICAgICogQHN0YWJpbGl0eSBTdGFibGVcbiAgKi9cbiAgcmVxdWVzdEZlYXR1cmU6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgXCJhYm91dFwiIGluZm8gb2J0YWluaW5nIGZlYXR1cmUuIENhbGxlZCB3aGVuIFwiQWJvdXRcIiBpcyBjbGlja2VkLlxuICAgICogRGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBmaW5kcyB7QGxpbmsgdGhpcy5mdW5jQ2FsbH0ncyBwYWNrYWdlIGFuZCBzaG93cyBpdCdzIHByb3BlcnRpZXMuXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBnZXRBYm91dDogKCgpID0+IFByb21pc2U8c3RyaW5nPikgfCBudWxsID0gYXN5bmMgKCkgPT4ge1xuICAgIC8vIERFQUxJTkcgV0lUSCBCVUc6IGh0dHBzOi8vcmVkZGF0YS5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9HUk9LLTEyMzA2XG4gICAgY29uc3QgcGFjayA9IChhd2FpdCBncm9rLmRhcGkucGFja2FnZXMubGlzdCgpKS5maW5kKChwYWNrKSA9PiBwYWNrLmlkID09PSB0aGlzLmZ1bmM/LnBhY2thZ2UuaWQpO1xuICAgIHJldHVybiBwYWNrID8gYCR7cGFjay5mcmllbmRseU5hbWV9IHYuJHtwYWNrLnZlcnNpb259Llxcbkxhc3QgdXBkYXRlZCBvbiAke2RheWpzKHBhY2sudXBkYXRlZE9uKS5mb3JtYXQoJ1lZWVkgTU1NIEQsIEhIOm1tJyl9YDogYE5vIHBhY2thZ2UgaW5mbyB3YXMgZm91bmRgO1xuICB9O1xuXG4gIC8qKlxuICAgKiBMb29rcyBmb3JcbiAgICoge0BsaW5rIGdldE1vY2tzfSwge0BsaW5rIGdldFRlbXBsYXRlc30sIHtAbGluayBnZXRIZWxwfSwge0BsaW5rIHJlcG9ydEJ1Z30sIHtAbGluayByZXF1ZXN0RmVhdHVyZX0sIHtAbGluayBnZXRBYm91dH0sIHtAbGluayBleHBvcnRDb25maWd9XG4gICAqIG1lbWJlcnMgYW5kIGNyZWF0ZXMgXCJNb2RlbFwiIG1lbnVcbiAgICogQHN0YWJpbGl0eSBTdGFibGVcbiAgKi9cbiAgb3ZlcnJpZGUgYnVpbGRSaWJib25NZW51KCkge1xuICAgIHRoaXMucmliYm9uTWVudS5jbGVhcigpO1xuXG4gICAgc3VwZXIuYnVpbGRSaWJib25NZW51KCk7XG5cbiAgICBpZiAoIXRoaXMuZXhwb3J0Q29uZmlnICYmICF0aGlzLnJlcG9ydEJ1ZyAmJiAhdGhpcy5yZXF1ZXN0RmVhdHVyZSAmJiAhdGhpcy5nZXRIZWxwICYmICF0aGlzLmdldE1vY2tzICYmICF0aGlzLmdldFRlbXBsYXRlcykgcmV0dXJuO1xuXG4gICAgY29uc3QgcmliYm9uTWVudSA9IHRoaXMucmliYm9uTWVudS5ncm91cCgnTW9kZWwnKTtcblxuICAgIGlmICh0aGlzLmdldE1vY2tzICYmIHRoaXMuZ2V0TW9ja3MubGVuZ3RoID4gMCkge1xuICAgICAgaWYgKHRoaXMuZ2V0TW9ja3MubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJpYmJvbk1lbnUuaXRlbSgnSW5wdXQgZGF0YSBtb2NrJywgdGhpcy5nZXRNb2Nrc1swXS5hY3Rpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZGF0YUdyb3VwID0gcmliYm9uTWVudS5ncm91cCgnSW5wdXQgZGF0YSBtb2NrcycpO1xuICAgICAgICB0aGlzLmdldE1vY2tzLmZvckVhY2goKHZhbCkgPT4ge1xuICAgICAgICAgIGRhdGFHcm91cC5pdGVtKHZhbC5tb2NrTmFtZSwgdmFsLmFjdGlvbik7XG4gICAgICAgIH0pO1xuICAgICAgICByaWJib25NZW51LmVuZEdyb3VwKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZ2V0VGVtcGxhdGVzICYmIHRoaXMuZ2V0VGVtcGxhdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgIGlmICh0aGlzLmdldFRlbXBsYXRlcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmliYm9uTWVudS5pdGVtKCdJbnB1dCBkYXRhIHRlbXBsYXRlJywgdGhpcy5nZXRUZW1wbGF0ZXNbMF0uYWN0aW9uKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IGRhdGFHcm91cCA9IHJpYmJvbk1lbnUuZ3JvdXAoJ0lucHV0IGRhdGEgdGVtcGxhdGVzJyk7XG4gICAgICAgIHRoaXMuZ2V0VGVtcGxhdGVzLmZvckVhY2goKHZhbCkgPT4ge1xuICAgICAgICAgIGRhdGFHcm91cC5pdGVtKHZhbC5uYW1lLCB2YWwuYWN0aW9uKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJpYmJvbk1lbnUuZW5kR3JvdXAoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5leHBvcnRDb25maWcgJiYgdGhpcy5leHBvcnRDb25maWcuc3VwcG9ydGVkRm9ybWF0cy5sZW5ndGggPiAwKSB7XG4gICAgICByaWJib25NZW51XG4gICAgICAgIC5ncm91cCgnRXhwb3J0JylcbiAgICAgICAgLml0ZW1zKHRoaXMuZXhwb3J0Q29uZmlnLnN1cHBvcnRlZEZvcm1hdHMsIGFzeW5jIChmb3JtYXQ6IHN0cmluZykgPT4gREcuVXRpbHMuZG93bmxvYWQodGhpcy5leHBvcnRDb25maWchLmZpbGVuYW1lKGZvcm1hdCksIGF3YWl0IHRoaXMuZXhwb3J0Q29uZmlnIS5leHBvcnQoZm9ybWF0KSkpXG4gICAgICAgIC5lbmRHcm91cCgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnJlcG9ydEJ1ZylcbiAgICAgIHJpYmJvbk1lbnUuaXRlbSgnUmVwb3J0IGEgYnVnJywgKCkgPT4gdGhpcy5yZXBvcnRCdWchKCkpO1xuXG4gICAgaWYgKHRoaXMucmVxdWVzdEZlYXR1cmUpXG4gICAgICByaWJib25NZW51Lml0ZW0oJ1JlcXVlc3QgYSBmZWF0dXJlJywgKCkgPT4gdGhpcy5yZXF1ZXN0RmVhdHVyZSEoKSk7XG5cbiAgICBpZiAodGhpcy5nZXRIZWxwKVxuICAgICAgcmliYm9uTWVudS5pdGVtKCdIZWxwJywgKCkgPT4gdGhpcy5nZXRIZWxwISgpKTtcblxuICAgIGlmICh0aGlzLmdldEFib3V0KSB7XG4gICAgICByaWJib25NZW51Lml0ZW0oJ0Fib3V0JywgYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBkaWFsb2cgPSB1aS5kaWFsb2coJ0N1cnJlbnQgdmVyc2lvbicpO1xuICAgICAgICAoYXdhaXQgdGhpcy5nZXRBYm91dCEoKSkuc3BsaXQoJ1xcbicpLmZvckVhY2goKGxpbmUpID0+IGRpYWxvZy5hZGQodWkubGFiZWwobGluZSkpKTtcbiAgICAgICAgZGlhbG9nLm9uT0soKCkgPT4ge30pO1xuICAgICAgICBkaWFsb2cuZ2V0QnV0dG9uKCdDQU5DRUwnKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICBkaWFsb2cuc2hvdyh7Y2VudGVyOiB0cnVlfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRmluZHMge0BsaW5rIHRoaXMuZnVuY0NhbGx9J3MgcGFja2FnZSBhbmQgcmV0cmlldmVzIGl0J3MgdmFyaWFibGVzLlxuICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBwcml2YXRlIGFzeW5jIGdldFBhY2thZ2VVcmxzKCkge1xuICAgIC8vIERFQUxJTkcgV0lUSCBCVUc6IGh0dHBzOi8vcmVkZGF0YS5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9HUk9LLTEyMzA2XG4gICAgY29uc3QgcGFjayA9IChhd2FpdCBncm9rLmRhcGkucGFja2FnZXMubGlzdCgpKS5maW5kKChwYWNrKSA9PiBwYWNrLmlkID09PSB0aGlzLnBhcmVudENhbGw/LmZ1bmMucGFja2FnZS5pZCk7XG5cbiAgICBjb25zdCByZXBvcnRCdWdVcmwgPSAoYXdhaXQgcGFjaz8uZ2V0UHJvcGVydGllcygpIGFzIGFueSkuUkVQT1JUX0JVR19VUkw7XG4gICAgaWYgKHJlcG9ydEJ1Z1VybCAmJiAhdGhpcy5yZXBvcnRCdWcpXG4gICAgICB0aGlzLnJlcG9ydEJ1ZyA9IGFzeW5jICgpID0+IHsgd2luZG93Lm9wZW4ocmVwb3J0QnVnVXJsLCAnX2JsYW5rJyk7IH07XG5cbiAgICBjb25zdCByZXFGZWF0dXJlVXJsID0gKGF3YWl0IHBhY2s/LmdldFByb3BlcnRpZXMoKSBhcyBhbnkpLlJFUVVFU1RfRkVBVFVSRV9VUkw7XG4gICAgaWYgKHJlcUZlYXR1cmVVcmwgJiYgIXRoaXMucmVxdWVzdEZlYXR1cmUpXG4gICAgICB0aGlzLnJlcXVlc3RGZWF0dXJlID0gYXN5bmMgKCkgPT4geyB3aW5kb3cub3BlbihyZXFGZWF0dXJlVXJsLCAnX2JsYW5rJyk7IH07XG4gIH1cbn1cbiJdfQ==
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0YXRpb24tdmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbXB1dGF0aW9uLXZpZXcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLDRCQUE0QjtBQUM1QixPQUFPLEtBQUssSUFBSSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCOzs7Ozs7Ozs7Ozs7OztLQWNLO0FBQ0wsTUFBTSxPQUFnQixlQUFnQixTQUFRLFlBQVk7SUFDeEQ7Ozs7T0FJRztJQUNILFlBQ0UsUUFBZ0IsRUFDVCxVQUlILEVBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFDO1FBRTNDLEtBQUssQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFObEIsWUFBTyxHQUFQLE9BQU8sQ0FJNkI7UUFvQjdDOztVQUVFO1FBQ0YsYUFBUSxHQUErRCxJQUFJLENBQUM7UUFFNUU7O1VBRUU7UUFDRixpQkFBWSxHQUEyRCxJQUFJLENBQUM7UUFFNUU7O1VBRUU7UUFDRixZQUFPLEdBQWlDLElBQUksQ0FBQztRQUU3Qzs7VUFFRTtRQUNGLGNBQVMsR0FBaUMsSUFBSSxDQUFDO1FBRS9DOztVQUVFO1FBQ0YsbUJBQWMsR0FBaUMsSUFBSSxDQUFDO1FBRXBEOzs7VUFHRTtRQUNGLGFBQVEsR0FBbUMsR0FBUyxFQUFFO1lBQ3BELE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZ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QUFTLEVBQUUsZ0RBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQztZQUV4RSxNQUFNLGFBQWEsR0FBRyxDQUFDLE1BQU0sQ0FBQSxJQUFJLGFBQUosSUFBSSx1QkFBSixJQUFJLENBQUUsYUFBYSxFQUFFLENBQVEsQ0FBQSxDQUFDLG1CQUFtQixDQUFDO1lBQy9FLElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7Z0JBQ3ZDLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBUyxFQUFFLGdEQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBLENBQUM7UUFDaEYsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB2YWxpZC1qc2RvYyAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmltcG9ydCB7RnVuY3Rpb25WaWV3fSBmcm9tICcuL2Z1bmN0aW9uLXZpZXcnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBoYW5kbGluZyBDb21wdXRlIG1vZGVscyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9kYXRhZ3Jvay1haS9wdWJsaWMvYmxvYi9tYXN0ZXIvaGVscC9jb21wdXRlL2NvbXB1dGUubWQpLlxuICogSW4gbW9zdCBjYXNlcywgdGhlIGNvbXB1dGF0aW9uIGlzIGEgc2ltcGxlIHtAbGluayBGdW5jfVxuICogRXh0ZW5kIGl0IGluIGNhc2VzIHdoZXJlIGEgYmVoYXZpb3Igb3IgVUkgbm90IHN1cHBvcnRlZCBieSB0aGUge0BsaW5rIEZ1bmN0aW9uVmlld30gaXMgbmVlZGVkLlxuICpcbiAqIEl0IHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25hbGl0eSBvdXQtb2YtdGhlLWJveCwgd2hlcmUgZWFjaCBzZWN0aW9uIGNvdWxkIGJlIGN1c3RvbWl6ZWQ6XG4gKiAtIGEgc3RydWN0dXJlZCB3YXkgdG8gcmVwcmVzZW50IGlucHV0IGFuZCBvdXRwdXQgcGFyYW1ldGVyczoge0BsaW5rIHBhcmFtZXRlcnN9XG4gKiAtIGdlbmVyaWMgd2F5IHRvIGdlbmVyYXRlIFVJIGZvciBpbnB1dHMsIG91dHB1dHMsIGFuZCBpbnRlcmFjdGl2aXR5IChydW5uaW5nIHRoZSBtb2RlbCwgZXRjKVxuICogICAtIHBlcnNpc3RpbmcgaGlzdG9yaWNhbCByZXN1bHRzIHRvIHRoZSBkYiAodmlhIHtAbGluayBwYXJhbWV0ZXJzfSlcbiAqIC0gZXhwb3J0ICh0byBFeGNlbCBhbmQgUERGKToge0BsaW5rIGV4cG9ydH1cbiAqIC0gZWFzeSBsb2FkaW5nIG9mIGhpc3RvcmljYWwgcnVuc1xuICogLSByb3V0aW5nXG4gKiAtIGVudGVyaW5nIHRoZSByZWFsLCBtZWFzdXJlZCAoYXMgb3Bwb3NlZCB0byBwcmVkaWN0ZWQpIHZhbHVlcyBtYW51YWxseVxuICogLSBub3RpZmljYXRpb25zIGZvciBjaGFuZ2luZyBpbnB1dHMsIGNvbXBsZXRpb24gb2YgY29tcHV0YXRpb25zLCBldGM6IHtAbGluayBvbklucHV0Q2hhbmdlZH1cbiAqICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29tcHV0YXRpb25WaWV3IGV4dGVuZHMgRnVuY3Rpb25WaWV3IHtcbiAgLyoqXG4gICAqIE92ZXJyaWRlZCB0bzpcbiAgICogMSkgYWRkIGdldHRpbmcgSGVscCBhbmQgUmVwb3J0QnVnIFVSTHMgZnJvbSB0aGUgcGFja2FnZS5cbiAgICogMikgY2hhbmdlIHJvdXRpbmcgbG9naWMgZm9yIG1vZGVsc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgZnVuY05hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgb3B0aW9uczoge1xuICAgICAgaGlzdG9yeUVuYWJsZWQ6IGJvb2xlYW4sXG4gICAgICBpc1RhYmJlZDogYm9vbGVhbixcbiAgICAgIHBhcmVudENhbGw/OiBERy5GdW5jQ2FsbFxuICAgIH0gPSB7aGlzdG9yeUVuYWJsZWQ6IHRydWUsIGlzVGFiYmVkOiBmYWxzZX1cbiAgKSB7XG4gICAgc3VwZXIoZnVuY05hbWUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFvcHRpb25zLnBhcmVudENhbGwpIG9wdGlvbnMucGFyZW50Q2FsbCA9IGdyb2suZnVuY3Rpb25zLmdldEN1cnJlbnRDYWxsKCk7XG5cbiAgICBjb25zdCBwYXJlbnRDYWxsID0gb3B0aW9ucy5wYXJlbnRDYWxsO1xuICAgIHRoaXMucGFyZW50Q2FsbCA9IHBhcmVudENhbGw7XG4gICAgdGhpcy5wYXJlbnRWaWV3ID0gcGFyZW50Q2FsbD8ucGFyZW50Q2FsbC5hdXhbJ3ZpZXcnXTtcbiAgICB0aGlzLmJhc2VQYXRoID0gYC8ke3BhcmVudENhbGw/LmZ1bmMubmFtZX1gO1xuXG4gICAgdGhpcy5zdWJzLnB1c2godGhpcy5vbkZ1bmNDYWxsUmVhZHkuc3Vic2NyaWJlKHtcbiAgICAgIGNvbXBsZXRlOiBhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZ2V0UGFja2FnZVVybHMoKTtcbiAgICAgICAgdGhpcy5idWlsZFJpYmJvbk1lbnUoKTtcbiAgICAgICAgdGhpcy5jaGFuZ2VWaWV3TmFtZShwYXJlbnRDYWxsLmZ1bmMuZnJpZW5kbHlOYW1lKTtcbiAgICAgIH1cbiAgICB9KSk7XG4gIH1cblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgbW9ja3NcbiAgICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIGdldE1vY2tzOiAoe21vY2tOYW1lOiBzdHJpbmcsIGFjdGlvbjogKCkgPT4gUHJvbWlzZTx2b2lkPn1bXSkgfCBudWxsID0gbnVsbDtcblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgdGVtcGxhdGVzXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBnZXRUZW1wbGF0ZXM6ICh7bmFtZTogc3RyaW5nLCBhY3Rpb246ICgpID0+IFByb21pc2U8dm9pZD59W10pIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE92ZXJyaWRlIHRvIGN1c3RvbWl6ZSBnZXR0aW5nIGhlbHAgZmVhdHVyZS4gQ2FsbGVkIHdoZW4gXCJIZWxwXCIgaXMgY2xpY2tlZC5cbiAgICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIGdldEhlbHA6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgYnVnIHJlcG9ydGluZyBmZWF0dXJlLiBDYWxsZWQgd2hlbiBcIlJlcG9ydCBhIGJ1Z1wiIGlzIGNsaWNrZWQuXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICByZXBvcnRCdWc6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgZmVhdHVyZSByZXF1ZXN0IGZlYXR1cmUuIENhbGxlZCB3aGVuIFwiUmVxdWVzdCBhIGZlYXR1cmVcIiBpcyBjbGlja2VkLlxuICAgICogQHN0YWJpbGl0eSBTdGFibGVcbiAgKi9cbiAgcmVxdWVzdEZlYXR1cmU6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPdmVycmlkZSB0byBjdXN0b21pemUgXCJhYm91dFwiIGluZm8gb2J0YWluaW5nIGZlYXR1cmUuIENhbGxlZCB3aGVuIFwiQWJvdXRcIiBpcyBjbGlja2VkLlxuICAgICogRGVmYXVsdCBpbXBsZW1lbnRhdGlvbiBmaW5kcyB7QGxpbmsgdGhpcy5mdW5jQ2FsbH0ncyBwYWNrYWdlIGFuZCBzaG93cyBpdCdzIHByb3BlcnRpZXMuXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBnZXRBYm91dDogKCgpID0+IFByb21pc2U8c3RyaW5nPikgfCBudWxsID0gYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IHBhY2sgPSBhd2FpdCBncm9rLmRhcGkucGFja2FnZXMuZmluZCh0aGlzLnBhcmVudENhbGwhLmZ1bmMucGFja2FnZS5pZCk7XG4gICAgcmV0dXJuIHBhY2sgPyBgJHtwYWNrLmZyaWVuZGx5TmFtZX0uXFxuTGFzdCB1cGRhdGVkIG9uICR7ZGF5anMocGFjay51cGRhdGVkT24pLmZvcm1hdCgnWVlZWSBNTU0gRCwgSEg6bW0nKX1gOiBgTm8gcGFja2FnZSBpbmZvIHdhcyBmb3VuZGA7XG4gIH07XG5cbiAgLyoqXG4gICAqIExvb2tzIGZvclxuICAgKiB7QGxpbmsgZ2V0TW9ja3N9LCB7QGxpbmsgZ2V0VGVtcGxhdGVzfSwge0BsaW5rIGdldEhlbHB9LCB7QGxpbmsgcmVwb3J0QnVnfSwge0BsaW5rIHJlcXVlc3RGZWF0dXJlfSwge0BsaW5rIGdldEFib3V0fSwge0BsaW5rIGV4cG9ydENvbmZpZ31cbiAgICogbWVtYmVycyBhbmQgY3JlYXRlcyBcIk1vZGVsXCIgbWVudVxuICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBvdmVycmlkZSBidWlsZFJpYmJvbk1lbnUoKSB7XG4gICAgdGhpcy5yaWJib25NZW51LmNsZWFyKCk7XG5cbiAgICBzdXBlci5idWlsZFJpYmJvbk1lbnUoKTtcblxuICAgIGlmICghdGhpcy5leHBvcnRDb25maWcgJiYgIXRoaXMucmVwb3J0QnVnICYmICF0aGlzLnJlcXVlc3RGZWF0dXJlICYmICF0aGlzLmdldEhlbHAgJiYgIXRoaXMuZ2V0TW9ja3MgJiYgIXRoaXMuZ2V0VGVtcGxhdGVzKSByZXR1cm47XG5cbiAgICBjb25zdCByaWJib25NZW51ID0gdGhpcy5yaWJib25NZW51Lmdyb3VwKCdNb2RlbCcpO1xuXG4gICAgaWYgKHRoaXMuZ2V0TW9ja3MgJiYgdGhpcy5nZXRNb2Nrcy5sZW5ndGggPiAwKSB7XG4gICAgICBpZiAodGhpcy5nZXRNb2Nrcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmliYm9uTWVudS5pdGVtKCdJbnB1dCBkYXRhIG1vY2snLCB0aGlzLmdldE1vY2tzWzBdLmFjdGlvbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBkYXRhR3JvdXAgPSByaWJib25NZW51Lmdyb3VwKCdJbnB1dCBkYXRhIG1vY2tzJyk7XG4gICAgICAgIHRoaXMuZ2V0TW9ja3MuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgICAgZGF0YUdyb3VwLml0ZW0odmFsLm1vY2tOYW1lLCB2YWwuYWN0aW9uKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJpYmJvbk1lbnUuZW5kR3JvdXAoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5nZXRUZW1wbGF0ZXMgJiYgdGhpcy5nZXRUZW1wbGF0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgaWYgKHRoaXMuZ2V0VGVtcGxhdGVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByaWJib25NZW51Lml0ZW0oJ0lucHV0IGRhdGEgdGVtcGxhdGUnLCB0aGlzLmdldFRlbXBsYXRlc1swXS5hY3Rpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZGF0YUdyb3VwID0gcmliYm9uTWVudS5ncm91cCgnSW5wdXQgZGF0YSB0ZW1wbGF0ZXMnKTtcbiAgICAgICAgdGhpcy5nZXRUZW1wbGF0ZXMuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgICAgZGF0YUdyb3VwLml0ZW0odmFsLm5hbWUsIHZhbC5hY3Rpb24pO1xuICAgICAgICB9KTtcbiAgICAgICAgcmliYm9uTWVudS5lbmRHcm91cCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmV4cG9ydENvbmZpZyAmJiB0aGlzLmV4cG9ydENvbmZpZy5zdXBwb3J0ZWRGb3JtYXRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHJpYmJvbk1lbnVcbiAgICAgICAgLmdyb3VwKCdFeHBvcnQnKVxuICAgICAgICAuaXRlbXModGhpcy5leHBvcnRDb25maWcuc3VwcG9ydGVkRm9ybWF0cywgYXN5bmMgKGZvcm1hdDogc3RyaW5nKSA9PiBERy5VdGlscy5kb3dubG9hZCh0aGlzLmV4cG9ydENvbmZpZyEuZmlsZW5hbWUoZm9ybWF0KSwgYXdhaXQgdGhpcy5leHBvcnRDb25maWchLmV4cG9ydChmb3JtYXQpKSlcbiAgICAgICAgLmVuZEdyb3VwKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVwb3J0QnVnKVxuICAgICAgcmliYm9uTWVudS5pdGVtKCdSZXBvcnQgYSBidWcnLCAoKSA9PiB0aGlzLnJlcG9ydEJ1ZyEoKSk7XG5cbiAgICBpZiAodGhpcy5yZXF1ZXN0RmVhdHVyZSlcbiAgICAgIHJpYmJvbk1lbnUuaXRlbSgnUmVxdWVzdCBhIGZlYXR1cmUnLCAoKSA9PiB0aGlzLnJlcXVlc3RGZWF0dXJlISgpKTtcblxuICAgIGlmICh0aGlzLmdldEhlbHApXG4gICAgICByaWJib25NZW51Lml0ZW0oJ0hlbHAnLCAoKSA9PiB0aGlzLmdldEhlbHAhKCkpO1xuXG4gICAgaWYgKHRoaXMuZ2V0QWJvdXQpIHtcbiAgICAgIHJpYmJvbk1lbnUuaXRlbSgnQWJvdXQnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRpYWxvZyA9IHVpLmRpYWxvZygnQ3VycmVudCB2ZXJzaW9uJyk7XG4gICAgICAgIChhd2FpdCB0aGlzLmdldEFib3V0ISgpKS5zcGxpdCgnXFxuJykuZm9yRWFjaCgobGluZSkgPT4gZGlhbG9nLmFkZCh1aS5sYWJlbChsaW5lKSkpO1xuICAgICAgICBkaWFsb2cub25PSygoKSA9PiB7fSk7XG4gICAgICAgIGRpYWxvZy5nZXRCdXR0b24oJ0NBTkNFTCcpLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIGRpYWxvZy5zaG93KHtjZW50ZXI6IHRydWV9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kcyB7QGxpbmsgdGhpcy5mdW5jQ2FsbH0ncyBwYWNrYWdlIGFuZCByZXRyaWV2ZXMgaXQncyB2YXJpYWJsZXMuXG4gICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0UGFja2FnZVVybHMoKSB7XG4gICAgY29uc3QgcGFjayA9IGF3YWl0IGdyb2suZGFwaS5wYWNrYWdlcy5maW5kKHRoaXMucGFyZW50Q2FsbCEuZnVuYy5wYWNrYWdlLmlkKTtcblxuICAgIGNvbnN0IHJlcG9ydEJ1Z1VybCA9IChhd2FpdCBwYWNrPy5nZXRQcm9wZXJ0aWVzKCkgYXMgYW55KS5SRVBPUlRfQlVHX1VSTDtcbiAgICBpZiAocmVwb3J0QnVnVXJsICYmICF0aGlzLnJlcG9ydEJ1ZylcbiAgICAgIHRoaXMucmVwb3J0QnVnID0gYXN5bmMgKCkgPT4geyB3aW5kb3cub3BlbihyZXBvcnRCdWdVcmwsICdfYmxhbmsnKTsgfTtcblxuICAgIGNvbnN0IHJlcUZlYXR1cmVVcmwgPSAoYXdhaXQgcGFjaz8uZ2V0UHJvcGVydGllcygpIGFzIGFueSkuUkVRVUVTVF9GRUFUVVJFX1VSTDtcbiAgICBpZiAocmVxRmVhdHVyZVVybCAmJiAhdGhpcy5yZXF1ZXN0RmVhdHVyZSlcbiAgICAgIHRoaXMucmVxdWVzdEZlYXR1cmUgPSBhc3luYyAoKSA9PiB7IHdpbmRvdy5vcGVuKHJlcUZlYXR1cmVVcmwsICdfYmxhbmsnKTsgfTtcbiAgfVxufVxuIl19
|