velocious 1.0.337 → 1.0.338

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.
@@ -13,16 +13,18 @@ export default class VelociousWebsocketClientSubscription {
13
13
  * @param {string} args.subscriptionId
14
14
  * @param {string} args.channelType
15
15
  * @param {Record<string, any>} [args.params]
16
+ * @param {string} [args.lastEventId]
16
17
  * @param {(body: any) => void} [args.onMessage]
17
18
  * @param {() => void} [args.onDisconnect]
18
19
  * @param {() => void} [args.onResume]
19
20
  * @param {(reason: string) => void} [args.onClose]
20
21
  */
21
- constructor({ client, subscriptionId, channelType, params, onMessage, onDisconnect, onResume, onClose }: {
22
+ constructor({ client, subscriptionId, channelType, params, lastEventId, onMessage, onDisconnect, onResume, onClose }: {
22
23
  client: import("./websocket-client.js").default;
23
24
  subscriptionId: string;
24
25
  channelType: string;
25
26
  params?: Record<string, any> | undefined;
27
+ lastEventId?: string | undefined;
26
28
  onMessage?: ((body: any) => void) | undefined;
27
29
  onDisconnect?: (() => void) | undefined;
28
30
  onResume?: (() => void) | undefined;
@@ -32,11 +34,13 @@ export default class VelociousWebsocketClientSubscription {
32
34
  subscriptionId: string;
33
35
  channelType: string;
34
36
  params: Record<string, any>;
37
+ lastEventId: string | undefined;
35
38
  _onMessage: ((body: any) => void) | undefined;
36
39
  _onDisconnect: (() => void) | undefined;
37
40
  _onResume: (() => void) | undefined;
38
41
  _onClose: ((reason: string) => void) | undefined;
39
42
  _subscribed: boolean;
43
+ _subscribeSent: boolean;
40
44
  _closed: boolean;
41
45
  /** @type {Promise<void>} */
42
46
  ready: Promise<void>;
@@ -44,6 +48,10 @@ export default class VelociousWebsocketClientSubscription {
44
48
  _rejectReady: (reason?: any) => void;
45
49
  /** @returns {void} */
46
50
  _handleSubscribed(): void;
51
+ /** @returns {void} */
52
+ _markSubscribeSent(): void;
53
+ /** @returns {boolean} */
54
+ _needsSubscribe(): boolean;
47
55
  /**
48
56
  * @param {any} body
49
57
  * @returns {void}
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-channel.d.ts","sourceRoot":"","sources":["../../../src/http-client/websocket-channel.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH;IACE;;;;;;;;;;OAUG;IACH,yGATG;QAAsD,MAAM,EAApD,OAAO,uBAAuB,EAAE,OAAO;QAC1B,cAAc,EAA3B,MAAM;QACO,WAAW,EAAxB,MAAM;QACqB,MAAM;QACN,SAAS,WAA7B,GAAG,KAAK,IAAI;QACD,YAAY,UAAxB,IAAI;QACQ,QAAQ,UAApB,IAAI;QACsB,OAAO,aAA9B,MAAM,KAAK,IAAI;KAAgB,EAmBlD;IAhBC,gDAAoB;IACpB,uBAAoC;IACpC,oBAA8B;IAC9B,4BAA0B;IAC1B,oBAVgB,GAAG,KAAK,IAAI,cAUD;IAC3B,sBAVe,IAAI,cAUc;IACjC,kBAVe,IAAI,cAUM;IACzB,oBAVkB,MAAM,KAAK,IAAI,cAUV;IACvB,qBAAwB;IACxB,iBAAoB;IAEpB,4BAA4B;IAC5B,OADW,OAAO,CAAC,IAAI,CAAC,CAItB;IAFA,yDAA4B;IAC5B,qCAA0B;IAI9B,sBAAsB;IACtB,qBADc,IAAI,CAKjB;IAED;;;OAGG;IACH,qBAHW,GAAG,GACD,IAAI,CAKhB;IAED,sBAAsB;IACtB,uBADc,IAAI,CAIjB;IAED,sBAAsB;IACtB,kBADc,IAAI,CAIjB;IAED;;;OAGG;IACH,sBAHW,MAAM,GACJ,IAAI,CAahB;IAED,sBAAsB;IACtB,SADc,IAAI,CAcjB;IAED,yBAAyB;IACzB,YADc,OAAO,CACa;IAElC,yBAAyB;IACzB,gBADc,OAAO,CACsC;CAC5D"}
1
+ {"version":3,"file":"websocket-channel.d.ts","sourceRoot":"","sources":["../../../src/http-client/websocket-channel.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH;IACE;;;;;;;;;;;OAWG;IACH,sHAVG;QAAsD,MAAM,EAApD,OAAO,uBAAuB,EAAE,OAAO;QAC1B,cAAc,EAA3B,MAAM;QACO,WAAW,EAAxB,MAAM;QACqB,MAAM;QACnB,WAAW;QACE,SAAS,WAA7B,GAAG,KAAK,IAAI;QACD,YAAY,UAAxB,IAAI;QACQ,QAAQ,UAApB,IAAI;QACsB,OAAO,aAA9B,MAAM,KAAK,IAAI;KAAgB,EAqBlD;IAlBC,gDAAoB;IACpB,uBAAoC;IACpC,oBAA8B;IAC9B,4BAA0B;IAC1B,gCAA8B;IAC9B,oBAXgB,GAAG,KAAK,IAAI,cAWD;IAC3B,sBAXe,IAAI,cAWc;IACjC,kBAXe,IAAI,cAWM;IACzB,oBAXkB,MAAM,KAAK,IAAI,cAWV;IACvB,qBAAwB;IACxB,wBAA2B;IAC3B,iBAAoB;IAEpB,4BAA4B;IAC5B,OADW,OAAO,CAAC,IAAI,CAAC,CAItB;IAFA,yDAA4B;IAC5B,qCAA0B;IAI9B,sBAAsB;IACtB,qBADc,IAAI,CAKjB;IAED,sBAAsB;IACtB,sBADc,IAAI,CAGjB;IAED,yBAAyB;IACzB,mBADc,OAAO,CAGpB;IAED;;;OAGG;IACH,qBAHW,GAAG,GACD,IAAI,CAKhB;IAED,sBAAsB;IACtB,uBADc,IAAI,CAIjB;IAED,sBAAsB;IACtB,kBADc,IAAI,CAIjB;IAED;;;OAGG;IACH,sBAHW,MAAM,GACJ,IAAI,CAahB;IAED,sBAAsB;IACtB,SADc,IAAI,CAcjB;IAED,yBAAyB;IACzB,YADc,OAAO,CACa;IAElC,yBAAyB;IACzB,gBADc,OAAO,CACsC;CAC5D"}
@@ -14,21 +14,24 @@ export default class VelociousWebsocketClientSubscription {
14
14
  * @param {string} args.subscriptionId
15
15
  * @param {string} args.channelType
16
16
  * @param {Record<string, any>} [args.params]
17
+ * @param {string} [args.lastEventId]
17
18
  * @param {(body: any) => void} [args.onMessage]
18
19
  * @param {() => void} [args.onDisconnect]
19
20
  * @param {() => void} [args.onResume]
20
21
  * @param {(reason: string) => void} [args.onClose]
21
22
  */
22
- constructor({ client, subscriptionId, channelType, params, onMessage, onDisconnect, onResume, onClose }) {
23
+ constructor({ client, subscriptionId, channelType, params, lastEventId, onMessage, onDisconnect, onResume, onClose }) {
23
24
  this.client = client;
24
25
  this.subscriptionId = subscriptionId;
25
26
  this.channelType = channelType;
26
27
  this.params = params || {};
28
+ this.lastEventId = lastEventId;
27
29
  this._onMessage = onMessage;
28
30
  this._onDisconnect = onDisconnect;
29
31
  this._onResume = onResume;
30
32
  this._onClose = onClose;
31
33
  this._subscribed = false;
34
+ this._subscribeSent = false;
32
35
  this._closed = false;
33
36
  /** @type {Promise<void>} */
34
37
  this.ready = new Promise((resolve, reject) => {
@@ -43,6 +46,14 @@ export default class VelociousWebsocketClientSubscription {
43
46
  this._subscribed = true;
44
47
  this._resolveReady?.();
45
48
  }
49
+ /** @returns {void} */
50
+ _markSubscribeSent() {
51
+ this._subscribeSent = true;
52
+ }
53
+ /** @returns {boolean} */
54
+ _needsSubscribe() {
55
+ return !this._closed && !this._subscribeSent;
56
+ }
46
57
  /**
47
58
  * @param {any} body
48
59
  * @returns {void}
@@ -101,4 +112,4 @@ export default class VelociousWebsocketClientSubscription {
101
112
  /** @returns {boolean} */
102
113
  isSubscribed() { return this._subscribed && !this._closed; }
103
114
  }
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LWNoYW5uZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaHR0cC1jbGllbnQvd2Vic29ja2V0LWNoYW5uZWwuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFPLG9DQUFvQztJQUN2RDs7Ozs7Ozs7OztPQVVHO0lBQ0gsWUFBWSxFQUFDLE1BQU0sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUM7UUFDbkcsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDcEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUE7UUFDcEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUE7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLElBQUksRUFBRSxDQUFBO1FBQzFCLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFBO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFBO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFBO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1FBRXBCLDRCQUE0QjtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFBO1lBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFBO1FBQzVCLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELHNCQUFzQjtJQUN0QixpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFdBQVc7WUFBRSxPQUFNO1FBQzVDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFBO0lBQ3hCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjLENBQUMsSUFBSTtRQUNqQixJQUFJLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTTtRQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDekIsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU07UUFDeEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixjQUFjO1FBQ1osSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU07UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUE7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxNQUFNO1FBQ2xCLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFNO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1FBRW5CLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN6QixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsK0NBQStDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN6RixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxzQkFBc0I7SUFDdEIsS0FBSztRQUNILElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFNO1FBRXhCLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBQyxDQUFDLENBQUE7WUFDOUYsQ0FBQztRQUNILENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxpRUFBaUU7UUFDbkUsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQzNELElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUMxQyxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCLFFBQVEsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBRWxDLHlCQUF5QjtJQUN6QixZQUFZLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQSxDQUFDLENBQUM7Q0FDNUQiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqXG4gKiBDbGllbnQtc2lkZSBoYW5kbGUgZm9yIGEgY2hhbm5lbCBzdWJzY3JpcHRpb24gb3BlbmVkIHZpYVxuICogYFZlbG9jaW91c1dlYnNvY2tldENsaWVudC5zdWJzY3JpYmVDaGFubmVsKClgLiBNaXJyb3JzIHRoZSBzZXJ2ZXInc1xuICogc3Vic2NyaXB0aW9uIGxpZmVjeWNsZSDigJQgYHN1YnNjcmliZWRgIChyZXNvbHZlcyBgcmVhZHlgKSAvIGBvbk1lc3NhZ2VgIC9cbiAqIGBvbkNsb3NlYC5cbiAqXG4gKiBTZWUgYGRvY3Mvd2Vic29ja2V0LWNoYW5uZWxzLm1kYCBmb3IgdGhlIHdpcmUgcHJvdG9jb2wuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c1dlYnNvY2tldENsaWVudFN1YnNjcmlwdGlvbiB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vd2Vic29ja2V0LWNsaWVudC5qc1wiKS5kZWZhdWx0fSBhcmdzLmNsaWVudFxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5zdWJzY3JpcHRpb25JZFxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5jaGFubmVsVHlwZVxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IFthcmdzLnBhcmFtc11cbiAgICogQHBhcmFtIHsoYm9keTogYW55KSA9PiB2b2lkfSBbYXJncy5vbk1lc3NhZ2VdXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gW2FyZ3Mub25EaXNjb25uZWN0XVxuICAgKiBAcGFyYW0geygpID0+IHZvaWR9IFthcmdzLm9uUmVzdW1lXVxuICAgKiBAcGFyYW0geyhyZWFzb246IHN0cmluZykgPT4gdm9pZH0gW2FyZ3Mub25DbG9zZV1cbiAgICovXG4gIGNvbnN0cnVjdG9yKHtjbGllbnQsIHN1YnNjcmlwdGlvbklkLCBjaGFubmVsVHlwZSwgcGFyYW1zLCBvbk1lc3NhZ2UsIG9uRGlzY29ubmVjdCwgb25SZXN1bWUsIG9uQ2xvc2V9KSB7XG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnRcbiAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gc3Vic2NyaXB0aW9uSWRcbiAgICB0aGlzLmNoYW5uZWxUeXBlID0gY2hhbm5lbFR5cGVcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcyB8fCB7fVxuICAgIHRoaXMuX29uTWVzc2FnZSA9IG9uTWVzc2FnZVxuICAgIHRoaXMuX29uRGlzY29ubmVjdCA9IG9uRGlzY29ubmVjdFxuICAgIHRoaXMuX29uUmVzdW1lID0gb25SZXN1bWVcbiAgICB0aGlzLl9vbkNsb3NlID0gb25DbG9zZVxuICAgIHRoaXMuX3N1YnNjcmliZWQgPSBmYWxzZVxuICAgIHRoaXMuX2Nsb3NlZCA9IGZhbHNlXG5cbiAgICAvKiogQHR5cGUge1Byb21pc2U8dm9pZD59ICovXG4gICAgdGhpcy5yZWFkeSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuX3Jlc29sdmVSZWFkeSA9IHJlc29sdmVcbiAgICAgIHRoaXMuX3JlamVjdFJlYWR5ID0gcmVqZWN0XG4gICAgfSlcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dm9pZH0gKi9cbiAgX2hhbmRsZVN1YnNjcmliZWQoKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCB8fCB0aGlzLl9zdWJzY3JpYmVkKSByZXR1cm5cbiAgICB0aGlzLl9zdWJzY3JpYmVkID0gdHJ1ZVxuICAgIHRoaXMuX3Jlc29sdmVSZWFkeT8uKClcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2FueX0gYm9keVxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICovXG4gIF9oYW5kbGVNZXNzYWdlKGJvZHkpIHtcbiAgICBpZiAodGhpcy5fY2xvc2VkKSByZXR1cm5cbiAgICB0aGlzLl9vbk1lc3NhZ2U/Lihib2R5KVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHt2b2lkfSAqL1xuICBfaGFuZGxlRGlzY29ubmVjdGVkKCkge1xuICAgIGlmICh0aGlzLl9jbG9zZWQpIHJldHVyblxuICAgIHRoaXMuX29uRGlzY29ubmVjdD8uKClcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dm9pZH0gKi9cbiAgX2hhbmRsZVJlc3VtZWQoKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCkgcmV0dXJuXG4gICAgdGhpcy5fb25SZXN1bWU/LigpXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHJlYXNvblxuICAgKiBAcmV0dXJucyB7dm9pZH1cbiAgICovXG4gIF9oYW5kbGVDbG9zZWQocmVhc29uKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCkgcmV0dXJuXG4gICAgdGhpcy5fY2xvc2VkID0gdHJ1ZVxuXG4gICAgdHJ5IHtcbiAgICAgIHRoaXMuX29uQ2xvc2U/LihyZWFzb24pXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGlmICghdGhpcy5fc3Vic2NyaWJlZCkge1xuICAgICAgICB0aGlzLl9yZWplY3RSZWFkeT8uKG5ldyBFcnJvcihgU3Vic2NyaXB0aW9uIGNsb3NlZCBiZWZvcmUgYWNrbm93bGVkZ2VtZW50OiAke3JlYXNvbn1gKSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogQHJldHVybnMge3ZvaWR9ICovXG4gIGNsb3NlKCkge1xuICAgIGlmICh0aGlzLl9jbG9zZWQpIHJldHVyblxuXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLmNsaWVudC5pc09wZW4oKSkge1xuICAgICAgICB0aGlzLmNsaWVudC5fc2VuZE1lc3NhZ2Uoe3R5cGU6IFwiY2hhbm5lbC11bnN1YnNjcmliZVwiLCBzdWJzY3JpcHRpb25JZDogdGhpcy5zdWJzY3JpcHRpb25JZH0pXG4gICAgICB9XG4gICAgfSBjYXRjaCB7XG4gICAgICAvLyBTb2NrZXQgYWxyZWFkeSBnb25lOyBzZXJ2ZXIgd2lsbCBjbGVhbiB1cCBvbiBzZXNzaW9uIHRlYXJkb3duLlxuICAgIH1cblxuICAgIHRoaXMuY2xpZW50Ll9yZW1vdmVDaGFubmVsU3Vic2NyaXB0aW9uKHRoaXMuc3Vic2NyaXB0aW9uSWQpXG4gICAgdGhpcy5faGFuZGxlQ2xvc2VkKFwiY2xpZW50X3Vuc3Vic2NyaWJlXCIpXG4gIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW59ICovXG4gIGlzQ2xvc2VkKCkgeyByZXR1cm4gdGhpcy5fY2xvc2VkIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW59ICovXG4gIGlzU3Vic2NyaWJlZCgpIHsgcmV0dXJuIHRoaXMuX3N1YnNjcmliZWQgJiYgIXRoaXMuX2Nsb3NlZCB9XG59XG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vic29ja2V0LWNoYW5uZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaHR0cC1jbGllbnQvd2Vic29ja2V0LWNoYW5uZWwuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsT0FBTyxPQUFPLG9DQUFvQztJQUN2RDs7Ozs7Ozs7Ozs7T0FXRztJQUNILFlBQVksRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBQztRQUNoSCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQTtRQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQTtRQUM5QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxFQUFFLENBQUE7UUFDMUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUE7UUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUE7UUFDM0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUE7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUE7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUE7UUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUE7UUFDeEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUE7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7UUFFcEIsNEJBQTRCO1FBQzVCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUE7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUE7UUFDNUIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsc0JBQXNCO0lBQ3RCLGlCQUFpQjtRQUNmLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsV0FBVztZQUFFLE9BQU07UUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUE7UUFDdkIsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUE7SUFDNUIsQ0FBQztJQUVELHlCQUF5QjtJQUN6QixlQUFlO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFBO0lBQzlDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxjQUFjLENBQUMsSUFBSTtRQUNqQixJQUFJLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTTtRQUN4QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDekIsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU07UUFDeEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUE7SUFDeEIsQ0FBQztJQUVELHNCQUFzQjtJQUN0QixjQUFjO1FBQ1osSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU07UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUE7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxNQUFNO1FBQ2xCLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFNO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1FBRW5CLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN6QixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsK0NBQStDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN6RixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxzQkFBc0I7SUFDdEIsS0FBSztRQUNILElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFNO1FBRXhCLElBQUksQ0FBQztZQUNILElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBQyxDQUFDLENBQUE7WUFDOUYsQ0FBQztRQUNILENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxpRUFBaUU7UUFDbkUsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1FBQzNELElBQUksQ0FBQyxhQUFhLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUMxQyxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCLFFBQVEsS0FBSyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUEsQ0FBQyxDQUFDO0lBRWxDLHlCQUF5QjtJQUN6QixZQUFZLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQSxDQUFDLENBQUM7Q0FDNUQiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqXG4gKiBDbGllbnQtc2lkZSBoYW5kbGUgZm9yIGEgY2hhbm5lbCBzdWJzY3JpcHRpb24gb3BlbmVkIHZpYVxuICogYFZlbG9jaW91c1dlYnNvY2tldENsaWVudC5zdWJzY3JpYmVDaGFubmVsKClgLiBNaXJyb3JzIHRoZSBzZXJ2ZXInc1xuICogc3Vic2NyaXB0aW9uIGxpZmVjeWNsZSDigJQgYHN1YnNjcmliZWRgIChyZXNvbHZlcyBgcmVhZHlgKSAvIGBvbk1lc3NhZ2VgIC9cbiAqIGBvbkNsb3NlYC5cbiAqXG4gKiBTZWUgYGRvY3Mvd2Vic29ja2V0LWNoYW5uZWxzLm1kYCBmb3IgdGhlIHdpcmUgcHJvdG9jb2wuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c1dlYnNvY2tldENsaWVudFN1YnNjcmlwdGlvbiB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vd2Vic29ja2V0LWNsaWVudC5qc1wiKS5kZWZhdWx0fSBhcmdzLmNsaWVudFxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5zdWJzY3JpcHRpb25JZFxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy5jaGFubmVsVHlwZVxuICAgKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IFthcmdzLnBhcmFtc11cbiAgICogQHBhcmFtIHtzdHJpbmd9IFthcmdzLmxhc3RFdmVudElkXVxuICAgKiBAcGFyYW0geyhib2R5OiBhbnkpID0+IHZvaWR9IFthcmdzLm9uTWVzc2FnZV1cbiAgICogQHBhcmFtIHsoKSA9PiB2b2lkfSBbYXJncy5vbkRpc2Nvbm5lY3RdXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gW2FyZ3Mub25SZXN1bWVdXG4gICAqIEBwYXJhbSB7KHJlYXNvbjogc3RyaW5nKSA9PiB2b2lkfSBbYXJncy5vbkNsb3NlXVxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2NsaWVudCwgc3Vic2NyaXB0aW9uSWQsIGNoYW5uZWxUeXBlLCBwYXJhbXMsIGxhc3RFdmVudElkLCBvbk1lc3NhZ2UsIG9uRGlzY29ubmVjdCwgb25SZXN1bWUsIG9uQ2xvc2V9KSB7XG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnRcbiAgICB0aGlzLnN1YnNjcmlwdGlvbklkID0gc3Vic2NyaXB0aW9uSWRcbiAgICB0aGlzLmNoYW5uZWxUeXBlID0gY2hhbm5lbFR5cGVcbiAgICB0aGlzLnBhcmFtcyA9IHBhcmFtcyB8fCB7fVxuICAgIHRoaXMubGFzdEV2ZW50SWQgPSBsYXN0RXZlbnRJZFxuICAgIHRoaXMuX29uTWVzc2FnZSA9IG9uTWVzc2FnZVxuICAgIHRoaXMuX29uRGlzY29ubmVjdCA9IG9uRGlzY29ubmVjdFxuICAgIHRoaXMuX29uUmVzdW1lID0gb25SZXN1bWVcbiAgICB0aGlzLl9vbkNsb3NlID0gb25DbG9zZVxuICAgIHRoaXMuX3N1YnNjcmliZWQgPSBmYWxzZVxuICAgIHRoaXMuX3N1YnNjcmliZVNlbnQgPSBmYWxzZVxuICAgIHRoaXMuX2Nsb3NlZCA9IGZhbHNlXG5cbiAgICAvKiogQHR5cGUge1Byb21pc2U8dm9pZD59ICovXG4gICAgdGhpcy5yZWFkeSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuX3Jlc29sdmVSZWFkeSA9IHJlc29sdmVcbiAgICAgIHRoaXMuX3JlamVjdFJlYWR5ID0gcmVqZWN0XG4gICAgfSlcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dm9pZH0gKi9cbiAgX2hhbmRsZVN1YnNjcmliZWQoKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCB8fCB0aGlzLl9zdWJzY3JpYmVkKSByZXR1cm5cbiAgICB0aGlzLl9zdWJzY3JpYmVkID0gdHJ1ZVxuICAgIHRoaXMuX3Jlc29sdmVSZWFkeT8uKClcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dm9pZH0gKi9cbiAgX21hcmtTdWJzY3JpYmVTZW50KCkge1xuICAgIHRoaXMuX3N1YnNjcmliZVNlbnQgPSB0cnVlXG4gIH1cblxuICAvKiogQHJldHVybnMge2Jvb2xlYW59ICovXG4gIF9uZWVkc1N1YnNjcmliZSgpIHtcbiAgICByZXR1cm4gIXRoaXMuX2Nsb3NlZCAmJiAhdGhpcy5fc3Vic2NyaWJlU2VudFxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7YW55fSBib2R5XG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgX2hhbmRsZU1lc3NhZ2UoYm9keSkge1xuICAgIGlmICh0aGlzLl9jbG9zZWQpIHJldHVyblxuICAgIHRoaXMuX29uTWVzc2FnZT8uKGJvZHkpXG4gIH1cblxuICAvKiogQHJldHVybnMge3ZvaWR9ICovXG4gIF9oYW5kbGVEaXNjb25uZWN0ZWQoKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCkgcmV0dXJuXG4gICAgdGhpcy5fb25EaXNjb25uZWN0Py4oKVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHt2b2lkfSAqL1xuICBfaGFuZGxlUmVzdW1lZCgpIHtcbiAgICBpZiAodGhpcy5fY2xvc2VkKSByZXR1cm5cbiAgICB0aGlzLl9vblJlc3VtZT8uKClcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmVhc29uXG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgX2hhbmRsZUNsb3NlZChyZWFzb24pIHtcbiAgICBpZiAodGhpcy5fY2xvc2VkKSByZXR1cm5cbiAgICB0aGlzLl9jbG9zZWQgPSB0cnVlXG5cbiAgICB0cnkge1xuICAgICAgdGhpcy5fb25DbG9zZT8uKHJlYXNvbilcbiAgICB9IGZpbmFsbHkge1xuICAgICAgaWYgKCF0aGlzLl9zdWJzY3JpYmVkKSB7XG4gICAgICAgIHRoaXMuX3JlamVjdFJlYWR5Py4obmV3IEVycm9yKGBTdWJzY3JpcHRpb24gY2xvc2VkIGJlZm9yZSBhY2tub3dsZWRnZW1lbnQ6ICR7cmVhc29ufWApKVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dm9pZH0gKi9cbiAgY2xvc2UoKSB7XG4gICAgaWYgKHRoaXMuX2Nsb3NlZCkgcmV0dXJuXG5cbiAgICB0cnkge1xuICAgICAgaWYgKHRoaXMuY2xpZW50LmlzT3BlbigpKSB7XG4gICAgICAgIHRoaXMuY2xpZW50Ll9zZW5kTWVzc2FnZSh7dHlwZTogXCJjaGFubmVsLXVuc3Vic2NyaWJlXCIsIHN1YnNjcmlwdGlvbklkOiB0aGlzLnN1YnNjcmlwdGlvbklkfSlcbiAgICAgIH1cbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIFNvY2tldCBhbHJlYWR5IGdvbmU7IHNlcnZlciB3aWxsIGNsZWFuIHVwIG9uIHNlc3Npb24gdGVhcmRvd24uXG4gICAgfVxuXG4gICAgdGhpcy5jbGllbnQuX3JlbW92ZUNoYW5uZWxTdWJzY3JpcHRpb24odGhpcy5zdWJzY3JpcHRpb25JZClcbiAgICB0aGlzLl9oYW5kbGVDbG9zZWQoXCJjbGllbnRfdW5zdWJzY3JpYmVcIilcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7Ym9vbGVhbn0gKi9cbiAgaXNDbG9zZWQoKSB7IHJldHVybiB0aGlzLl9jbG9zZWQgfVxuXG4gIC8qKiBAcmV0dXJucyB7Ym9vbGVhbn0gKi9cbiAgaXNTdWJzY3JpYmVkKCkgeyByZXR1cm4gdGhpcy5fc3Vic2NyaWJlZCAmJiAhdGhpcy5fY2xvc2VkIH1cbn1cbiJdfQ==
@@ -7,13 +7,20 @@ export default class VelociousWebsocketClient {
7
7
  * @param {object} [args] - Options object.
8
8
  * @param {boolean} [args.autoReconnect] - Enable auto-reconnect with exponential backoff.
9
9
  * @param {boolean} [args.debug] - Whether debug.
10
+ * @param {{getIsOnline?: () => boolean | Promise<boolean>, subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {remove: () => void}}} [args.networkMonitor] - Optional online-state adapter. When provided, auto-reconnect can wait for the network to report online before reconnecting, and open sockets are closed when the monitor reports offline.
10
11
  * @param {number[]} [args.reconnectDelays] - Backoff delays in ms (default: [1000, 2000, 4000, 8000, 15000]).
11
12
  * @param {{get: () => string | null | undefined | Promise<string | null | undefined>, set: (sessionId: string) => void | Promise<void>, clear: () => void | Promise<void>}} [args.sessionStore] - Optional sessionId persistence hook. When provided, the client writes every `session-established` / `session-resumed` id via `store.set(id)` and clears it on `session-gone`. Before the first `connect()`, the client reads any persisted id via `store.get()` and attempts resumption. Apps should back this by whatever persistence layer survives page reloads (localStorage, a cookie, SQLite, etc.).
12
13
  * @param {string} [args.url] Full websocket URL (default: ws://127.0.0.1:3006/websocket)
13
14
  */
14
- constructor({ autoReconnect, debug, reconnectDelays, sessionStore, url }?: {
15
+ constructor({ autoReconnect, debug, networkMonitor, reconnectDelays, sessionStore, url }?: {
15
16
  autoReconnect?: boolean | undefined;
16
17
  debug?: boolean | undefined;
18
+ networkMonitor?: {
19
+ getIsOnline?: () => boolean | Promise<boolean>;
20
+ subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {
21
+ remove: () => void;
22
+ };
23
+ } | undefined;
17
24
  reconnectDelays?: number[] | undefined;
18
25
  sessionStore?: {
19
26
  get: () => string | null | undefined | Promise<string | null | undefined>;
@@ -46,6 +53,8 @@ export default class VelociousWebsocketClient {
46
53
  disconnectedSince: number | null;
47
54
  /** @type {number} */
48
55
  reconnectAttempt: number;
56
+ /** @type {number} */
57
+ connectionAttempts: number;
49
58
  /** @type {number[]} */
50
59
  reconnectDelays: number[];
51
60
  /** @type {ReturnType<typeof setTimeout> | null} */
@@ -74,6 +83,19 @@ export default class VelociousWebsocketClient {
74
83
  } | undefined;
75
84
  /** @type {boolean} - true once the sessionStore has been consulted for a restored id. */
76
85
  _sessionStoreRestored: boolean;
86
+ /** @type {{getIsOnline?: () => boolean | Promise<boolean>, subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {remove: () => void}} | undefined} */
87
+ _networkMonitor: {
88
+ getIsOnline?: () => boolean | Promise<boolean>;
89
+ subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {
90
+ remove: () => void;
91
+ };
92
+ } | undefined;
93
+ /** @type {null | (() => void) | {remove: () => void}} */
94
+ _networkMonitorSubscription: null | (() => void) | {
95
+ remove: () => void;
96
+ };
97
+ /** @type {boolean} */
98
+ _waitingForOnline: boolean;
77
99
  /** @returns {boolean} */
78
100
  isOpen(): boolean;
79
101
  /**
@@ -103,8 +125,9 @@ export default class VelociousWebsocketClient {
103
125
  */
104
126
  _removeConnection(connectionId: string): void;
105
127
  /**
106
- * Subscribes to a named WebsocketChannel. Requires the socket to
107
- * already be connected.
128
+ * Subscribes to a named WebsocketChannel. If the socket is not yet
129
+ * open, the subscription is queued and sent once a connection is
130
+ * established.
108
131
  *
109
132
  * @param {string} channelType - Name the server registered the channel under.
110
133
  * @param {{params?: Record<string, any>, lastEventId?: string, onMessage?: (body: any) => void, onDisconnect?: () => void, onResume?: () => void, onClose?: (reason: string) => void}} [options]
@@ -123,6 +146,21 @@ export default class VelociousWebsocketClient {
123
146
  * @returns {void}
124
147
  */
125
148
  _removeChannelSubscription(subscriptionId: string): void;
149
+ /**
150
+ * @param {VelociousWebsocketClientSubscription} subscription
151
+ * @returns {void}
152
+ */
153
+ _sendChannelSubscribe(subscription: VelociousWebsocketClientSubscription): void;
154
+ /** @returns {void} */
155
+ _sendPendingChannelSubscriptions(): void;
156
+ /** @returns {Promise<boolean>} */
157
+ _isOnline(): Promise<boolean>;
158
+ /** @returns {Promise<boolean>} */
159
+ _shouldWaitForOnline(): Promise<boolean>;
160
+ /** @returns {void} */
161
+ _ensureNetworkMonitorSubscription(): void;
162
+ /** @returns {void} */
163
+ _teardownNetworkMonitorSubscription(): void;
126
164
  /**
127
165
  * Sets a global metadata value that is sent to the server.
128
166
  * For WebSocket connections, a metadata update message is sent immediately.
@@ -135,16 +173,19 @@ export default class VelociousWebsocketClient {
135
173
  getMetadata(): Record<string, any>;
136
174
  /**
137
175
  * Ensure a websocket connection is open.
176
+ * Auto-reconnect and online gating are enabled by default.
177
+ * Pass `autoReconnect: false` or `waitForOnline: false` only when a caller
178
+ * explicitly needs lower-level behavior.
179
+ * @param {{autoReconnect?: boolean, waitForOnline?: boolean, resetReconnectState?: boolean}} [options]
138
180
  * @returns {Promise<void>} - Resolves when complete.
139
181
  */
140
- connect(): Promise<void>;
182
+ connect({ autoReconnect, waitForOnline, resetReconnectState }?: {
183
+ autoReconnect?: boolean;
184
+ waitForOnline?: boolean;
185
+ resetReconnectState?: boolean;
186
+ }): Promise<void>;
141
187
  connectPromise: Promise<any> | undefined;
142
188
  socket: WebSocket | undefined;
143
- /**
144
- * Connect and enable auto-reconnect. Resets reconnect state.
145
- * @returns {Promise<void>} - Resolves when connected.
146
- */
147
- connectWithReconnect(): Promise<void>;
148
189
  /**
149
190
  * Close the websocket and clear pending state.
150
191
  * @returns {Promise<void>} - Resolves when complete.
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../../src/http-client/websocket-client.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../../src/http-client/websocket-client.js"],"names":[],"mappings":"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"}