@aerokit/sdk 14.60.0 → 14.61.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.
|
@@ -27,10 +27,12 @@ class Websockets {
|
|
|
27
27
|
*
|
|
28
28
|
* @param uri The target WebSocket URI (e.g., 'ws://example.com/socket').
|
|
29
29
|
* @param handler The identifier or path of the script handling the WebSocket events.
|
|
30
|
+
* @param connectHeaders Headers of the STOMP CONNECT frame. A Dirigible '/stomp' endpoint needs
|
|
31
|
+
* 'Authorization: Bearer <token>' there - an anonymous CONNECT is refused.
|
|
30
32
|
* @returns A wrapper object for the new WebSocket session.
|
|
31
33
|
*/
|
|
32
|
-
static createWebsocket(uri, handler) {
|
|
33
|
-
const session = WebsocketsFacade.createWebsocket(uri, handler);
|
|
34
|
+
static createWebsocket(uri, handler, connectHeaders) {
|
|
35
|
+
const session = connectHeaders ? WebsocketsFacade.createWebsocket(uri, handler, JSON.stringify(connectHeaders)) : WebsocketsFacade.createWebsocket(uri, handler);
|
|
34
36
|
return new WebsocketClient(session, uri, handler);
|
|
35
37
|
}
|
|
36
38
|
/**
|
|
@@ -132,13 +134,16 @@ class WebsocketClient {
|
|
|
132
134
|
/**
|
|
133
135
|
* Sends a text message over the WebSocket connection.
|
|
134
136
|
* @param text The message to send.
|
|
137
|
+
* @param destination The STOMP destination the message is sent to. A Dirigible broker routes its
|
|
138
|
+
* application destinations '/ws/stomp/<endpoint>' to the handler of that endpoint. Without
|
|
139
|
+
* it the connection URI is sent as the destination, which no broker routes anywhere.
|
|
135
140
|
*/
|
|
136
|
-
send(text) {
|
|
141
|
+
send(text, destination) {
|
|
137
142
|
if (!this._session || this._session === null) {
|
|
138
143
|
console.error("Websocket Session is null. Message not sent.");
|
|
139
144
|
return;
|
|
140
145
|
}
|
|
141
|
-
this._session.send(this.uri, text);
|
|
146
|
+
this._session.send(destination ?? this.uri, text);
|
|
142
147
|
}
|
|
143
148
|
/**
|
|
144
149
|
* Closes the WebSocket connection.
|
|
@@ -152,4 +157,4 @@ class WebsocketClient {
|
|
|
152
157
|
if (typeof module !== "undefined") {
|
|
153
158
|
module.exports = Websockets;
|
|
154
159
|
}
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25ldC93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUgbmV0L3dlYnNvY2tldHNcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9uZXRcbiAqIEBuYW1lIFdlYnNvY2tldHNcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgV2Vic29ja2V0cyBtb2R1bGUgcHJvdmlkZXMgYW4gQVBJIGZvciBtYW5hZ2luZyBXZWJTb2NrZXQgY2xpZW50cyBhbmQgaGFuZGxpbmcgbGlmZWN5Y2xlIGV2ZW50cyB3aXRoaW4gdGhlIGFwcGxpY2F0aW9uIGNvbnRleHQuIEl0IGFic3RyYWN0cyB0aGUgY29tcGxleGl0aWVzIG9mIFdlYlNvY2tldCBjb21tdW5pY2F0aW9uLCBhbGxvd2luZyBkZXZlbG9wZXJzIHRvIGVhc2lseSBjcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY29ubmVjdGlvbnMsIHNlbmQgbWVzc2FnZXMsIGFuZCBoYW5kbGUgZXZlbnRzIHN1Y2ggYXMgY29ubmVjdGlvbiBvcGVuaW5ncywgbWVzc2FnZXMsIGVycm9ycywgYW5kIGNsb3N1cmVzLlxuICogXG4gKiAjIyMgS2V5IEZlYXR1cmVzOlxuICogLSAqKldlYlNvY2tldCBDbGllbnQgTWFuYWdlbWVudCoqOiBDcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY2xpZW50cyB3aXRoIGVhc2UsIGluY2x1ZGluZyBzZW5kaW5nIG1lc3NhZ2VzIGFuZCBjbG9zaW5nIGNvbm5lY3Rpb25zLlxuICogLSAqKkV2ZW50IEhhbmRsaW5nKio6IEFjY2VzcyBldmVudCBkZXRhaWxzIHN1Y2ggYXMgbWVzc2FnZXMgYW5kIGVycm9ycyB3aXRoaW4gdGhlIGNvbnRleHQgb2YgV2ViU29ja2V0IGV2ZW50IGhhbmRsZXJzLlxuICogXG4gKiAjIyMgVXNlIENhc2VzOlxuICogLSAqKlJlYWwtVGltZSBDb21tdW5pY2F0aW9uKio6IFRoaXMgbW9kdWxlIGlzIGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgdGhhdCByZXF1aXJlIHJlYWwtdGltZSBjb21tdW5pY2F0aW9uIGJldHdlZW4gY2xpZW50cyBhbmQgdGhlIHNlcnZlciB1c2luZyBXZWJTb2NrZXRzLlxuICogLSAqKkludGVncmF0aW9uIHdpdGggV2ViU29ja2V0IFN5c3RlbXMqKjogQnkgcHJvdmlkaW5nIGEgaGlnaC1sZXZlbCBBUEkgZm9yIFdlYlNvY2tldCBtYW5hZ2VtZW50LCBkZXZlbG9wZXJzIGNhbiBlYXNpbHkgaW50ZWdyYXRlIHRoZWlyIGFwcGxpY2F0aW9ucyB3aXRoIFdlYlNvY2tldC1iYXNlZCBzeXN0ZW1zIGFuZCBwcm90b2NvbHMuXG4gKiBcbiAqICMjIyBFeGFtcGxlIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IFdlYnNvY2tldHMgfSBmcm9tIFwiQGFlcm9raXQvc2RrL25ldFwiO1xuICogXG4gKiAvLyBDcmVhdGUgYSBuZXcgV2ViU29ja2V0IGNsaWVudCBjb25uZWN0aW9uXG4gKiBjb25zdCBjbGllbnQgPSBXZWJzb2NrZXRzLmNyZWF0ZVdlYnNvY2tldChcIndzOi8vZXhhbXBsZS5jb20vc29ja2V0XCIsIFwibXlIYW5kbGVyXCIpO1xuICogY2xpZW50LnNlbmQoXCJIZWxsbywgV2ViU29ja2V0IVwiKTtcbiAqIFxuICogLy8gQWNjZXNzIGV2ZW50IGRldGFpbHMgaW4gYW4gJ29ubWVzc2FnZScgaGFuZGxlclxuICogaWYgKFdlYnNvY2tldHMuaXNPbk1lc3NhZ2UoKSkge1xuICogICAgIGNvbnN0IG1lc3NhZ2UgPSBXZWJzb2NrZXRzLmdldE1lc3NhZ2UoKTtcbiAqICAgICBjb25zb2xlLmxvZyhcIlJlY2VpdmVkIG1lc3NhZ2U6XCIsIG1lc3NhZ2UpO1xuICogfVxuICogXG4gKiAvLyBDbG9zZSB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gd2hlbiBkb25lXG4gKiBjbGllbnQuY2xvc2UoKTtcbiAqIGBgYFxuICovXG5cbmNvbnN0IFdlYnNvY2tldHNGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkud2Vic29ja2V0cy5XZWJzb2NrZXRzRmFjYWRlXCIpO1xuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRzXG4gKiBAZGVzY3JpcHRpb24gU3RhdGljIHV0aWxpdHkgY2xhc3MgZm9yIGFjY2Vzc2luZyBhbmQgbWFuYWdpbmcgV2ViU29ja2V0IGZ1bmN0aW9uYWxpdHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBXZWJzb2NrZXRzIHtcblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBXZWJTb2NrZXQgY2xpZW50IGNvbm5lY3Rpb24gdG8gYSBzcGVjaWZpZWQgVVJJLCBtYW5hZ2VkIGJ5IGEgaGFuZGxlciBzY3JpcHQuXG5cdCAqXG5cdCAqIEBwYXJhbSB1cmkgVGhlIHRhcmdldCBXZWJTb2NrZXQgVVJJIChlLmcuLCAnd3M6Ly9leGFtcGxlLmNvbS9zb2NrZXQnKS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGlkZW50aWZpZXIgb3IgcGF0aCBvZiB0aGUgc2NyaXB0IGhhbmRsaW5nIHRoZSBXZWJTb2NrZXQgZXZlbnRzLlxuXHQgKiBAcmV0dXJucyBBIHdyYXBwZXIgb2JqZWN0IGZvciB0aGUgbmV3IFdlYlNvY2tldCBzZXNzaW9uLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBjcmVhdGVXZWJzb2NrZXQodXJpOiBzdHJpbmcsIGhhbmRsZXI6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB7XG5cdFx0Y29uc3Qgc2Vzc2lvbiA9IFdlYnNvY2tldHNGYWNhZGUuY3JlYXRlV2Vic29ja2V0KHVyaSwgaGFuZGxlcik7XG5cdFx0cmV0dXJuIG5ldyBXZWJzb2NrZXRDbGllbnQoc2Vzc2lvbiwgdXJpLCBoYW5kbGVyKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIGFsbCBhY3RpdmUgV2ViU29ja2V0IGNsaWVudHMuXG5cdCAqXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG9iamVjdHMgZGV0YWlsaW5nIHRoZSBVUkkgYW5kIGhhbmRsZXIgb2YgZWFjaCBjbGllbnQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudHMoKTogeyB1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nIH1bXSB7XG5cdFx0cmV0dXJuIEpTT04ucGFyc2UoV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnRzQXNKc29uKCkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNwZWNpZmljIFdlYlNvY2tldCBjbGllbnQgd3JhcHBlciBieSBpdHMgc2Vzc2lvbiBJRC5cblx0ICpcblx0ICogQHBhcmFtIGlkIFRoZSBzZXNzaW9uIElEIG9mIHRoZSBjbGllbnQuXG5cdCAqIEByZXR1cm5zIFRoZSBjbGllbnQgd3JhcHBlciBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRDbGllbnQoaWQ6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbmF0aXZlID0gV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnQoaWQpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBXZWJTb2NrZXQgY2xpZW50IHdyYXBwZXIgYnkgaXRzIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICpcblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllciBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWVudC5cblx0ICogQHJldHVybnMgVGhlIGNsaWVudCB3cmFwcGVyIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudEJ5SGFuZGxlcihoYW5kbGVyOiBzdHJpbmcpOiBXZWJzb2NrZXRDbGllbnQgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IG5hdGl2ZSA9IFdlYnNvY2tldHNGYWNhZGUuZ2V0Q2xpZW50QnlIYW5kbGVyKGhhbmRsZXIpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgdGhlIG1lc3NhZ2UgcGF5bG9hZCBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25tZXNzYWdlJyBoYW5kbGVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgbWVzc2FnZSBjb250ZW50LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRNZXNzYWdlKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ21lc3NhZ2UnKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgZXJyb3IgZGV0YWlscyBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25lcnJvcicgaGFuZGxlci5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGVycm9yIG9iamVjdCBvciBzdHJpbmcuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVycm9yKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ2Vycm9yJyk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBldmVudCBtZXRob2QgbmFtZSB0aGF0IHRyaWdnZXJlZCB0aGUgY3VycmVudCBzY3JpcHQgZXhlY3V0aW9uIChlLmcuLCBcIm9ub3BlblwiLCBcIm9ubWVzc2FnZVwiKS5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIGV2ZW50IG1ldGhvZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0TWV0aG9kKCk6IHN0cmluZyB7XG5cdFx0Ly8gQXNzdW1lcyBfX2NvbnRleHQgaXMgYSBnbG9iYWwgbWFwIHByb3ZpZGVkIGJ5IHRoZSBleGVjdXRpb24gZW52aXJvbm1lbnRcblx0XHRyZXR1cm4gX19jb250ZXh0LmdldCgnbWV0aG9kJyk7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ub3BlbicuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25vcGVuJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk9wZW4oKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25vcGVuXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ubWVzc2FnZScuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25tZXNzYWdlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk1lc3NhZ2UoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25tZXNzYWdlXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29uZXJyb3InLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBtZXRob2QgaXMgJ29uZXJyb3InLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBpc09uRXJyb3IoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25lcnJvclwiO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBldmVudCBjb250ZXh0IGlzICdvbmNsb3NlJy5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgbWV0aG9kIGlzICdvbmNsb3NlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbkNsb3NlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmdldE1ldGhvZCgpID09PSBcIm9uY2xvc2VcIjtcblx0fVxufVxuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRDbGllbnRcbiAqIEBkZXNjcmlwdGlvbiBXcmFwcGVyIGZvciBhIG5hdGl2ZSBXZWJTb2NrZXQgc2Vzc2lvbiwgcHJvdmlkaW5nIG1ldGhvZHMgdG8gc2VuZCBhbmQgY2xvc2UgdGhlIGNvbm5lY3Rpb24uXG4gKi9cbmNsYXNzIFdlYnNvY2tldENsaWVudCB7XG5cdC8vIFJlbmFtZWQgdG8gX3Nlc3Npb24gZm9yIGJldHRlciBlbmNhcHN1bGF0aW9uIG9mIHRoZSBuYXRpdmUgSmF2YSBvYmplY3Rcblx0cHJpdmF0ZSByZWFkb25seSBfc2Vzc2lvbjogbnVsbCB8IGFueTtcblx0cHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZztcblx0cHJpdmF0ZSByZWFkb25seSBoYW5kbGVyOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEBwYXJhbSBzZXNzaW9uIFRoZSBuYXRpdmUgSmF2YSBzZXNzaW9uIG9iamVjdC5cblx0ICogQHBhcmFtIHVyaSBUaGUgY29ubmVjdGVkIFVSSS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHNlc3Npb246IG51bGwgfCBhbnksIHVyaTogc3RyaW5nLCBoYW5kbGVyOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9zZXNzaW9uID0gc2Vzc2lvbjtcblx0XHR0aGlzLnVyaSA9IHVyaTtcblx0XHR0aGlzLmhhbmRsZXIgPSBoYW5kbGVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbmRzIGEgdGV4dCBtZXNzYWdlIG92ZXIgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuXHQgKiBAcGFyYW0gdGV4dCBUaGUgbWVzc2FnZSB0byBzZW5kLlxuXHQgKi9cblx0cHVibGljIHNlbmQodGV4dDogc3RyaW5nKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9zZXNzaW9uIHx8IHRoaXMuX3Nlc3Npb24gPT09IG51bGwpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJXZWJzb2NrZXQgU2Vzc2lvbiBpcyBudWxsLiBNZXNzYWdlIG5vdCBzZW50LlwiKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fc2Vzc2lvbi5zZW5kKHRoaXMudXJpLCB0ZXh0KTtcblx0fTtcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cblx0ICovXG5cdHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5fc2Vzc2lvbikge1xuXHRcdFx0dGhpcy5fc2Vzc2lvbi5jbG9zZSgpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFdlYnNvY2tldHM7XG59Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBbUNBLE1BQU0sbUJBQW1CLEtBQUssS0FBSyxrRUFBa0U7QUFNOUYsTUFBTSxXQUFXO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVN2QixPQUFjLGdCQUFnQixLQUFhLFNBQWtDO0FBQzVFLFVBQU0sVUFBVSxpQkFBaUIsZ0JBQWdCLEtBQUssT0FBTztBQUM3RCxXQUFPLElBQUksZ0JBQWdCLFNBQVMsS0FBSyxPQUFPO0FBQUEsRUFDakQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGFBQWlEO0FBQzlELFdBQU8sS0FBSyxNQUFNLGlCQUFpQixpQkFBaUIsQ0FBQztBQUFBLEVBQ3REO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLFVBQVUsSUFBeUM7QUFDaEUsVUFBTSxTQUFTLGlCQUFpQixVQUFVLEVBQUU7QUFDNUMsV0FBTyxTQUFTLElBQUksZ0JBQWdCLE9BQU8sV0FBVyxHQUFHLE9BQU8sV0FBVyxFQUFFLGNBQWMsR0FBRyxPQUFPLFdBQVcsQ0FBQyxJQUFJO0FBQUEsRUFDdEg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsbUJBQW1CLFNBQThDO0FBQzlFLFVBQU0sU0FBUyxpQkFBaUIsbUJBQW1CLE9BQU87QUFDMUQsV0FBTyxTQUFTLElBQUksZ0JBQWdCLE9BQU8sV0FBVyxHQUFHLE9BQU8sV0FBVyxFQUFFLGNBQWMsR0FBRyxPQUFPLFdBQVcsQ0FBQyxJQUFJO0FBQUEsRUFDdEg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGFBQWtCO0FBQy9CLFdBQU8sVUFBVSxJQUFJLFNBQVM7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsV0FBZ0I7QUFDN0IsV0FBTyxVQUFVLElBQUksT0FBTztBQUFBLEVBQzdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxZQUFvQjtBQUVqQyxXQUFPLFVBQVUsSUFBSSxRQUFRO0FBQUEsRUFDOUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxXQUFvQjtBQUNqQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxjQUF1QjtBQUNwQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxZQUFxQjtBQUNsQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxZQUFxQjtBQUNsQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFDRDtBQU1BLE1BQU0sZ0JBQWdCO0FBQUE7QUFBQSxFQUVKO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPakIsWUFBWSxTQUFxQixLQUFhLFNBQWlCO0FBQzlELFNBQUssV0FBVztBQUNoQixTQUFLLE1BQU07QUFDWCxTQUFLLFVBQVU7QUFBQSxFQUNoQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTyxLQUFLLE1BQW9CO0FBQy9CLFFBQUksQ0FBQyxLQUFLLFlBQVksS0FBSyxhQUFhLE1BQU07QUFDN0MsY0FBUSxNQUFNLDhDQUE4QztBQUM1RDtBQUFBLElBQ0Q7QUFDQSxTQUFLLFNBQVMsS0FBSyxLQUFLLEtBQUssSUFBSTtBQUFBLEVBQ2xDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ3BCLFFBQUksS0FBSyxVQUFVO0FBQ2xCLFdBQUssU0FBUyxNQUFNO0FBQUEsSUFDckI7QUFBQSxFQUNEO0FBQ0Q7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25ldC93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUgbmV0L3dlYnNvY2tldHNcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9uZXRcbiAqIEBuYW1lIFdlYnNvY2tldHNcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgV2Vic29ja2V0cyBtb2R1bGUgcHJvdmlkZXMgYW4gQVBJIGZvciBtYW5hZ2luZyBXZWJTb2NrZXQgY2xpZW50cyBhbmQgaGFuZGxpbmcgbGlmZWN5Y2xlIGV2ZW50cyB3aXRoaW4gdGhlIGFwcGxpY2F0aW9uIGNvbnRleHQuIEl0IGFic3RyYWN0cyB0aGUgY29tcGxleGl0aWVzIG9mIFdlYlNvY2tldCBjb21tdW5pY2F0aW9uLCBhbGxvd2luZyBkZXZlbG9wZXJzIHRvIGVhc2lseSBjcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY29ubmVjdGlvbnMsIHNlbmQgbWVzc2FnZXMsIGFuZCBoYW5kbGUgZXZlbnRzIHN1Y2ggYXMgY29ubmVjdGlvbiBvcGVuaW5ncywgbWVzc2FnZXMsIGVycm9ycywgYW5kIGNsb3N1cmVzLlxuICogXG4gKiAjIyMgS2V5IEZlYXR1cmVzOlxuICogLSAqKldlYlNvY2tldCBDbGllbnQgTWFuYWdlbWVudCoqOiBDcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY2xpZW50cyB3aXRoIGVhc2UsIGluY2x1ZGluZyBzZW5kaW5nIG1lc3NhZ2VzIGFuZCBjbG9zaW5nIGNvbm5lY3Rpb25zLlxuICogLSAqKkV2ZW50IEhhbmRsaW5nKio6IEFjY2VzcyBldmVudCBkZXRhaWxzIHN1Y2ggYXMgbWVzc2FnZXMgYW5kIGVycm9ycyB3aXRoaW4gdGhlIGNvbnRleHQgb2YgV2ViU29ja2V0IGV2ZW50IGhhbmRsZXJzLlxuICogXG4gKiAjIyMgVXNlIENhc2VzOlxuICogLSAqKlJlYWwtVGltZSBDb21tdW5pY2F0aW9uKio6IFRoaXMgbW9kdWxlIGlzIGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgdGhhdCByZXF1aXJlIHJlYWwtdGltZSBjb21tdW5pY2F0aW9uIGJldHdlZW4gY2xpZW50cyBhbmQgdGhlIHNlcnZlciB1c2luZyBXZWJTb2NrZXRzLlxuICogLSAqKkludGVncmF0aW9uIHdpdGggV2ViU29ja2V0IFN5c3RlbXMqKjogQnkgcHJvdmlkaW5nIGEgaGlnaC1sZXZlbCBBUEkgZm9yIFdlYlNvY2tldCBtYW5hZ2VtZW50LCBkZXZlbG9wZXJzIGNhbiBlYXNpbHkgaW50ZWdyYXRlIHRoZWlyIGFwcGxpY2F0aW9ucyB3aXRoIFdlYlNvY2tldC1iYXNlZCBzeXN0ZW1zIGFuZCBwcm90b2NvbHMuXG4gKiBcbiAqICMjIyBFeGFtcGxlIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IFdlYnNvY2tldHMgfSBmcm9tIFwiQGFlcm9raXQvc2RrL25ldFwiO1xuICogXG4gKiAvLyBDcmVhdGUgYSBuZXcgV2ViU29ja2V0IGNsaWVudCBjb25uZWN0aW9uIGFuZCBzZW5kIHRvIGEgU1RPTVAgZGVzdGluYXRpb24gb2YgdGhlIGJyb2tlclxuICogY29uc3QgY2xpZW50ID0gV2Vic29ja2V0cy5jcmVhdGVXZWJzb2NrZXQoXCJ3czovL2V4YW1wbGUuY29tL3NvY2tldFwiLCBcIm15SGFuZGxlclwiKTtcbiAqIGNsaWVudC5zZW5kKFwiSGVsbG8sIFdlYlNvY2tldCFcIiwgXCIvYXBwL2dyZWV0aW5nc1wiKTtcbiAqXG4gKiAvLyBBIERpcmlnaWJsZSBicm9rZXIgbmVlZHMgdGhlIENPTk5FQ1QgZnJhbWUgYXV0aGVudGljYXRlZDsgaXRzIGFwcGxpY2F0aW9uIGRlc3RpbmF0aW9ucyBhcmUgL3dzL3N0b21wLzxlbmRwb2ludD5cbiAqIGNvbnN0IGRpcmlnaWJsZSA9IFdlYnNvY2tldHMuY3JlYXRlV2Vic29ja2V0KFwid3NzOi8vZGlyaWdpYmxlLmV4YW1wbGUuY29tL3N0b21wXCIsIFwibXlIYW5kbGVyXCIsIHsgQXV0aG9yaXphdGlvbjogXCJCZWFyZXIgXCIgKyBpZFRva2VuIH0pO1xuICogZGlyaWdpYmxlLnNlbmQoXCJoZWxsb1wiLCBcIi93cy9zdG9tcC9teS1lbmRwb2ludFwiKTtcbiAqXG4gKiAvLyBBY2Nlc3MgZXZlbnQgZGV0YWlscyBpbiBhbiAnb25tZXNzYWdlJyBoYW5kbGVyXG4gKiBpZiAoV2Vic29ja2V0cy5pc09uTWVzc2FnZSgpKSB7XG4gKiAgICAgY29uc3QgbWVzc2FnZSA9IFdlYnNvY2tldHMuZ2V0TWVzc2FnZSgpO1xuICogICAgIGNvbnNvbGUubG9nKFwiUmVjZWl2ZWQgbWVzc2FnZTpcIiwgbWVzc2FnZSk7XG4gKiB9XG4gKiBcbiAqIC8vIENsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiB3aGVuIGRvbmVcbiAqIGNsaWVudC5jbG9zZSgpO1xuICogYGBgXG4gKi9cblxuY29uc3QgV2Vic29ja2V0c0ZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS53ZWJzb2NrZXRzLldlYnNvY2tldHNGYWNhZGVcIik7XG5cbi8qKlxuICogQGNsYXNzIFdlYnNvY2tldHNcbiAqIEBkZXNjcmlwdGlvbiBTdGF0aWMgdXRpbGl0eSBjbGFzcyBmb3IgYWNjZXNzaW5nIGFuZCBtYW5hZ2luZyBXZWJTb2NrZXQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGNsYXNzIFdlYnNvY2tldHMge1xuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgbmV3IFdlYlNvY2tldCBjbGllbnQgY29ubmVjdGlvbiB0byBhIHNwZWNpZmllZCBVUkksIG1hbmFnZWQgYnkgYSBoYW5kbGVyIHNjcmlwdC5cblx0ICpcblx0ICogQHBhcmFtIHVyaSBUaGUgdGFyZ2V0IFdlYlNvY2tldCBVUkkgKGUuZy4sICd3czovL2V4YW1wbGUuY29tL3NvY2tldCcpLlxuXHQgKiBAcGFyYW0gaGFuZGxlciBUaGUgaWRlbnRpZmllciBvciBwYXRoIG9mIHRoZSBzY3JpcHQgaGFuZGxpbmcgdGhlIFdlYlNvY2tldCBldmVudHMuXG5cdCAqIEBwYXJhbSBjb25uZWN0SGVhZGVycyBIZWFkZXJzIG9mIHRoZSBTVE9NUCBDT05ORUNUIGZyYW1lLiBBIERpcmlnaWJsZSAnL3N0b21wJyBlbmRwb2ludCBuZWVkc1xuXHQgKiAgICAgICAgJ0F1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+JyB0aGVyZSAtIGFuIGFub255bW91cyBDT05ORUNUIGlzIHJlZnVzZWQuXG5cdCAqIEByZXR1cm5zIEEgd3JhcHBlciBvYmplY3QgZm9yIHRoZSBuZXcgV2ViU29ja2V0IHNlc3Npb24uXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNyZWF0ZVdlYnNvY2tldCh1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nLCBjb25uZWN0SGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9KTogV2Vic29ja2V0Q2xpZW50IHtcblx0XHRjb25zdCBzZXNzaW9uID0gY29ubmVjdEhlYWRlcnNcblx0XHRcdD8gV2Vic29ja2V0c0ZhY2FkZS5jcmVhdGVXZWJzb2NrZXQodXJpLCBoYW5kbGVyLCBKU09OLnN0cmluZ2lmeShjb25uZWN0SGVhZGVycykpXG5cdFx0XHQ6IFdlYnNvY2tldHNGYWNhZGUuY3JlYXRlV2Vic29ja2V0KHVyaSwgaGFuZGxlcik7XG5cdFx0cmV0dXJuIG5ldyBXZWJzb2NrZXRDbGllbnQoc2Vzc2lvbiwgdXJpLCBoYW5kbGVyKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIGFsbCBhY3RpdmUgV2ViU29ja2V0IGNsaWVudHMuXG5cdCAqXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG9iamVjdHMgZGV0YWlsaW5nIHRoZSBVUkkgYW5kIGhhbmRsZXIgb2YgZWFjaCBjbGllbnQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudHMoKTogeyB1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nIH1bXSB7XG5cdFx0cmV0dXJuIEpTT04ucGFyc2UoV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnRzQXNKc29uKCkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNwZWNpZmljIFdlYlNvY2tldCBjbGllbnQgd3JhcHBlciBieSBpdHMgc2Vzc2lvbiBJRC5cblx0ICpcblx0ICogQHBhcmFtIGlkIFRoZSBzZXNzaW9uIElEIG9mIHRoZSBjbGllbnQuXG5cdCAqIEByZXR1cm5zIFRoZSBjbGllbnQgd3JhcHBlciBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRDbGllbnQoaWQ6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbmF0aXZlID0gV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnQoaWQpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBXZWJTb2NrZXQgY2xpZW50IHdyYXBwZXIgYnkgaXRzIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICpcblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllciBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWVudC5cblx0ICogQHJldHVybnMgVGhlIGNsaWVudCB3cmFwcGVyIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudEJ5SGFuZGxlcihoYW5kbGVyOiBzdHJpbmcpOiBXZWJzb2NrZXRDbGllbnQgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IG5hdGl2ZSA9IFdlYnNvY2tldHNGYWNhZGUuZ2V0Q2xpZW50QnlIYW5kbGVyKGhhbmRsZXIpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgdGhlIG1lc3NhZ2UgcGF5bG9hZCBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25tZXNzYWdlJyBoYW5kbGVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgbWVzc2FnZSBjb250ZW50LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRNZXNzYWdlKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ21lc3NhZ2UnKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgZXJyb3IgZGV0YWlscyBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25lcnJvcicgaGFuZGxlci5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGVycm9yIG9iamVjdCBvciBzdHJpbmcuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVycm9yKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ2Vycm9yJyk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBldmVudCBtZXRob2QgbmFtZSB0aGF0IHRyaWdnZXJlZCB0aGUgY3VycmVudCBzY3JpcHQgZXhlY3V0aW9uIChlLmcuLCBcIm9ub3BlblwiLCBcIm9ubWVzc2FnZVwiKS5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIGV2ZW50IG1ldGhvZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0TWV0aG9kKCk6IHN0cmluZyB7XG5cdFx0Ly8gQXNzdW1lcyBfX2NvbnRleHQgaXMgYSBnbG9iYWwgbWFwIHByb3ZpZGVkIGJ5IHRoZSBleGVjdXRpb24gZW52aXJvbm1lbnRcblx0XHRyZXR1cm4gX19jb250ZXh0LmdldCgnbWV0aG9kJyk7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ub3BlbicuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25vcGVuJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk9wZW4oKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25vcGVuXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ubWVzc2FnZScuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25tZXNzYWdlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk1lc3NhZ2UoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25tZXNzYWdlXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29uZXJyb3InLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBtZXRob2QgaXMgJ29uZXJyb3InLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBpc09uRXJyb3IoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25lcnJvclwiO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBldmVudCBjb250ZXh0IGlzICdvbmNsb3NlJy5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgbWV0aG9kIGlzICdvbmNsb3NlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbkNsb3NlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmdldE1ldGhvZCgpID09PSBcIm9uY2xvc2VcIjtcblx0fVxufVxuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRDbGllbnRcbiAqIEBkZXNjcmlwdGlvbiBXcmFwcGVyIGZvciBhIG5hdGl2ZSBXZWJTb2NrZXQgc2Vzc2lvbiwgcHJvdmlkaW5nIG1ldGhvZHMgdG8gc2VuZCBhbmQgY2xvc2UgdGhlIGNvbm5lY3Rpb24uXG4gKi9cbmNsYXNzIFdlYnNvY2tldENsaWVudCB7XG5cdC8vIFJlbmFtZWQgdG8gX3Nlc3Npb24gZm9yIGJldHRlciBlbmNhcHN1bGF0aW9uIG9mIHRoZSBuYXRpdmUgSmF2YSBvYmplY3Rcblx0cHJpdmF0ZSByZWFkb25seSBfc2Vzc2lvbjogbnVsbCB8IGFueTtcblx0cHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZztcblx0cHJpdmF0ZSByZWFkb25seSBoYW5kbGVyOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEBwYXJhbSBzZXNzaW9uIFRoZSBuYXRpdmUgSmF2YSBzZXNzaW9uIG9iamVjdC5cblx0ICogQHBhcmFtIHVyaSBUaGUgY29ubmVjdGVkIFVSSS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHNlc3Npb246IG51bGwgfCBhbnksIHVyaTogc3RyaW5nLCBoYW5kbGVyOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9zZXNzaW9uID0gc2Vzc2lvbjtcblx0XHR0aGlzLnVyaSA9IHVyaTtcblx0XHR0aGlzLmhhbmRsZXIgPSBoYW5kbGVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbmRzIGEgdGV4dCBtZXNzYWdlIG92ZXIgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuXHQgKiBAcGFyYW0gdGV4dCBUaGUgbWVzc2FnZSB0byBzZW5kLlxuXHQgKiBAcGFyYW0gZGVzdGluYXRpb24gVGhlIFNUT01QIGRlc3RpbmF0aW9uIHRoZSBtZXNzYWdlIGlzIHNlbnQgdG8uIEEgRGlyaWdpYmxlIGJyb2tlciByb3V0ZXMgaXRzXG5cdCAqICAgICAgICBhcHBsaWNhdGlvbiBkZXN0aW5hdGlvbnMgJy93cy9zdG9tcC88ZW5kcG9pbnQ+JyB0byB0aGUgaGFuZGxlciBvZiB0aGF0IGVuZHBvaW50LiBXaXRob3V0XG5cdCAqICAgICAgICBpdCB0aGUgY29ubmVjdGlvbiBVUkkgaXMgc2VudCBhcyB0aGUgZGVzdGluYXRpb24sIHdoaWNoIG5vIGJyb2tlciByb3V0ZXMgYW55d2hlcmUuXG5cdCAqL1xuXHRwdWJsaWMgc2VuZCh0ZXh0OiBzdHJpbmcsIGRlc3RpbmF0aW9uPzogc3RyaW5nKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9zZXNzaW9uIHx8IHRoaXMuX3Nlc3Npb24gPT09IG51bGwpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJXZWJzb2NrZXQgU2Vzc2lvbiBpcyBudWxsLiBNZXNzYWdlIG5vdCBzZW50LlwiKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fc2Vzc2lvbi5zZW5kKGRlc3RpbmF0aW9uID8/IHRoaXMudXJpLCB0ZXh0KTtcblx0fTtcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cblx0ICovXG5cdHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5fc2Vzc2lvbikge1xuXHRcdFx0dGhpcy5fc2Vzc2lvbi5jbG9zZSgpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFdlYnNvY2tldHM7XG59Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBdUNBLE1BQU0sbUJBQW1CLEtBQUssS0FBSyxrRUFBa0U7QUFNOUYsTUFBTSxXQUFXO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXdkIsT0FBYyxnQkFBZ0IsS0FBYSxTQUFpQixnQkFBOEQ7QUFDekgs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
|
|
@@ -18,9 +18,13 @@
|
|
|
18
18
|
* ```ts
|
|
19
19
|
* import { Websockets } from "@aerokit/sdk/net";
|
|
20
20
|
*
|
|
21
|
-
* // Create a new WebSocket client connection
|
|
21
|
+
* // Create a new WebSocket client connection and send to a STOMP destination of the broker
|
|
22
22
|
* const client = Websockets.createWebsocket("ws://example.com/socket", "myHandler");
|
|
23
|
-
* client.send("Hello, WebSocket!");
|
|
23
|
+
* client.send("Hello, WebSocket!", "/app/greetings");
|
|
24
|
+
*
|
|
25
|
+
* // A Dirigible broker needs the CONNECT frame authenticated; its application destinations are /ws/stomp/<endpoint>
|
|
26
|
+
* const dirigible = Websockets.createWebsocket("wss://dirigible.example.com/stomp", "myHandler", { Authorization: "Bearer " + idToken });
|
|
27
|
+
* dirigible.send("hello", "/ws/stomp/my-endpoint");
|
|
24
28
|
*
|
|
25
29
|
* // Access event details in an 'onmessage' handler
|
|
26
30
|
* if (Websockets.isOnMessage()) {
|
|
@@ -42,9 +46,13 @@ export declare class Websockets {
|
|
|
42
46
|
*
|
|
43
47
|
* @param uri The target WebSocket URI (e.g., 'ws://example.com/socket').
|
|
44
48
|
* @param handler The identifier or path of the script handling the WebSocket events.
|
|
49
|
+
* @param connectHeaders Headers of the STOMP CONNECT frame. A Dirigible '/stomp' endpoint needs
|
|
50
|
+
* 'Authorization: Bearer <token>' there - an anonymous CONNECT is refused.
|
|
45
51
|
* @returns A wrapper object for the new WebSocket session.
|
|
46
52
|
*/
|
|
47
|
-
static createWebsocket(uri: string, handler: string
|
|
53
|
+
static createWebsocket(uri: string, handler: string, connectHeaders?: {
|
|
54
|
+
[name: string]: string;
|
|
55
|
+
}): WebsocketClient;
|
|
48
56
|
/**
|
|
49
57
|
* Retrieves a list of all active WebSocket clients.
|
|
50
58
|
*
|
|
@@ -124,8 +132,11 @@ declare class WebsocketClient {
|
|
|
124
132
|
/**
|
|
125
133
|
* Sends a text message over the WebSocket connection.
|
|
126
134
|
* @param text The message to send.
|
|
135
|
+
* @param destination The STOMP destination the message is sent to. A Dirigible broker routes its
|
|
136
|
+
* application destinations '/ws/stomp/<endpoint>' to the handler of that endpoint. Without
|
|
137
|
+
* it the connection URI is sent as the destination, which no broker routes anywhere.
|
|
127
138
|
*/
|
|
128
|
-
send(text: string): void;
|
|
139
|
+
send(text: string, destination?: string): void;
|
|
129
140
|
/**
|
|
130
141
|
* Closes the WebSocket connection.
|
|
131
142
|
*/
|
|
@@ -5,10 +5,12 @@ class Websockets {
|
|
|
5
5
|
*
|
|
6
6
|
* @param uri The target WebSocket URI (e.g., 'ws://example.com/socket').
|
|
7
7
|
* @param handler The identifier or path of the script handling the WebSocket events.
|
|
8
|
+
* @param connectHeaders Headers of the STOMP CONNECT frame. A Dirigible '/stomp' endpoint needs
|
|
9
|
+
* 'Authorization: Bearer <token>' there - an anonymous CONNECT is refused.
|
|
8
10
|
* @returns A wrapper object for the new WebSocket session.
|
|
9
11
|
*/
|
|
10
|
-
static createWebsocket(uri, handler) {
|
|
11
|
-
const session = WebsocketsFacade.createWebsocket(uri, handler);
|
|
12
|
+
static createWebsocket(uri, handler, connectHeaders) {
|
|
13
|
+
const session = connectHeaders ? WebsocketsFacade.createWebsocket(uri, handler, JSON.stringify(connectHeaders)) : WebsocketsFacade.createWebsocket(uri, handler);
|
|
12
14
|
return new WebsocketClient(session, uri, handler);
|
|
13
15
|
}
|
|
14
16
|
/**
|
|
@@ -110,13 +112,16 @@ class WebsocketClient {
|
|
|
110
112
|
/**
|
|
111
113
|
* Sends a text message over the WebSocket connection.
|
|
112
114
|
* @param text The message to send.
|
|
115
|
+
* @param destination The STOMP destination the message is sent to. A Dirigible broker routes its
|
|
116
|
+
* application destinations '/ws/stomp/<endpoint>' to the handler of that endpoint. Without
|
|
117
|
+
* it the connection URI is sent as the destination, which no broker routes anywhere.
|
|
113
118
|
*/
|
|
114
|
-
send(text) {
|
|
119
|
+
send(text, destination) {
|
|
115
120
|
if (!this._session || this._session === null) {
|
|
116
121
|
console.error("Websocket Session is null. Message not sent.");
|
|
117
122
|
return;
|
|
118
123
|
}
|
|
119
|
-
this._session.send(this.uri, text);
|
|
124
|
+
this._session.send(destination ?? this.uri, text);
|
|
120
125
|
}
|
|
121
126
|
/**
|
|
122
127
|
* Closes the WebSocket connection.
|
|
@@ -133,4 +138,4 @@ if (typeof module !== "undefined") {
|
|
|
133
138
|
export {
|
|
134
139
|
Websockets
|
|
135
140
|
};
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25ldC93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUgbmV0L3dlYnNvY2tldHNcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9uZXRcbiAqIEBuYW1lIFdlYnNvY2tldHNcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgV2Vic29ja2V0cyBtb2R1bGUgcHJvdmlkZXMgYW4gQVBJIGZvciBtYW5hZ2luZyBXZWJTb2NrZXQgY2xpZW50cyBhbmQgaGFuZGxpbmcgbGlmZWN5Y2xlIGV2ZW50cyB3aXRoaW4gdGhlIGFwcGxpY2F0aW9uIGNvbnRleHQuIEl0IGFic3RyYWN0cyB0aGUgY29tcGxleGl0aWVzIG9mIFdlYlNvY2tldCBjb21tdW5pY2F0aW9uLCBhbGxvd2luZyBkZXZlbG9wZXJzIHRvIGVhc2lseSBjcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY29ubmVjdGlvbnMsIHNlbmQgbWVzc2FnZXMsIGFuZCBoYW5kbGUgZXZlbnRzIHN1Y2ggYXMgY29ubmVjdGlvbiBvcGVuaW5ncywgbWVzc2FnZXMsIGVycm9ycywgYW5kIGNsb3N1cmVzLlxuICogXG4gKiAjIyMgS2V5IEZlYXR1cmVzOlxuICogLSAqKldlYlNvY2tldCBDbGllbnQgTWFuYWdlbWVudCoqOiBDcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY2xpZW50cyB3aXRoIGVhc2UsIGluY2x1ZGluZyBzZW5kaW5nIG1lc3NhZ2VzIGFuZCBjbG9zaW5nIGNvbm5lY3Rpb25zLlxuICogLSAqKkV2ZW50IEhhbmRsaW5nKio6IEFjY2VzcyBldmVudCBkZXRhaWxzIHN1Y2ggYXMgbWVzc2FnZXMgYW5kIGVycm9ycyB3aXRoaW4gdGhlIGNvbnRleHQgb2YgV2ViU29ja2V0IGV2ZW50IGhhbmRsZXJzLlxuICogXG4gKiAjIyMgVXNlIENhc2VzOlxuICogLSAqKlJlYWwtVGltZSBDb21tdW5pY2F0aW9uKio6IFRoaXMgbW9kdWxlIGlzIGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgdGhhdCByZXF1aXJlIHJlYWwtdGltZSBjb21tdW5pY2F0aW9uIGJldHdlZW4gY2xpZW50cyBhbmQgdGhlIHNlcnZlciB1c2luZyBXZWJTb2NrZXRzLlxuICogLSAqKkludGVncmF0aW9uIHdpdGggV2ViU29ja2V0IFN5c3RlbXMqKjogQnkgcHJvdmlkaW5nIGEgaGlnaC1sZXZlbCBBUEkgZm9yIFdlYlNvY2tldCBtYW5hZ2VtZW50LCBkZXZlbG9wZXJzIGNhbiBlYXNpbHkgaW50ZWdyYXRlIHRoZWlyIGFwcGxpY2F0aW9ucyB3aXRoIFdlYlNvY2tldC1iYXNlZCBzeXN0ZW1zIGFuZCBwcm90b2NvbHMuXG4gKiBcbiAqICMjIyBFeGFtcGxlIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IFdlYnNvY2tldHMgfSBmcm9tIFwiQGFlcm9raXQvc2RrL25ldFwiO1xuICogXG4gKiAvLyBDcmVhdGUgYSBuZXcgV2ViU29ja2V0IGNsaWVudCBjb25uZWN0aW9uXG4gKiBjb25zdCBjbGllbnQgPSBXZWJzb2NrZXRzLmNyZWF0ZVdlYnNvY2tldChcIndzOi8vZXhhbXBsZS5jb20vc29ja2V0XCIsIFwibXlIYW5kbGVyXCIpO1xuICogY2xpZW50LnNlbmQoXCJIZWxsbywgV2ViU29ja2V0IVwiKTtcbiAqIFxuICogLy8gQWNjZXNzIGV2ZW50IGRldGFpbHMgaW4gYW4gJ29ubWVzc2FnZScgaGFuZGxlclxuICogaWYgKFdlYnNvY2tldHMuaXNPbk1lc3NhZ2UoKSkge1xuICogICAgIGNvbnN0IG1lc3NhZ2UgPSBXZWJzb2NrZXRzLmdldE1lc3NhZ2UoKTtcbiAqICAgICBjb25zb2xlLmxvZyhcIlJlY2VpdmVkIG1lc3NhZ2U6XCIsIG1lc3NhZ2UpO1xuICogfVxuICogXG4gKiAvLyBDbG9zZSB0aGUgV2ViU29ja2V0IGNvbm5lY3Rpb24gd2hlbiBkb25lXG4gKiBjbGllbnQuY2xvc2UoKTtcbiAqIGBgYFxuICovXG5cbmNvbnN0IFdlYnNvY2tldHNGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkud2Vic29ja2V0cy5XZWJzb2NrZXRzRmFjYWRlXCIpO1xuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRzXG4gKiBAZGVzY3JpcHRpb24gU3RhdGljIHV0aWxpdHkgY2xhc3MgZm9yIGFjY2Vzc2luZyBhbmQgbWFuYWdpbmcgV2ViU29ja2V0IGZ1bmN0aW9uYWxpdHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBXZWJzb2NrZXRzIHtcblxuXHQvKipcblx0ICogQ3JlYXRlcyBhIG5ldyBXZWJTb2NrZXQgY2xpZW50IGNvbm5lY3Rpb24gdG8gYSBzcGVjaWZpZWQgVVJJLCBtYW5hZ2VkIGJ5IGEgaGFuZGxlciBzY3JpcHQuXG5cdCAqXG5cdCAqIEBwYXJhbSB1cmkgVGhlIHRhcmdldCBXZWJTb2NrZXQgVVJJIChlLmcuLCAnd3M6Ly9leGFtcGxlLmNvbS9zb2NrZXQnKS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGlkZW50aWZpZXIgb3IgcGF0aCBvZiB0aGUgc2NyaXB0IGhhbmRsaW5nIHRoZSBXZWJTb2NrZXQgZXZlbnRzLlxuXHQgKiBAcmV0dXJucyBBIHdyYXBwZXIgb2JqZWN0IGZvciB0aGUgbmV3IFdlYlNvY2tldCBzZXNzaW9uLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBjcmVhdGVXZWJzb2NrZXQodXJpOiBzdHJpbmcsIGhhbmRsZXI6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB7XG5cdFx0Y29uc3Qgc2Vzc2lvbiA9IFdlYnNvY2tldHNGYWNhZGUuY3JlYXRlV2Vic29ja2V0KHVyaSwgaGFuZGxlcik7XG5cdFx0cmV0dXJuIG5ldyBXZWJzb2NrZXRDbGllbnQoc2Vzc2lvbiwgdXJpLCBoYW5kbGVyKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIGFsbCBhY3RpdmUgV2ViU29ja2V0IGNsaWVudHMuXG5cdCAqXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG9iamVjdHMgZGV0YWlsaW5nIHRoZSBVUkkgYW5kIGhhbmRsZXIgb2YgZWFjaCBjbGllbnQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudHMoKTogeyB1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nIH1bXSB7XG5cdFx0cmV0dXJuIEpTT04ucGFyc2UoV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnRzQXNKc29uKCkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNwZWNpZmljIFdlYlNvY2tldCBjbGllbnQgd3JhcHBlciBieSBpdHMgc2Vzc2lvbiBJRC5cblx0ICpcblx0ICogQHBhcmFtIGlkIFRoZSBzZXNzaW9uIElEIG9mIHRoZSBjbGllbnQuXG5cdCAqIEByZXR1cm5zIFRoZSBjbGllbnQgd3JhcHBlciBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRDbGllbnQoaWQ6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbmF0aXZlID0gV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnQoaWQpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBXZWJTb2NrZXQgY2xpZW50IHdyYXBwZXIgYnkgaXRzIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICpcblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllciBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWVudC5cblx0ICogQHJldHVybnMgVGhlIGNsaWVudCB3cmFwcGVyIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudEJ5SGFuZGxlcihoYW5kbGVyOiBzdHJpbmcpOiBXZWJzb2NrZXRDbGllbnQgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IG5hdGl2ZSA9IFdlYnNvY2tldHNGYWNhZGUuZ2V0Q2xpZW50QnlIYW5kbGVyKGhhbmRsZXIpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgdGhlIG1lc3NhZ2UgcGF5bG9hZCBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25tZXNzYWdlJyBoYW5kbGVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgbWVzc2FnZSBjb250ZW50LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRNZXNzYWdlKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ21lc3NhZ2UnKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgZXJyb3IgZGV0YWlscyBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25lcnJvcicgaGFuZGxlci5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGVycm9yIG9iamVjdCBvciBzdHJpbmcuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVycm9yKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ2Vycm9yJyk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBldmVudCBtZXRob2QgbmFtZSB0aGF0IHRyaWdnZXJlZCB0aGUgY3VycmVudCBzY3JpcHQgZXhlY3V0aW9uIChlLmcuLCBcIm9ub3BlblwiLCBcIm9ubWVzc2FnZVwiKS5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIGV2ZW50IG1ldGhvZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0TWV0aG9kKCk6IHN0cmluZyB7XG5cdFx0Ly8gQXNzdW1lcyBfX2NvbnRleHQgaXMgYSBnbG9iYWwgbWFwIHByb3ZpZGVkIGJ5IHRoZSBleGVjdXRpb24gZW52aXJvbm1lbnRcblx0XHRyZXR1cm4gX19jb250ZXh0LmdldCgnbWV0aG9kJyk7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ub3BlbicuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25vcGVuJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk9wZW4oKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25vcGVuXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ubWVzc2FnZScuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25tZXNzYWdlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk1lc3NhZ2UoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25tZXNzYWdlXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29uZXJyb3InLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBtZXRob2QgaXMgJ29uZXJyb3InLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBpc09uRXJyb3IoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25lcnJvclwiO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBldmVudCBjb250ZXh0IGlzICdvbmNsb3NlJy5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgbWV0aG9kIGlzICdvbmNsb3NlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbkNsb3NlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmdldE1ldGhvZCgpID09PSBcIm9uY2xvc2VcIjtcblx0fVxufVxuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRDbGllbnRcbiAqIEBkZXNjcmlwdGlvbiBXcmFwcGVyIGZvciBhIG5hdGl2ZSBXZWJTb2NrZXQgc2Vzc2lvbiwgcHJvdmlkaW5nIG1ldGhvZHMgdG8gc2VuZCBhbmQgY2xvc2UgdGhlIGNvbm5lY3Rpb24uXG4gKi9cbmNsYXNzIFdlYnNvY2tldENsaWVudCB7XG5cdC8vIFJlbmFtZWQgdG8gX3Nlc3Npb24gZm9yIGJldHRlciBlbmNhcHN1bGF0aW9uIG9mIHRoZSBuYXRpdmUgSmF2YSBvYmplY3Rcblx0cHJpdmF0ZSByZWFkb25seSBfc2Vzc2lvbjogbnVsbCB8IGFueTtcblx0cHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZztcblx0cHJpdmF0ZSByZWFkb25seSBoYW5kbGVyOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEBwYXJhbSBzZXNzaW9uIFRoZSBuYXRpdmUgSmF2YSBzZXNzaW9uIG9iamVjdC5cblx0ICogQHBhcmFtIHVyaSBUaGUgY29ubmVjdGVkIFVSSS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHNlc3Npb246IG51bGwgfCBhbnksIHVyaTogc3RyaW5nLCBoYW5kbGVyOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9zZXNzaW9uID0gc2Vzc2lvbjtcblx0XHR0aGlzLnVyaSA9IHVyaTtcblx0XHR0aGlzLmhhbmRsZXIgPSBoYW5kbGVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbmRzIGEgdGV4dCBtZXNzYWdlIG92ZXIgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuXHQgKiBAcGFyYW0gdGV4dCBUaGUgbWVzc2FnZSB0byBzZW5kLlxuXHQgKi9cblx0cHVibGljIHNlbmQodGV4dDogc3RyaW5nKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9zZXNzaW9uIHx8IHRoaXMuX3Nlc3Npb24gPT09IG51bGwpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJXZWJzb2NrZXQgU2Vzc2lvbiBpcyBudWxsLiBNZXNzYWdlIG5vdCBzZW50LlwiKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fc2Vzc2lvbi5zZW5kKHRoaXMudXJpLCB0ZXh0KTtcblx0fTtcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cblx0ICovXG5cdHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5fc2Vzc2lvbikge1xuXHRcdFx0dGhpcy5fc2Vzc2lvbi5jbG9zZSgpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFdlYnNvY2tldHM7XG59Il0sCiAgIm1hcHBpbmdzIjogIkFBbUNBLE1BQU0sbUJBQW1CLEtBQUssS0FBSyxrRUFBa0U7QUFNOUYsTUFBTSxXQUFXO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVN2QixPQUFjLGdCQUFnQixLQUFhLFNBQWtDO0FBQzVFLFVBQU0sVUFBVSxpQkFBaUIsZ0JBQWdCLEtBQUssT0FBTztBQUM3RCxXQUFPLElBQUksZ0JBQWdCLFNBQVMsS0FBSyxPQUFPO0FBQUEsRUFDakQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGFBQWlEO0FBQzlELFdBQU8sS0FBSyxNQUFNLGlCQUFpQixpQkFBaUIsQ0FBQztBQUFBLEVBQ3REO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLFVBQVUsSUFBeUM7QUFDaEUsVUFBTSxTQUFTLGlCQUFpQixVQUFVLEVBQUU7QUFDNUMsV0FBTyxTQUFTLElBQUksZ0JBQWdCLE9BQU8sV0FBVyxHQUFHLE9BQU8sV0FBVyxFQUFFLGNBQWMsR0FBRyxPQUFPLFdBQVcsQ0FBQyxJQUFJO0FBQUEsRUFDdEg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFBLE9BQWMsbUJBQW1CLFNBQThDO0FBQzlFLFVBQU0sU0FBUyxpQkFBaUIsbUJBQW1CLE9BQU87QUFDMUQsV0FBTyxTQUFTLElBQUksZ0JBQWdCLE9BQU8sV0FBVyxHQUFHLE9BQU8sV0FBVyxFQUFFLGNBQWMsR0FBRyxPQUFPLFdBQVcsQ0FBQyxJQUFJO0FBQUEsRUFDdEg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLGFBQWtCO0FBQy9CLFdBQU8sVUFBVSxJQUFJLFNBQVM7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLE9BQWMsV0FBZ0I7QUFDN0IsV0FBTyxVQUFVLElBQUksT0FBTztBQUFBLEVBQzdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxZQUFvQjtBQUVqQyxXQUFPLFVBQVUsSUFBSSxRQUFRO0FBQUEsRUFDOUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxXQUFvQjtBQUNqQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxjQUF1QjtBQUNwQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxZQUFxQjtBQUNsQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTUEsT0FBYyxZQUFxQjtBQUNsQyxXQUFPLEtBQUssVUFBVSxNQUFNO0FBQUEsRUFDN0I7QUFDRDtBQU1BLE1BQU0sZ0JBQWdCO0FBQUE7QUFBQSxFQUVKO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPakIsWUFBWSxTQUFxQixLQUFhLFNBQWlCO0FBQzlELFNBQUssV0FBVztBQUNoQixTQUFLLE1BQU07QUFDWCxTQUFLLFVBQVU7QUFBQSxFQUNoQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNTyxLQUFLLE1BQW9CO0FBQy9CLFFBQUksQ0FBQyxLQUFLLFlBQVksS0FBSyxhQUFhLE1BQU07QUFDN0MsY0FBUSxNQUFNLDhDQUE4QztBQUM1RDtBQUFBLElBQ0Q7QUFDQSxTQUFLLFNBQVMsS0FBSyxLQUFLLEtBQUssSUFBSTtBQUFBLEVBQ2xDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ3BCLFFBQUksS0FBSyxVQUFVO0FBQ2xCLFdBQUssU0FBUyxNQUFNO0FBQUEsSUFDckI7QUFBQSxFQUNEO0FBQ0Q7QUFHQSxJQUFJLE9BQU8sV0FBVyxhQUFhO0FBRWxDLFNBQU8sVUFBVTtBQUNsQjsiLAogICJuYW1lcyI6IFtdCn0K
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL25ldC93ZWJzb2NrZXRzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUgbmV0L3dlYnNvY2tldHNcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9uZXRcbiAqIEBuYW1lIFdlYnNvY2tldHNcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgV2Vic29ja2V0cyBtb2R1bGUgcHJvdmlkZXMgYW4gQVBJIGZvciBtYW5hZ2luZyBXZWJTb2NrZXQgY2xpZW50cyBhbmQgaGFuZGxpbmcgbGlmZWN5Y2xlIGV2ZW50cyB3aXRoaW4gdGhlIGFwcGxpY2F0aW9uIGNvbnRleHQuIEl0IGFic3RyYWN0cyB0aGUgY29tcGxleGl0aWVzIG9mIFdlYlNvY2tldCBjb21tdW5pY2F0aW9uLCBhbGxvd2luZyBkZXZlbG9wZXJzIHRvIGVhc2lseSBjcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY29ubmVjdGlvbnMsIHNlbmQgbWVzc2FnZXMsIGFuZCBoYW5kbGUgZXZlbnRzIHN1Y2ggYXMgY29ubmVjdGlvbiBvcGVuaW5ncywgbWVzc2FnZXMsIGVycm9ycywgYW5kIGNsb3N1cmVzLlxuICogXG4gKiAjIyMgS2V5IEZlYXR1cmVzOlxuICogLSAqKldlYlNvY2tldCBDbGllbnQgTWFuYWdlbWVudCoqOiBDcmVhdGUgYW5kIG1hbmFnZSBXZWJTb2NrZXQgY2xpZW50cyB3aXRoIGVhc2UsIGluY2x1ZGluZyBzZW5kaW5nIG1lc3NhZ2VzIGFuZCBjbG9zaW5nIGNvbm5lY3Rpb25zLlxuICogLSAqKkV2ZW50IEhhbmRsaW5nKio6IEFjY2VzcyBldmVudCBkZXRhaWxzIHN1Y2ggYXMgbWVzc2FnZXMgYW5kIGVycm9ycyB3aXRoaW4gdGhlIGNvbnRleHQgb2YgV2ViU29ja2V0IGV2ZW50IGhhbmRsZXJzLlxuICogXG4gKiAjIyMgVXNlIENhc2VzOlxuICogLSAqKlJlYWwtVGltZSBDb21tdW5pY2F0aW9uKio6IFRoaXMgbW9kdWxlIGlzIGlkZWFsIGZvciBhcHBsaWNhdGlvbnMgdGhhdCByZXF1aXJlIHJlYWwtdGltZSBjb21tdW5pY2F0aW9uIGJldHdlZW4gY2xpZW50cyBhbmQgdGhlIHNlcnZlciB1c2luZyBXZWJTb2NrZXRzLlxuICogLSAqKkludGVncmF0aW9uIHdpdGggV2ViU29ja2V0IFN5c3RlbXMqKjogQnkgcHJvdmlkaW5nIGEgaGlnaC1sZXZlbCBBUEkgZm9yIFdlYlNvY2tldCBtYW5hZ2VtZW50LCBkZXZlbG9wZXJzIGNhbiBlYXNpbHkgaW50ZWdyYXRlIHRoZWlyIGFwcGxpY2F0aW9ucyB3aXRoIFdlYlNvY2tldC1iYXNlZCBzeXN0ZW1zIGFuZCBwcm90b2NvbHMuXG4gKiBcbiAqICMjIyBFeGFtcGxlIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IFdlYnNvY2tldHMgfSBmcm9tIFwiQGFlcm9raXQvc2RrL25ldFwiO1xuICogXG4gKiAvLyBDcmVhdGUgYSBuZXcgV2ViU29ja2V0IGNsaWVudCBjb25uZWN0aW9uIGFuZCBzZW5kIHRvIGEgU1RPTVAgZGVzdGluYXRpb24gb2YgdGhlIGJyb2tlclxuICogY29uc3QgY2xpZW50ID0gV2Vic29ja2V0cy5jcmVhdGVXZWJzb2NrZXQoXCJ3czovL2V4YW1wbGUuY29tL3NvY2tldFwiLCBcIm15SGFuZGxlclwiKTtcbiAqIGNsaWVudC5zZW5kKFwiSGVsbG8sIFdlYlNvY2tldCFcIiwgXCIvYXBwL2dyZWV0aW5nc1wiKTtcbiAqXG4gKiAvLyBBIERpcmlnaWJsZSBicm9rZXIgbmVlZHMgdGhlIENPTk5FQ1QgZnJhbWUgYXV0aGVudGljYXRlZDsgaXRzIGFwcGxpY2F0aW9uIGRlc3RpbmF0aW9ucyBhcmUgL3dzL3N0b21wLzxlbmRwb2ludD5cbiAqIGNvbnN0IGRpcmlnaWJsZSA9IFdlYnNvY2tldHMuY3JlYXRlV2Vic29ja2V0KFwid3NzOi8vZGlyaWdpYmxlLmV4YW1wbGUuY29tL3N0b21wXCIsIFwibXlIYW5kbGVyXCIsIHsgQXV0aG9yaXphdGlvbjogXCJCZWFyZXIgXCIgKyBpZFRva2VuIH0pO1xuICogZGlyaWdpYmxlLnNlbmQoXCJoZWxsb1wiLCBcIi93cy9zdG9tcC9teS1lbmRwb2ludFwiKTtcbiAqXG4gKiAvLyBBY2Nlc3MgZXZlbnQgZGV0YWlscyBpbiBhbiAnb25tZXNzYWdlJyBoYW5kbGVyXG4gKiBpZiAoV2Vic29ja2V0cy5pc09uTWVzc2FnZSgpKSB7XG4gKiAgICAgY29uc3QgbWVzc2FnZSA9IFdlYnNvY2tldHMuZ2V0TWVzc2FnZSgpO1xuICogICAgIGNvbnNvbGUubG9nKFwiUmVjZWl2ZWQgbWVzc2FnZTpcIiwgbWVzc2FnZSk7XG4gKiB9XG4gKiBcbiAqIC8vIENsb3NlIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbiB3aGVuIGRvbmVcbiAqIGNsaWVudC5jbG9zZSgpO1xuICogYGBgXG4gKi9cblxuY29uc3QgV2Vic29ja2V0c0ZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS53ZWJzb2NrZXRzLldlYnNvY2tldHNGYWNhZGVcIik7XG5cbi8qKlxuICogQGNsYXNzIFdlYnNvY2tldHNcbiAqIEBkZXNjcmlwdGlvbiBTdGF0aWMgdXRpbGl0eSBjbGFzcyBmb3IgYWNjZXNzaW5nIGFuZCBtYW5hZ2luZyBXZWJTb2NrZXQgZnVuY3Rpb25hbGl0eS5cbiAqL1xuZXhwb3J0IGNsYXNzIFdlYnNvY2tldHMge1xuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgbmV3IFdlYlNvY2tldCBjbGllbnQgY29ubmVjdGlvbiB0byBhIHNwZWNpZmllZCBVUkksIG1hbmFnZWQgYnkgYSBoYW5kbGVyIHNjcmlwdC5cblx0ICpcblx0ICogQHBhcmFtIHVyaSBUaGUgdGFyZ2V0IFdlYlNvY2tldCBVUkkgKGUuZy4sICd3czovL2V4YW1wbGUuY29tL3NvY2tldCcpLlxuXHQgKiBAcGFyYW0gaGFuZGxlciBUaGUgaWRlbnRpZmllciBvciBwYXRoIG9mIHRoZSBzY3JpcHQgaGFuZGxpbmcgdGhlIFdlYlNvY2tldCBldmVudHMuXG5cdCAqIEBwYXJhbSBjb25uZWN0SGVhZGVycyBIZWFkZXJzIG9mIHRoZSBTVE9NUCBDT05ORUNUIGZyYW1lLiBBIERpcmlnaWJsZSAnL3N0b21wJyBlbmRwb2ludCBuZWVkc1xuXHQgKiAgICAgICAgJ0F1dGhvcml6YXRpb246IEJlYXJlciA8dG9rZW4+JyB0aGVyZSAtIGFuIGFub255bW91cyBDT05ORUNUIGlzIHJlZnVzZWQuXG5cdCAqIEByZXR1cm5zIEEgd3JhcHBlciBvYmplY3QgZm9yIHRoZSBuZXcgV2ViU29ja2V0IHNlc3Npb24uXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGNyZWF0ZVdlYnNvY2tldCh1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nLCBjb25uZWN0SGVhZGVycz86IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9KTogV2Vic29ja2V0Q2xpZW50IHtcblx0XHRjb25zdCBzZXNzaW9uID0gY29ubmVjdEhlYWRlcnNcblx0XHRcdD8gV2Vic29ja2V0c0ZhY2FkZS5jcmVhdGVXZWJzb2NrZXQodXJpLCBoYW5kbGVyLCBKU09OLnN0cmluZ2lmeShjb25uZWN0SGVhZGVycykpXG5cdFx0XHQ6IFdlYnNvY2tldHNGYWNhZGUuY3JlYXRlV2Vic29ja2V0KHVyaSwgaGFuZGxlcik7XG5cdFx0cmV0dXJuIG5ldyBXZWJzb2NrZXRDbGllbnQoc2Vzc2lvbiwgdXJpLCBoYW5kbGVyKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBsaXN0IG9mIGFsbCBhY3RpdmUgV2ViU29ja2V0IGNsaWVudHMuXG5cdCAqXG5cdCAqIEByZXR1cm5zIEFuIGFycmF5IG9mIG9iamVjdHMgZGV0YWlsaW5nIHRoZSBVUkkgYW5kIGhhbmRsZXIgb2YgZWFjaCBjbGllbnQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudHMoKTogeyB1cmk6IHN0cmluZywgaGFuZGxlcjogc3RyaW5nIH1bXSB7XG5cdFx0cmV0dXJuIEpTT04ucGFyc2UoV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnRzQXNKc29uKCkpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJldHJpZXZlcyBhIHNwZWNpZmljIFdlYlNvY2tldCBjbGllbnQgd3JhcHBlciBieSBpdHMgc2Vzc2lvbiBJRC5cblx0ICpcblx0ICogQHBhcmFtIGlkIFRoZSBzZXNzaW9uIElEIG9mIHRoZSBjbGllbnQuXG5cdCAqIEByZXR1cm5zIFRoZSBjbGllbnQgd3JhcHBlciBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRDbGllbnQoaWQ6IHN0cmluZyk6IFdlYnNvY2tldENsaWVudCB8IHVuZGVmaW5lZCB7XG5cdFx0Y29uc3QgbmF0aXZlID0gV2Vic29ja2V0c0ZhY2FkZS5nZXRDbGllbnQoaWQpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBXZWJTb2NrZXQgY2xpZW50IHdyYXBwZXIgYnkgaXRzIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICpcblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllciBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWVudC5cblx0ICogQHJldHVybnMgVGhlIGNsaWVudCB3cmFwcGVyIG9yIHVuZGVmaW5lZCBpZiBub3QgZm91bmQuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldENsaWVudEJ5SGFuZGxlcihoYW5kbGVyOiBzdHJpbmcpOiBXZWJzb2NrZXRDbGllbnQgfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IG5hdGl2ZSA9IFdlYnNvY2tldHNGYWNhZGUuZ2V0Q2xpZW50QnlIYW5kbGVyKGhhbmRsZXIpO1xuXHRcdHJldHVybiBuYXRpdmUgPyBuZXcgV2Vic29ja2V0Q2xpZW50KG5hdGl2ZS5nZXRTZXNzaW9uKCksIG5hdGl2ZS5nZXRTZXNzaW9uKCkuZ2V0UmVxdWVzdFVSSSgpLCBuYXRpdmUuZ2V0SGFuZGxlcigpKSA6IHVuZGVmaW5lZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgdGhlIG1lc3NhZ2UgcGF5bG9hZCBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25tZXNzYWdlJyBoYW5kbGVyLlxuXHQgKlxuXHQgKiBAcmV0dXJucyBUaGUgbWVzc2FnZSBjb250ZW50LlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXRNZXNzYWdlKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ21lc3NhZ2UnKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZXRyaWV2ZXMgZXJyb3IgZGV0YWlscyBmcm9tIHRoZSBjdXJyZW50IGNvbnRleHQsIHR5cGljYWxseSB1c2VkIGluc2lkZSBhbiAnb25lcnJvcicgaGFuZGxlci5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIGVycm9yIG9iamVjdCBvciBzdHJpbmcuXG5cdCAqL1xuXHRwdWJsaWMgc3RhdGljIGdldEVycm9yKCk6IGFueSB7XG5cdFx0cmV0dXJuIF9fY29udGV4dC5nZXQoJ2Vycm9yJyk7XG5cdH1cblxuXHQvKipcblx0ICogUmV0cmlldmVzIHRoZSBldmVudCBtZXRob2QgbmFtZSB0aGF0IHRyaWdnZXJlZCB0aGUgY3VycmVudCBzY3JpcHQgZXhlY3V0aW9uIChlLmcuLCBcIm9ub3BlblwiLCBcIm9ubWVzc2FnZVwiKS5cblx0ICpcblx0ICogQHJldHVybnMgVGhlIG5hbWUgb2YgdGhlIGV2ZW50IG1ldGhvZC5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgZ2V0TWV0aG9kKCk6IHN0cmluZyB7XG5cdFx0Ly8gQXNzdW1lcyBfX2NvbnRleHQgaXMgYSBnbG9iYWwgbWFwIHByb3ZpZGVkIGJ5IHRoZSBleGVjdXRpb24gZW52aXJvbm1lbnRcblx0XHRyZXR1cm4gX19jb250ZXh0LmdldCgnbWV0aG9kJyk7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ub3BlbicuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25vcGVuJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk9wZW4oKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25vcGVuXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29ubWVzc2FnZScuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgdGhlIG1ldGhvZCBpcyAnb25tZXNzYWdlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbk1lc3NhZ2UoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25tZXNzYWdlXCI7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIHRoZSBjdXJyZW50IGV2ZW50IGNvbnRleHQgaXMgJ29uZXJyb3InLlxuXHQgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBtZXRob2QgaXMgJ29uZXJyb3InLlxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBpc09uRXJyb3IoKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMuZ2V0TWV0aG9kKCkgPT09IFwib25lcnJvclwiO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiB0aGUgY3VycmVudCBldmVudCBjb250ZXh0IGlzICdvbmNsb3NlJy5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgbWV0aG9kIGlzICdvbmNsb3NlJy5cblx0ICovXG5cdHB1YmxpYyBzdGF0aWMgaXNPbkNsb3NlKCk6IGJvb2xlYW4ge1xuXHRcdHJldHVybiB0aGlzLmdldE1ldGhvZCgpID09PSBcIm9uY2xvc2VcIjtcblx0fVxufVxuXG4vKipcbiAqIEBjbGFzcyBXZWJzb2NrZXRDbGllbnRcbiAqIEBkZXNjcmlwdGlvbiBXcmFwcGVyIGZvciBhIG5hdGl2ZSBXZWJTb2NrZXQgc2Vzc2lvbiwgcHJvdmlkaW5nIG1ldGhvZHMgdG8gc2VuZCBhbmQgY2xvc2UgdGhlIGNvbm5lY3Rpb24uXG4gKi9cbmNsYXNzIFdlYnNvY2tldENsaWVudCB7XG5cdC8vIFJlbmFtZWQgdG8gX3Nlc3Npb24gZm9yIGJldHRlciBlbmNhcHN1bGF0aW9uIG9mIHRoZSBuYXRpdmUgSmF2YSBvYmplY3Rcblx0cHJpdmF0ZSByZWFkb25seSBfc2Vzc2lvbjogbnVsbCB8IGFueTtcblx0cHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZztcblx0cHJpdmF0ZSByZWFkb25seSBoYW5kbGVyOiBzdHJpbmc7XG5cblx0LyoqXG5cdCAqIEBwYXJhbSBzZXNzaW9uIFRoZSBuYXRpdmUgSmF2YSBzZXNzaW9uIG9iamVjdC5cblx0ICogQHBhcmFtIHVyaSBUaGUgY29ubmVjdGVkIFVSSS5cblx0ICogQHBhcmFtIGhhbmRsZXIgVGhlIGhhbmRsZXIgaWRlbnRpZmllci5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHNlc3Npb246IG51bGwgfCBhbnksIHVyaTogc3RyaW5nLCBoYW5kbGVyOiBzdHJpbmcpIHtcblx0XHR0aGlzLl9zZXNzaW9uID0gc2Vzc2lvbjtcblx0XHR0aGlzLnVyaSA9IHVyaTtcblx0XHR0aGlzLmhhbmRsZXIgPSBoYW5kbGVyO1xuXHR9XG5cblx0LyoqXG5cdCAqIFNlbmRzIGEgdGV4dCBtZXNzYWdlIG92ZXIgdGhlIFdlYlNvY2tldCBjb25uZWN0aW9uLlxuXHQgKiBAcGFyYW0gdGV4dCBUaGUgbWVzc2FnZSB0byBzZW5kLlxuXHQgKiBAcGFyYW0gZGVzdGluYXRpb24gVGhlIFNUT01QIGRlc3RpbmF0aW9uIHRoZSBtZXNzYWdlIGlzIHNlbnQgdG8uIEEgRGlyaWdpYmxlIGJyb2tlciByb3V0ZXMgaXRzXG5cdCAqICAgICAgICBhcHBsaWNhdGlvbiBkZXN0aW5hdGlvbnMgJy93cy9zdG9tcC88ZW5kcG9pbnQ+JyB0byB0aGUgaGFuZGxlciBvZiB0aGF0IGVuZHBvaW50LiBXaXRob3V0XG5cdCAqICAgICAgICBpdCB0aGUgY29ubmVjdGlvbiBVUkkgaXMgc2VudCBhcyB0aGUgZGVzdGluYXRpb24sIHdoaWNoIG5vIGJyb2tlciByb3V0ZXMgYW55d2hlcmUuXG5cdCAqL1xuXHRwdWJsaWMgc2VuZCh0ZXh0OiBzdHJpbmcsIGRlc3RpbmF0aW9uPzogc3RyaW5nKTogdm9pZCB7XG5cdFx0aWYgKCF0aGlzLl9zZXNzaW9uIHx8IHRoaXMuX3Nlc3Npb24gPT09IG51bGwpIHtcblx0XHRcdGNvbnNvbGUuZXJyb3IoXCJXZWJzb2NrZXQgU2Vzc2lvbiBpcyBudWxsLiBNZXNzYWdlIG5vdCBzZW50LlwiKTtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0dGhpcy5fc2Vzc2lvbi5zZW5kKGRlc3RpbmF0aW9uID8/IHRoaXMudXJpLCB0ZXh0KTtcblx0fTtcblxuXHQvKipcblx0ICogQ2xvc2VzIHRoZSBXZWJTb2NrZXQgY29ubmVjdGlvbi5cblx0ICovXG5cdHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5fc2Vzc2lvbikge1xuXHRcdFx0dGhpcy5fc2Vzc2lvbi5jbG9zZSgpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFdlYnNvY2tldHM7XG59Il0sCiAgIm1hcHBpbmdzIjogIkFBdUNBLE1BQU0sbUJBQW1CLEtBQUssS0FBSyxrRUFBa0U7QUFNOUYsTUFBTSxXQUFXO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXdkIsT0FBYyxnQkFBZ0IsS0FBYSxTQUFpQixnQkFBOEQ7QUFDekgsVUFBTSxVQUFVLGlCQUNiLGlCQUFpQixnQkFBZ0IsS0FBSyxTQUFTLEtB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
|