@datagrok-libraries/utils 1.14.1 → 1.15.0
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 +2 -2
- package/src/history-utils.d.ts.map +1 -1
- package/src/history-utils.js +14 -9
package/package.json
CHANGED
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
6
|
"fullName": "Utils",
|
|
7
|
-
"version": "1.
|
|
7
|
+
"version": "1.15.0",
|
|
8
8
|
"description": "Common utilities",
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"fast-sha256": "^1.3.0",
|
|
11
11
|
"@types/node": "^14.14.37",
|
|
12
12
|
"cash-dom": "^8.1.1",
|
|
13
|
-
"datagrok-api": "^1.
|
|
13
|
+
"datagrok-api": "^1.8.1",
|
|
14
14
|
"exceljs": "^4.3.0",
|
|
15
15
|
"html2canvas": "^1.4.1",
|
|
16
16
|
"node-fetch": "^2.6.0",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history-utils.d.ts","sourceRoot":"","sources":["history-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAc,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAyB3D,yBAAiB,YAAY,CAAC;IAC5B,SAAsB,OAAO,CAAC,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"history-utils.d.ts","sourceRoot":"","sources":["history-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAc,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAyB3D,yBAAiB,YAAY,CAAC;IAC5B,SAAsB,OAAO,CAAC,UAAU,EAAE,MAAM,wBAiB/C;IAED,SAAsB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,wBAYpD;IAED,SAAsB,SAAS,CAAC,YAAY,EAAE,EAAE,CAAC,QAAQ,iBAExD;IAED;;;;;;;KAOC;IACD,SAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,aAAkB,EACjC,WAAW,GAAE;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAM,GAC1F,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAUxB;IAED;;;;;;;KAOC;IACD,SAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,aAAa,GAAE,aAAkB,EACjC,WAAW,GAAE;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAM,GAC1F,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAcxB;CACF"}
|
package/src/history-utils.js
CHANGED
|
@@ -37,11 +37,10 @@ export var historyUtils;
|
|
|
37
37
|
(function (historyUtils) {
|
|
38
38
|
function loadRun(funcCallId) {
|
|
39
39
|
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
-
const pulledRun = yield grok.dapi.functions.calls.include('inputs, outputs').find(funcCallId);
|
|
40
|
+
const pulledRun = yield grok.dapi.functions.calls.allPackageVersions().include('inputs, outputs').find(funcCallId);
|
|
41
41
|
// FIX ME: manually get script since pulledRun contains empty Func
|
|
42
|
-
const script = yield grok.dapi.functions.find(pulledRun.func.id);
|
|
43
|
-
|
|
44
|
-
window.grok_FuncCall_Set_Func(pulledRun.dart, script.dart);
|
|
42
|
+
const script = yield grok.dapi.functions.allPackageVersions().find(pulledRun.func.id);
|
|
43
|
+
pulledRun.func = script;
|
|
45
44
|
pulledRun.options['isHistorical'] = true;
|
|
46
45
|
const dfOutputs = wu(pulledRun.outputParams.values())
|
|
47
46
|
.filter((output) => output.property.propertyType === DG.TYPE.DATA_FRAME);
|
|
@@ -88,7 +87,10 @@ export var historyUtils;
|
|
|
88
87
|
let filteringString = `func.id="${funcId}"`;
|
|
89
88
|
filteringString += filterOptions.author ? ` and session.user.id="${filterOptions.author.id}"` : '';
|
|
90
89
|
filteringString += filterOptions.date ? getSearchStringByPattern(filterOptions.date) : '';
|
|
91
|
-
const filter = grok.dapi.functions.calls
|
|
90
|
+
const filter = grok.dapi.functions.calls
|
|
91
|
+
.allPackageVersions()
|
|
92
|
+
.filter(filteringString)
|
|
93
|
+
.include('session.user, options');
|
|
92
94
|
const list = filter.list(listOptions);
|
|
93
95
|
return list;
|
|
94
96
|
});
|
|
@@ -110,11 +112,14 @@ export var historyUtils;
|
|
|
110
112
|
filteringString += filterOptions.isShared ? ` and options.isShared="true"` : '';
|
|
111
113
|
filteringString += filterOptions.text ?
|
|
112
114
|
` and ((options.title like "${filterOptions.text}") or (options.annotation like "${filterOptions.text}"))` : '';
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
|
|
115
|
+
const result = grok.dapi.functions.calls
|
|
116
|
+
.allPackageVersions()
|
|
117
|
+
.filter(`(${filteringString})`)
|
|
118
|
+
.include('session.user, options')
|
|
119
|
+
.list(listOptions);
|
|
120
|
+
return result;
|
|
116
121
|
});
|
|
117
122
|
}
|
|
118
123
|
historyUtils.pullRunsByName = pullRunsByName;
|
|
119
124
|
})(historyUtils || (historyUtils = {}));
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhpc3RvcnktdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFHcEIsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtJQUM1RCxRQUFRLFdBQVcsRUFBRTtRQUNyQixLQUFLLE9BQU87WUFDVixPQUFPLG9CQUFvQixDQUFDO1FBQzlCLEtBQUssV0FBVztZQUNkLE9BQU8sc0NBQXNDLENBQUM7UUFDaEQsS0FBSyxVQUFVO1lBQ2IsT0FBTyxFQUFFLENBQUM7UUFDWixLQUFLLFdBQVc7WUFDZCxPQUFPLHFDQUFxQyxDQUFDO1FBQy9DLEtBQUssV0FBVztZQUNkLE9BQU8sb0JBQW9CLENBQUM7UUFDOUIsS0FBSyxZQUFZO1lBQ2YsT0FBTyxzQ0FBc0MsQ0FBQztRQUNoRCxLQUFLLFlBQVk7WUFDZixPQUFPLG9CQUFvQixDQUFDO1FBQzlCLEtBQUssV0FBVztZQUNkLE9BQU8sc0NBQXNDLENBQUM7UUFDaEQsS0FBSyxXQUFXO1lBQ2QsT0FBTyxvQkFBb0IsQ0FBQztLQUM3QjtBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sS0FBVyxZQUFZLENBbUY1QjtBQW5GRCxXQUFpQixZQUFZO0lBQzNCLFNBQXNCLE9BQU8sQ0FBQyxVQUFrQjs7WUFDOUMsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzlGLGtFQUFrRTtZQUNsRSxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FB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Q0FBQyx3QkFBd0IsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN6RixlQUFlLElBQUksYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsOEJBQThCLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUMvRSxlQUFlLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNyQyw4QkFBOEIsYUFBYSxDQUFDLElBQUksbUNBQW1DLGFBQWEsQ0FBQyxJQUFJLEtBQUssQ0FBQSxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pILE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxlQUFlLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ3pHLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdEMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0tBQUE7SUFkcUIsMkJBQWMsaUJBY25DLENBQUE7QUFDSCxDQUFDLEVBbkZnQixZQUFZLEtBQVosWUFBWSxRQW1GNUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB2YWxpZC1qc2RvYyAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmltcG9ydCB3dSBmcm9tICd3dSc7XG5pbXBvcnQge0RhdGVPcHRpb25zLCBGaWx0ZXJPcHRpb25zfSBmcm9tICcuL2Z1bmN0aW9uLXZpZXcnO1xuXG5jb25zdCBnZXRTZWFyY2hTdHJpbmdCeVBhdHRlcm4gPSAoZGF0ZVBhdHRlcm46IERhdGVPcHRpb25zKSA9PiB7XG4gIHN3aXRjaCAoZGF0ZVBhdHRlcm4pIHtcbiAgY2FzZSAnVG9kYXknOlxuICAgIHJldHVybiBgIGFuZCBzdGFydGVkID4gLTFkYDtcbiAgY2FzZSAnWWVzdGVyZGF5JzpcbiAgICByZXR1cm4gYCBhbmQgc3RhcnRlZCA+IC0yZCBhbmQgc3RhcnRlZCA8IC0xZGA7XG4gIGNhc2UgJ0FueSB0aW1lJzpcbiAgICByZXR1cm4gYGA7XG4gIGNhc2UgJ0xhc3QgeWVhcic6XG4gICAgcmV0dXJuIGBhbmQgc3RhcnRlZCA+IC0yeSBhbmQgc3RhcnRlZCA8IC0xeWA7XG4gIGNhc2UgJ1RoaXMgeWVhcic6XG4gICAgcmV0dXJuIGAgYW5kIHN0YXJ0ZWQgPiAtMXlgO1xuICBjYXNlICdMYXN0IG1vbnRoJzpcbiAgICByZXR1cm4gYCBhbmQgc3RhcnRlZCA+IC0ybSBhbmQgc3RhcnRlZCA8IC0xbWA7XG4gIGNhc2UgJ1RoaXMgbW9udGgnOlxuICAgIHJldHVybiBgIGFuZCBzdGFydGVkID4gLTFtYDtcbiAgY2FzZSAnTGFzdCB3ZWVrJzpcbiAgICByZXR1cm4gYCBhbmQgc3RhcnRlZCA+IC0ydyBhbmQgc3RhcnRlZCA8IC0xd2A7XG4gIGNhc2UgJ1RoaXMgd2Vlayc6XG4gICAgcmV0dXJuIGAgYW5kIHN0YXJ0ZWQgPiAtMXdgO1xuICB9XG59O1xuXG5leHBvcnQgbmFtZXNwYWNlIGhpc3RvcnlVdGlscyB7XG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBsb2FkUnVuKGZ1bmNDYWxsSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IHB1bGxlZFJ1biA9IGF3YWl0IGdyb2suZGFwaS5mdW5jdGlvbnMuY2FsbHMuaW5jbHVkZSgnaW5wdXRzLCBvdXRwdXRzJykuZmluZChmdW5jQ2FsbElkKTtcbiAgICAvLyBGSVggTUU6IG1hbnVhbGx5IGdldCBzY3JpcHQgc2luY2UgcHVsbGVkUnVuIGNvbnRhaW5zIGVtcHR5IEZ1bmNcbiAgICBjb25zdCBzY3JpcHQgPSBhd2FpdCBncm9rLmRhcGkuZnVuY3Rpb25zLmZpbmQocHVsbGVkUnVuLmZ1bmMuaWQpO1xuICAgIC8vQHRzLWlnbm9yZVxuICAgIHdpbmRvdy5ncm9rX0Z1bmNDYWxsX1NldF9GdW5jKHB1bGxlZFJ1bi5kYXJ0LCBzY3JpcHQuZGFydCk7XG4gICAgcHVsbGVkUnVuLm9wdGlvbnNbJ2lzSGlzdG9yaWNhbCddID0gdHJ1ZTtcbiAgICBjb25zdCBkZk91dHB1dHMgPSB3dShwdWxsZWRSdW4ub3V0cHV0UGFyYW1zLnZhbHVlcygpIGFzIERHLkZ1bmNDYWxsUGFyYW1bXSlcbiAgICAgIC5maWx0ZXIoKG91dHB1dCkgPT4gb3V0cHV0LnByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gREcuVFlQRS5EQVRBX0ZSQU1FKTtcbiAgICBmb3IgKGNvbnN0IG91dHB1dCBvZiBkZk91dHB1dHMpXG4gICAgICBwdWxsZWRSdW4ub3V0cHV0c1tvdXRwdXQubmFtZV0gPSBhd2FpdCBncm9rLmRhcGkudGFibGVzLmdldFRhYmxlKHB1bGxlZFJ1bi5vdXRwdXRzW291dHB1dC5uYW1lXSk7XG5cbiAgICBjb25zdCBkZklucHV0cyA9IHd1KHB1bGxlZFJ1bi5pbnB1dFBhcmFtcy52YWx1ZXMoKSBhcyBERy5GdW5jQ2FsbFBhcmFtW10pXG4gICAgICAuZmlsdGVyKChpbnB1dCkgPT4gaW5wdXQucHJvcGVydHkucHJvcGVydHlUeXBlID09PSBERy5UWVBFLkRBVEFfRlJBTUUpO1xuICAgIGZvciAoY29uc3QgaW5wdXQgb2YgZGZJbnB1dHMpXG4gICAgICBwdWxsZWRSdW4uaW5wdXRzW2lucHV0Lm5hbWVdID0gYXdhaXQgZ3Jvay5kYXBpLnRhYmxlcy5nZXRUYWJsZShwdWxsZWRSdW4uaW5wdXRzW2lucHV0Lm5hbWVdKTtcblxuICAgIHJldHVybiBwdWxsZWRSdW47XG4gIH1cblxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gc2F2ZVJ1bihjYWxsVG9TYXZlOiBERy5GdW5jQ2FsbCkge1xuICAgIGNvbnN0IGRmT3V0cHV0cyA9IHd1KGNhbGxUb1NhdmUub3V0cHV0UGFyYW1zLnZhbHVlcygpIGFzIERHLkZ1bmNDYWxsUGFyYW1bXSlcbiAgICAgIC5maWx0ZXIoKG91dHB1dCkgPT4gb3V0cHV0LnByb3BlcnR5LnByb3BlcnR5VHlwZSA9PT0gREcuVFlQRS5EQVRBX0ZSQU1FKTtcbiAgICBmb3IgKGNvbnN0IG91dHB1dCBvZiBkZk91dHB1dHMpXG4gICAgICBhd2FpdCBncm9rLmRhcGkudGFibGVzLnVwbG9hZERhdGFGcmFtZShjYWxsVG9TYXZlLm91dHB1dHNbb3V0cHV0Lm5hbWVdKTtcblxuICAgIGNvbnN0IGRmSW5wdXRzID0gd3UoY2FsbFRvU2F2ZS5pbnB1dFBhcmFtcy52YWx1ZXMoKSBhcyBERy5GdW5jQ2FsbFBhcmFtW10pXG4gICAgICAuZmlsdGVyKChpbnB1dCkgPT4gaW5wdXQucHJvcGVydHkucHJvcGVydHlUeXBlID09PSBERy5UWVBFLkRBVEFfRlJBTUUpO1xuICAgIGZvciAoY29uc3QgaW5wdXQgb2YgZGZJbnB1dHMpXG4gICAgICBhd2FpdCBncm9rLmRhcGkudGFibGVzLnVwbG9hZERhdGFGcmFtZShjYWxsVG9TYXZlLmlucHV0c1tpbnB1dC5uYW1lXSk7XG5cbiAgICByZXR1cm4gYXdhaXQgZ3Jvay5kYXBpLmZ1bmN0aW9ucy5jYWxscy5zYXZlKGNhbGxUb1NhdmUpO1xuICB9XG5cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGV0ZVJ1bihjYWxsVG9EZWxldGU6IERHLkZ1bmNDYWxsKSB7XG4gICAgYXdhaXQgZ3Jvay5kYXBpLmZ1bmN0aW9ucy5jYWxscy5kZWxldGUoY2FsbFRvRGVsZXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkcyBhbGwgdGhlIGZ1bmN0aW9uIGNhbGwgb2YgdGhpcyBmdW5jdGlvbi5cbiAgICogRGVzaWduZWQgdG8gcHVsbCBoc3RvcmljYWwgcnVucyBpbiBmYXN0IG1hbm5lciBhbmQgdGhlIGNhbGwge0BsaW5rIGxvYWRSdW59IHdpdGggc3BlY2lmaWVkIHJ1biBJRC5cbiAgICogV0FSTklORzogRnVuY0NhbGwgaW5wdXRzL291dHB1dHMgZmllbGRzIGFyZSBub3QgaW5jbHVkZWRcbiAgICogQHBhcmFtIGZ1bmNJZCBJRCBvZiBGdW5jIHdoaWNoIGNhbGxzIHdlIGFyZSBsb29raW5nIGZvci4gR2V0IGl0IHVzaW5nIHtAbGluayBmdW5jLmlkfSBmaWVsZFxuICAgKiBAcmV0dXJuIFByb21pc2Ugb24gYXJyYXkgb2YgRnVuY0NhbGxzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBhc3NlZCBGdW5jIElEXG4gICAqIEBzdGFiaWxpdHkgRGVwcmVjYXRlZC4gU2NyaXB0IElEIGNoYW5nZXMgd2l0aCBldmVyeSBwYWNrYWdlIHJlbGVhc2UsIHNvIHNlYXJjaGluZyBieSBJRCBpcyB1c2VsZXNzIGluIHByYWN0aWNlLlxuICovXG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBwdWxsUnVucyhcbiAgICBmdW5jSWQ6IHN0cmluZyxcbiAgICBmaWx0ZXJPcHRpb25zOiBGaWx0ZXJPcHRpb25zID0ge30sXG4gICAgbGlzdE9wdGlvbnM6IHtwYWdlU2l6ZT86IG51bWJlciwgcGFnZU51bWJlcj86IG51bWJlciwgZmlsdGVyPzogc3RyaW5nLCBvcmRlcj86IHN0cmluZ30gPSB7fVxuICApOiBQcm9taXNlPERHLkZ1bmNDYWxsW10+IHtcbiAgICBsZXQgZmlsdGVyaW5nU3RyaW5nID0gYGZ1bmMuaWQ9XCIke2Z1bmNJZH1cImA7XG4gICAgZmlsdGVyaW5nU3RyaW5nICs9IGZpbHRlck9wdGlvbnMuYXV0aG9yID8gYCBhbmQgc2Vzc2lvbi51c2VyLmlkPVwiJHtmaWx0ZXJPcHRpb25zLmF1dGhvci5pZH1cImA6Jyc7XG4gICAgZmlsdGVyaW5nU3RyaW5nICs9IGZpbHRlck9wdGlvbnMuZGF0ZSA/IGdldFNlYXJjaFN0cmluZ0J5UGF0dGVybihmaWx0ZXJPcHRpb25zLmRhdGUpOiAnJztcbiAgICBjb25zdCBmaWx0ZXIgPSBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzLmZpbHRlcihmaWx0ZXJpbmdTdHJpbmcpLmluY2x1ZGUoJ3Nlc3Npb24udXNlciwgb3B0aW9ucycpO1xuICAgIGNvbnN0IGxpc3QgPSBmaWx0ZXIubGlzdChsaXN0T3B0aW9ucyk7XG4gICAgcmV0dXJuIGxpc3Q7XG4gIH1cblxuICAvKipcbiAgICogTG9hZHMgYWxsIHRoZSBmdW5jdGlvbiBjYWxsIG9mIHRoaXMgZnVuY3Rpb24uXG4gICAqIERlc2lnbmVkIHRvIHB1bGwgaHN0b3JpY2FsIHJ1bnMgaW4gZmFzdCBtYW5uZXIgYW5kIHRoZSBjYWxsIHtAbGluayBsb2FkUnVufSB3aXRoIHNwZWNpZmllZCBydW4gSUQuXG4gICAqIFdBUk5JTkc6IEZ1bmNDYWxsIGlucHV0cy9vdXRwdXRzIGZpZWxkcyBhcmUgbm90IGluY2x1ZGVkXG4gICAqIEBwYXJhbSBmdW5jTmFtZSBOYW1lIG9mIEZ1bmMgd2hpY2ggY2FsbHMgd2UgYXJlIGxvb2tpbmcgZm9yLiBHZXQgaXQgdXNpbmcge0BsaW5rIGZ1bmMubmFtZX0gZmllbGRcbiAgICogQHJldHVybiBQcm9taXNlIG9uIGFycmF5IG9mIEZ1bmNDYWxscyBjb3JyZXNwb25kaW5nIHRvIHRoZSBwYXNzZWQgRnVuYyBJRFxuICAgKiBAc3RhYmlsaXR5IEV4cGVyaW1lbnRhbFxuICovXG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBwdWxsUnVuc0J5TmFtZShcbiAgICBmdW5jTmFtZTogc3RyaW5nLFxuICAgIGZpbHRlck9wdGlvbnM6IEZpbHRlck9wdGlvbnMgPSB7fSxcbiAgICBsaXN0T3B0aW9uczoge3BhZ2VTaXplPzogbnVtYmVyLCBwYWdlTnVtYmVyPzogbnVtYmVyLCBmaWx0ZXI/OiBzdHJpbmcsIG9yZGVyPzogc3RyaW5nfSA9IHt9XG4gICk6IFByb21pc2U8REcuRnVuY0NhbGxbXT4ge1xuICAgIGxldCBmaWx0ZXJpbmdTdHJpbmcgPSBgZnVuYy5uYW1lPVwiJHtmdW5jTmFtZX1cImA7XG4gICAgZmlsdGVyaW5nU3RyaW5nICs9IGZpbHRlck9wdGlvbnMuYXV0aG9yID8gYCBhbmQgc2Vzc2lvbi51c2VyLmlkPVwiJHtmaWx0ZXJPcHRpb25zLmF1dGhvci5pZH1cImA6Jyc7XG4gICAgZmlsdGVyaW5nU3RyaW5nICs9IGZpbHRlck9wdGlvbnMuZGF0ZSA/IGdldFNlYXJjaFN0cmluZ0J5UGF0dGVybihmaWx0ZXJPcHRpb25zLmRhdGUpOiAnJztcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy5pc1NoYXJlZCA/IGAgYW5kIG9wdGlvbnMuaXNTaGFyZWQ9XCJ0cnVlXCJgOiAnJztcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy50ZXh0ID9cbiAgICAgIGAgYW5kICgob3B0aW9ucy50aXRsZSBsaWtlIFwiJHtmaWx0ZXJPcHRpb25zLnRleHR9XCIpIG9yIChvcHRpb25zLmFubm90YXRpb24gbGlrZSBcIiR7ZmlsdGVyT3B0aW9ucy50ZXh0fVwiKSlgOiAnJztcbiAgICBjb25zdCBmaWx0ZXIgPSBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzLmZpbHRlcihgKCR7ZmlsdGVyaW5nU3RyaW5nfSlgKS5pbmNsdWRlKCdzZXNzaW9uLnVzZXIsIG9wdGlvbnMnKTtcbiAgICBjb25zdCBsaXN0ID0gZmlsdGVyLmxpc3QobGlzdE9wdGlvbnMpO1xuICAgIHJldHVybiBsaXN0O1xuICB9XG59XG4iXX0=
|
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhpc3RvcnktdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFHcEIsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtJQUM1RCxRQUFRLFdBQVcsRUFBRTtRQUNyQixLQUFLLE9BQU87WUFDVixPQUFPLG9CQUFvQixDQUFDO1FBQzlCLEtBQUssV0FBVztZQUNkLE9BQU8sc0NBQXNDLENBQUM7UUFDaEQsS0FBSyxVQUFVO1lBQ2IsT0FBTyxFQUFFLENBQUM7UUFDWixLQUFLLFdBQVc7WUFDZCxPQUFPLHFDQUFxQyxDQUFDO1FBQy9DLEtBQUssV0FBVztZQUNkLE9BQU8sb0JBQW9CLENBQUM7UUFDOUIsS0FBSyxZQUFZO1lBQ2YsT0FBTyxzQ0FBc0MsQ0FBQztRQUNoRCxLQUFLLFlBQVk7WUFDZixPQUFPLG9CQUFvQixDQUFDO1FBQzlCLEtBQUssV0FBVztZQUNkLE9BQU8sc0NBQXNDLENBQUM7UUFDaEQsS0FBSyxXQUFXO1lBQ2QsT0FBTyxvQkFBb0IsQ0FBQztLQUM3QjtBQUNILENBQUMsQ0FBQztBQUVGLE1BQU0sS0FBVyxZQUFZLENBeUY1QjtBQXpGRCxXQUFpQixZQUFZO0lBQzNCLFNBQXNCLE9BQU8sQ0FBQyxVQUFrQjs7WUFDOUMsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDbkgsa0VBQWtFO1lBQ2xFLE1BQU0sTUFBTSxH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Q0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDekYsZUFBZSxJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDhCQUE4QixDQUFBLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDL0UsZUFBZSxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDckMsOEJBQThCLGFBQWEsQ0FBQyxJQUFJLG1DQUFtQyxhQUFhLENBQUMsSUFBSSxLQUFLLENBQUEsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqSCxNQUFNLE1BQU0sR0FDVixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLO2lCQUN0QixrQkFBa0IsRUFBRTtpQkFDcEIsTUFBTSxDQUFDLElBQUksZUFBZSxHQUFHLENBQUM7aUJBQzlCLE9BQU8sQ0FBQyx1QkFBdUIsQ0FBQztpQkFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7S0FBQTtJQWxCcUIsMkJBQWMsaUJBa0JuQyxDQUFBO0FBQ0gsQ0FBQyxFQXpGZ0IsWUFBWSxLQUFaLFlBQVksUUF5RjVCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgdmFsaWQtanNkb2MgKi9cbmltcG9ydCAqIGFzIGdyb2sgZnJvbSAnZGF0YWdyb2stYXBpL2dyb2snO1xuaW1wb3J0ICogYXMgdWkgZnJvbSAnZGF0YWdyb2stYXBpL3VpJztcbmltcG9ydCAqIGFzIERHIGZyb20gJ2RhdGFncm9rLWFwaS9kZyc7XG5pbXBvcnQgd3UgZnJvbSAnd3UnO1xuaW1wb3J0IHtEYXRlT3B0aW9ucywgRmlsdGVyT3B0aW9uc30gZnJvbSAnLi9mdW5jdGlvbi12aWV3JztcblxuY29uc3QgZ2V0U2VhcmNoU3RyaW5nQnlQYXR0ZXJuID0gKGRhdGVQYXR0ZXJuOiBEYXRlT3B0aW9ucykgPT4ge1xuICBzd2l0Y2ggKGRhdGVQYXR0ZXJuKSB7XG4gIGNhc2UgJ1RvZGF5JzpcbiAgICByZXR1cm4gYCBhbmQgc3RhcnRlZCA+IC0xZGA7XG4gIGNhc2UgJ1llc3RlcmRheSc6XG4gICAgcmV0dXJuIGAgYW5kIHN0YXJ0ZWQgPiAtMmQgYW5kIHN0YXJ0ZWQgPCAtMWRgO1xuICBjYXNlICdBbnkgdGltZSc6XG4gICAgcmV0dXJuIGBgO1xuICBjYXNlICdMYXN0IHllYXInOlxuICAgIHJldHVybiBgYW5kIHN0YXJ0ZWQgPiAtMnkgYW5kIHN0YXJ0ZWQgPCAtMXlgO1xuICBjYXNlICdUaGlzIHllYXInOlxuICAgIHJldHVybiBgIGFuZCBzdGFydGVkID4gLTF5YDtcbiAgY2FzZSAnTGFzdCBtb250aCc6XG4gICAgcmV0dXJuIGAgYW5kIHN0YXJ0ZWQgPiAtMm0gYW5kIHN0YXJ0ZWQgPCAtMW1gO1xuICBjYXNlICdUaGlzIG1vbnRoJzpcbiAgICByZXR1cm4gYCBhbmQgc3RhcnRlZCA+IC0xbWA7XG4gIGNhc2UgJ0xhc3Qgd2Vlayc6XG4gICAgcmV0dXJuIGAgYW5kIHN0YXJ0ZWQgPiAtMncgYW5kIHN0YXJ0ZWQgPCAtMXdgO1xuICBjYXNlICdUaGlzIHdlZWsnOlxuICAgIHJldHVybiBgIGFuZCBzdGFydGVkID4gLTF3YDtcbiAgfVxufTtcblxuZXhwb3J0IG5hbWVzcGFjZSBoaXN0b3J5VXRpbHMge1xuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gbG9hZFJ1bihmdW5jQ2FsbElkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBwdWxsZWRSdW4gPSBhd2FpdCBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzLmFsbFBhY2thZ2VWZXJzaW9ucygpLmluY2x1ZGUoJ2lucHV0cywgb3V0cHV0cycpLmZpbmQoZnVuY0NhbGxJZCk7XG4gICAgLy8gRklYIE1FOiBtYW51YWxseSBnZXQgc2NyaXB0IHNpbmNlIHB1bGxlZFJ1biBjb250YWlucyBlbXB0eSBGdW5jXG4gICAgY29uc3Qgc2NyaXB0ID0gYXdhaXQgZ3Jvay5kYXBpLmZ1bmN0aW9ucy5hbGxQYWNrYWdlVmVyc2lvbnMoKS5maW5kKHB1bGxlZFJ1bi5mdW5jLmlkKTtcbiAgICBwdWxsZWRSdW4uZnVuYyA9IHNjcmlwdDtcbiAgICBwdWxsZWRSdW4ub3B0aW9uc1snaXNIaXN0b3JpY2FsJ10gPSB0cnVlO1xuICAgIGNvbnN0IGRmT3V0cHV0cyA9IHd1KHB1bGxlZFJ1bi5vdXRwdXRQYXJhbXMudmFsdWVzKCkgYXMgREcuRnVuY0NhbGxQYXJhbVtdKVxuICAgICAgLmZpbHRlcigob3V0cHV0KSA9PiBvdXRwdXQucHJvcGVydHkucHJvcGVydHlUeXBlID09PSBERy5UWVBFLkRBVEFfRlJBTUUpO1xuICAgIGZvciAoY29uc3Qgb3V0cHV0IG9mIGRmT3V0cHV0cylcbiAgICAgIHB1bGxlZFJ1bi5vdXRwdXRzW291dHB1dC5uYW1lXSA9IGF3YWl0IGdyb2suZGFwaS50YWJsZXMuZ2V0VGFibGUocHVsbGVkUnVuLm91dHB1dHNbb3V0cHV0Lm5hbWVdKTtcblxuICAgIGNvbnN0IGRmSW5wdXRzID0gd3UocHVsbGVkUnVuLmlucHV0UGFyYW1zLnZhbHVlcygpIGFzIERHLkZ1bmNDYWxsUGFyYW1bXSlcbiAgICAgIC5maWx0ZXIoKGlucHV0KSA9PiBpbnB1dC5wcm9wZXJ0eS5wcm9wZXJ0eVR5cGUgPT09IERHLlRZUEUuREFUQV9GUkFNRSk7XG4gICAgZm9yIChjb25zdCBpbnB1dCBvZiBkZklucHV0cylcbiAgICAgIHB1bGxlZFJ1bi5pbnB1dHNbaW5wdXQubmFtZV0gPSBhd2FpdCBncm9rLmRhcGkudGFibGVzLmdldFRhYmxlKHB1bGxlZFJ1bi5pbnB1dHNbaW5wdXQubmFtZV0pO1xuXG4gICAgcmV0dXJuIHB1bGxlZFJ1bjtcbiAgfVxuXG4gIGV4cG9ydCBhc3luYyBmdW5jdGlvbiBzYXZlUnVuKGNhbGxUb1NhdmU6IERHLkZ1bmNDYWxsKSB7XG4gICAgY29uc3QgZGZPdXRwdXRzID0gd3UoY2FsbFRvU2F2ZS5vdXRwdXRQYXJhbXMudmFsdWVzKCkgYXMgREcuRnVuY0NhbGxQYXJhbVtdKVxuICAgICAgLmZpbHRlcigob3V0cHV0KSA9PiBvdXRwdXQucHJvcGVydHkucHJvcGVydHlUeXBlID09PSBERy5UWVBFLkRBVEFfRlJBTUUpO1xuICAgIGZvciAoY29uc3Qgb3V0cHV0IG9mIGRmT3V0cHV0cylcbiAgICAgIGF3YWl0IGdyb2suZGFwaS50YWJsZXMudXBsb2FkRGF0YUZyYW1lKGNhbGxUb1NhdmUub3V0cHV0c1tvdXRwdXQubmFtZV0pO1xuXG4gICAgY29uc3QgZGZJbnB1dHMgPSB3dShjYWxsVG9TYXZlLmlucHV0UGFyYW1zLnZhbHVlcygpIGFzIERHLkZ1bmNDYWxsUGFyYW1bXSlcbiAgICAgIC5maWx0ZXIoKGlucHV0KSA9PiBpbnB1dC5wcm9wZXJ0eS5wcm9wZXJ0eVR5cGUgPT09IERHLlRZUEUuREFUQV9GUkFNRSk7XG4gICAgZm9yIChjb25zdCBpbnB1dCBvZiBkZklucHV0cylcbiAgICAgIGF3YWl0IGdyb2suZGFwaS50YWJsZXMudXBsb2FkRGF0YUZyYW1lKGNhbGxUb1NhdmUuaW5wdXRzW2lucHV0Lm5hbWVdKTtcblxuICAgIHJldHVybiBhd2FpdCBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzLnNhdmUoY2FsbFRvU2F2ZSk7XG4gIH1cblxuICBleHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVsZXRlUnVuKGNhbGxUb0RlbGV0ZTogREcuRnVuY0NhbGwpIHtcbiAgICBhd2FpdCBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzLmRlbGV0ZShjYWxsVG9EZWxldGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvYWRzIGFsbCB0aGUgZnVuY3Rpb24gY2FsbCBvZiB0aGlzIGZ1bmN0aW9uLlxuICAgKiBEZXNpZ25lZCB0byBwdWxsIGhzdG9yaWNhbCBydW5zIGluIGZhc3QgbWFubmVyIGFuZCB0aGUgY2FsbCB7QGxpbmsgbG9hZFJ1bn0gd2l0aCBzcGVjaWZpZWQgcnVuIElELlxuICAgKiBXQVJOSU5HOiBGdW5jQ2FsbCBpbnB1dHMvb3V0cHV0cyBmaWVsZHMgYXJlIG5vdCBpbmNsdWRlZFxuICAgKiBAcGFyYW0gZnVuY0lkIElEIG9mIEZ1bmMgd2hpY2ggY2FsbHMgd2UgYXJlIGxvb2tpbmcgZm9yLiBHZXQgaXQgdXNpbmcge0BsaW5rIGZ1bmMuaWR9IGZpZWxkXG4gICAqIEByZXR1cm4gUHJvbWlzZSBvbiBhcnJheSBvZiBGdW5jQ2FsbHMgY29ycmVzcG9uZGluZyB0byB0aGUgcGFzc2VkIEZ1bmMgSURcbiAgICogQHN0YWJpbGl0eSBEZXByZWNhdGVkLiBTY3JpcHQgSUQgY2hhbmdlcyB3aXRoIGV2ZXJ5IHBhY2thZ2UgcmVsZWFzZSwgc28gc2VhcmNoaW5nIGJ5IElEIGlzIHVzZWxlc3MgaW4gcHJhY3RpY2UuXG4gKi9cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHB1bGxSdW5zKFxuICAgIGZ1bmNJZDogc3RyaW5nLFxuICAgIGZpbHRlck9wdGlvbnM6IEZpbHRlck9wdGlvbnMgPSB7fSxcbiAgICBsaXN0T3B0aW9uczoge3BhZ2VTaXplPzogbnVtYmVyLCBwYWdlTnVtYmVyPzogbnVtYmVyLCBmaWx0ZXI/OiBzdHJpbmcsIG9yZGVyPzogc3RyaW5nfSA9IHt9XG4gICk6IFByb21pc2U8REcuRnVuY0NhbGxbXT4ge1xuICAgIGxldCBmaWx0ZXJpbmdTdHJpbmcgPSBgZnVuYy5pZD1cIiR7ZnVuY0lkfVwiYDtcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy5hdXRob3IgPyBgIGFuZCBzZXNzaW9uLnVzZXIuaWQ9XCIke2ZpbHRlck9wdGlvbnMuYXV0aG9yLmlkfVwiYDonJztcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy5kYXRlID8gZ2V0U2VhcmNoU3RyaW5nQnlQYXR0ZXJuKGZpbHRlck9wdGlvbnMuZGF0ZSk6ICcnO1xuICAgIGNvbnN0IGZpbHRlciA9IGdyb2suZGFwaS5mdW5jdGlvbnMuY2FsbHNcbiAgICAgIC5hbGxQYWNrYWdlVmVyc2lvbnMoKVxuICAgICAgLmZpbHRlcihmaWx0ZXJpbmdTdHJpbmcpXG4gICAgICAuaW5jbHVkZSgnc2Vzc2lvbi51c2VyLCBvcHRpb25zJyk7XG4gICAgY29uc3QgbGlzdCA9IGZpbHRlci5saXN0KGxpc3RPcHRpb25zKTtcbiAgICByZXR1cm4gbGlzdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkcyBhbGwgdGhlIGZ1bmN0aW9uIGNhbGwgb2YgdGhpcyBmdW5jdGlvbi5cbiAgICogRGVzaWduZWQgdG8gcHVsbCBoc3RvcmljYWwgcnVucyBpbiBmYXN0IG1hbm5lciBhbmQgdGhlIGNhbGwge0BsaW5rIGxvYWRSdW59IHdpdGggc3BlY2lmaWVkIHJ1biBJRC5cbiAgICogV0FSTklORzogRnVuY0NhbGwgaW5wdXRzL291dHB1dHMgZmllbGRzIGFyZSBub3QgaW5jbHVkZWRcbiAgICogQHBhcmFtIGZ1bmNOYW1lIE5hbWUgb2YgRnVuYyB3aGljaCBjYWxscyB3ZSBhcmUgbG9va2luZyBmb3IuIEdldCBpdCB1c2luZyB7QGxpbmsgZnVuYy5uYW1lfSBmaWVsZFxuICAgKiBAcmV0dXJuIFByb21pc2Ugb24gYXJyYXkgb2YgRnVuY0NhbGxzIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHBhc3NlZCBGdW5jIElEXG4gICAqIEBzdGFiaWxpdHkgRXhwZXJpbWVudGFsXG4gKi9cbiAgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHB1bGxSdW5zQnlOYW1lKFxuICAgIGZ1bmNOYW1lOiBzdHJpbmcsXG4gICAgZmlsdGVyT3B0aW9uczogRmlsdGVyT3B0aW9ucyA9IHt9LFxuICAgIGxpc3RPcHRpb25zOiB7cGFnZVNpemU/OiBudW1iZXIsIHBhZ2VOdW1iZXI/OiBudW1iZXIsIGZpbHRlcj86IHN0cmluZywgb3JkZXI/OiBzdHJpbmd9ID0ge31cbiAgKTogUHJvbWlzZTxERy5GdW5jQ2FsbFtdPiB7XG4gICAgbGV0IGZpbHRlcmluZ1N0cmluZyA9IGBmdW5jLm5hbWU9XCIke2Z1bmNOYW1lfVwiYDtcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy5hdXRob3IgPyBgIGFuZCBzZXNzaW9uLnVzZXIuaWQ9XCIke2ZpbHRlck9wdGlvbnMuYXV0aG9yLmlkfVwiYDonJztcbiAgICBmaWx0ZXJpbmdTdHJpbmcgKz0gZmlsdGVyT3B0aW9ucy5kYXRlID8gZ2V0U2VhcmNoU3RyaW5nQnlQYXR0ZXJuKGZpbHRlck9wdGlvbnMuZGF0ZSk6ICcnO1xuICAgIGZpbHRlcmluZ1N0cmluZyArPSBmaWx0ZXJPcHRpb25zLmlzU2hhcmVkID8gYCBhbmQgb3B0aW9ucy5pc1NoYXJlZD1cInRydWVcImA6ICcnO1xuICAgIGZpbHRlcmluZ1N0cmluZyArPSBmaWx0ZXJPcHRpb25zLnRleHQgP1xuICAgICAgYCBhbmQgKChvcHRpb25zLnRpdGxlIGxpa2UgXCIke2ZpbHRlck9wdGlvbnMudGV4dH1cIikgb3IgKG9wdGlvbnMuYW5ub3RhdGlvbiBsaWtlIFwiJHtmaWx0ZXJPcHRpb25zLnRleHR9XCIpKWA6ICcnO1xuICAgIGNvbnN0IHJlc3VsdCA9XG4gICAgICBncm9rLmRhcGkuZnVuY3Rpb25zLmNhbGxzXG4gICAgICAgIC5hbGxQYWNrYWdlVmVyc2lvbnMoKVxuICAgICAgICAuZmlsdGVyKGAoJHtmaWx0ZXJpbmdTdHJpbmd9KWApXG4gICAgICAgIC5pbmNsdWRlKCdzZXNzaW9uLnVzZXIsIG9wdGlvbnMnKVxuICAgICAgICAubGlzdChsaXN0T3B0aW9ucyk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxufVxuIl19
|