@magic-xpa/engine 4.1000.0-dev4100.99 → 4.1100.0-dev4110.1
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/esm2020/src/ClientManager.mjs +12 -12
- package/esm2020/src/ConstInterface.mjs +2 -1
- package/esm2020/src/CurrentClientVersion.mjs +2 -2
- package/esm2020/src/commands/ClientToServer/DataviewCommand.mjs +6 -6
- package/esm2020/src/commands/ClientToServer/EvaluateCommand.mjs +4 -4
- package/esm2020/src/commands/ClientToServer/EventCommand.mjs +8 -8
- package/esm2020/src/commands/ClientToServer/ExecOperCommand.mjs +4 -4
- package/esm2020/src/commands/ClientToServer/IniputForceWriteCommand.mjs +5 -5
- package/esm2020/src/commands/ClientToServer/RecomputeCommand.mjs +7 -7
- package/esm2020/src/commands/ClientToServer/TransactionCommand.mjs +6 -6
- package/esm2020/src/commands/ServerToClient/EnhancedVerifyCommand.mjs +8 -8
- package/esm2020/src/commands/ServerToClient/ResultCommand.mjs +7 -7
- package/esm2020/src/data/DataView.mjs +34 -34
- package/esm2020/src/data/DataviewManager.mjs +7 -7
- package/esm2020/src/data/Record.mjs +10 -10
- package/esm2020/src/data/TaskTransactionManager.mjs +4 -4
- package/esm2020/src/data/XMLBasedDcValuesBuilder.mjs +5 -5
- package/esm2020/src/env/Environment.mjs +14 -7
- package/esm2020/src/event/Event.mjs +4 -1
- package/esm2020/src/event/EventHandler.mjs +8 -3
- package/esm2020/src/event/EventHandlerPosition.mjs +5 -1
- package/esm2020/src/event/EventsManager.mjs +10 -1
- package/esm2020/src/event/IEventsManager.mjs +1 -1
- package/esm2020/src/event/RunTimeEvent.mjs +16 -16
- package/esm2020/src/exp/ExpressionEvaluator.mjs +8 -4
- package/esm2020/src/gui/FormsTable.mjs +8 -8
- package/esm2020/src/gui/MgControl.mjs +10 -13
- package/esm2020/src/gui/MgForm.mjs +9 -23
- package/esm2020/src/http/HttpManager.mjs +8 -8
- package/esm2020/src/remote/RemoteCommandsProcessor.mjs +34 -23
- package/esm2020/src/rt/DataviewHeaderBase.mjs +16 -16
- package/esm2020/src/security/UserDetails.mjs +12 -12
- package/esm2020/src/tasks/MGData.mjs +4 -4
- package/esm2020/src/tasks/RCTimer.mjs +10 -10
- package/esm2020/src/tasks/Task.mjs +43 -42
- package/esm2020/src/util/FlowMonitorQueue.mjs +107 -2
- package/esm2020/src/util/PrmMap.mjs +5 -5
- package/esm2020/src/util/ReturnResult.mjs +7 -7
- package/fesm2015/magic-xpa-engine.mjs +461 -338
- package/fesm2015/magic-xpa-engine.mjs.map +1 -1
- package/fesm2020/magic-xpa-engine.mjs +456 -326
- package/fesm2020/magic-xpa-engine.mjs.map +1 -1
- package/package.json +6 -6
- package/src/ConstInterface.d.ts +1 -0
- package/src/env/Environment.d.ts +2 -0
- package/src/event/EventsManager.d.ts +3 -0
- package/src/event/IEventsManager.d.ts +2 -0
- package/src/exp/ExpressionEvaluator.d.ts +1 -1
- package/src/gui/MgControl.d.ts +0 -1
- package/src/gui/MgForm.d.ts +1 -3
- package/src/remote/RemoteCommandsProcessor.d.ts +1 -0
- package/src/util/FlowMonitorQueue.d.ts +8 -0
- package/magic-xpa-engine.d.ts +0 -2
@@ -5,13 +5,6 @@ import { HttpClientEvents } from "./client/HttpClientEvents";
|
|
5
5
|
import { HttpClientSync } from "./client/HttpClientSync";
|
6
6
|
import { HttpClientAsync } from "./client/HttpClientAsync";
|
7
7
|
export class HttpManager {
|
8
|
-
constructor() {
|
9
|
-
this._httpCommunicationTimeoutMS = HttpManager.DEFAULT_HTTP_COMMUNICATION_TIMEOUT;
|
10
|
-
this._httpClientAsync = null;
|
11
|
-
this._isAbortingMagicEngine = false;
|
12
|
-
this._httpClientAsync = new HttpClientAsync(HttpManager._nativeHttpClient);
|
13
|
-
this.RegisterBasicDelegates();
|
14
|
-
}
|
15
8
|
getHttpClient() {
|
16
9
|
if (this.IsAbortingMagicEngine)
|
17
10
|
return new HttpClientSync();
|
@@ -31,6 +24,13 @@ export class HttpManager {
|
|
31
24
|
}
|
32
25
|
get IsAbortingMagicEngine() { return this._isAbortingMagicEngine; }
|
33
26
|
set IsAbortingMagicEngine(isAbortingMagicEngine) { this._isAbortingMagicEngine = isAbortingMagicEngine; }
|
27
|
+
constructor() {
|
28
|
+
this._httpCommunicationTimeoutMS = HttpManager.DEFAULT_HTTP_COMMUNICATION_TIMEOUT;
|
29
|
+
this._httpClientAsync = null;
|
30
|
+
this._isAbortingMagicEngine = false;
|
31
|
+
this._httpClientAsync = new HttpClientAsync(HttpManager._nativeHttpClient);
|
32
|
+
this.RegisterBasicDelegates();
|
33
|
+
}
|
34
34
|
RegisterBasicDelegates() {
|
35
35
|
HttpClientEvents.GetHttpCommunicationTimeout_Event = this.GetHttpCommunicationTimeoutMS.bind(this);
|
36
36
|
}
|
@@ -94,4 +94,4 @@ HttpManager._instance = null;
|
|
94
94
|
HttpManager.DEFAULT_HTTP_COMMUNICATION_TIMEOUT = 5 * 1000;
|
95
95
|
HttpManager.DEFAULT_OFFLINE_HTTP_COMMUNICATION_TIMEOUT = 2 * 1000;
|
96
96
|
HttpManager._nativeHttpClient = null;
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cE1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL2h0dHAvSHR0cE1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQVcsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFeEMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRTNELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFekQsTUFBTSxPQUFPLFdBQVc7SUF3Q3RCO1FBbENRLGdDQUEyQixHQUFXLFdBQVcsQ0FBQyxrQ0FBa0MsQ0FBQztRQUNyRixxQkFBZ0IsR0FBb0IsSUFBSSxDQUFDO1FBNkJ6QywyQkFBc0IsR0FBWSxLQUFLLENBQUM7UUFLOUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFsQ08sYUFBYTtRQUduQixJQUFHLElBQUksQ0FBQyxxQkFBcUI7WUFDM0IsT0FBTyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBRTlCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLDBCQUEwQixDQUFDLEtBQWE7UUFDMUMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEtBQUssQ0FBQztJQUMzQyxDQUFDO0lBR0QsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFVBQXNCO1FBRS9DLFdB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QUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0IsR0FBRyxHQUFHLEdBQUcsR0FBRyx3QkFBd0IsQ0FBQzthQUN0QztZQUVELElBQUksY0FBYyxLQUFLLElBQUksRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQy9CLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3ZDO2FBQ0Y7aUJBQ0k7Z0JBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQy9CLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO2lCQUNqQjtnQkFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLFlBQVksR0FBRyxjQUFjLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztnQkFDNUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN2QztTQUNGO0lBQ0gsQ0FBQzs7QUEvSWMscUJBQVMsR0FBZ0IsSUFBSSxDQUFDO0FBRTdCLDhDQUFrQyxHQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7QUFDdEQsc0RBQTBDLEdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztBQWtCL0QsNkJBQWlCLEdBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHBsaWNhdGlvbkV4Y2VwdGlvbiwgRGVidWcsIE5TdHJpbmcsIFJlZlBhcmFtfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtMb2dnZXJ9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7Q29uc3RJbnRlcmZhY2V9IGZyb20gXCIuLi9Db25zdEludGVyZmFjZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnRCYXNlfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEJhc2VcIjtcclxuaW1wb3J0IHtIdHRwQ2xpZW50RXZlbnRzfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEV2ZW50c1wiO1xyXG5pbXBvcnQge0lDb21tdW5pY2F0aW9uc0ZhaWx1cmVIYW5kbGVyfSBmcm9tIFwiLi9jbGllbnQvSUNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXJcIjtcclxuaW1wb3J0IHtIdHRwQ2xpZW50U3luY30gZnJvbSBcIi4vY2xpZW50L0h0dHBDbGllbnRTeW5jXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudEFzeW5jfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEFzeW5jXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgSHR0cE1hbmFnZXIge1xyXG4gIHByaXZhdGUgc3RhdGljIF9pbnN0YW5jZTogSHR0cE1hbmFnZXIgPSBudWxsO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9IVFRQX0NPTU1VTklDQVRJT05fVElNRU9VVDogbnVtYmVyID0gNSAqIDEwMDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfT0ZGTElORV9IVFRQX0NPTU1VTklDQVRJT05fVElNRU9VVDogbnVtYmVyID0gMiAqIDEwMDA7XHJcblxyXG4gIHByaXZhdGUgX2h0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TOiBudW1iZXIgPSBIdHRwTWFuYWdlci5ERUZBVUxUX0hUVFBfQ09NTVVOSUNBVElPTl9USU1FT1VUO1xyXG4gIHByaXZhdGUgX2h0dHBDbGllbnRBc3luYzogSHR0cENsaWVudEFzeW5jID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBnZXRIdHRwQ2xpZW50KCk6IEh0dHBDbGllbnRCYXNlXHJcbiAge1xyXG4gICAgLy8gQ3JlYXRpbmcgYSBuZXcgaW5zdGFuY2Ugb2Ygc3luYyBIdHRwQ2xpZW50IGJlY2F1c2UgaXQgd2lsbCBiZSBjcmVhdGVkIG9ubHkgb25jZSBkdXJpbmcgdGhlIGxhc3QgcmVxdWVzdFxyXG4gICAgaWYodGhpcy5Jc0Fib3J0aW5nTWFnaWNFbmdpbmUpXHJcbiAgICAgIHJldHVybiBuZXcgSHR0cENsaWVudFN5bmMoKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudEFzeW5jO1xyXG4gIH1cclxuXHJcbiAgc2V0IEh0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2h0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBfbmF0aXZlSHR0cENsaWVudDogSHR0cENsaWVudCA9IG51bGw7XHJcbiAgc3RhdGljIHNldE5hdGl2ZUh0dHBDbGllbnQoaHR0cENsaWVudDogSHR0cENsaWVudClcclxuICB7XHJcbiAgICBIdHRwTWFuYWdlci5fbmF0aXZlSHR0cENsaWVudCA9IGh0dHBDbGllbnQ7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgR2V0SW5zdGFuY2UoKTogSHR0cE1hbmFnZXIge1xyXG4gICAgaWYgKEh0dHBNYW5hZ2VyLl9pbnN0YW5jZSA9PT0gbnVsbCkge1xyXG4gICAgICBIdHRwTWFuYWdlci5faW5zdGFuY2UgPSBuZXcgSHR0cE1hbmFnZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gSHR0cE1hbmFnZXIuX2luc3RhbmNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaXNBYm9ydGluZ01hZ2ljRW5naW5lOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZ2V0IElzQWJvcnRpbmdNYWdpY0VuZ2luZSgpIHsgcmV0dXJuIHRoaXMuX2lzQWJvcnRpbmdNYWdpY0VuZ2luZTsgfVxyXG4gIHNldCBJc0Fib3J0aW5nTWFnaWNFbmdpbmUoaXNBYm9ydGluZ01hZ2ljRW5naW5lOiBib29sZWFuKSB7IHRoaXMuX2lzQWJvcnRpbmdNYWdpY0VuZ2luZSA9IGlzQWJvcnRpbmdNYWdpY0VuZ2luZTsgfVxyXG5cclxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5faHR0cENsaWVudEFzeW5jID0gbmV3IEh0dHBDbGllbnRBc3luYyhIdHRwTWFuYWdlci5fbmF0aXZlSHR0cENsaWVudCk7XHJcbiAgICB0aGlzLlJlZ2lzdGVyQmFzaWNEZWxlZ2F0ZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgUmVnaXN0ZXJCYXNpY0RlbGVnYXRlcygpOiB2b2lkIHtcclxuICAgIEh0dHBDbGllbnRFdmVudHMuR2V0SHR0cENvbW11bmljYXRpb25UaW1lb3V0X0V2ZW50ID0gdGhpcy5HZXRIdHRwQ29tbXVuaWNhdGlvblRpbWVvdXRNUy5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgR2V0SHR0cENvbW11bmljYXRpb25UaW1lb3V0TVMoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwQ29tbXVuaWNhdGlvblRpbWVvdXRNUztcclxuICB9XHJcblxyXG4gIFNldENvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIoaGFuZGxlcjogSUNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0SHR0cENsaWVudCgpLkNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIgPSBoYW5kbGVyO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgR2V0Q29udGVudChyZXF1ZXN0ZWRVUkw6IHN0cmluZywgcmVxdWVzdENvbnRlbnQ6IHN0cmluZywgdXNlQ2FjaGU6IGJvb2xlYW4sIGlzRXJyb3I6IFJlZlBhcmFtPGJvb2xlYW4+KTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIGxldCByZXNwb25zZTogc3RyaW5nO1xyXG4gICAgRGVidWcuQXNzZXJ0KHRoaXMuZ2V0SHR0cENsaWVudCgpICE9IG51bGwpO1xyXG4gICAgLy8gbGV0IHN0YXJ0VGltZTogbnVtYmVyID0gTWlzYy5nZXRTeXN0ZW1NaWxsaXNlY29uZHMoKTtcclxuXHJcbiAgICB0cnkge1xyXG4gICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhcIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcIik7XHJcblxyXG4gICAgICBpc0Vycm9yLnZhbHVlID0gZmFsc2U7XHJcblxyXG4gICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhyZXF1ZXN0ZWRVUkwpO1xyXG5cclxuICAgICAgSHR0cE1hbmFnZXIuTG9nQWNjZXNzVG9TZXJ2ZXIoXCJcIiwgcmVxdWVzdENvbnRlbnQpO1xyXG4gICAgICByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ2V0SHR0cENsaWVudCgpLkdldENvbnRlbnQocmVxdWVzdGVkVVJMLCByZXF1ZXN0Q29udGVudCwgdXNlQ2FjaGUpO1xyXG4gICAgICBEZWJ1Zy5Bc3NlcnQocmVzcG9uc2UgIT09IG51bGwpO1xyXG4gICAgICBsZXQgZXJyb3JSZXNwb25zZTogc3RyaW5nID0gSHR0cE1hbmFnZXIuQ2hlY2tBbmRHZXRFcnJvclJlc3BvbnNlKHJlc3BvbnNlKTtcclxuXHJcbiAgICAgIGlmIChlcnJvclJlc3BvbnNlICE9PSBudWxsKSB7XHJcbiAgICAgICAgcmVzcG9uc2UgPSBlcnJvclJlc3BvbnNlO1xyXG4gICAgICAgIGlzRXJyb3IudmFsdWUgPSB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgIH1cclxuICAgIGNhdGNoIChleCkge1xyXG4gICAgICAvLyBUT0RPOiByZWxhdGl2ZSByZXF1ZXN0ZWRVUkwgZG9lc24ndCB3b3JrIGhlcmUuXHJcbiAgICAgIGxldCB1cmw6IFVSTCA9IG5ldyBVUkwocmVxdWVzdGVkVVJMKTtcclxuICAgICAgdGhyb3cgbmV3IEFwcGxpY2F0aW9uRXhjZXB0aW9uKGV4Lk1lc3NhZ2UgKyBcIlxcblwiICsgdXJsLm9yaWdpbiArIHVybC5wYXRobmFtZSwgZXgpO1xyXG4gICAgfVxyXG4gICAgZmluYWxseSB7XHJcbiAgICAgIC8vIFRPRE86IEltcGxlbWVudCBpbiBXZWJDbGllbnQuXHJcbiAgICAgIC8vIEhvdyBkbyB3ZSBrbm93IGlmIHRoZSBjb250ZW50cyB3ZXJlIHJldHVybmVkIGZvcm0gYnJvd3NlciBjYWNoZT9cclxuICAgICAgLy8gbGV0IGVsYXBzZWRUaW1lOiBudW1iZXIgPSBNaXNjLmdldFN5c3RlbU1pbGxpc2Vjb25kcygpIC0gc3RhcnRUaW1lO1xyXG5cclxuICAgICAgLy8gTG9nZ2VyLkluc3RhbmNlLldyaXRlU2VydmVyVG9Mb2coXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgc3RyaW5nLkZvcm1hdChcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBcIkNvbXBsZXRlZCB7MH06IHsxOk4wfSBtcywgYWNjdW11bGF0ZWQ6IHsyOk4wfSBtcyAoc2VydmVyOiB7MzpOMH0pLCB7NH17NX17Nn0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlwiLFxyXG4gICAgICAvLyAgICAgICAgICAgICAgICAgIChjYWNoaW5nU3RyYXRlZ3kuRm91bmRJbkNhY2hlXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgID8gXCJcIlxyXG4gICAgICAvLyAgICAgICAgICAgICAgICAgICAgICA6IE5TdHJpbmcuRm9ybWF0KFwiI3swOk4wfVwiLCBTdGF0aXN0aWNzLkdldFJlcXVlc3RzQ250KCkpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBlbGFwc2VkVGltZSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBTdGF0aXN0aWNzLkdldEFjY3VtdWxhdGVkRXh0ZXJuYWxUaW1lKCksIFN0YXRpc3RpY3MuR2V0QWNjdW11bGF0ZWRTZXJ2ZXJUaW1lKCksXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKGNhY2hpbmdTdHJhdGVneS5Gb3VuZEluQ2FjaGVcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgPyBcIlwiXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgIDogKHJlc3BvbnNlICE9IG51bGxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBOU3RyaW5nLkZvcm1hdChcInswOk4wfSBieXRlcyBkb3dubG9hZGVkXCIsIHJlc3BvbnNlLmxlbmd0aClcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcIk51bGwgcmVzcG9uc2UhXCIpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBPU0Vudmlyb25tZW50LkVvbFNlcSwgT1NFbnZpcm9ubWVudC5UYWJTZXEpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5DaGVjayBpZiBhbiBIVFRQIHJlc3BvbnNlIGlzIGFuIGVycm9yIHJlc3BvbnNlLlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImh0dHBSZXNwb25zZVwiPnJlc3BvbnNlIHJldHVybmVkIHRvIGFuIEhUVFAgcmVxdWVzdC48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz5pZiB0aGUgcmVzcG9uc2UgY29udGFpbnMgdGhlIGVycm9yIGluZGljYXRvciAtIHRoZSBlcnJvciBpbmRpY2F0b3IgaXMgdHJ1bmNhdGVkIGFuZCB0aGUgcmVtYWluaW5nIGlzIHJldHVybmVkLlxyXG4gIC8vLyBvdGhlcndpc2UgLSBudWxsIChpbmRpY2F0aW5nIHRoYXQgdGhlICdodHRwIFJlc3BvbnNlJyBkaWRuJ3QgY29udGFpbiBhbiBlcnJvcikuPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIENoZWNrQW5kR2V0RXJyb3JSZXNwb25zZShodHRwUmVzcG9uc2U6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgZXJyb3JSZXNwb25zZTogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgICBpZiAoaHR0cFJlc3BvbnNlLnN0YXJ0c1dpdGgoQ29uc3RJbnRlcmZhY2UuVjI0X1JJQV9FUlJPUl9QUkVGSVgpKVxyXG4gICAgICBlcnJvclJlc3BvbnNlID0gaHR0cFJlc3BvbnNlLnN1YnN0cihDb25zdEludGVyZmFjZS5WMjRfUklBX0VSUk9SX1BSRUZJWC5sZW5ndGgpO1xyXG5cclxuICAgIHJldHVybiBlcnJvclJlc3BvbnNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgTG9nQWNjZXNzVG9TZXJ2ZXIobXNnOiBzdHJpbmcsIHJlcXVlc3RDb250ZW50OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChMb2dnZXIuSW5zdGFuY2UuU2hvdWxkTG9nU2VydmVyUmVsYXRlZE1lc3NhZ2VzKCkpIHtcclxuICAgICAgaWYgKCFOU3RyaW5nLklzTnVsbE9yRW1wdHkobXNnKSkge1xyXG4gICAgICAgIG1zZyA9IG1zZyArIFwiOyBhY2Nlc3Npbmcgc2VydmVyIC4uLlwiO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocmVxdWVzdENvbnRlbnQgPT09IG51bGwpIHtcclxuICAgICAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShtc2cpKSB7XHJcbiAgICAgICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhtc2cpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShtc2cpKSB7XHJcbiAgICAgICAgICBtc2cgPSBtc2cgKyBcIiBcIjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG1zZyA9IG1zZyArIFwidXBsb2FkaW5nIFwiICsgcmVxdWVzdENvbnRlbnQubGVuZ3RoICsgXCIgYnl0ZXNcIjtcclxuICAgICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhtc2cpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cE1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbmdpbmUvc3JjL2h0dHAvSHR0cE1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFFLEtBQUssRUFBRSxPQUFPLEVBQVcsTUFBTSxzQkFBc0IsQ0FBQztBQUNwRixPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFeEMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRTNELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFekQsTUFBTSxPQUFPLFdBQVc7SUFTZCxhQUFhO1FBR25CLElBQUcsSUFBSSxDQUFDLHFCQUFxQjtZQUMzQixPQUFPLElBQUksY0FBYyxFQUFFLENBQUM7UUFFOUIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksMEJBQTBCLENBQUMsS0FBYTtRQUMxQyxJQUFJLENBQUMsMkJBQTJCLEdBQUcsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFHRCxNQUFNLENBQUMsbUJBQW1CLENBQUMsVUFBc0I7UUFFL0MsV0FBVyxDQUFDLGlCQUFpQixHQUFHLFVBQVUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVc7UUFDaEIsSUFBSSxXQUFXLENBQUMsU0FBUyxLQUFLLElBQUksRUFBRTtZQUNsQyxXQUFXLENBQUMsU0FBUyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7U0FDM0M7UUFFRCxPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDL0IsQ0FBQztJQUdELElBQUkscUJBQXFCLEtBQUssT0FB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T0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDL0IsR0FBRyxHQUFHLEdBQUcsR0FBRyx3QkFBd0IsQ0FBQzthQUN0QztZQUVELElBQUksY0FBYyxLQUFLLElBQUksRUFBRTtnQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQy9CLE1BQU0sQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3ZDO2FBQ0Y7aUJBQ0k7Z0JBQ0gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQy9CLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO2lCQUNqQjtnQkFFRCxHQUFHLEdBQUcsR0FBRyxHQUFHLFlBQVksR0FBRyxjQUFjLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztnQkFDNUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN2QztTQUNGO0lBQ0gsQ0FBQzs7QUEvSWMscUJBQVMsR0FBZ0IsSUFBSSxDQUFDO0FBRTdCLDhDQUFrQyxHQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7QUFDdEQsc0RBQTBDLEdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztBQWtCL0QsNkJBQWlCLEdBQWUsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHBsaWNhdGlvbkV4Y2VwdGlvbiwgRGVidWcsIE5TdHJpbmcsIFJlZlBhcmFtfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtMb2dnZXJ9IGZyb20gXCJAbWFnaWMteHBhL3V0aWxzXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7Q29uc3RJbnRlcmZhY2V9IGZyb20gXCIuLi9Db25zdEludGVyZmFjZVwiO1xyXG5pbXBvcnQge0h0dHBDbGllbnRCYXNlfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEJhc2VcIjtcclxuaW1wb3J0IHtIdHRwQ2xpZW50RXZlbnRzfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEV2ZW50c1wiO1xyXG5pbXBvcnQge0lDb21tdW5pY2F0aW9uc0ZhaWx1cmVIYW5kbGVyfSBmcm9tIFwiLi9jbGllbnQvSUNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXJcIjtcclxuaW1wb3J0IHtIdHRwQ2xpZW50U3luY30gZnJvbSBcIi4vY2xpZW50L0h0dHBDbGllbnRTeW5jXCI7XHJcbmltcG9ydCB7SHR0cENsaWVudEFzeW5jfSBmcm9tIFwiLi9jbGllbnQvSHR0cENsaWVudEFzeW5jXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgSHR0cE1hbmFnZXIge1xyXG4gIHByaXZhdGUgc3RhdGljIF9pbnN0YW5jZTogSHR0cE1hbmFnZXIgPSBudWxsO1xyXG5cclxuICBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9IVFRQX0NPTU1VTklDQVRJT05fVElNRU9VVDogbnVtYmVyID0gNSAqIDEwMDA7XHJcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfT0ZGTElORV9IVFRQX0NPTU1VTklDQVRJT05fVElNRU9VVDogbnVtYmVyID0gMiAqIDEwMDA7XHJcblxyXG4gIHByaXZhdGUgX2h0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TOiBudW1iZXIgPSBIdHRwTWFuYWdlci5ERUZBVUxUX0hUVFBfQ09NTVVOSUNBVElPTl9USU1FT1VUO1xyXG4gIHByaXZhdGUgX2h0dHBDbGllbnRBc3luYzogSHR0cENsaWVudEFzeW5jID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBnZXRIdHRwQ2xpZW50KCk6IEh0dHBDbGllbnRCYXNlXHJcbiAge1xyXG4gICAgLy8gQ3JlYXRpbmcgYSBuZXcgaW5zdGFuY2Ugb2Ygc3luYyBIdHRwQ2xpZW50IGJlY2F1c2UgaXQgd2lsbCBiZSBjcmVhdGVkIG9ubHkgb25jZSBkdXJpbmcgdGhlIGxhc3QgcmVxdWVzdFxyXG4gICAgaWYodGhpcy5Jc0Fib3J0aW5nTWFnaWNFbmdpbmUpXHJcbiAgICAgIHJldHVybiBuZXcgSHR0cENsaWVudFN5bmMoKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5faHR0cENsaWVudEFzeW5jO1xyXG4gIH1cclxuXHJcbiAgc2V0IEh0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TKHZhbHVlOiBudW1iZXIpIHtcclxuICAgIHRoaXMuX2h0dHBDb21tdW5pY2F0aW9uVGltZW91dE1TID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHN0YXRpYyBfbmF0aXZlSHR0cENsaWVudDogSHR0cENsaWVudCA9IG51bGw7XHJcbiAgc3RhdGljIHNldE5hdGl2ZUh0dHBDbGllbnQoaHR0cENsaWVudDogSHR0cENsaWVudClcclxuICB7XHJcbiAgICBIdHRwTWFuYWdlci5fbmF0aXZlSHR0cENsaWVudCA9IGh0dHBDbGllbnQ7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgR2V0SW5zdGFuY2UoKTogSHR0cE1hbmFnZXIge1xyXG4gICAgaWYgKEh0dHBNYW5hZ2VyLl9pbnN0YW5jZSA9PT0gbnVsbCkge1xyXG4gICAgICBIdHRwTWFuYWdlci5faW5zdGFuY2UgPSBuZXcgSHR0cE1hbmFnZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gSHR0cE1hbmFnZXIuX2luc3RhbmNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaXNBYm9ydGluZ01hZ2ljRW5naW5lOiBib29sZWFuID0gZmFsc2U7XHJcbiAgZ2V0IElzQWJvcnRpbmdNYWdpY0VuZ2luZSgpIHsgcmV0dXJuIHRoaXMuX2lzQWJvcnRpbmdNYWdpY0VuZ2luZTsgfVxyXG4gIHNldCBJc0Fib3J0aW5nTWFnaWNFbmdpbmUoaXNBYm9ydGluZ01hZ2ljRW5naW5lOiBib29sZWFuKSB7IHRoaXMuX2lzQWJvcnRpbmdNYWdpY0VuZ2luZSA9IGlzQWJvcnRpbmdNYWdpY0VuZ2luZTsgfVxyXG5cclxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5faHR0cENsaWVudEFzeW5jID0gbmV3IEh0dHBDbGllbnRBc3luYyhIdHRwTWFuYWdlci5fbmF0aXZlSHR0cENsaWVudCk7XHJcbiAgICB0aGlzLlJlZ2lzdGVyQmFzaWNEZWxlZ2F0ZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgUmVnaXN0ZXJCYXNpY0RlbGVnYXRlcygpOiB2b2lkIHtcclxuICAgIEh0dHBDbGllbnRFdmVudHMuR2V0SHR0cENvbW11bmljYXRpb25UaW1lb3V0X0V2ZW50ID0gdGhpcy5HZXRIdHRwQ29tbXVuaWNhdGlvblRpbWVvdXRNUy5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgR2V0SHR0cENvbW11bmljYXRpb25UaW1lb3V0TVMoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9odHRwQ29tbXVuaWNhdGlvblRpbWVvdXRNUztcclxuICB9XHJcblxyXG4gIFNldENvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIoaGFuZGxlcjogSUNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuZ2V0SHR0cENsaWVudCgpLkNvbW11bmljYXRpb25zRmFpbHVyZUhhbmRsZXIgPSBoYW5kbGVyO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgR2V0Q29udGVudChyZXF1ZXN0ZWRVUkw6IHN0cmluZywgcmVxdWVzdENvbnRlbnQ6IHN0cmluZywgdXNlQ2FjaGU6IGJvb2xlYW4sIGlzRXJyb3I6IFJlZlBhcmFtPGJvb2xlYW4+KTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIGxldCByZXNwb25zZTogc3RyaW5nO1xyXG4gICAgRGVidWcuQXNzZXJ0KHRoaXMuZ2V0SHR0cENsaWVudCgpICE9IG51bGwpO1xyXG4gICAgLy8gbGV0IHN0YXJ0VGltZTogbnVtYmVyID0gTWlzYy5nZXRTeXN0ZW1NaWxsaXNlY29uZHMoKTtcclxuXHJcbiAgICB0cnkge1xyXG4gICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhcIioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcIik7XHJcblxyXG4gICAgICBpc0Vycm9yLnZhbHVlID0gZmFsc2U7XHJcblxyXG4gICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhyZXF1ZXN0ZWRVUkwpO1xyXG5cclxuICAgICAgSHR0cE1hbmFnZXIuTG9nQWNjZXNzVG9TZXJ2ZXIoXCJcIiwgcmVxdWVzdENvbnRlbnQpO1xyXG4gICAgICByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ2V0SHR0cENsaWVudCgpLkdldENvbnRlbnQocmVxdWVzdGVkVVJMLCByZXF1ZXN0Q29udGVudCwgdXNlQ2FjaGUpO1xyXG4gICAgICBEZWJ1Zy5Bc3NlcnQocmVzcG9uc2UgIT09IG51bGwpO1xyXG4gICAgICBsZXQgZXJyb3JSZXNwb25zZTogc3RyaW5nID0gSHR0cE1hbmFnZXIuQ2hlY2tBbmRHZXRFcnJvclJlc3BvbnNlKHJlc3BvbnNlKTtcclxuXHJcbiAgICAgIGlmIChlcnJvclJlc3BvbnNlICE9PSBudWxsKSB7XHJcbiAgICAgICAgcmVzcG9uc2UgPSBlcnJvclJlc3BvbnNlO1xyXG4gICAgICAgIGlzRXJyb3IudmFsdWUgPSB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiByZXNwb25zZTtcclxuICAgIH1cclxuICAgIGNhdGNoIChleCkge1xyXG4gICAgICAvLyBUT0RPOiByZWxhdGl2ZSByZXF1ZXN0ZWRVUkwgZG9lc24ndCB3b3JrIGhlcmUuXHJcbiAgICAgIGxldCB1cmw6IFVSTCA9IG5ldyBVUkwocmVxdWVzdGVkVVJMKTtcclxuICAgICAgdGhyb3cgbmV3IEFwcGxpY2F0aW9uRXhjZXB0aW9uKGV4Lk1lc3NhZ2UgKyBcIlxcblwiICsgdXJsLm9yaWdpbiArIHVybC5wYXRobmFtZSwgZXgpO1xyXG4gICAgfVxyXG4gICAgZmluYWxseSB7XHJcbiAgICAgIC8vIFRPRE86IEltcGxlbWVudCBpbiBXZWJDbGllbnQuXHJcbiAgICAgIC8vIEhvdyBkbyB3ZSBrbm93IGlmIHRoZSBjb250ZW50cyB3ZXJlIHJldHVybmVkIGZvcm0gYnJvd3NlciBjYWNoZT9cclxuICAgICAgLy8gbGV0IGVsYXBzZWRUaW1lOiBudW1iZXIgPSBNaXNjLmdldFN5c3RlbU1pbGxpc2Vjb25kcygpIC0gc3RhcnRUaW1lO1xyXG5cclxuICAgICAgLy8gTG9nZ2VyLkluc3RhbmNlLldyaXRlU2VydmVyVG9Mb2coXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgc3RyaW5nLkZvcm1hdChcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBcIkNvbXBsZXRlZCB7MH06IHsxOk4wfSBtcywgYWNjdW11bGF0ZWQ6IHsyOk4wfSBtcyAoc2VydmVyOiB7MzpOMH0pLCB7NH17NX17Nn0qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlwiLFxyXG4gICAgICAvLyAgICAgICAgICAgICAgICAgIChjYWNoaW5nU3RyYXRlZ3kuRm91bmRJbkNhY2hlXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgID8gXCJcIlxyXG4gICAgICAvLyAgICAgICAgICAgICAgICAgICAgICA6IE5TdHJpbmcuRm9ybWF0KFwiI3swOk4wfVwiLCBTdGF0aXN0aWNzLkdldFJlcXVlc3RzQ250KCkpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBlbGFwc2VkVGltZSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBTdGF0aXN0aWNzLkdldEFjY3VtdWxhdGVkRXh0ZXJuYWxUaW1lKCksIFN0YXRpc3RpY3MuR2V0QWNjdW11bGF0ZWRTZXJ2ZXJUaW1lKCksXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKGNhY2hpbmdTdHJhdGVneS5Gb3VuZEluQ2FjaGVcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgPyBcIlwiXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgIDogKHJlc3BvbnNlICE9IG51bGxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBOU3RyaW5nLkZvcm1hdChcInswOk4wfSBieXRlcyBkb3dubG9hZGVkXCIsIHJlc3BvbnNlLmxlbmd0aClcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcIk51bGwgcmVzcG9uc2UhXCIpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgLy8gICAgICAgICAgICAgICAgICBPU0Vudmlyb25tZW50LkVvbFNlcSwgT1NFbnZpcm9ubWVudC5UYWJTZXEpXHJcbiAgICAgIC8vICAgICAgICAgICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5DaGVjayBpZiBhbiBIVFRQIHJlc3BvbnNlIGlzIGFuIGVycm9yIHJlc3BvbnNlLlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImh0dHBSZXNwb25zZVwiPnJlc3BvbnNlIHJldHVybmVkIHRvIGFuIEhUVFAgcmVxdWVzdC48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz5pZiB0aGUgcmVzcG9uc2UgY29udGFpbnMgdGhlIGVycm9yIGluZGljYXRvciAtIHRoZSBlcnJvciBpbmRpY2F0b3IgaXMgdHJ1bmNhdGVkIGFuZCB0aGUgcmVtYWluaW5nIGlzIHJldHVybmVkLlxyXG4gIC8vLyBvdGhlcndpc2UgLSBudWxsIChpbmRpY2F0aW5nIHRoYXQgdGhlICdodHRwIFJlc3BvbnNlJyBkaWRuJ3QgY29udGFpbiBhbiBlcnJvcikuPC9yZXR1cm5zPlxyXG4gIHByaXZhdGUgc3RhdGljIENoZWNrQW5kR2V0RXJyb3JSZXNwb25zZShodHRwUmVzcG9uc2U6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBsZXQgZXJyb3JSZXNwb25zZTogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgICBpZiAoaHR0cFJlc3BvbnNlLnN0YXJ0c1dpdGgoQ29uc3RJbnRlcmZhY2UuVjI0X1JJQV9FUlJPUl9QUkVGSVgpKVxyXG4gICAgICBlcnJvclJlc3BvbnNlID0gaHR0cFJlc3BvbnNlLnN1YnN0cihDb25zdEludGVyZmFjZS5WMjRfUklBX0VSUk9SX1BSRUZJWC5sZW5ndGgpO1xyXG5cclxuICAgIHJldHVybiBlcnJvclJlc3BvbnNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgTG9nQWNjZXNzVG9TZXJ2ZXIobXNnOiBzdHJpbmcsIHJlcXVlc3RDb250ZW50OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmIChMb2dnZXIuSW5zdGFuY2UuU2hvdWxkTG9nU2VydmVyUmVsYXRlZE1lc3NhZ2VzKCkpIHtcclxuICAgICAgaWYgKCFOU3RyaW5nLklzTnVsbE9yRW1wdHkobXNnKSkge1xyXG4gICAgICAgIG1zZyA9IG1zZyArIFwiOyBhY2Nlc3Npbmcgc2VydmVyIC4uLlwiO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAocmVxdWVzdENvbnRlbnQgPT09IG51bGwpIHtcclxuICAgICAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShtc2cpKSB7XHJcbiAgICAgICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhtc2cpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBpZiAoIU5TdHJpbmcuSXNOdWxsT3JFbXB0eShtc2cpKSB7XHJcbiAgICAgICAgICBtc2cgPSBtc2cgKyBcIiBcIjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG1zZyA9IG1zZyArIFwidXBsb2FkaW5nIFwiICsgcmVxdWVzdENvbnRlbnQubGVuZ3RoICsgXCIgYnl0ZXNcIjtcclxuICAgICAgICBMb2dnZXIuSW5zdGFuY2UuV3JpdGVTZXJ2ZXJUb0xvZyhtc2cpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|