snapreq 0.0.8 → 0.0.10

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 (46) hide show
  1. package/README.md +8 -5
  2. package/build/capabilities.d.ts +17 -17
  3. package/build/capabilities.d.ts.map +1 -1
  4. package/build/control.d.ts +12 -0
  5. package/build/control.d.ts.map +1 -0
  6. package/build/control.js +27 -0
  7. package/build/errors.d.ts +16 -16
  8. package/build/errors.d.ts.map +1 -1
  9. package/build/headers.d.ts +6 -6
  10. package/build/headers.d.ts.map +1 -1
  11. package/build/request.d.ts +15 -15
  12. package/build/request.d.ts.map +1 -1
  13. package/build/response.d.ts +27 -17
  14. package/build/response.d.ts.map +1 -1
  15. package/build/response.js +26 -2
  16. package/build/retry.d.ts +38 -37
  17. package/build/retry.d.ts.map +1 -1
  18. package/build/retry.js +40 -34
  19. package/build/snap-req.d.ts +116 -153
  20. package/build/snap-req.d.ts.map +1 -1
  21. package/build/snap-req.js +57 -102
  22. package/build/transports/fetch-transport.d.ts +10 -4
  23. package/build/transports/fetch-transport.d.ts.map +1 -1
  24. package/build/transports/fetch-transport.js +58 -12
  25. package/build/transports/fetch.d.ts.map +1 -1
  26. package/build/transports/node-transport.d.ts +23 -22
  27. package/build/transports/node-transport.d.ts.map +1 -1
  28. package/build/transports/node-transport.js +45 -10
  29. package/build/transports/proxy-bounce-transport.d.ts +4 -4
  30. package/build/transports/proxy-bounce-transport.d.ts.map +1 -1
  31. package/build/transports/select.d.ts +21 -21
  32. package/build/transports/select.d.ts.map +1 -1
  33. package/build/transports/xhr-transport.d.ts +2 -2
  34. package/build/transports/xhr-transport.d.ts.map +1 -1
  35. package/build/transports/xhr.d.ts.map +1 -1
  36. package/build/websocket/websocket-channel.d.ts +33 -22
  37. package/build/websocket/websocket-channel.d.ts.map +1 -1
  38. package/build/websocket/websocket-channel.js +27 -11
  39. package/build/websocket/websocket-client.d.ts +136 -65
  40. package/build/websocket/websocket-client.d.ts.map +1 -1
  41. package/build/websocket/websocket-client.js +221 -66
  42. package/build/websocket/websocket-connection.d.ts +19 -16
  43. package/build/websocket/websocket-connection.d.ts.map +1 -1
  44. package/build/websocket/websocket-connection.js +11 -3
  45. package/build/websocket.d.ts.map +1 -1
  46. package/package.json +6 -3
@@ -1,3 +1,5 @@
1
+ import SnapReqWebSocketConnection from "./websocket-connection.js";
2
+ import SnapReqWebSocketChannel from "./websocket-channel.js";
1
3
  /**
2
4
  * A small WebSocket client that mirrors simple HTTP-style calls and channel
3
5
  * subscriptions over `globalThis.WebSocket`, so the same code runs on web, Expo
@@ -9,56 +11,19 @@
9
11
  * `json()`.
10
12
  */
11
13
  export default class SnapReqWebSocketClient {
12
- /**
13
- * @param {object} args - Options object.
14
- * @param {string} args.url - Full WebSocket URL, e.g. `ws://localhost:3006/websocket`.
15
- * @param {boolean} [args.autoReconnect] - Enable auto-reconnect with exponential backoff.
16
- * @param {boolean} [args.debug] - Whether to log debug output.
17
- * @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.
18
- * @param {number[]} [args.reconnectDelays] - Backoff delays in ms (default: [1000, 2000, 4000, 8000, 15000]).
19
- * @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 surviving reloads (localStorage, a cookie, SQLite, etc.).
20
- * @param {(value: any) => any} [args.deserialize] - Optional transform applied to a response body inside `response.json()`. Lets an app re-hydrate its own wire format. Defaults to identity.
21
- */
22
- constructor({ autoReconnect, debug, deserialize, networkMonitor, reconnectDelays, sessionStore, url }?: {
23
- url: string;
24
- autoReconnect?: boolean;
25
- debug?: boolean;
26
- networkMonitor?: {
27
- getIsOnline?: () => boolean | Promise<boolean>;
28
- subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {
29
- remove: () => void;
30
- };
31
- };
32
- reconnectDelays?: number[];
33
- sessionStore?: {
34
- get: () => string | null | undefined | Promise<string | null | undefined>;
35
- set: (sessionId: string) => void | Promise<void>;
36
- clear: () => void | Promise<void>;
37
- };
38
- deserialize?: (value: any) => any;
39
- });
40
- /** @type {Map<string, {reject: (error: unknown) => void, resolve: (response: SnapReqWebSocketResponse) => void}>} */
41
- pendingRequests: Map<string, {
42
- reject: (error: unknown) => void;
43
- resolve: (response: SnapReqWebSocketResponse) => void;
44
- }>;
45
- /** @type {Map<string, {reject: (error: unknown) => void, resolve: (value?: void) => void}>} */
46
- pendingSubscriptions: Map<string, {
47
- reject: (error: unknown) => void;
48
- resolve: (value?: void) => void;
49
- }>;
50
- /** @type {Map<string, {callbacks: Set<(payload: any) => void>, channel: string, params: Record<string, any> | undefined, ready: Promise<void>}>} */
51
- listeners: Map<string, {
52
- callbacks: Set<(payload: any) => void>;
53
- channel: string;
54
- params: Record<string, any> | undefined;
55
- ready: Promise<void>;
56
- }>;
57
14
  /** @type {(value: any) => any} */
58
15
  _deserialize: (value: any) => any;
59
16
  /** @type {boolean} */
60
17
  autoReconnect: boolean;
61
18
  debug: boolean;
19
+ /** @type {typeof globalThis.WebSocket} */
20
+ _WebSocket: typeof globalThis.WebSocket;
21
+ /** @type {boolean} */
22
+ _unref: boolean;
23
+ /** @type {number} - ms between liveness pings; 0 disables the heartbeat. */
24
+ _heartbeatIntervalMs: number;
25
+ /** @type {ReturnType<typeof setInterval> | null} */
26
+ _heartbeatTimer: ReturnType<typeof setInterval> | null;
62
27
  /** @type {number | null} */
63
28
  disconnectedSince: number | null;
64
29
  /** @type {number} */
@@ -116,6 +81,63 @@ export default class SnapReqWebSocketClient {
116
81
  };
117
82
  /** @type {boolean} */
118
83
  _waitingForOnline: boolean;
84
+ /** @type {number} - Operations currently depending on the shared in-flight connect. */
85
+ _connectWaiters: number;
86
+ /** @type {WeakSet<object>} - Sockets whose terminal lifecycle has already been processed. */
87
+ _closedSockets: WeakSet<object>;
88
+ socket: WebSocket;
89
+ connectPromise: Promise<any>;
90
+ /** @type {Map<string, {reject: (error: unknown) => void, resolve: (response: SnapReqWebSocketResponse) => void}>} */
91
+ pendingRequests: Map<string, {
92
+ reject: (error: unknown) => void;
93
+ resolve: (response: SnapReqWebSocketResponse) => void;
94
+ }>;
95
+ /** @type {Map<string, {reject: (error: unknown) => void, resolve: (value?: void) => void}>} */
96
+ pendingSubscriptions: Map<string, {
97
+ reject: (error: unknown) => void;
98
+ resolve: (value?: void) => void;
99
+ }>;
100
+ /** @type {Map<string, {callbacks: Set<(payload: any) => void>, channel: string, params: Record<string, any> | undefined, ready: Promise<void>}>} */
101
+ listeners: Map<string, {
102
+ callbacks: Set<(payload: any) => void>;
103
+ channel: string;
104
+ params: Record<string, any> | undefined;
105
+ ready: Promise<void>;
106
+ }>;
107
+ /**
108
+ * @param {object} args - Options object.
109
+ * @param {string} args.url - Full WebSocket URL, e.g. `ws://localhost:3006/websocket`.
110
+ * @param {boolean} [args.autoReconnect] - Enable auto-reconnect with exponential backoff.
111
+ * @param {boolean} [args.debug] - Whether to log debug output.
112
+ * @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.
113
+ * @param {number[]} [args.reconnectDelays] - Backoff delays in ms (default: [1000, 2000, 4000, 8000, 15000]).
114
+ * @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 surviving reloads (localStorage, a cookie, SQLite, etc.).
115
+ * @param {(value: any) => any} [args.deserialize] - Optional transform applied to a response body inside `response.json()`. Lets an app re-hydrate its own wire format. Defaults to identity.
116
+ * @param {typeof globalThis.WebSocket} [args.webSocketImplementation] - WebSocket constructor to use instead of `globalThis.WebSocket`. Inject Node's `ws` here to get real WS ping/pong heartbeats and socket `unref` (the browser/undici global exposes neither).
117
+ * @param {number} [args.heartbeatIntervalMs] - When > 0 and the WebSocket implementation supports `.ping()` (Node `ws`), send a protocol ping every this-many ms and drop the socket if the peer did not pong since the previous ping (so a vanished peer is noticed within ~2× this interval). Default 0 (disabled).
118
+ * @param {boolean} [args.unref] - When the underlying socket exposes `unref()` (Node `ws`), unref it so an idle connection can never keep the process/event loop alive on its own. Best-effort no-op on browser/undici. Default false.
119
+ */
120
+ constructor({ autoReconnect, debug, deserialize, heartbeatIntervalMs, networkMonitor, reconnectDelays, sessionStore, unref, url, webSocketImplementation }?: {
121
+ url: string;
122
+ autoReconnect?: boolean;
123
+ debug?: boolean;
124
+ networkMonitor?: {
125
+ getIsOnline?: () => boolean | Promise<boolean>;
126
+ subscribe?: (callback: (isOnline: boolean) => void) => (() => void) | {
127
+ remove: () => void;
128
+ };
129
+ };
130
+ reconnectDelays?: number[];
131
+ sessionStore?: {
132
+ get: () => string | null | undefined | Promise<string | null | undefined>;
133
+ set: (sessionId: string) => void | Promise<void>;
134
+ clear: () => void | Promise<void>;
135
+ };
136
+ deserialize?: (value: any) => any;
137
+ webSocketImplementation?: typeof globalThis.WebSocket;
138
+ heartbeatIntervalMs?: number;
139
+ unref?: boolean;
140
+ });
119
141
  /** @returns {boolean} - Whether the socket is open. */
120
142
  isOpen(): boolean;
121
143
  /** @returns {boolean} - Whether the session is ready for app messages. */
@@ -124,11 +146,13 @@ export default class SnapReqWebSocketClient {
124
146
  * Opens a 1:1 connection of the given type against the server. Requires the
125
147
  * socket to already be connected (call `connect()` first).
126
148
  * @param {string} connectionType - Name the server registered the class under.
127
- * @param {{params?: Record<string, any>, onConnect?: () => void, onMessage?: (body: any) => void, onDisconnect?: () => void, onResume?: () => void, onClose?: (reason: string) => void}} [options] - Connection options.
149
+ * @param {{params?: Record<string, any>, timeoutMs?: number, signal?: AbortSignal, onConnect?: () => void, onMessage?: (body: any) => void, onDisconnect?: () => void, onResume?: () => void, onClose?: (reason: string) => void}} [options] - Connection options.
128
150
  * @returns {SnapReqWebSocketConnection} - The connection handle.
129
151
  */
130
152
  openConnection(connectionType: string, options?: {
131
153
  params?: Record<string, any>;
154
+ timeoutMs?: number;
155
+ signal?: AbortSignal;
132
156
  onConnect?: () => void;
133
157
  onMessage?: (body: any) => void;
134
158
  onDisconnect?: () => void;
@@ -145,12 +169,14 @@ export default class SnapReqWebSocketClient {
145
169
  * Subscribes to a named channel. If the socket is not yet open, the
146
170
  * subscription is queued and sent once a connection is established.
147
171
  * @param {string} channelType - Name the server registered the channel under.
148
- * @param {{params?: Record<string, any>, lastEventId?: string, onMessage?: (body: any) => void, onDisconnect?: () => void, onResume?: () => void, onClose?: (reason: string) => void}} [options] - Subscription options.
172
+ * @param {{params?: Record<string, any>, lastEventId?: string, timeoutMs?: number, signal?: AbortSignal, onMessage?: (body: any) => void, onDisconnect?: () => void, onResume?: () => void, onClose?: (reason: string) => void}} [options] - Subscription options.
149
173
  * @returns {SnapReqWebSocketChannel} - The subscription handle.
150
174
  */
151
175
  subscribeChannel(channelType: string, options?: {
152
176
  params?: Record<string, any>;
153
177
  lastEventId?: string;
178
+ timeoutMs?: number;
179
+ signal?: AbortSignal;
154
180
  onMessage?: (body: any) => void;
155
181
  onDisconnect?: () => void;
156
182
  onResume?: () => void;
@@ -189,16 +215,28 @@ export default class SnapReqWebSocketClient {
189
215
  /**
190
216
  * Ensures a WebSocket connection is open. Auto-reconnect and online gating are
191
217
  * enabled by default.
192
- * @param {{autoReconnect?: boolean, waitForOnline?: boolean, resetReconnectState?: boolean}} [options] - Connect options.
218
+ * @param {{autoReconnect?: boolean, waitForOnline?: boolean, resetReconnectState?: boolean, timeoutMs?: number, signal?: AbortSignal}} [options] - Connect options.
193
219
  * @returns {Promise<void>} - Resolves once connected and the session is ready.
194
220
  */
195
- connect({ autoReconnect, waitForOnline, resetReconnectState }?: {
221
+ connect({ autoReconnect, waitForOnline, resetReconnectState, timeoutMs, signal }?: {
222
+ autoReconnect?: boolean;
223
+ waitForOnline?: boolean;
224
+ resetReconnectState?: boolean;
225
+ timeoutMs?: number;
226
+ signal?: AbortSignal;
227
+ }): Promise<void>;
228
+ /**
229
+ * @param {object} [options] - Internal connect options.
230
+ * @param {boolean} [options.autoReconnect] - Whether reconnect remains enabled.
231
+ * @param {boolean} [options.waitForOnline] - Whether to honor the online gate.
232
+ * @param {boolean} [options.resetReconnectState] - Whether to reset backoff state.
233
+ * @returns {Promise<void>} - Opens the socket and waits for session readiness.
234
+ */
235
+ _connect({ autoReconnect, waitForOnline, resetReconnectState }?: {
196
236
  autoReconnect?: boolean;
197
237
  waitForOnline?: boolean;
198
238
  resetReconnectState?: boolean;
199
239
  }): Promise<void>;
200
- connectPromise: Promise<any>;
201
- socket: WebSocket;
202
240
  /**
203
241
  * Closes the WebSocket and clears pending state.
204
242
  * @returns {Promise<void>} - Resolves once closed.
@@ -219,20 +257,24 @@ export default class SnapReqWebSocketClient {
219
257
  * Performs a POST request over the WebSocket.
220
258
  * @param {string} path - Path.
221
259
  * @param {any} [body] - Request body.
222
- * @param {{headers?: Record<string, string>}} [options] - Request options such as headers.
260
+ * @param {{headers?: Record<string, string>, timeoutMs?: number, signal?: AbortSignal}} [options] - Request options such as headers and operation controls.
223
261
  * @returns {Promise<SnapReqWebSocketResponse>} - The response.
224
262
  */
225
263
  post(path: string, body?: any, options?: {
226
264
  headers?: Record<string, string>;
265
+ timeoutMs?: number;
266
+ signal?: AbortSignal;
227
267
  }): Promise<SnapReqWebSocketResponse>;
228
268
  /**
229
269
  * Performs a GET request over the WebSocket.
230
270
  * @param {string} path - Path.
231
- * @param {{headers?: Record<string, string>}} [options] - Request options such as headers.
271
+ * @param {{headers?: Record<string, string>, timeoutMs?: number, signal?: AbortSignal}} [options] - Request options such as headers and operation controls.
232
272
  * @returns {Promise<SnapReqWebSocketResponse>} - The response.
233
273
  */
234
274
  get(path: string, options?: {
235
275
  headers?: Record<string, string>;
276
+ timeoutMs?: number;
277
+ signal?: AbortSignal;
236
278
  }): Promise<SnapReqWebSocketResponse>;
237
279
  /**
238
280
  * Subscribes to a channel for server-sent events.
@@ -253,26 +295,30 @@ export default class SnapReqWebSocketClient {
253
295
  /**
254
296
  * Subscribes to a channel for server-sent events with optional params.
255
297
  * @param {string} channel - Channel name.
256
- * @param {{lastEventId?: string, params?: Record<string, any>}} options - Subscription options.
298
+ * @param {{lastEventId?: string, params?: Record<string, any>, timeoutMs?: number, signal?: AbortSignal}} options - Subscription options.
257
299
  * @param {(payload: any, message?: Record<string, any>) => void} callback - Callback function.
258
300
  * @returns {(() => void) & {ready: Promise<void>}} - Unsubscribe function with readiness promise.
259
301
  */
260
302
  subscribe(channel: string, options: {
261
303
  lastEventId?: string;
262
304
  params?: Record<string, any>;
305
+ timeoutMs?: number;
306
+ signal?: AbortSignal;
263
307
  }, callback: (payload: any, message?: Record<string, any>) => void): (() => void) & {
264
308
  ready: Promise<void>;
265
309
  };
266
310
  /**
267
311
  * Subscribes to a channel and waits until the server acknowledges it.
268
312
  * @param {string} channel - Channel name.
269
- * @param {{lastEventId?: string, params?: Record<string, any>}} options - Subscription options.
313
+ * @param {{lastEventId?: string, params?: Record<string, any>, timeoutMs?: number, signal?: AbortSignal}} options - Subscription options.
270
314
  * @param {(payload: any, message?: Record<string, any>) => void} callback - Callback function.
271
315
  * @returns {Promise<(() => void) & {ready: Promise<void>}>} - Ready unsubscribe handle.
272
316
  */
273
317
  subscribeAndWait(channel: string, options: {
274
318
  lastEventId?: string;
275
319
  params?: Record<string, any>;
320
+ timeoutMs?: number;
321
+ signal?: AbortSignal;
276
322
  }, callback: (payload: any, message?: Record<string, any>) => void): Promise<(() => void) & {
277
323
  ready: Promise<void>;
278
324
  }>;
@@ -282,11 +328,15 @@ export default class SnapReqWebSocketClient {
282
328
  * @param {object} [options] - Options object.
283
329
  * @param {any} [options.body] - Request body.
284
330
  * @param {Record<string, string>} [options.headers] - Header list.
331
+ * @param {number} [options.timeoutMs] - Deadline for connect/session readiness and the response.
332
+ * @param {AbortSignal} [options.signal] - Cancels only this pending request.
285
333
  * @returns {Promise<SnapReqWebSocketResponse>} - The response.
286
334
  */
287
- request(method: string, path: string, { body, headers }?: {
335
+ request(method: string, path: string, { body, headers, timeoutMs, signal }?: {
288
336
  body?: any;
289
337
  headers?: Record<string, string>;
338
+ timeoutMs?: number;
339
+ signal?: AbortSignal;
290
340
  }): Promise<SnapReqWebSocketResponse>;
291
341
  /**
292
342
  * @param {MessageEvent<any>} event - Event payload.
@@ -304,7 +354,30 @@ export default class SnapReqWebSocketClient {
304
354
  * enabled.
305
355
  * @returns {void}
306
356
  */
307
- onClose: () => void;
357
+ /**
358
+ * Starts the protocol-level liveness heartbeat and applies socket unref, both
359
+ * best-effort: only the Node `ws` implementation exposes `.ping()`/`.on("pong")`
360
+ * and an unref-able `_socket`, so on browser/undici these are no-ops. The
361
+ * heartbeat lets a client notice a peer that silently went away; unref (plus
362
+ * the unref'd timers) ensures neither the socket nor these timers keep the
363
+ * process/event loop alive on their own once nothing else is pending.
364
+ * @returns {void}
365
+ */
366
+ _startSocketKeepalive(): void;
367
+ /**
368
+ * Stops the liveness heartbeat timer. Safe to call repeatedly.
369
+ * @returns {void}
370
+ */
371
+ _stopSocketKeepalive(): void;
372
+ /**
373
+ * Processes one socket's terminal lifecycle exactly once.
374
+ * @param {object} socket - Socket that closed or is being torn down.
375
+ * @param {unknown} [error] - Failure propagated to pending operations.
376
+ * @param {boolean} [allowReconnect] - Whether this close may schedule reconnect.
377
+ * @returns {void}
378
+ */
379
+ _handleSocketClose(socket: object, error?: unknown, allowReconnect?: boolean): void;
380
+ onClose: (event: any) => void;
308
381
  /**
309
382
  * @param {Record<string, any>} payload - Payload data.
310
383
  * @returns {void}
@@ -344,12 +417,7 @@ export default class SnapReqWebSocketClient {
344
417
  _resetSessionReadyState(error?: unknown): void;
345
418
  }
346
419
  /** A response to a request made over the WebSocket transport. */
347
- export class SnapReqWebSocketResponse {
348
- /**
349
- * @param {object} message - The response message.
350
- * @param {(value: any) => any} [deserialize] - Transform applied to the parsed body in `json()`. Defaults to identity.
351
- */
352
- constructor(message: object, deserialize?: (value: any) => any);
420
+ export declare class SnapReqWebSocketResponse {
353
421
  body: any;
354
422
  headers: Record<string, any>;
355
423
  id: string | number;
@@ -357,9 +425,12 @@ export class SnapReqWebSocketResponse {
357
425
  statusMessage: string;
358
426
  type: string;
359
427
  _deserialize: (value: any) => any;
428
+ /**
429
+ * @param {object} message - The response message.
430
+ * @param {(value: any) => any} [deserialize] - Transform applied to the parsed body in `json()`. Defaults to identity.
431
+ */
432
+ constructor(message: object, deserialize?: (value: any) => any);
360
433
  /** @returns {any} - The parsed (and optionally deserialized) JSON body. */
361
434
  json(): any;
362
435
  }
363
- import SnapReqWebSocketConnection from "./websocket-connection.js";
364
- import SnapReqWebSocketChannel from "./websocket-channel.js";
365
436
  //# sourceMappingURL=websocket-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../src/websocket/websocket-client.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../src/websocket/websocket-client.js"],"names":[],"mappings":"AAEA,OAAO,0BAA0B,MAAM,2BAA2B,CAAA;AAClE,OAAO,uBAAuB,MAAM,wBAAwB,CAAA;AAK5D;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,sBAAsB;IA4BvC,kCAAkC;IAC7B,YAAY,EADN,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG;IAE9B,sBAAsB;IACjB,aAAa,EADP,OAAO;IAEb,KAAK;IACV,0CAA0C;IACrC,UAAU,EADJ,OAAO,UAAU,CAAC,SAAS;IAEtC,sBAAsB;IACjB,MAAM,EADA,OAAO;IAElB,4EAA4E;IACvE,oBAAoB,EADd,MAAM;IAEjB,oDAAoD;IAC/C,eAAe,EADT,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI;IAEhD,4BAA4B;IACvB,iBAAiB,EADX,MAAM,GAAG,IAAI;IAIxB,qBAAqB;IAChB,gBAAgB,EADV,MAAM;IAEjB,qBAAqB;IAChB,kBAAkB,EADZ,MAAM;IAEjB,uBAAuB;IAClB,eAAe,EADT,MAAM,EAAE;IAEnB,mDAAmD;IAC9C,cAAc,EADR,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI;IAE1C,GAAG;IAEH,MAAM;IACX,kDAAkD;IAC7C,WAAW,EADL,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAG9C,kCAAkC;IAC7B,SAAS,EADH,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAG9B,sDAAsD;IACjD,YAAY,EADN,GAAG,CAAC,MAAM,EAAE,0BAA0B,CAAC;IAGlD,mDAAmD;IAC9C,qBAAqB,EADf,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAG1C,oBAAoB;IACpB,sBAAsB;IAE3B,+GAA+G;IAC1G,UAAU,EADJ,MAAM,GAAG,IAAI;IAGxB,+FAA+F;IAC1F,eAAe,EADT,OAAO;IAGlB,mGAAmG;IAC9F,aAAa,EADP,OAAO;IAGlB,iGAAiG;IAC5F,iBAAiB,EADX,MAAM,GAAG,IAAI;IAGxB,mCAAmC;IAC9B,oBAAoB,EADd,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAG/B,kCAAkC;IAC7B,oBAAoB,EADd,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI;IAG9B,6BAA6B;IACxB,kBAAkB,EADZ,OAAO,GAAG,IAAI;IAGzB,2LAA2L;IACtL,aAAa,EADP;QAAC,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;QAAC,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,GAAG,SAAS;IAEvL,yFAAyF;IACpF,qBAAqB,EADf,OAAO;IAGlB,uKAAuK;IAClK,eAAe,EADT;QAAC,WAAW,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG;YAAC,MAAM,EAAE,MAAM,IAAI,CAAA;SAAC,CAAA;KAAC,GAAG,SAAS;IAGnK,yDAAyD;IACpD,2BAA2B,EADrB,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG;QAAC,MAAM,EAAE,MAAM,IAAI,CAAA;KAAC;IAGrD,sBAAsB;IACjB,iBAAiB,EADX,OAAO;IAGlB,uFAAuF;IAClF,eAAe,EADT,MAAM;IAGjB,6FAA6F;IACxF,cAAc,EADR,OAAO,CAAC,MAAM,CAAC;IAyPiB,MAAM;IA2C5C,cAAc;IAhZrB,qHAAqH;IACrH,eAAe,EADJ,GAAG,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,wBAAwB,KAAK,IAAI,CAAA;KAAC,CAAC,CAClG;IACf,+FAA+F;IAC/F,oBAAoB,EADT,GAAG,CAAC,MAAM,EAAE;QAAC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,IAAI,CAAA;KAAC,CAAC,CACvE;IACpB,oJAAoJ;IACpJ,SAAS,EADE,GAAG,CAAC,MAAM,EAAE;QAAC,SAAS,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,CAAC,CACvI;IAET;;;;;;;;;;;;OAYG;IACH,YAAY,EAAC,aAAoB,EAAE,KAAa,EAAE,WAAW,EAAE,mBAAuB,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,KAAa,EAAE,GAAG,EAAE,uBAAuB,EAAC,GAXhL;QAAqB,GAAG,EAAhB,MAAM,CACd;QAAuB,aAAa,AAApC,CACA,EADQ,OAAO,CACf;QAAuB,KAAK,AAA5B,CACA,EADQ,OAAO,CACf;QAA4J,cAAc,AAA1K,CACA,EADQ;YAAC,WAAW,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;YAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG;gBAAC,MAAM,EAAE,MAAM,IAAI,CAAA;aAAC,CAAA;SAAC,CACpJ;QAAwB,eAAe,AAAvC,CACA,EADQ,MAAM,EAAE,CAChB;QAAgL,YAAY,AAA5L,CACA,EADQ;YAAC,GAAG,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;YAAC,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAAC,KAAK,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;SAAC,CACxK;QAAmC,WAAW,AAA9C,CACA,EADQ,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,CAC3B;QAA2C,uBAAuB,AAAlE,CACA,EADQ,OAAO,UAAU,CAAC,SAAS,CACnC;QAAsB,mBAAmB,AAAzC,CACA,EADQ,MAAM,CACd;QAAuB,KAAK,AAA5B,CACF,EADU,OAAO,CACjB;KAC4M,EA0F5M;IAED,uDAAuD;IACvD,MAAM,IADQ,OAAO,CAGpB;IAED,0EAA0E;IAC1E,cAAc,IADA,OAAO,CAGpB;IAED;;;;;;OAMG;IACH,cAAc,CAAC,cAAc,EAJlB,MAIkB,EAAE,OAAO,AAHnC,CACA,EADQ;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;KAGtL,GAF9B,0BAA0B,CA6BtC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,YAAY,EAHnB,MAGmB,GAFjB,IAAI,CAIhB;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,WAAW,EAJjB,MAIiB,EAAE,OAAO,AAHlC,CACA,EADQ;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;KAGrL,GAF7B,uBAAuB,CAsBnC;IAED;;;OAGG;IACH,0BAA0B,CAAC,cAAc,EAH9B,MAG8B,GAF5B,IAAI,CAIhB;IAED;;;OAGG;IACH,qBAAqB,CAAC,YAAY,EAHvB,uBAGuB,GAFrB,IAAI,CA6BhB;IAED,sBAAsB;IACtB,gCAAgC,IADlB,IAAI,CAKjB;IAED,wEAAwE;IAClE,SAAS,IADD,OAAO,CAAC,OAAO,CAAC,CAU7B;IAED,8EAA8E;IACxE,oBAAoB,IADZ,OAAO,CAAC,OAAO,CAAC,CAW7B;IAED,sBAAsB;IACtB,iCAAiC,IADnB,IAAI,CAsBjB;IAED,sBAAsB;IACtB,mCAAmC,IADrB,IAAI,CAWjB;IAED;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAJJ,MAII,EAAE,KAAK,EAHX,GAGW,GAFT,IAAI,CAYhB;IAED,yDAAyD;IACzD,WAAW,IADG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAGhC;IAED;;;;;OAKG;IACG,OAAO,CAAC,EAAC,aAAkC,EAAE,aAAoB,EAAE,mBAA0B,EAAE,SAAS,EAAE,MAAM,EAAC,AAHpH,CACA,EADQ;QAAC,aAAa,CAAC,EAAE,OAAO,CAAC;QAAC,aAAa,CAAC,EAAE,OAAO,CAAC;QAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAGT,GAF/G,OAAO,CAAC,IAAI,CAAC,CA8BzB;IAED;;;;;;OAMG;IACG,QAAQ,CAAC,EAAC,aAAkC,EAAE,aAAoB,EAAE,mBAA0B,EAAC,AANlG,CAIA,EAHA;QAA0B,aAAa,AAAvC,CACA,EADQ,OAAO,CACf;QAA0B,aAAa,AAAvC,CACA,EADQ,OAAO,CACf;QAA0B,mBAAmB,AAA7C,CACA,EADQ,OAAO,CACf;KAEuG,GAF7F,OAAO,CAAC,IAAI,CAAC,CAgGzB;IAED;;;OAGG;IACG,KAAK,IAFE,OAAO,CAAC,IAAI,CAAC,CA0BzB;IAED;;;OAGG;IACG,0BAA0B,IAFnB,OAAO,CAAC,IAAI,CAAC,CAIzB;IAED;;;;OAIG;IACG,cAAc,IAFP,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;;;;OAMG;IACG,IAAI,CAAC,IAAI,EALJ,MAKI,EAAE,IAAI,AAJlB,CACA,EADQ,GAIU,EAAE,OAAO,AAH3B,CACA,EADQ;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAGnD,GAFtB,OAAO,CAAC,wBAAwB,CAAC,CAI7C;IAED;;;;;OAKG;IACG,GAAG,CAAC,IAAI,EAJH,MAIG,EAAE,OAAO,AAHpB,CACA,EADQ;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAG1D,GAFf,OAAO,CAAC,wBAAwB,CAAC,CAI7C;IAED;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAJC,MAID,EAAE,QAAQ,EAHT,CAAC,OAAO,EAAE,GAAG,KAAK,IAGT,GAFP,MAAM,IAAI,CAItB;IAED;;;OAGG;IACH,KAAK,IAFQ;QAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAC,CAQtF;IAED;;;;;;OAMG;IACH,SAAS,CAAC,OAAO,EALN,MAKM,EAAE,OAAO,EAJf;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAI9E,EAAE,QAAQ,EAHzB,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAGxB,GAFvB,CAAC,MAAM,IAAI,CAAC,GAAG;QAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,CA8DjD;IAED;;;;;;OAMG;IACG,gBAAgB,CAAC,OAAO,EALnB,MAKmB,EAAE,OAAO,EAJ5B;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAIjE,EAAE,QAAQ,EAHtC,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAGX,GAFpC,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG;QAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,CAAC,CAQ1D;IAED;;;;;;;;;OASG;IACG,OAAO,CAAC,MAAM,EATT,MASS,EAAE,IAAI,EARf,MAQe,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAC,AAP3D,CAKA,EAJA;QAAsB,IAAI,AAA1B,CACA,EADQ,GAAG,CACX;QAAyC,OAAO,AAAhD,CACA,EADQ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAC9B;QAAyB,SAAS,AAAlC,CACA,EADQ,MAAM,CACd;QAA8B,MAAM,AAApC,CACA,EADQ,WAAW,CACnB;KAEgE,GAFtD,OAAO,CAAC,wBAAwB,CAAC,CAyB7C;IAED;;;OAGG;IACH,SAAS,UAHE,YAAY,CAAC,GAAG,CAAC,KACf,IAAI,CAyJhB;IAED;;;;OAIG;IACH,gBAAgB,CAAC,OAAO,EAJb,MAIa,EAAE,MAAM,EAHrB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAGD,GAFnB,MAAM,CAIlB;IAED;;;;OAIG;IACH;;;;;;;;OAQG;IACH,qBAAqB,IAFR,IAAI,CA2ChB;IAED;;;OAGG;IACH,oBAAoB,IAFP,IAAI,CAOhB;IAED;;;;;;OAMG;IACH,kBAAkB,CAAC,MAAM,EALd,MAKc,EAAE,KAAK,AAJ7B,CACA,EADQ,OAIqB,EAAE,cAAc,AAH7C,CACA,EADQ,OAG0D,GAFxD,IAAI,CAsDhB;IAED,OAAO,uBAIN;IAED;;;OAGG;IACH,YAAY,CAAC,OAAO,EAHT,MAAM,CAAC,MAAM,EAAE,GAAG,CAGT,GAFP,IAAI,CAWhB;IAED,sBAAsB;IACtB,uBAAuB,IADT,IAAI,CAMjB;IAED,sBAAsB;IACtB,kBAAkB,IADJ,IAAI,CAYjB;IAED,+BAA+B;IACzB,iBAAiB,IADT,OAAO,CAAC,IAAI,CAAC,CA2B1B;IAED;;;OAGG;IACH,2BAA2B,IAFd,IAAI,CAchB;IAED;;;OAGG;IACH,MAAM,CAAC,GAAG,IAAI,EAHC,GAAG,EAGJ,GAFD,IAAI,CAMhB;IAED;;;OAGG;IACH,iBAAiB,CAAC,SAAS,EAHhB,MAGgB,GAFd,IAAI,CAchB;IAED,sBAAsB;IACtB,wBAAwB,IADV,IAAI,CAajB;IAED,qEAAqE;IACrE,oBAAoB,IADN,OAAO,CAAC,IAAI,CAAC,CAkB1B;IAED,sBAAsB;IACtB,iBAAiB,IADH,IAAI,CASjB;IAED;;;OAGG;IACH,uBAAuB,CAAC,KAAK,AAH1B,CACA,EADQ,OAGuE,GAFrE,IAAI,CAShB;CACF;AAED,iEAAiE;AACjE,qBAAa,wBAAwB;IAQ5B,IAAI;IACJ,OAAO;IACP,EAAE;IACF,UAAU;IACV,aAAa;IACb,IAAI;IACJ,YAAY,UAXA,GAAG,KAAK,GAAG;IAF9B;;;OAGG;IACH,YAAY,OAAO,EAHR,MAGQ,EAAE,WAAW,AAF7B,CACF,EADU,CAAC,KAAK,EAAE,GAAG,KAAK,GAEK,EAU/B;IAED,2EAA2E;IAC3E,IAAI,IADU,GAAG,CAOhB;CACF"}