@webex/calling 3.12.0-mobius-socket.18 → 3.12.0-mobius-socket.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CallingClient/utils/request.js +6 -3
- package/dist/CallingClient/utils/request.js.map +1 -1
- package/dist/CallingClient/utils/request.test.js +2 -2
- package/dist/CallingClient/utils/request.test.js.map +1 -1
- package/dist/CallingClient/utils/types.js.map +1 -1
- package/dist/mobius-socket/config.js +7 -44
- package/dist/mobius-socket/config.js.map +1 -1
- package/dist/mobius-socket/errors.js +71 -26
- package/dist/mobius-socket/errors.js.map +1 -1
- package/dist/mobius-socket/index.js +4 -54
- package/dist/mobius-socket/index.js.map +1 -1
- package/dist/mobius-socket/mobius-socket-events.test.js +20 -48
- package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -1
- package/dist/mobius-socket/mobius-socket.js +359 -748
- package/dist/mobius-socket/mobius-socket.js.map +1 -1
- package/dist/mobius-socket/mobius-socket.test.js +452 -728
- package/dist/mobius-socket/mobius-socket.test.js.map +1 -1
- package/dist/mobius-socket/socket/constants.js +14 -0
- package/dist/mobius-socket/socket/constants.js.map +1 -1
- package/dist/mobius-socket/socket/socket-base.js +152 -205
- package/dist/mobius-socket/socket/socket-base.js.map +1 -1
- package/dist/mobius-socket/socket/types.js.map +1 -1
- package/dist/mobius-socket/socket.test.js +38 -63
- package/dist/mobius-socket/socket.test.js.map +1 -1
- package/dist/mobius-socket/types.js.map +1 -1
- package/dist/module/CallingClient/utils/request.js +3 -2
- package/dist/module/mobius-socket/config.js +7 -10
- package/dist/module/mobius-socket/errors.js +34 -0
- package/dist/module/mobius-socket/index.js +0 -3
- package/dist/module/mobius-socket/mobius-socket.js +237 -426
- package/dist/module/mobius-socket/socket/socket-base.js +79 -116
- package/dist/types/CallingClient/utils/request.d.ts.map +1 -1
- package/dist/types/CallingClient/utils/types.d.ts +1 -1
- package/dist/types/CallingClient/utils/types.d.ts.map +1 -1
- package/dist/types/mobius-socket/config.d.ts +7 -8
- package/dist/types/mobius-socket/config.d.ts.map +1 -1
- package/dist/types/mobius-socket/errors.d.ts +11 -1
- package/dist/types/mobius-socket/errors.d.ts.map +1 -1
- package/dist/types/mobius-socket/index.d.ts +1 -5
- package/dist/types/mobius-socket/index.d.ts.map +1 -1
- package/dist/types/mobius-socket/mobius-socket.d.ts +33 -35
- package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/constants.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/socket-base.d.ts +9 -10
- package/dist/types/mobius-socket/socket/socket-base.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/types.d.ts +0 -8
- package/dist/types/mobius-socket/socket/types.d.ts.map +1 -1
- package/dist/types/mobius-socket/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,17 +5,15 @@ import { EventEmitter } from 'events';
|
|
|
5
5
|
import { checkRequired } from '@webex/common';
|
|
6
6
|
import { safeSetTimeout } from '@webex/common-timers';
|
|
7
7
|
import { defaults, has, isObject } from 'lodash';
|
|
8
|
-
import { BadRequest, ConnectionError, Forbidden, NotAuthorized, UnknownResponse, } from '../errors';
|
|
8
|
+
import { BadRequest, ConnectionError, createTimeoutError, createWssResponseError, Forbidden, NotAuthorized, UnknownResponse, } from '../errors';
|
|
9
9
|
import { MESSAGE_TYPES, SOCKET_READY_STATE } from './constants';
|
|
10
10
|
const sockets = new WeakMap();
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const ForbiddenCtor = Forbidden;
|
|
15
|
-
const ConnectionErrorCtor = ConnectionError;
|
|
11
|
+
function createTrackingId() {
|
|
12
|
+
return `webex-js-sdk_${crypto.randomUUID()}`;
|
|
13
|
+
}
|
|
16
14
|
export default class Socket extends EventEmitter {
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
domain;
|
|
16
|
+
pendingResponses;
|
|
19
17
|
forceCloseDelay;
|
|
20
18
|
logger;
|
|
21
19
|
refreshToken;
|
|
@@ -24,29 +22,29 @@ export default class Socket extends EventEmitter {
|
|
|
24
22
|
wssResponseTimeout;
|
|
25
23
|
constructor() {
|
|
26
24
|
super();
|
|
27
|
-
this.
|
|
28
|
-
this.
|
|
25
|
+
this.domain = 'unknown-domain';
|
|
26
|
+
this.pendingResponses = new Map();
|
|
29
27
|
this.onmessage = this.onmessage.bind(this);
|
|
30
28
|
this.onclose = this.onclose.bind(this);
|
|
31
29
|
this.setMaxListeners(10);
|
|
32
30
|
}
|
|
33
31
|
get binaryType() {
|
|
34
|
-
return sockets.get(this)
|
|
32
|
+
return sockets.get(this)?.binaryType || '';
|
|
35
33
|
}
|
|
36
34
|
get bufferedAmount() {
|
|
37
|
-
return sockets.get(this)
|
|
35
|
+
return sockets.get(this)?.bufferedAmount || 0;
|
|
38
36
|
}
|
|
39
37
|
get extensions() {
|
|
40
|
-
return sockets.get(this)
|
|
38
|
+
return sockets.get(this)?.extensions || '';
|
|
41
39
|
}
|
|
42
40
|
get protocol() {
|
|
43
|
-
return sockets.get(this)
|
|
41
|
+
return sockets.get(this)?.protocol || '';
|
|
44
42
|
}
|
|
45
43
|
get readyState() {
|
|
46
|
-
return sockets.get(this)
|
|
44
|
+
return sockets.get(this)?.readyState || 0;
|
|
47
45
|
}
|
|
48
46
|
get url() {
|
|
49
|
-
return sockets.get(this)
|
|
47
|
+
return sockets.get(this)?.url || '';
|
|
50
48
|
}
|
|
51
49
|
static getWebSocketConstructor() {
|
|
52
50
|
throw new Error('Socket.getWebSocketConstructor() must be implemented in an environmentally appropriate way');
|
|
@@ -58,10 +56,10 @@ export default class Socket extends EventEmitter {
|
|
|
58
56
|
resolve();
|
|
59
57
|
return;
|
|
60
58
|
}
|
|
61
|
-
this.logger.info(`socket,${this.
|
|
59
|
+
this.logger.info(`socket,${this.domain}: closing`);
|
|
62
60
|
if (socket.readyState === SOCKET_READY_STATE.CLOSING ||
|
|
63
61
|
socket.readyState === SOCKET_READY_STATE.CLOSED) {
|
|
64
|
-
this.logger.info(`socket,${this.
|
|
62
|
+
this.logger.info(`socket,${this.domain}: already closed`);
|
|
65
63
|
resolve();
|
|
66
64
|
return;
|
|
67
65
|
}
|
|
@@ -79,7 +77,7 @@ export default class Socket extends EventEmitter {
|
|
|
79
77
|
}
|
|
80
78
|
const closeTimer = safeSetTimeout(() => {
|
|
81
79
|
try {
|
|
82
|
-
this.logger.info(`socket,${this.
|
|
80
|
+
this.logger.info(`socket,${this.domain}: no close event received, forcing closure`);
|
|
83
81
|
resolve(this.onclose(originalCode
|
|
84
82
|
? { code: originalCode, reason: originalReason || 'Done (unknown)' }
|
|
85
83
|
: {
|
|
@@ -88,17 +86,17 @@ export default class Socket extends EventEmitter {
|
|
|
88
86
|
}));
|
|
89
87
|
}
|
|
90
88
|
catch (error) {
|
|
91
|
-
this.logger.warn(`socket,${this.
|
|
89
|
+
this.logger.warn(`socket,${this.domain}: force-close failed`, error);
|
|
92
90
|
}
|
|
93
91
|
}, this.forceCloseDelay);
|
|
94
92
|
socket.onclose = (event) => {
|
|
95
|
-
this.logger.info(`socket,${this.
|
|
93
|
+
this.logger.info(`socket,${this.domain}: close event fired`, event.code, event.reason);
|
|
96
94
|
clearTimeout(closeTimer);
|
|
97
95
|
this.onclose(event);
|
|
98
96
|
resolve(event);
|
|
99
97
|
};
|
|
100
98
|
if (socket.readyState === SOCKET_READY_STATE.CONNECTING) {
|
|
101
|
-
this.logger.info(`socket,${this.
|
|
99
|
+
this.logger.info(`socket,${this.domain}: socket still connecting, triggering close manually`);
|
|
102
100
|
clearTimeout(closeTimer);
|
|
103
101
|
const closeEvent = {
|
|
104
102
|
code: resolvedOptions.code,
|
|
@@ -110,7 +108,7 @@ export default class Socket extends EventEmitter {
|
|
|
110
108
|
socket.close(resolvedOptions.code, resolvedOptions.reason);
|
|
111
109
|
}
|
|
112
110
|
catch (error) {
|
|
113
|
-
this.logger.info(`socket,${this.
|
|
111
|
+
this.logger.info(`socket,${this.domain}: error while closing CONNECTING socket, likely due to browser incompatibility with custom close codes`, error);
|
|
114
112
|
}
|
|
115
113
|
}
|
|
116
114
|
else {
|
|
@@ -120,10 +118,10 @@ export default class Socket extends EventEmitter {
|
|
|
120
118
|
}
|
|
121
119
|
open(url, options) {
|
|
122
120
|
try {
|
|
123
|
-
this.
|
|
121
|
+
this.domain = new URL(url).hostname;
|
|
124
122
|
}
|
|
125
123
|
catch {
|
|
126
|
-
this.
|
|
124
|
+
this.domain = url;
|
|
127
125
|
}
|
|
128
126
|
return new Promise((resolve, reject) => {
|
|
129
127
|
if (!url) {
|
|
@@ -143,47 +141,47 @@ export default class Socket extends EventEmitter {
|
|
|
143
141
|
});
|
|
144
142
|
});
|
|
145
143
|
const WebSocket = Socket.getWebSocketConstructor();
|
|
146
|
-
this.logger.info(`socket,${this.
|
|
144
|
+
this.logger.info(`socket,${this.domain}: creating WebSocket`);
|
|
147
145
|
const socket = new WebSocket(url, [], resolvedOptions);
|
|
148
146
|
socket.binaryType = 'arraybuffer';
|
|
149
147
|
socket.onmessage = this.onmessage;
|
|
150
148
|
socket.onclose = (event) => {
|
|
151
|
-
event = this.
|
|
152
|
-
this.logger.info(`socket,${this.
|
|
149
|
+
event = this.fixCloseCode(event);
|
|
150
|
+
this.logger.info(`socket,${this.domain}: closed before open`, event.code, event.reason);
|
|
153
151
|
switch (event.code) {
|
|
154
152
|
case 1005:
|
|
155
|
-
return reject(new
|
|
153
|
+
return reject(new UnknownResponse(event));
|
|
156
154
|
case 4400:
|
|
157
|
-
return reject(new
|
|
155
|
+
return reject(new BadRequest(event));
|
|
158
156
|
case 4401:
|
|
159
|
-
return reject(new
|
|
157
|
+
return reject(new NotAuthorized(event));
|
|
160
158
|
case 4403:
|
|
161
|
-
return reject(new
|
|
159
|
+
return reject(new Forbidden(event));
|
|
162
160
|
default:
|
|
163
|
-
return reject(new
|
|
161
|
+
return reject(new ConnectionError(event));
|
|
164
162
|
}
|
|
165
163
|
};
|
|
166
164
|
socket.onopen = () => {
|
|
167
|
-
this.logger.info(`socket,${this.
|
|
168
|
-
this.
|
|
165
|
+
this.logger.info(`socket,${this.domain}: connected`);
|
|
166
|
+
this.authorize(this.token)
|
|
169
167
|
.then(() => {
|
|
170
|
-
this.logger.info(`socket,${this.
|
|
168
|
+
this.logger.info(`socket,${this.domain}: authorized`);
|
|
171
169
|
socket.onclose = this.onclose;
|
|
172
170
|
resolve();
|
|
173
171
|
})
|
|
174
172
|
.catch(reject);
|
|
175
173
|
};
|
|
176
174
|
socket.onerror = (event) => {
|
|
177
|
-
this.logger.warn(`socket,${this.
|
|
175
|
+
this.logger.warn(`socket,${this.domain}: error event fired`, event);
|
|
178
176
|
};
|
|
179
177
|
sockets.set(this, socket);
|
|
180
|
-
this.logger.info(`socket,${this.
|
|
178
|
+
this.logger.info(`socket,${this.domain}: waiting for server`);
|
|
181
179
|
});
|
|
182
180
|
}
|
|
183
181
|
onclose(event) {
|
|
184
|
-
this.logger.info(`socket,${this.
|
|
185
|
-
event = this.
|
|
186
|
-
this.
|
|
182
|
+
this.logger.info(`socket,${this.domain}: closed`, event.code, event.reason);
|
|
183
|
+
event = this.fixCloseCode(event);
|
|
184
|
+
this.rejectPendingResponses(new ConnectionError(event));
|
|
187
185
|
this.emit('close', event);
|
|
188
186
|
this.removeAllListeners();
|
|
189
187
|
}
|
|
@@ -192,15 +190,15 @@ export default class Socket extends EventEmitter {
|
|
|
192
190
|
const data = JSON.parse(event.data);
|
|
193
191
|
const processedEvent = { data };
|
|
194
192
|
if (data.type === 'async_event') {
|
|
195
|
-
this.
|
|
196
|
-
this.logger.warn(`socket,${this.
|
|
193
|
+
this.acknowledge(processedEvent).catch((error) => {
|
|
194
|
+
this.logger.warn(`socket,${this.domain}: failed to acknowledge async event`, error);
|
|
197
195
|
});
|
|
198
196
|
}
|
|
199
|
-
this.
|
|
197
|
+
this.handlePendingResponse(data);
|
|
200
198
|
this.emit('message', processedEvent);
|
|
201
199
|
}
|
|
202
200
|
catch (error) {
|
|
203
|
-
this.logger.warn(`socket,${this.
|
|
201
|
+
this.logger.warn(`socket,${this.domain}: error while receiving WebSocket message`, error);
|
|
204
202
|
}
|
|
205
203
|
}
|
|
206
204
|
send(data) {
|
|
@@ -226,53 +224,37 @@ export default class Socket extends EventEmitter {
|
|
|
226
224
|
return Promise.reject(new Error('`data` is required'));
|
|
227
225
|
}
|
|
228
226
|
const request = { ...data };
|
|
229
|
-
const trackingId = request.trackingId ||
|
|
227
|
+
const trackingId = request.trackingId || createTrackingId();
|
|
230
228
|
const timeout = options.timeout || this.wssResponseTimeout || 10000;
|
|
231
|
-
|
|
232
|
-
((
|
|
233
|
-
const getStatusCode = options.getStatusCode || ((response) => response?.statusCode);
|
|
234
|
-
const getStatusMessage = options.getStatusMessage || ((response) => response?.statusMessage);
|
|
235
|
-
const createError = options.createError ||
|
|
236
|
-
((response, statusCode, statusMessage) => new ConnectionErrorCtor({
|
|
237
|
-
code: statusCode,
|
|
238
|
-
reason: statusMessage || response?.reason || 'Socket request failed',
|
|
239
|
-
}));
|
|
240
|
-
const createTimeoutError = options.createTimeoutError ||
|
|
241
|
-
(() => new ConnectionErrorCtor({
|
|
242
|
-
reason: 'Socket response not received before timeout',
|
|
243
|
-
}));
|
|
244
|
-
if (this._pendingResponses.has(trackingId)) {
|
|
245
|
-
return Promise.reject(new Error(`socket request already pending for trackingId ${trackingId}`));
|
|
229
|
+
if (this.pendingResponses.has(trackingId)) {
|
|
230
|
+
return Promise.reject(new Error(`socket request already sent for trackingId ${trackingId}`));
|
|
246
231
|
}
|
|
247
232
|
request.trackingId = trackingId;
|
|
248
233
|
return new Promise((resolve, reject) => {
|
|
249
234
|
const timeoutId = safeSetTimeout(() => {
|
|
250
|
-
this.
|
|
235
|
+
this.clearPendingResponse(trackingId);
|
|
251
236
|
reject(createTimeoutError(request));
|
|
252
237
|
}, timeout);
|
|
253
|
-
|
|
238
|
+
const pendingResponse = {
|
|
254
239
|
request,
|
|
255
|
-
matchesResponse,
|
|
256
|
-
getStatusCode,
|
|
257
|
-
getStatusMessage,
|
|
258
|
-
createError,
|
|
259
240
|
resolve: (response) => {
|
|
260
|
-
this.
|
|
241
|
+
this.clearPendingResponse(trackingId);
|
|
261
242
|
resolve(response);
|
|
262
243
|
},
|
|
263
244
|
reject: (error) => {
|
|
264
|
-
this.
|
|
245
|
+
this.clearPendingResponse(trackingId);
|
|
265
246
|
reject(error);
|
|
266
247
|
},
|
|
267
248
|
timeoutId,
|
|
268
|
-
}
|
|
249
|
+
};
|
|
250
|
+
this.pendingResponses.set(trackingId, pendingResponse);
|
|
269
251
|
this.send(request).catch((error) => {
|
|
270
|
-
this.
|
|
252
|
+
this.clearPendingResponse(trackingId);
|
|
271
253
|
reject(error);
|
|
272
254
|
});
|
|
273
255
|
});
|
|
274
256
|
}
|
|
275
|
-
|
|
257
|
+
acknowledge(event) {
|
|
276
258
|
if (!event) {
|
|
277
259
|
return Promise.reject(new Error('`event` is required'));
|
|
278
260
|
}
|
|
@@ -284,7 +266,7 @@ export default class Socket extends EventEmitter {
|
|
|
284
266
|
}
|
|
285
267
|
return this.send({
|
|
286
268
|
type: MESSAGE_TYPES.EVENT_ACK,
|
|
287
|
-
trackingId: event.data.trackingId ||
|
|
269
|
+
trackingId: event.data.trackingId || createTrackingId(),
|
|
288
270
|
eventId: event.data.eventId,
|
|
289
271
|
}).catch((error) => {
|
|
290
272
|
if (error.message === 'INVALID_STATE_ERROR') {
|
|
@@ -307,94 +289,75 @@ export default class Socket extends EventEmitter {
|
|
|
307
289
|
else {
|
|
308
290
|
refreshedToken = String(token);
|
|
309
291
|
}
|
|
310
|
-
return this.
|
|
292
|
+
return this.authorize(refreshedToken);
|
|
311
293
|
}
|
|
312
|
-
|
|
313
|
-
this.logger.info(`socket,${this.
|
|
294
|
+
authorize(token) {
|
|
295
|
+
this.logger.info(`socket,${this.domain}: authorizing`);
|
|
314
296
|
return this.sendRequest({
|
|
315
297
|
type: MESSAGE_TYPES.AUTH,
|
|
316
|
-
data: {
|
|
317
|
-
token,
|
|
318
|
-
},
|
|
319
|
-
}, {
|
|
320
|
-
matchesResponse: (response, request) => response?.type === 'response_event' &&
|
|
321
|
-
response?.subtype === MESSAGE_TYPES.AUTH &&
|
|
322
|
-
response?.trackingId === request.trackingId,
|
|
323
|
-
getStatusCode: (response) => response?.statusCode,
|
|
324
|
-
getStatusMessage: (response) => response?.statusMessage,
|
|
325
|
-
createError: (response, statusCode, statusMessage) => new NotAuthorizedCtor({
|
|
326
|
-
code: statusCode,
|
|
327
|
-
reason: statusMessage || 'Mobius auth failed',
|
|
328
|
-
}),
|
|
329
|
-
createTimeoutError: () => new NotAuthorizedCtor({
|
|
330
|
-
reason: 'Mobius auth response not received before timeout',
|
|
331
|
-
}),
|
|
298
|
+
data: { token },
|
|
332
299
|
});
|
|
333
300
|
}
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
}
|
|
337
|
-
_clearPendingResponse(trackingId) {
|
|
338
|
-
const pendingResponse = this._pendingResponses.get(trackingId);
|
|
301
|
+
clearPendingResponse(trackingId) {
|
|
302
|
+
const pendingResponse = this.pendingResponses.get(trackingId);
|
|
339
303
|
if (pendingResponse?.timeoutId) {
|
|
340
304
|
clearTimeout(pendingResponse.timeoutId);
|
|
341
305
|
}
|
|
342
|
-
this.
|
|
306
|
+
this.pendingResponses.delete(trackingId);
|
|
343
307
|
}
|
|
344
|
-
|
|
345
|
-
if (!this.
|
|
308
|
+
rejectPendingResponses(error) {
|
|
309
|
+
if (!this.pendingResponses.size) {
|
|
346
310
|
return;
|
|
347
311
|
}
|
|
348
|
-
|
|
312
|
+
for (const pendingResponse of this.pendingResponses.values()) {
|
|
349
313
|
pendingResponse.reject(error);
|
|
350
|
-
}
|
|
314
|
+
}
|
|
351
315
|
}
|
|
352
|
-
|
|
316
|
+
handlePendingResponse(response) {
|
|
353
317
|
if (!response) {
|
|
354
318
|
return false;
|
|
355
319
|
}
|
|
356
|
-
const pendingResponse = response.trackingId
|
|
357
|
-
? this._pendingResponses.get(response.trackingId)
|
|
358
|
-
: undefined;
|
|
320
|
+
const pendingResponse = this.pendingResponses.get(response.trackingId || '');
|
|
359
321
|
if (!pendingResponse) {
|
|
360
322
|
return false;
|
|
361
323
|
}
|
|
362
|
-
if (
|
|
324
|
+
if (response.subtype !== pendingResponse.request.type) {
|
|
363
325
|
return false;
|
|
364
326
|
}
|
|
365
|
-
const statusCode =
|
|
366
|
-
const statusMessage =
|
|
327
|
+
const statusCode = response?.statusCode;
|
|
328
|
+
const statusMessage = response?.statusMessage;
|
|
367
329
|
if (statusCode === 440 && response?.subtype !== MESSAGE_TYPES.AUTH) {
|
|
368
330
|
if (typeof this.refreshToken === 'function') {
|
|
369
331
|
Promise.resolve(this.refreshToken(response)).catch((error) => {
|
|
370
|
-
this.logger.warn(`socket,${this.
|
|
332
|
+
this.logger.warn(`socket,${this.domain}: failed token-expiry re-auth`, error);
|
|
371
333
|
});
|
|
372
334
|
}
|
|
373
335
|
else {
|
|
374
|
-
this.logger.warn(`socket,${this.
|
|
336
|
+
this.logger.warn(`socket,${this.domain}: refreshToken callback is unavailable for statusCode 440`);
|
|
375
337
|
}
|
|
376
338
|
}
|
|
377
339
|
if (statusCode === undefined) {
|
|
378
|
-
|
|
340
|
+
const error = createWssResponseError(response, statusCode, statusMessage || 'Socket response missing status code');
|
|
341
|
+
pendingResponse.reject(error);
|
|
379
342
|
}
|
|
380
343
|
else if (statusCode >= 200 && statusCode < 300) {
|
|
381
344
|
pendingResponse.resolve(response);
|
|
382
345
|
}
|
|
383
346
|
else {
|
|
384
|
-
pendingResponse.reject(
|
|
347
|
+
pendingResponse.reject(createWssResponseError(response, statusCode, statusMessage));
|
|
385
348
|
}
|
|
386
349
|
return true;
|
|
387
350
|
}
|
|
388
|
-
|
|
351
|
+
fixCloseCode(event) {
|
|
389
352
|
if (event.code === 1005 && event.reason) {
|
|
390
353
|
switch (event.reason.toLowerCase()) {
|
|
391
354
|
case 'replaced':
|
|
392
|
-
this.logger.info(`socket,${this.
|
|
355
|
+
this.logger.info(`socket,${this.domain}: fixing CloseEvent code for reason: `, event.reason);
|
|
393
356
|
event.code = 4000;
|
|
394
357
|
break;
|
|
395
358
|
case 'authentication failed':
|
|
396
359
|
case 'authentication did not happen within the timeout window of 30000 seconds.':
|
|
397
|
-
this.logger.info(`socket,${this.
|
|
360
|
+
this.logger.info(`socket,${this.domain}: fixing CloseEvent code for reason: `, event.reason);
|
|
398
361
|
event.code = 1008;
|
|
399
362
|
break;
|
|
400
363
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/utils/request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAuB,MAAM,SAAS,CAAC;AAqDpG,qBAAa,UAAU;IAErB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyB;IAChD,OAAO,CAAC,qBAAqB,CAAU;IACvC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,aAAa,CAAiB;IAEtC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU;IAQxD,MAAM,CAAC,aAAa,IAAI,IAAI;gBAOhB,MAAM,EAAE,gBAAgB;IAyB7B,eAAe,IAAI,OAAO;IAYpB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IA6ClE,0BAA0B,CAAC,OAAO,CAAC,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/utils/request.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AAGvD,OAAO,EAAC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAuB,MAAM,SAAS,CAAC;AAqDpG,qBAAa,UAAU;IAErB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAyB;IAChD,OAAO,CAAC,qBAAqB,CAAU;IACvC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,aAAa,CAAiB;IAEtC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,gBAAgB,GAAG,UAAU;IAQxD,MAAM,CAAC,aAAa,IAAI,IAAI;gBAOhB,MAAM,EAAE,gBAAgB;IAyB7B,eAAe,IAAI,OAAO;IAYpB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IA6ClE,0BAA0B,CAAC,OAAO,CAAC,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CnF,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAuD3E,4BAA4B,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,gBAAgB,KAAK,IAAI,GAAG,IAAI;IAyBzE,8BAA8B,IAAI,IAAI;CAgB9C;AAOD,eAAO,MAAM,gBAAgB,WAAY,gBAAgB,KAAG,UAC5B,CAAC"}
|
|
@@ -19,7 +19,7 @@ export type MobiusSocketResponse = {
|
|
|
19
19
|
metadata?: Record<string, unknown>;
|
|
20
20
|
data?: unknown;
|
|
21
21
|
};
|
|
22
|
-
export type SendWssRequestFn = (data: MobiusSocketRequestOptions,
|
|
22
|
+
export type SendWssRequestFn = (data: MobiusSocketRequestOptions, options?: Record<string, unknown>) => Promise<MobiusSocketResponse>;
|
|
23
23
|
export type MobiusAsyncEvent = {
|
|
24
24
|
type: string;
|
|
25
25
|
eventId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,0BAA0B,EAAC,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAKlD,MAAM,WAAW,gBAAgB;IAE/B,KAAK,EAAE,QAAQ,CAAC;CACjB;AAKD,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAKpD,MAAM,WAAW,0BAA0B;IAEzC,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAMF,MAAM,MAAM,gBAAgB,GAAG,CAC7B,IAAI,EAAE,0BAA0B,EAChC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/CallingClient/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAE,0BAA0B,EAAC,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAC;AAKlD,MAAM,WAAW,gBAAgB;IAE/B,KAAK,EAAE,QAAQ,CAAC;CACjB;AAKD,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAKpD,MAAM,WAAW,0BAA0B;IAEzC,IAAI,EAAE,MAAM,CAAC;IAEb,UAAU,EAAE,MAAM,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAKD,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAMF,MAAM,MAAM,gBAAgB,GAAG,CAC7B,IAAI,EAAE,0BAA0B,EAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC9B,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEnC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,cAAc,GAAG,0BAA0B,CAAC;CACnD,CAAC"}
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
3
|
*/
|
|
4
4
|
export interface MobiusSocketConfig {
|
|
5
|
-
wssResponseTimeout:
|
|
6
|
-
backoffTimeMax:
|
|
7
|
-
backoffTimeReset:
|
|
8
|
-
initialConnectionMaxRetries:
|
|
9
|
-
maxRetries:
|
|
10
|
-
forceCloseDelay:
|
|
11
|
-
|
|
12
|
-
dedupCacheMaxSize: string | number;
|
|
5
|
+
wssResponseTimeout: number;
|
|
6
|
+
backoffTimeMax: number;
|
|
7
|
+
backoffTimeReset: number;
|
|
8
|
+
initialConnectionMaxRetries: number;
|
|
9
|
+
maxRetries: number;
|
|
10
|
+
forceCloseDelay: number;
|
|
11
|
+
dedupCacheMaxSize: number;
|
|
13
12
|
}
|
|
14
13
|
declare const _default: {
|
|
15
14
|
mobiusSocket: MobiusSocketConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,kBAAkB;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,kBAAkB;IAEjC,kBAAkB,EAAE,MAAM,CAAC;IAE3B,cAAc,EAAE,MAAM,CAAC;IAEvB,gBAAgB,EAAE,MAAM,CAAC;IAEzB,2BAA2B,EAAE,MAAM,CAAC;IAEpC,UAAU,EAAE,MAAM,CAAC;IAEnB,eAAe,EAAE,MAAM,CAAC;IAExB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;;;;AAYD,wBAEE"}
|
|
@@ -2,21 +2,31 @@
|
|
|
2
2
|
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
3
3
|
*/
|
|
4
4
|
import { Exception } from '@webex/common';
|
|
5
|
-
import type { SocketCloseEvent } from './socket/types';
|
|
5
|
+
import type { SocketCloseEvent, SocketResponse } from './socket/types';
|
|
6
|
+
import { MobiusSocketResponseError } from './types';
|
|
6
7
|
export declare class ConnectionError extends Exception {
|
|
7
8
|
static defaultMessage: string;
|
|
9
|
+
code?: number;
|
|
10
|
+
reason?: string;
|
|
11
|
+
constructor(event?: SocketCloseEvent);
|
|
8
12
|
parse(event?: SocketCloseEvent): string | undefined;
|
|
9
13
|
}
|
|
10
14
|
export declare class UnknownResponse extends ConnectionError {
|
|
11
15
|
static defaultMessage: string;
|
|
16
|
+
constructor(event?: SocketCloseEvent);
|
|
12
17
|
}
|
|
13
18
|
export declare class BadRequest extends ConnectionError {
|
|
14
19
|
static defaultMessage: string;
|
|
20
|
+
constructor(event?: SocketCloseEvent);
|
|
15
21
|
}
|
|
16
22
|
export declare class NotAuthorized extends ConnectionError {
|
|
17
23
|
static defaultMessage: string;
|
|
24
|
+
constructor(event?: SocketCloseEvent);
|
|
18
25
|
}
|
|
19
26
|
export declare class Forbidden extends ConnectionError {
|
|
20
27
|
static defaultMessage: string;
|
|
28
|
+
constructor(event?: SocketCloseEvent);
|
|
21
29
|
}
|
|
30
|
+
export declare function createWssResponseError(response: SocketResponse, statusCode?: number, statusMessage?: string): MobiusSocketResponseError;
|
|
31
|
+
export declare function createTimeoutError(request: SocketResponse): MobiusSocketResponseError;
|
|
22
32
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAC,gBAAgB,EAAE,cAAc,EAAC,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAC,yBAAyB,EAAC,MAAM,SAAS,CAAC;AAKlD,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,MAAM,CAAC,cAAc,SAAiC;IAEtD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,MAAM,CAAC,EAAE,MAAM,CAAC;gBAGJ,KAAK,CAAC,EAAE,gBAAgB;IASpC,KAAK,CAAC,KAAK,GAAE,gBAAqB;CAYnC;AAOD,qBAAa,eAAgB,SAAQ,eAAe;IAClD,MAAM,CAAC,cAAc,SACyF;gBAGlG,KAAK,CAAC,EAAE,gBAAgB;CAGrC;AAMD,qBAAa,UAAW,SAAQ,eAAe;IAC7C,MAAM,CAAC,cAAc,SACwD;gBAGjE,KAAK,CAAC,EAAE,gBAAgB;CAGrC;AAMD,qBAAa,aAAc,SAAQ,eAAe;IAChD,MAAM,CAAC,cAAc,SAAsC;gBAG/C,KAAK,CAAC,EAAE,gBAAgB;CAGrC;AAMD,qBAAa,SAAU,SAAQ,eAAe;IAC5C,MAAM,CAAC,cAAc,SAA4E;gBAGrF,KAAK,CAAC,EAAE,gBAAgB;CAGrC;AAUD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EACxB,UAAU,CAAC,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,GACrB,yBAAyB,CAY3B;AAQD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,yBAAyB,CAQrF"}
|
|
@@ -6,13 +6,9 @@ import '@webex/internal-plugin-feature';
|
|
|
6
6
|
import '@webex/internal-plugin-metrics';
|
|
7
7
|
import type { WebexSDK } from '../SDKConnector/types';
|
|
8
8
|
import MobiusSocket from './mobius-socket';
|
|
9
|
-
import
|
|
9
|
+
import { MobiusSocketConfig } from './config';
|
|
10
10
|
export declare function getMobiusSocketInstance(webex: WebexSDK, mobiusSocketConfig?: Partial<MobiusSocketConfig>): MobiusSocket;
|
|
11
11
|
export declare function resetMobiusSocketInstance(): void;
|
|
12
12
|
export default MobiusSocket;
|
|
13
13
|
export { MobiusSocket };
|
|
14
|
-
export { default as Socket } from './socket';
|
|
15
|
-
export { config };
|
|
16
|
-
export { BadRequest, ConnectionError, Forbidden, NotAuthorized, UnknownResponse } from './errors';
|
|
17
|
-
export type { MobiusSocketCloseOptions, MobiusSocketRequestOptions, MobiusSocketRequestPayload, MobiusSocketResponseError, } from './types';
|
|
18
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,gCAAgC,CAAC;AACxC,OAAO,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,+BAA+B,CAAC;AACvC,OAAO,gCAAgC,CAAC;AACxC,OAAO,gCAAgC,CAAC;AAExC,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAe,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAYpD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,QAAQ,EACf,kBAAkB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAC/C,YAAY,CAWd;AAKD,wBAAgB,yBAAyB,SAExC;AAED,eAAe,YAAY,CAAC;AAC5B,OAAO,EAAC,YAAY,EAAC,CAAC"}
|
|
@@ -6,45 +6,43 @@ import { EventEmitter } from 'events';
|
|
|
6
6
|
import type { WebexSDK } from '../SDKConnector/types';
|
|
7
7
|
import type { MobiusSocketConfig } from './config';
|
|
8
8
|
import type { SocketResponse } from './socket/types';
|
|
9
|
-
import type { MobiusSocketCloseOptions, MobiusSocketDisconnectResult, MobiusSocketRequestOptions, MobiusSocketRequestPayload
|
|
9
|
+
import type { MobiusSocketCloseOptions, MobiusSocketDisconnectResult, MobiusSocketRequestOptions, MobiusSocketRequestPayload } from './types';
|
|
10
10
|
declare class MobiusSocket extends EventEmitter {
|
|
11
|
+
private webex;
|
|
12
|
+
private config;
|
|
13
|
+
private logger;
|
|
14
|
+
private connected;
|
|
15
|
+
private connecting;
|
|
16
|
+
private hasEverConnected;
|
|
17
|
+
private socket;
|
|
18
|
+
private backoffCall;
|
|
19
|
+
private shutdownSwitchoverBackoffCall;
|
|
20
|
+
private seenAsyncEventIds;
|
|
21
|
+
private connectPromise;
|
|
22
|
+
private socketUrl;
|
|
23
|
+
private tokenRefreshTimer;
|
|
24
|
+
private tokenRefreshInFlight;
|
|
11
25
|
constructor(webex: WebexSDK, config?: Partial<MobiusSocketConfig>);
|
|
12
26
|
off(eventName: string, listener?: (...args: unknown[]) => void): this;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
_handleImminentShutdown(sessionId: any): void;
|
|
19
|
-
getLastError(): unknown;
|
|
20
|
-
getSockets(): any;
|
|
21
|
-
getSocket(sessionId?: any): any;
|
|
22
|
-
getConnectedWebSocketUrl(sessionId?: any): string | undefined;
|
|
23
|
-
send(payload: Record<string, unknown>, sessionId?: any): Promise<void>;
|
|
24
|
-
sendWssRequest(payload: MobiusSocketRequestPayload, sessionIdOrRequestOptions?: string | MobiusSocketRequestOptions, options?: MobiusSocketRequestOptions): Promise<SocketResponse>;
|
|
27
|
+
private attachSocketEventListeners;
|
|
28
|
+
private trackAsyncEventAndShouldSuppressDuplicate;
|
|
29
|
+
private handleImminentShutdown;
|
|
30
|
+
getConnectedWebSocketUrl(): string | undefined;
|
|
31
|
+
sendWssRequest(payload: MobiusSocketRequestPayload, options?: MobiusSocketRequestOptions): Promise<SocketResponse>;
|
|
25
32
|
isConnected(): boolean;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
_emit(sessionId: any, eventName: any, ...args: any[]): void;
|
|
40
|
-
_getEventHandlers(eventType: any): any[];
|
|
41
|
-
_startTokenRefreshTimer(): void;
|
|
42
|
-
_stopTokenRefreshTimer(): void;
|
|
43
|
-
_refreshToken(): any;
|
|
44
|
-
_onclose(sessionId: any, event: any, sourceSocket: any): void;
|
|
45
|
-
_onmessage(sessionId: any, event: any): any;
|
|
46
|
-
_setTimeOffset(sessionId: any, event: any): void;
|
|
47
|
-
_reconnect(webSocketUrl: any, sessionId?: any): Promise<void>;
|
|
33
|
+
connect(webSocketUrl?: string): Promise<void>;
|
|
34
|
+
disconnect(options?: MobiusSocketCloseOptions): MobiusSocketDisconnectResult;
|
|
35
|
+
private prepareUrl;
|
|
36
|
+
private attemptConnection;
|
|
37
|
+
private prepareAndOpenSocket;
|
|
38
|
+
private connectWithBackoff;
|
|
39
|
+
private emitEvent;
|
|
40
|
+
private startTokenRefreshTimer;
|
|
41
|
+
private stopTokenRefreshTimer;
|
|
42
|
+
private refreshToken;
|
|
43
|
+
private onclose;
|
|
44
|
+
private onmessage;
|
|
45
|
+
private reconnect;
|
|
48
46
|
}
|
|
49
47
|
export default MobiusSocket;
|
|
50
48
|
//# sourceMappingURL=mobius-socket.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobius-socket.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/mobius-socket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mobius-socket.d.ts","sourceRoot":"","sources":["../../../src/mobius-socket/mobius-socket.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AAIpC,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAGpD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAuC,cAAc,EAAC,MAAM,gBAAgB,CAAC;AACzF,OAAO,KAAK,EACV,wBAAwB,EACxB,4BAA4B,EAC5B,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,SAAS,CAAC;AAkBjB,cAAM,YAAa,SAAQ,YAAY;IACrC,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAU;IAC3B,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,gBAAgB,CAAU;IAClC,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,6BAA6B,CAAM;IAC3C,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,iBAAiB,CAA6B;IACtD,OAAO,CAAC,oBAAoB,CAA+B;gBAE/C,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAO,CAAC,kBAAkB,CAAM;IAsB9D,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI;IAcrE,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,yCAAyC;IA2CjD,OAAO,CAAC,sBAAsB;IA8DvB,wBAAwB,IAAI,MAAM,GAAG,SAAS;IAc9C,cAAc,CACnB,OAAO,EAAE,0BAA0B,EACnC,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,cAAc,CAAC;IAgBnB,WAAW,IAAI,OAAO;IAStB,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0D7C,UAAU,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,4BAA4B;IAuCnF,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,iBAAiB;IAoIzB,OAAO,CAAC,oBAAoB;IAwC5B,OAAO,CAAC,kBAAkB;IAmJ1B,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,sBAAsB;IAe9B,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,YAAY;IAiDpB,OAAO,CAAC,OAAO;IAkGf,OAAO,CAAC,SAAS;IA0DjB,OAAO,CAAC,SAAS;CAKlB;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/mobius-socket/socket/constants.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/mobius-socket/socket/constants.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,kBAAkB;;;;;EAS7B,CAAC;AAKH,eAAO,MAAM,aAAa;;;EAKxB,CAAC"}
|