@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): WebsocketClient;
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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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aerokit/sdk",
3
- "version": "14.60.0",
3
+ "version": "14.61.0",
4
4
  "description": "Unified TypeScript SDK for modern cloud platforms.",
5
5
  "scripts": {
6
6
  "clean": "rm -rf dist",