qws-browser 1.1.1 → 2.0.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.
Files changed (42) hide show
  1. package/README.md +2 -0
  2. package/dist/browser/messageencode.d.ts +2 -1
  3. package/dist/browser/messageencode.d.ts.map +1 -0
  4. package/dist/browser/messageencode.js +30 -25
  5. package/dist/browser/messageencode.js.map +1 -0
  6. package/dist/browser/wrappedws.d.ts +3 -2
  7. package/dist/browser/wrappedws.d.ts.map +1 -0
  8. package/dist/browser/wrappedws.js +14 -20
  9. package/dist/browser/wrappedws.js.map +1 -0
  10. package/dist/common/discriminator.d.ts +2 -1
  11. package/dist/common/discriminator.d.ts.map +1 -0
  12. package/dist/common/discriminator.js +2 -2
  13. package/dist/common/discriminator.js.map +1 -0
  14. package/dist/common/logger.d.ts +11 -10
  15. package/dist/common/logger.d.ts.map +1 -0
  16. package/dist/common/logger.js +8 -13
  17. package/dist/common/logger.js.map +1 -0
  18. package/dist/common/message.d.ts +18 -27
  19. package/dist/common/message.d.ts.map +1 -0
  20. package/dist/common/message.js +2 -2
  21. package/dist/common/message.js.map +1 -0
  22. package/dist/common/queryparser.d.ts +1 -4
  23. package/dist/common/queryparser.d.ts.map +1 -0
  24. package/dist/common/queryparser.js +6 -82
  25. package/dist/common/queryparser.js.map +1 -0
  26. package/dist/common/queue.d.ts +4 -3
  27. package/dist/common/queue.d.ts.map +1 -0
  28. package/dist/common/queue.js +10 -12
  29. package/dist/common/queue.js.map +1 -0
  30. package/dist/common/queuews.d.ts +12 -11
  31. package/dist/common/queuews.d.ts.map +1 -0
  32. package/dist/common/queuews.js +68 -81
  33. package/dist/common/queuews.js.map +1 -0
  34. package/dist/common/router.d.ts +9 -0
  35. package/dist/common/router.d.ts.map +1 -0
  36. package/dist/common/router.js +8 -0
  37. package/dist/common/router.js.map +1 -0
  38. package/dist/index.d.ts +6 -6
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +6 -25
  41. package/dist/index.js.map +1 -0
  42. package/package.json +29 -30
@@ -1,14 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const messageencode_1 = require("../browser/messageencode");
1
+ import { serializeMessage } from '../browser/messageencode.js';
4
2
  /**
5
3
  * FIFO data structure implementation for outgoing qws messages
6
4
  * Implements acknowledgment system, so no messages are deleted until acknowledged,
7
5
  * but new messages may be added while waiting for ack.
8
6
  */
9
- class QwsMessageQueue {
7
+ export default class QwsMessageQueue {
10
8
  constructor() {
11
- this.messages = {};
9
+ this.messages = new Map();
12
10
  this.readIdx = 0;
13
11
  this.ackIdx = 0;
14
12
  this.writeIdx = 0;
@@ -23,8 +21,8 @@ class QwsMessageQueue {
23
21
  produce(message) {
24
22
  const idx = this.writeIdx;
25
23
  message.headers.idx = idx;
26
- const data = (0, messageencode_1.serializeMessage)(message);
27
- this.messages[idx] = data;
24
+ const data = serializeMessage(message);
25
+ this.messages.set(idx, data);
28
26
  this.numUnsentMessages += 1;
29
27
  this.numUnsentBytes += data.size;
30
28
  this.numUnackMessages += 1;
@@ -38,7 +36,7 @@ class QwsMessageQueue {
38
36
  */
39
37
  consume() {
40
38
  const idx = this.readIdx;
41
- const ret = this.messages[idx];
39
+ const ret = this.messages.get(idx);
42
40
  this.numUnsentMessages -= 1;
43
41
  this.numUnsentBytes -= ret.size;
44
42
  this.readIdx += 1;
@@ -50,8 +48,8 @@ class QwsMessageQueue {
50
48
  acknowledge(idx) {
51
49
  while (this.ackIdx <= idx) {
52
50
  this.numUnackMessages -= 1;
53
- this.numUnackBytes -= this.messages[this.ackIdx].size;
54
- delete this.messages[this.ackIdx];
51
+ this.numUnackBytes -= this.messages.get(this.ackIdx).size;
52
+ this.messages.delete(this.ackIdx);
55
53
  this.ackIdx += 1;
56
54
  }
57
55
  }
@@ -62,8 +60,8 @@ class QwsMessageQueue {
62
60
  while (this.readIdx > idx) {
63
61
  this.readIdx -= 1;
64
62
  this.numUnsentMessages += 1;
65
- this.numUnsentBytes += this.messages[this.readIdx].size;
63
+ this.numUnsentBytes += this.messages.get(this.readIdx).size;
66
64
  }
67
65
  }
68
66
  }
69
- exports.default = QwsMessageQueue;
67
+ //# sourceMappingURL=queue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/common/queue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAWlC;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAElB,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,OAA0B;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1B,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC;QAC1B,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE7B,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,IAAI,CAAC;QAEhC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnB,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAEpC,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC,IAAI,CAAC;QAChC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,GAAW;QACrB,OAAO,IAAI,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC;YAC3D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAW;QAChB,OAAO,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC;QAC/D,CAAC;IACH,CAAC;CACF"}
@@ -1,19 +1,19 @@
1
- import RouteRecognizer from 'route-recognizer';
2
- import { Binary } from './discriminator';
3
- import { QwsMessageExtraHeaders, BinaryQwsMessageHeaders, JsonQwsMessageHeaders, ReadyQwsMessageHeaders, QwsParams } from './message';
4
- import WebSocketMessageQueue from './queue';
5
- import WrappedWebSocket from '../browser/wrappedws';
1
+ import RouteRecognizer from './router.js';
2
+ import { Binary } from './discriminator.js';
3
+ import { QwsMessageExtraHeaders, BinaryQwsMessageHeaders, JsonQwsMessageHeaders, ReadyQwsMessageHeaders, QwsParams } from './message.js';
4
+ import WebSocketMessageQueue from './queue.js';
5
+ import WrappedWebSocket from '../browser/wrappedws.js';
6
6
  /**
7
7
  * Callback types
8
8
  */
9
- export declare type ConnectCallback = () => void | number | Promise<void> | Promise<number>;
10
- export declare type BinCallback = (body: Binary, headers?: BinaryQwsMessageHeaders, params?: QwsParams) => void | Promise<void>;
11
- export declare type JsonCallback<T> = (body: T, headers?: JsonQwsMessageHeaders, params?: QwsParams) => void | Promise<void>;
12
- export declare type ReadyCallback = (headers?: ReadyQwsMessageHeaders) => void | Promise<void>;
9
+ export type ConnectCallback = () => void | number | Promise<void> | Promise<number>;
10
+ export type BinCallback = (body: Binary, headers?: BinaryQwsMessageHeaders, params?: QwsParams) => void | Promise<void>;
11
+ export type JsonCallback<T> = (body: T, headers?: JsonQwsMessageHeaders, params?: QwsParams) => void | Promise<void>;
12
+ export type ReadyCallback = (headers?: ReadyQwsMessageHeaders) => void | Promise<void>;
13
13
  /**
14
14
  * Connection options
15
15
  */
16
- declare type QWebSocketOptions = {
16
+ type QWebSocketOptions = {
17
17
  name?: string;
18
18
  extraConnectArgs?: Record<string, unknown>;
19
19
  reconnect?: boolean;
@@ -60,7 +60,7 @@ export default class QWebSocket {
60
60
  setUp(): void;
61
61
  flush(): void;
62
62
  send(body: Binary | Record<string, unknown>, extraHeaders?: QwsMessageExtraHeaders): number;
63
- sendToRoute(route: string, body: Binary | Record<string, unknown>, extraHeaders?: QwsMessageExtraHeaders): number;
63
+ sendToRoute(route: string | undefined, body: Binary | Record<string, unknown>, extraHeaders?: QwsMessageExtraHeaders): number;
64
64
  /**
65
65
  * Closes WS and sets promise resolution as callback.
66
66
  * Overwrites any manually set up callback for onClose.
@@ -68,3 +68,4 @@ export default class QWebSocket {
68
68
  close(): Promise<void>;
69
69
  }
70
70
  export {};
71
+ //# sourceMappingURL=queuews.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queuews.d.ts","sourceRoot":"","sources":["../../src/common/queuews.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,17 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const auto_bind_1 = __importDefault(require("auto-bind"));
7
- const route_recognizer_1 = __importDefault(require("route-recognizer"));
8
- const queue_1 = __importDefault(require("./queue"));
9
- const wrappedws_1 = __importDefault(require("../browser/wrappedws"));
10
- const queryparser_1 = require("./queryparser");
11
- const logger_1 = __importDefault(require("./logger"));
1
+ import autoBind from 'auto-bind';
2
+ import RouteRecognizer from './router.js';
3
+ import WebSocketMessageQueue from './queue.js';
4
+ import WrappedWebSocket from '../browser/wrappedws.js';
5
+ import { addQueryParamsToUrl } from './queryparser.js';
6
+ import logger from './logger.js';
12
7
  const decodeErrorMessage = (event) => {
13
- if (event === null || event === void 0 ? void 0 : event.message) {
14
- return event.message;
15
- }
16
- if (event) {
17
- return event.toString();
8
+ const { message } = (event ?? {});
9
+ if (message) {
10
+ return message;
18
11
  }
19
- return 'Unknown error';
12
+ // best-effort description of arbitrary error values
13
+ // eslint-disable-next-line @typescript-eslint/no-base-to-string
14
+ return event ? String(event) : 'Unknown error';
20
15
  };
21
16
  const defaultOpts = {
22
17
  extraConnectArgs: {},
@@ -27,7 +22,7 @@ const defaultOpts = {
27
22
  /**
28
23
  * Actual queued WebSocket
29
24
  */
30
- class QWebSocket {
25
+ export default class QWebSocket {
31
26
  constructor(wsOrUrl, options = {}) {
32
27
  this.wsOrUrl = wsOrUrl;
33
28
  this.options = {
@@ -36,15 +31,14 @@ class QWebSocket {
36
31
  };
37
32
  this.name = options.name || 'websocket';
38
33
  this.callbacks = {
39
- onBin: new route_recognizer_1.default(),
40
- onJson: new route_recognizer_1.default(),
34
+ onBin: new RouteRecognizer(),
35
+ onJson: new RouteRecognizer(),
41
36
  };
42
- this.queue = new queue_1.default();
37
+ this.queue = new WebSocketMessageQueue();
43
38
  this.reconnectionAttempts = 0;
44
39
  this.needed = true;
45
- this.wws = null;
46
40
  this.ready = false;
47
- (0, auto_bind_1.default)(this);
41
+ autoBind(this);
48
42
  this.setUp();
49
43
  }
50
44
  /**
@@ -82,7 +76,6 @@ class QWebSocket {
82
76
  */
83
77
  // eslint-disable-next-line max-lines-per-function
84
78
  setUp() {
85
- var _a, _b, _c, _d;
86
79
  if (this.wws && this.wws.readyState <= 1) {
87
80
  return;
88
81
  }
@@ -90,49 +83,44 @@ class QWebSocket {
90
83
  const { reconnect, reconnectNumTries, reconnectIntervalMillis, extraConnectArgs } = this.options;
91
84
  // timeout for too many reconnection attempts
92
85
  if (reconnect && this.reconnectionAttempts > reconnectNumTries) {
93
- logger_1.default.error(`${this.name}: Connection timed out, should re-connect entirely`);
94
- (_b = (_a = this.callbacks).onError) === null || _b === void 0 ? void 0 : _b.call(_a, `WS connection timeout, max tries (${reconnectNumTries}) exceeded`);
86
+ logger.error(`${this.name}: Connection timed out, should re-connect entirely`);
87
+ void this.callbacks.onError?.(`WS connection timeout, max tries (${reconnectNumTries}) exceeded`);
95
88
  return;
96
89
  }
97
90
  /**
98
91
  * Actual WebSocket opening
99
92
  */
100
- if (this.wsOrUrl instanceof WebSocket || ((_d = (_c = this.wsOrUrl) === null || _c === void 0 ? void 0 : _c.constructor) === null || _d === void 0 ? void 0 : _d.name) === 'WebSocket') {
93
+ if (this.wsOrUrl instanceof WebSocket || this.wsOrUrl?.constructor?.name === 'WebSocket') {
101
94
  const ws = this.wsOrUrl;
102
- this.wws = new wrappedws_1.default(ws);
95
+ this.wws = new WrappedWebSocket(ws);
103
96
  // TODO what if this is a reconnect? No reconnection was attempted, it's just the old reference
104
97
  }
105
98
  else {
106
- const connectUrl = (0, queryparser_1.addQueryParamsToUrl)(this.wsOrUrl, {
99
+ const connectUrl = addQueryParamsToUrl(this.wsOrUrl, {
107
100
  ...extraConnectArgs,
108
101
  idx: this.queue.ackIdx,
109
102
  });
110
- this.wws = new wrappedws_1.default(connectUrl);
103
+ this.wws = new WrappedWebSocket(connectUrl);
111
104
  }
112
105
  this.wws.onWsError(async (event) => {
113
- var _a, _b, _c, _d;
114
106
  // ws error will prompt reconnection which can time out, don't reject instantly
115
107
  const message = decodeErrorMessage(event);
116
- logger_1.default.error(`${this.name}: WS error occurred: ${message}`);
108
+ logger.error(`${this.name}: WS error occurred: ${message}`);
117
109
  if (reconnect) {
118
- await ((_b = (_a = this.callbacks).onErroneousDisconnect) === null || _b === void 0 ? void 0 : _b.call(_a, message));
110
+ await this.callbacks.onErroneousDisconnect?.(message);
119
111
  }
120
112
  else {
121
- await ((_d = (_c = this.callbacks).onError) === null || _d === void 0 ? void 0 : _d.call(_c, message));
113
+ await this.callbacks.onError?.(message);
122
114
  }
123
115
  });
124
116
  this.wws.onWsOpen(async () => {
125
- var _a, _b;
126
117
  this.reconnectionAttempts = 0;
127
- if (reconnect) {
128
- logger_1.default.info(`${this.name}: Connection established after ${this.reconnectionAttempts} tries`);
129
- }
130
- else {
131
- logger_1.default.info(`${this.name}: Connection established`);
132
- }
118
+ logger.info(reconnect
119
+ ? `${this.name}: Connection established after ${this.reconnectionAttempts} tries`
120
+ : `${this.name}: Connection established`);
133
121
  try {
134
122
  // call post-connect method, this may give previously acked messages
135
- const readyIdx = await ((_b = (_a = this.callbacks).onConnect) === null || _b === void 0 ? void 0 : _b.call(_a));
123
+ const readyIdx = await this.callbacks.onConnect?.();
136
124
  // send back readiness ack
137
125
  this.wws.send({
138
126
  headers: {
@@ -141,21 +129,20 @@ class QWebSocket {
141
129
  },
142
130
  });
143
131
  }
144
- catch (err) {
132
+ catch (error) {
145
133
  // error occurred during initialization phase, send error right away, no "ready" message
146
134
  this.wws.send({
147
135
  headers: {
148
136
  type: 'err',
149
- error: decodeErrorMessage(err),
137
+ error: decodeErrorMessage(error),
150
138
  },
151
139
  });
152
140
  }
153
141
  });
154
142
  this.wws.onReady(async (message) => {
155
- var _a, _b;
156
143
  // ready to send messages from given message index
157
144
  const { readyIdx } = message.headers;
158
- logger_1.default.info(`${this.name}: Socket ready to send${readyIdx ? `from chunk ${readyIdx}` : ''}`);
145
+ logger.info(`${this.name}: Socket ready to send${readyIdx ? `from chunk ${readyIdx}` : ''}`);
159
146
  // if server sent chunk index to resume from, move queue cursors appropriately
160
147
  if (readyIdx !== undefined) {
161
148
  this.queue.acknowledge(readyIdx - 1);
@@ -166,14 +153,14 @@ class QWebSocket {
166
153
  this.flush();
167
154
  try {
168
155
  // call post-ready method
169
- await ((_b = (_a = this.callbacks).onReady) === null || _b === void 0 ? void 0 : _b.call(_a, message.headers));
156
+ await this.callbacks.onReady?.(message.headers);
170
157
  }
171
- catch (err) {
158
+ catch (error) {
172
159
  // error occurred during initialization phase, send error right away, no "ready" message
173
160
  this.wws.send({
174
161
  headers: {
175
162
  type: 'err',
176
- error: decodeErrorMessage(err),
163
+ error: decodeErrorMessage(error),
177
164
  },
178
165
  });
179
166
  }
@@ -184,10 +171,11 @@ class QWebSocket {
184
171
  try {
185
172
  // check callback
186
173
  const routeResults = this.callbacks.onBin.recognize(headers.route || '');
187
- if (routeResults) {
188
- const handler = routeResults[0].handler;
189
- const params = routeResults[0].params;
190
- await (handler === null || handler === void 0 ? void 0 : handler(body, headers, params));
174
+ const route = routeResults?.[0];
175
+ if (route) {
176
+ const handler = route.handler;
177
+ const params = route.params;
178
+ await handler?.(body, headers, params);
191
179
  }
192
180
  // send back acknowledgment
193
181
  this.wws.send({
@@ -197,12 +185,12 @@ class QWebSocket {
197
185
  },
198
186
  });
199
187
  }
200
- catch (err) {
188
+ catch (error) {
201
189
  // error occurred during processing binary message, send error
202
190
  this.wws.send({
203
191
  headers: {
204
192
  type: 'err',
205
- error: decodeErrorMessage(err),
193
+ error: decodeErrorMessage(error),
206
194
  },
207
195
  });
208
196
  }
@@ -213,10 +201,11 @@ class QWebSocket {
213
201
  try {
214
202
  // check callback
215
203
  const routeResults = this.callbacks.onJson.recognize(headers.route || '');
216
- if (routeResults) {
217
- const handler = routeResults[0].handler;
218
- const params = routeResults[0].params;
219
- await (handler === null || handler === void 0 ? void 0 : handler(body, headers, params));
204
+ const route = routeResults?.[0];
205
+ if (route) {
206
+ const handler = route.handler;
207
+ const params = route.params;
208
+ await handler?.(body, headers, params);
220
209
  }
221
210
  // send back acknowledgment
222
211
  this.wws.send({
@@ -226,12 +215,12 @@ class QWebSocket {
226
215
  },
227
216
  });
228
217
  }
229
- catch (err) {
218
+ catch (error) {
230
219
  // error occurred during processing json message, send error
231
220
  this.wws.send({
232
221
  headers: {
233
222
  type: 'err',
234
- error: decodeErrorMessage(err),
223
+ error: decodeErrorMessage(error),
235
224
  },
236
225
  });
237
226
  }
@@ -244,36 +233,34 @@ class QWebSocket {
244
233
  }
245
234
  });
246
235
  this.wws.onErr(async (message) => {
247
- var _a, _b;
248
236
  // handle error
249
- logger_1.default.error(`${this.name}: Error occurred: ${message.headers.error}`);
250
- await ((_b = (_a = this.callbacks).onError) === null || _b === void 0 ? void 0 : _b.call(_a, message.headers.error));
237
+ logger.error(`${this.name}: Error occurred: ${message.headers.error}`);
238
+ await this.callbacks.onError?.(message.headers.error);
251
239
  });
252
240
  this.wws.onWsClose(async () => {
253
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
254
241
  if (reconnect && this.needed) {
255
242
  // if locally closed, needed should be false
256
243
  // if it's true, it means we lost the connection and should try to re-connect
257
- logger_1.default.info(`${this.name}: Closed pre-maturely, trying to reconnect after ${reconnectIntervalMillis}ms...`);
244
+ logger.info(`${this.name}: Closed pre-maturely, trying to reconnect after ${reconnectIntervalMillis}ms...`);
258
245
  setTimeout(() => this.setUp(), reconnectIntervalMillis);
259
- await ((_b = (_a = this.callbacks).onErroneousDisconnect) === null || _b === void 0 ? void 0 : _b.call(_a, 'Closed pre-maturely'));
246
+ await this.callbacks.onErroneousDisconnect?.('Closed pre-maturely');
260
247
  }
261
248
  else if (reconnect && this.queue.numUnackMessages) {
262
249
  // if there are still messages left to be sent and we should reconnect
263
- logger_1.default.info(`${this.name}: Closed with messages still in queue, reconnecting in ${reconnectIntervalMillis}ms...`);
250
+ logger.info(`${this.name}: Closed with messages still in queue, reconnecting in ${reconnectIntervalMillis}ms...`);
264
251
  setTimeout(() => this.setUp(), reconnectIntervalMillis);
265
- await ((_d = (_c = this.callbacks).onErroneousDisconnect) === null || _d === void 0 ? void 0 : _d.call(_c, 'Closed with messages still in queue'));
252
+ await this.callbacks.onErroneousDisconnect?.('Closed with messages still in queue');
266
253
  }
267
254
  else if (this.queue.numUnackMessages) {
268
255
  // if there are still messages left to be sent, but we should not reconnect
269
- logger_1.default.info(`${this.name}: Closed with messages still in queue`);
270
- await ((_f = (_e = this.callbacks).onError) === null || _f === void 0 ? void 0 : _f.call(_e, 'Closed with messages still in queue'));
271
- await ((_h = (_g = this.callbacks).onClose) === null || _h === void 0 ? void 0 : _h.call(_g));
256
+ logger.info(`${this.name}: Closed with messages still in queue`);
257
+ await this.callbacks.onError?.('Closed with messages still in queue');
258
+ await this.callbacks.onClose?.();
272
259
  }
273
260
  else {
274
261
  // all is well
275
- logger_1.default.info(`${this.name}: Closed correctly`);
276
- await ((_k = (_j = this.callbacks).onClose) === null || _k === void 0 ? void 0 : _k.call(_j));
262
+ logger.info(`${this.name}: Closed correctly`);
263
+ await this.callbacks.onClose?.();
277
264
  }
278
265
  });
279
266
  }
@@ -286,13 +273,13 @@ class QWebSocket {
286
273
  if (this.queue.numUnsentMessages) {
287
274
  // pop a message
288
275
  const [idx, data] = this.queue.consume();
289
- logger_1.default.debug(`${this.name}: Sending chunk ${idx} of size ${data.size}`);
276
+ logger.debug(`${this.name}: Sending chunk ${idx} of size ${data.size}`);
290
277
  this.wws.sendRaw(data);
291
- logger_1.default.debug(`${this.name}: MQ decreased to size ${this.queue.numUnsentMessages} messages / ${this.queue.numUnsentBytes} bytes`);
278
+ logger.debug(`${this.name}: MQ decreased to size ${this.queue.numUnsentMessages} messages / ${this.queue.numUnsentBytes} bytes`);
292
279
  this.flush();
293
280
  }
294
281
  else {
295
- logger_1.default.debug(`${this.name}: Flushing complete, no ws messages backed up`);
282
+ logger.debug(`${this.name}: Flushing complete, no ws messages backed up`);
296
283
  // if not needed anymore after flush, close it
297
284
  // send close event to ws, don't de-cache yet, wait for event
298
285
  if (!this.queue.numUnackMessages && !this.needed) {
@@ -330,8 +317,8 @@ class QWebSocket {
330
317
  const { numUnsentMessages } = this.queue;
331
318
  const idx = this.queue.produce(message);
332
319
  // ready state should either be CONNECTING or OPEN at this point to flush instantly
333
- if (this.wws.readyState === WebSocket.OPEN && this.ready && !numUnsentMessages) {
334
- this.flush();
320
+ if (!numUnsentMessages && this.ready && this.wws.readyState === WebSocket.OPEN) {
321
+ void this.flush();
335
322
  }
336
323
  return idx;
337
324
  }
@@ -345,7 +332,7 @@ class QWebSocket {
345
332
  // wrap original onClose to resolve this promise
346
333
  const { onClose } = this.callbacks;
347
334
  this.callbacks.onClose = async () => {
348
- await (onClose === null || onClose === void 0 ? void 0 : onClose());
335
+ await onClose?.();
349
336
  resolve();
350
337
  };
351
338
  // flush if any messages in queue
@@ -353,4 +340,4 @@ class QWebSocket {
353
340
  });
354
341
  }
355
342
  }
356
- exports.default = QWebSocket;
343
+ //# sourceMappingURL=queuews.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queuews.js","sourceRoot":"","sources":["../../src/common/queuews.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import RouteRecognizerModule from 'route-recognizer';
2
+ /**
3
+ * route-recognizer is a UMD bundle: under Node.js ESM its default import is the class itself,
4
+ * while its typings declare an ES default export. Re-expose it with correct typing.
5
+ */
6
+ declare const RouteRecognizer: typeof RouteRecognizerModule.default;
7
+ type RouteRecognizer = InstanceType<typeof RouteRecognizer>;
8
+ export default RouteRecognizer;
9
+ //# sourceMappingURL=router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/common/router.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,kBAAkB,CAAC;AAErD;;;GAGG;AACH,QAAA,MAAM,eAAe,EAAuC,OAAO,qBAAqB,CAAC,OAAO,CAAC;AACjG,KAAK,eAAe,GAAG,YAAY,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D,eAAe,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ import RouteRecognizerModule from 'route-recognizer';
2
+ /**
3
+ * route-recognizer is a UMD bundle: under Node.js ESM its default import is the class itself,
4
+ * while its typings declare an ES default export. Re-expose it with correct typing.
5
+ */
6
+ const RouteRecognizer = RouteRecognizerModule;
7
+ export default RouteRecognizer;
8
+ //# sourceMappingURL=router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/common/router.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,kBAAkB,CAAC;AAErD;;;GAGG;AACH,MAAM,eAAe,GAAG,qBAAwE,CAAC;AAGjG,eAAe,eAAe,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import QWebSocket from './common/queuews';
2
- export * from './common/logger';
3
- export * from './common/message';
4
- export * from './common/queuews';
5
- export * from './browser/messageencode';
6
- export default QWebSocket;
1
+ export * from './common/logger.js';
2
+ export * from './common/message.js';
3
+ export * from './common/queuews.js';
4
+ export * from './browser/messageencode.js';
5
+ export { default } from './common/queuews.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC"}
package/dist/index.js CHANGED
@@ -1,25 +1,6 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- var __importDefault = (this && this.__importDefault) || function (mod) {
17
- return (mod && mod.__esModule) ? mod : { "default": mod };
18
- };
19
- Object.defineProperty(exports, "__esModule", { value: true });
20
- const queuews_1 = __importDefault(require("./common/queuews"));
21
- __exportStar(require("./common/logger"), exports);
22
- __exportStar(require("./common/message"), exports);
23
- __exportStar(require("./common/queuews"), exports);
24
- __exportStar(require("./browser/messageencode"), exports);
25
- exports.default = queuews_1.default;
1
+ export * from './common/logger.js';
2
+ export * from './common/message.js';
3
+ export * from './common/queuews.js';
4
+ export * from './browser/messageencode.js';
5
+ export { default } from './common/queuews.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC"}