@supabase/realtime-js 2.12.2 → 2.14.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 (40) hide show
  1. package/dist/main/RealtimeChannel.d.ts.map +1 -1
  2. package/dist/main/RealtimeChannel.js +10 -1
  3. package/dist/main/RealtimeChannel.js.map +1 -1
  4. package/dist/main/RealtimeClient.d.ts +13 -2
  5. package/dist/main/RealtimeClient.d.ts.map +1 -1
  6. package/dist/main/RealtimeClient.js +311 -115
  7. package/dist/main/RealtimeClient.js.map +1 -1
  8. package/dist/main/index.d.ts +2 -1
  9. package/dist/main/index.d.ts.map +1 -1
  10. package/dist/main/index.js +3 -1
  11. package/dist/main/index.js.map +1 -1
  12. package/dist/main/lib/version.d.ts +1 -1
  13. package/dist/main/lib/version.js +1 -1
  14. package/dist/main/lib/websocket-factory.d.ts +41 -0
  15. package/dist/main/lib/websocket-factory.d.ts.map +1 -0
  16. package/dist/main/lib/websocket-factory.js +132 -0
  17. package/dist/main/lib/websocket-factory.js.map +1 -0
  18. package/dist/module/RealtimeChannel.d.ts.map +1 -1
  19. package/dist/module/RealtimeChannel.js +10 -1
  20. package/dist/module/RealtimeChannel.js.map +1 -1
  21. package/dist/module/RealtimeClient.d.ts +13 -2
  22. package/dist/module/RealtimeClient.d.ts.map +1 -1
  23. package/dist/module/RealtimeClient.js +312 -115
  24. package/dist/module/RealtimeClient.js.map +1 -1
  25. package/dist/module/index.d.ts +2 -1
  26. package/dist/module/index.d.ts.map +1 -1
  27. package/dist/module/index.js +2 -1
  28. package/dist/module/index.js.map +1 -1
  29. package/dist/module/lib/version.d.ts +1 -1
  30. package/dist/module/lib/version.js +1 -1
  31. package/dist/module/lib/websocket-factory.d.ts +41 -0
  32. package/dist/module/lib/websocket-factory.d.ts.map +1 -0
  33. package/dist/module/lib/websocket-factory.js +128 -0
  34. package/dist/module/lib/websocket-factory.js.map +1 -0
  35. package/package.json +3 -4
  36. package/src/RealtimeChannel.ts +12 -1
  37. package/src/RealtimeClient.ts +358 -132
  38. package/src/index.ts +3 -0
  39. package/src/lib/version.ts +1 -1
  40. package/src/lib/websocket-factory.ts +189 -0
@@ -36,13 +36,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- const isows_1 = require("isows");
39
+ const websocket_factory_1 = __importDefault(require("./lib/websocket-factory"));
40
40
  const constants_1 = require("./lib/constants");
41
41
  const serializer_1 = __importDefault(require("./lib/serializer"));
42
42
  const timer_1 = __importDefault(require("./lib/timer"));
43
43
  const transformers_1 = require("./lib/transformers");
44
44
  const RealtimeChannel_1 = __importDefault(require("./RealtimeChannel"));
45
45
  const noop = () => { };
46
+ // Connection-related constants
47
+ const CONNECTION_TIMEOUTS = {
48
+ HEARTBEAT_INTERVAL: 25000,
49
+ RECONNECT_DELAY: 10,
50
+ HEARTBEAT_TIMEOUT_FALLBACK: 100,
51
+ };
52
+ const RECONNECT_INTERVALS = [1000, 2000, 5000, 10000];
53
+ const DEFAULT_RECONNECT_FALLBACK = 10000;
46
54
  const WORKER_SCRIPT = `
47
55
  addEventListener("message", (e) => {
48
56
  if (e.data.event === "start") {
@@ -79,11 +87,13 @@ class RealtimeClient {
79
87
  this.headers = {};
80
88
  this.params = {};
81
89
  this.timeout = constants_1.DEFAULT_TIMEOUT;
82
- this.heartbeatIntervalMs = 25000;
90
+ this.transport = null;
91
+ this.heartbeatIntervalMs = CONNECTION_TIMEOUTS.HEARTBEAT_INTERVAL;
83
92
  this.heartbeatTimer = undefined;
84
93
  this.pendingHeartbeatRef = null;
85
94
  this.heartbeatCallback = noop;
86
95
  this.ref = 0;
96
+ this.reconnectTimer = null;
87
97
  this.logger = noop;
88
98
  this.conn = null;
89
99
  this.sendBuffer = [];
@@ -95,6 +105,9 @@ class RealtimeClient {
95
105
  message: [],
96
106
  };
97
107
  this.accessToken = null;
108
+ this._connectionState = 'disconnected';
109
+ this._wasManualDisconnect = false;
110
+ this._authPromise = null;
98
111
  /**
99
112
  * Use either custom fetch, if provided, or default fetch to make HTTP requests
100
113
  *
@@ -106,86 +119,57 @@ class RealtimeClient {
106
119
  _fetch = customFetch;
107
120
  }
108
121
  else if (typeof fetch === 'undefined') {
109
- _fetch = (...args) => Promise.resolve(`${'@supabase/node-fetch'}`).then(s => __importStar(require(s))).then(({ default: fetch }) => fetch(...args));
122
+ // Node.js environment without native fetch
123
+ _fetch = (...args) => Promise.resolve(`${'@supabase/node-fetch'}`).then(s => __importStar(require(s))).then(({ default: fetch }) => fetch(...args))
124
+ .catch((error) => {
125
+ throw new Error(`Failed to load @supabase/node-fetch: ${error.message}. ` +
126
+ `This is required for HTTP requests in Node.js environments without native fetch.`);
127
+ });
110
128
  }
111
129
  else {
112
130
  _fetch = fetch;
113
131
  }
114
132
  return (...args) => _fetch(...args);
115
133
  };
134
+ // Validate required parameters
135
+ if (!((_a = options === null || options === void 0 ? void 0 : options.params) === null || _a === void 0 ? void 0 : _a.apikey)) {
136
+ throw new Error('API key is required to connect to Realtime');
137
+ }
138
+ this.apiKey = options.params.apikey;
139
+ // Initialize endpoint URLs
116
140
  this.endPoint = `${endPoint}/${constants_1.TRANSPORTS.websocket}`;
117
141
  this.httpEndpoint = (0, transformers_1.httpEndpointURL)(endPoint);
118
- if (options === null || options === void 0 ? void 0 : options.transport) {
119
- this.transport = options.transport;
120
- }
121
- else {
122
- this.transport = null;
123
- }
124
- if (options === null || options === void 0 ? void 0 : options.params)
125
- this.params = options.params;
126
- if (options === null || options === void 0 ? void 0 : options.timeout)
127
- this.timeout = options.timeout;
128
- if (options === null || options === void 0 ? void 0 : options.logger)
129
- this.logger = options.logger;
130
- if ((options === null || options === void 0 ? void 0 : options.logLevel) || (options === null || options === void 0 ? void 0 : options.log_level)) {
131
- this.logLevel = options.logLevel || options.log_level;
132
- this.params = Object.assign(Object.assign({}, this.params), { log_level: this.logLevel });
133
- }
134
- if (options === null || options === void 0 ? void 0 : options.heartbeatIntervalMs)
135
- this.heartbeatIntervalMs = options.heartbeatIntervalMs;
136
- const accessTokenValue = (_a = options === null || options === void 0 ? void 0 : options.params) === null || _a === void 0 ? void 0 : _a.apikey;
137
- if (accessTokenValue) {
138
- this.accessTokenValue = accessTokenValue;
139
- this.apiKey = accessTokenValue;
140
- }
141
- this.reconnectAfterMs = (options === null || options === void 0 ? void 0 : options.reconnectAfterMs)
142
- ? options.reconnectAfterMs
143
- : (tries) => {
144
- return [1000, 2000, 5000, 10000][tries - 1] || 10000;
145
- };
146
- this.encode = (options === null || options === void 0 ? void 0 : options.encode)
147
- ? options.encode
148
- : (payload, callback) => {
149
- return callback(JSON.stringify(payload));
150
- };
151
- this.decode = (options === null || options === void 0 ? void 0 : options.decode)
152
- ? options.decode
153
- : this.serializer.decode.bind(this.serializer);
154
- this.reconnectTimer = new timer_1.default(async () => {
155
- this.disconnect();
156
- this.connect();
157
- }, this.reconnectAfterMs);
142
+ this._initializeOptions(options);
143
+ this._setupReconnectionTimer();
158
144
  this.fetch = this._resolveFetch(options === null || options === void 0 ? void 0 : options.fetch);
159
- if (options === null || options === void 0 ? void 0 : options.worker) {
160
- if (typeof window !== 'undefined' && !window.Worker) {
161
- throw new Error('Web Worker is not supported');
162
- }
163
- this.worker = (options === null || options === void 0 ? void 0 : options.worker) || false;
164
- this.workerUrl = options === null || options === void 0 ? void 0 : options.workerUrl;
165
- }
166
- this.accessToken = (options === null || options === void 0 ? void 0 : options.accessToken) || null;
167
145
  }
168
146
  /**
169
147
  * Connects the socket, unless already connected.
170
148
  */
171
149
  connect() {
172
- // Set the token on connect
173
- setTimeout(() => {
174
- this.setAuth().catch((e) => {
175
- this.log('error', 'error setting auth', e);
176
- });
177
- }, 0);
178
- if (this.conn) {
150
+ // Skip if already connecting, disconnecting, or connected
151
+ if (this.isConnecting() ||
152
+ this.isDisconnecting() ||
153
+ (this.conn !== null && this.isConnected())) {
179
154
  return;
180
155
  }
156
+ this._setConnectionState('connecting');
157
+ this._setAuthSafely('connect');
158
+ // Establish WebSocket connection
181
159
  if (!this.transport) {
182
- this.transport = isows_1.WebSocket;
160
+ try {
161
+ this.conn = websocket_factory_1.default.createWebSocket(this.endpointURL());
162
+ }
163
+ catch (error) {
164
+ this._setConnectionState('disconnected');
165
+ throw new Error(`WebSocket not available: ${error.message}`);
166
+ }
183
167
  }
184
- if (!this.transport) {
185
- throw new Error('No transport provided');
168
+ else {
169
+ // Use custom transport if provided
170
+ this.conn = new this.transport(this.endpointURL());
186
171
  }
187
- this.conn = new this.transport(this.endpointURL());
188
- this.setupConnection();
172
+ this._setupConnectionHandlers();
189
173
  }
190
174
  /**
191
175
  * Returns the URL of the websocket.
@@ -201,19 +185,30 @@ class RealtimeClient {
201
185
  * @param reason A custom reason for the disconnect.
202
186
  */
203
187
  disconnect(code, reason) {
188
+ if (this.isDisconnecting()) {
189
+ return;
190
+ }
191
+ this._setConnectionState('disconnecting', true);
204
192
  if (this.conn) {
205
- this.conn.onclose = function () { }; // noop
193
+ // Setup fallback timer to prevent hanging in disconnecting state
194
+ const fallbackTimer = setTimeout(() => {
195
+ this._setConnectionState('disconnected');
196
+ }, 100);
197
+ this.conn.onclose = () => {
198
+ clearTimeout(fallbackTimer);
199
+ this._setConnectionState('disconnected');
200
+ };
201
+ // Close the WebSocket connection
206
202
  if (code) {
207
203
  this.conn.close(code, reason !== null && reason !== void 0 ? reason : '');
208
204
  }
209
205
  else {
210
206
  this.conn.close();
211
207
  }
212
- this.conn = null;
213
- // remove open handles
214
- this.heartbeatTimer && clearInterval(this.heartbeatTimer);
215
- this.reconnectTimer.reset();
216
- this.channels.forEach((channel) => channel.teardown());
208
+ this._teardownConnection();
209
+ }
210
+ else {
211
+ this._setConnectionState('disconnected');
217
212
  }
218
213
  }
219
214
  /**
@@ -271,6 +266,18 @@ class RealtimeClient {
271
266
  isConnected() {
272
267
  return this.connectionState() === constants_1.CONNECTION_STATE.Open;
273
268
  }
269
+ /**
270
+ * Returns `true` if the connection is currently connecting.
271
+ */
272
+ isConnecting() {
273
+ return this._connectionState === 'connecting';
274
+ }
275
+ /**
276
+ * Returns `true` if the connection is currently disconnecting.
277
+ */
278
+ isDisconnecting() {
279
+ return this._connectionState === 'disconnecting';
280
+ }
274
281
  channel(topic, params = { config: {} }) {
275
282
  const realtimeTopic = `realtime:${topic}`;
276
283
  const exists = this.getChannels().find((c) => c.topic === realtimeTopic);
@@ -314,23 +321,12 @@ class RealtimeClient {
314
321
  * @param token A JWT string to override the token set on the client.
315
322
  */
316
323
  async setAuth(token = null) {
317
- let tokenToSend = token ||
318
- (this.accessToken && (await this.accessToken())) ||
319
- this.accessTokenValue;
320
- if (this.accessTokenValue != tokenToSend) {
321
- this.accessTokenValue = tokenToSend;
322
- this.channels.forEach((channel) => {
323
- const payload = {
324
- access_token: tokenToSend,
325
- version: constants_1.DEFAULT_VERSION,
326
- };
327
- tokenToSend && channel.updateJoinPayload(payload);
328
- if (channel.joinedOnce && channel._isJoined()) {
329
- channel._push(constants_1.CHANNEL_EVENTS.access_token, {
330
- access_token: tokenToSend,
331
- });
332
- }
333
- });
324
+ this._authPromise = this._performAuth(token);
325
+ try {
326
+ await this._authPromise;
327
+ }
328
+ finally {
329
+ this._authPromise = null;
334
330
  }
335
331
  }
336
332
  /**
@@ -342,13 +338,23 @@ class RealtimeClient {
342
338
  this.heartbeatCallback('disconnected');
343
339
  return;
344
340
  }
341
+ // Handle heartbeat timeout and force reconnection if needed
345
342
  if (this.pendingHeartbeatRef) {
346
343
  this.pendingHeartbeatRef = null;
347
344
  this.log('transport', 'heartbeat timeout. Attempting to re-establish connection');
348
345
  this.heartbeatCallback('timeout');
349
- (_a = this.conn) === null || _a === void 0 ? void 0 : _a.close(constants_1.WS_CLOSE_NORMAL, 'hearbeat timeout');
346
+ // Force reconnection after heartbeat timeout
347
+ this._wasManualDisconnect = false;
348
+ (_a = this.conn) === null || _a === void 0 ? void 0 : _a.close(constants_1.WS_CLOSE_NORMAL, 'heartbeat timeout');
349
+ setTimeout(() => {
350
+ var _a;
351
+ if (!this.isConnected()) {
352
+ (_a = this.reconnectTimer) === null || _a === void 0 ? void 0 : _a.scheduleTimeout();
353
+ }
354
+ }, CONNECTION_TIMEOUTS.HEARTBEAT_TIMEOUT_FALLBACK);
350
355
  return;
351
356
  }
357
+ // Send heartbeat message to server
352
358
  this.pendingHeartbeatRef = this._makeRef();
353
359
  this.push({
354
360
  topic: 'phoenix',
@@ -357,7 +363,7 @@ class RealtimeClient {
357
363
  ref: this.pendingHeartbeatRef,
358
364
  });
359
365
  this.heartbeatCallback('sent');
360
- await this.setAuth();
366
+ this._setAuthSafely('heartbeat');
361
367
  }
362
368
  onHeartbeat(callback) {
363
369
  this.heartbeatCallback = callback;
@@ -408,42 +414,89 @@ class RealtimeClient {
408
414
  _remove(channel) {
409
415
  this.channels = this.channels.filter((c) => c.topic !== channel.topic);
410
416
  }
411
- /**
412
- * Sets up connection handlers.
413
- *
414
- * @internal
415
- */
416
- setupConnection() {
417
- if (this.conn) {
418
- this.conn.binaryType = 'arraybuffer';
419
- this.conn.onopen = () => this._onConnOpen();
420
- this.conn.onerror = (error) => this._onConnError(error);
421
- this.conn.onmessage = (event) => this._onConnMessage(event);
422
- this.conn.onclose = (event) => this._onConnClose(event);
423
- }
424
- }
425
417
  /** @internal */
426
418
  _onConnMessage(rawMessage) {
427
419
  this.decode(rawMessage.data, (msg) => {
428
- let { topic, event, payload, ref } = msg;
429
- if (topic === 'phoenix' && event === 'phx_reply') {
430
- this.heartbeatCallback(msg.payload.status == 'ok' ? 'ok' : 'error');
420
+ // Handle heartbeat responses
421
+ if (msg.topic === 'phoenix' && msg.event === 'phx_reply') {
422
+ this.heartbeatCallback(msg.payload.status === 'ok' ? 'ok' : 'error');
431
423
  }
432
- if (ref && ref === this.pendingHeartbeatRef) {
424
+ // Handle pending heartbeat reference cleanup
425
+ if (msg.ref && msg.ref === this.pendingHeartbeatRef) {
433
426
  this.pendingHeartbeatRef = null;
434
427
  }
435
- this.log('receive', `${payload.status || ''} ${topic} ${event} ${(ref && '(' + ref + ')') || ''}`, payload);
436
- Array.from(this.channels)
428
+ // Log incoming message
429
+ const { topic, event, payload, ref } = msg;
430
+ const refString = ref ? `(${ref})` : '';
431
+ const status = payload.status || '';
432
+ this.log('receive', `${status} ${topic} ${event} ${refString}`.trim(), payload);
433
+ // Route message to appropriate channels
434
+ this.channels
437
435
  .filter((channel) => channel._isMember(topic))
438
436
  .forEach((channel) => channel._trigger(event, payload, ref));
439
- this.stateChangeCallbacks.message.forEach((callback) => callback(msg));
437
+ this._triggerStateCallbacks('message', msg);
440
438
  });
441
439
  }
440
+ /**
441
+ * Clear specific timer
442
+ * @internal
443
+ */
444
+ _clearTimer(timer) {
445
+ var _a;
446
+ if (timer === 'heartbeat' && this.heartbeatTimer) {
447
+ clearInterval(this.heartbeatTimer);
448
+ this.heartbeatTimer = undefined;
449
+ }
450
+ else if (timer === 'reconnect') {
451
+ (_a = this.reconnectTimer) === null || _a === void 0 ? void 0 : _a.reset();
452
+ }
453
+ }
454
+ /**
455
+ * Clear all timers
456
+ * @internal
457
+ */
458
+ _clearAllTimers() {
459
+ this._clearTimer('heartbeat');
460
+ this._clearTimer('reconnect');
461
+ }
462
+ /**
463
+ * Setup connection handlers for WebSocket events
464
+ * @internal
465
+ */
466
+ _setupConnectionHandlers() {
467
+ if (!this.conn)
468
+ return;
469
+ // Set binary type if supported (browsers and most WebSocket implementations)
470
+ if ('binaryType' in this.conn) {
471
+ ;
472
+ this.conn.binaryType = 'arraybuffer';
473
+ }
474
+ this.conn.onopen = () => this._onConnOpen();
475
+ this.conn.onerror = (error) => this._onConnError(error);
476
+ this.conn.onmessage = (event) => this._onConnMessage(event);
477
+ this.conn.onclose = (event) => this._onConnClose(event);
478
+ }
479
+ /**
480
+ * Teardown connection and cleanup resources
481
+ * @internal
482
+ */
483
+ _teardownConnection() {
484
+ if (this.conn) {
485
+ this.conn.onopen = null;
486
+ this.conn.onerror = null;
487
+ this.conn.onmessage = null;
488
+ this.conn.onclose = null;
489
+ this.conn = null;
490
+ }
491
+ this._clearAllTimers();
492
+ this.channels.forEach((channel) => channel.teardown());
493
+ }
442
494
  /** @internal */
443
495
  _onConnOpen() {
496
+ this._setConnectionState('connected');
444
497
  this.log('transport', `connected to ${this.endpointURL()}`);
445
498
  this.flushSendBuffer();
446
- this.reconnectTimer.reset();
499
+ this._clearTimer('reconnect');
447
500
  if (!this.worker) {
448
501
  this._startHeartbeat();
449
502
  }
@@ -452,7 +505,7 @@ class RealtimeClient {
452
505
  this._startWorkerHeartbeat();
453
506
  }
454
507
  }
455
- this.stateChangeCallbacks.open.forEach((callback) => callback());
508
+ this._triggerStateCallbacks('open');
456
509
  }
457
510
  /** @internal */
458
511
  _startHeartbeat() {
@@ -485,17 +538,23 @@ class RealtimeClient {
485
538
  }
486
539
  /** @internal */
487
540
  _onConnClose(event) {
541
+ var _a;
542
+ this._setConnectionState('disconnected');
488
543
  this.log('transport', 'close', event);
489
544
  this._triggerChanError();
490
- this.heartbeatTimer && clearInterval(this.heartbeatTimer);
491
- this.reconnectTimer.scheduleTimeout();
492
- this.stateChangeCallbacks.close.forEach((callback) => callback(event));
545
+ this._clearTimer('heartbeat');
546
+ // Only schedule reconnection if it wasn't a manual disconnect
547
+ if (!this._wasManualDisconnect) {
548
+ (_a = this.reconnectTimer) === null || _a === void 0 ? void 0 : _a.scheduleTimeout();
549
+ }
550
+ this._triggerStateCallbacks('close', event);
493
551
  }
494
552
  /** @internal */
495
553
  _onConnError(error) {
554
+ this._setConnectionState('disconnected');
496
555
  this.log('transport', `${error}`);
497
556
  this._triggerChanError();
498
- this.stateChangeCallbacks.error.forEach((callback) => callback(error));
557
+ this._triggerStateCallbacks('error', error);
499
558
  }
500
559
  /** @internal */
501
560
  _triggerChanError() {
@@ -521,6 +580,143 @@ class RealtimeClient {
521
580
  }
522
581
  return result_url;
523
582
  }
583
+ /**
584
+ * Set connection state with proper state management
585
+ * @internal
586
+ */
587
+ _setConnectionState(state, manual = false) {
588
+ this._connectionState = state;
589
+ if (state === 'connecting') {
590
+ this._wasManualDisconnect = false;
591
+ }
592
+ else if (state === 'disconnecting') {
593
+ this._wasManualDisconnect = manual;
594
+ }
595
+ }
596
+ /**
597
+ * Perform the actual auth operation
598
+ * @internal
599
+ */
600
+ async _performAuth(token = null) {
601
+ let tokenToSend;
602
+ if (token) {
603
+ tokenToSend = token;
604
+ }
605
+ else if (this.accessToken) {
606
+ // Always call the accessToken callback to get fresh token
607
+ tokenToSend = await this.accessToken();
608
+ }
609
+ else {
610
+ tokenToSend = this.accessTokenValue;
611
+ }
612
+ if (this.accessTokenValue != tokenToSend) {
613
+ this.accessTokenValue = tokenToSend;
614
+ this.channels.forEach((channel) => {
615
+ const payload = {
616
+ access_token: tokenToSend,
617
+ version: constants_1.DEFAULT_VERSION,
618
+ };
619
+ tokenToSend && channel.updateJoinPayload(payload);
620
+ if (channel.joinedOnce && channel._isJoined()) {
621
+ channel._push(constants_1.CHANNEL_EVENTS.access_token, {
622
+ access_token: tokenToSend,
623
+ });
624
+ }
625
+ });
626
+ }
627
+ }
628
+ /**
629
+ * Wait for any in-flight auth operations to complete
630
+ * @internal
631
+ */
632
+ async _waitForAuthIfNeeded() {
633
+ if (this._authPromise) {
634
+ await this._authPromise;
635
+ }
636
+ }
637
+ /**
638
+ * Safely call setAuth with standardized error handling
639
+ * @internal
640
+ */
641
+ _setAuthSafely(context = 'general') {
642
+ this.setAuth().catch((e) => {
643
+ this.log('error', `error setting auth in ${context}`, e);
644
+ });
645
+ }
646
+ /**
647
+ * Trigger state change callbacks with proper error handling
648
+ * @internal
649
+ */
650
+ _triggerStateCallbacks(event, data) {
651
+ try {
652
+ this.stateChangeCallbacks[event].forEach((callback) => {
653
+ try {
654
+ callback(data);
655
+ }
656
+ catch (e) {
657
+ this.log('error', `error in ${event} callback`, e);
658
+ }
659
+ });
660
+ }
661
+ catch (e) {
662
+ this.log('error', `error triggering ${event} callbacks`, e);
663
+ }
664
+ }
665
+ /**
666
+ * Setup reconnection timer with proper configuration
667
+ * @internal
668
+ */
669
+ _setupReconnectionTimer() {
670
+ this.reconnectTimer = new timer_1.default(async () => {
671
+ setTimeout(async () => {
672
+ await this._waitForAuthIfNeeded();
673
+ if (!this.isConnected()) {
674
+ this.connect();
675
+ }
676
+ }, CONNECTION_TIMEOUTS.RECONNECT_DELAY);
677
+ }, this.reconnectAfterMs);
678
+ }
679
+ /**
680
+ * Initialize client options with defaults
681
+ * @internal
682
+ */
683
+ _initializeOptions(options) {
684
+ var _a, _b, _c, _d, _e, _f, _g, _h;
685
+ // Set defaults
686
+ this.transport = (_a = options === null || options === void 0 ? void 0 : options.transport) !== null && _a !== void 0 ? _a : null;
687
+ this.timeout = (_b = options === null || options === void 0 ? void 0 : options.timeout) !== null && _b !== void 0 ? _b : constants_1.DEFAULT_TIMEOUT;
688
+ this.heartbeatIntervalMs =
689
+ (_c = options === null || options === void 0 ? void 0 : options.heartbeatIntervalMs) !== null && _c !== void 0 ? _c : CONNECTION_TIMEOUTS.HEARTBEAT_INTERVAL;
690
+ this.worker = (_d = options === null || options === void 0 ? void 0 : options.worker) !== null && _d !== void 0 ? _d : false;
691
+ this.accessToken = (_e = options === null || options === void 0 ? void 0 : options.accessToken) !== null && _e !== void 0 ? _e : null;
692
+ // Handle special cases
693
+ if (options === null || options === void 0 ? void 0 : options.params)
694
+ this.params = options.params;
695
+ if (options === null || options === void 0 ? void 0 : options.logger)
696
+ this.logger = options.logger;
697
+ if ((options === null || options === void 0 ? void 0 : options.logLevel) || (options === null || options === void 0 ? void 0 : options.log_level)) {
698
+ this.logLevel = options.logLevel || options.log_level;
699
+ this.params = Object.assign(Object.assign({}, this.params), { log_level: this.logLevel });
700
+ }
701
+ // Set up functions with defaults
702
+ this.reconnectAfterMs =
703
+ (_f = options === null || options === void 0 ? void 0 : options.reconnectAfterMs) !== null && _f !== void 0 ? _f : ((tries) => {
704
+ return RECONNECT_INTERVALS[tries - 1] || DEFAULT_RECONNECT_FALLBACK;
705
+ });
706
+ this.encode =
707
+ (_g = options === null || options === void 0 ? void 0 : options.encode) !== null && _g !== void 0 ? _g : ((payload, callback) => {
708
+ return callback(JSON.stringify(payload));
709
+ });
710
+ this.decode =
711
+ (_h = options === null || options === void 0 ? void 0 : options.decode) !== null && _h !== void 0 ? _h : this.serializer.decode.bind(this.serializer);
712
+ // Handle worker setup
713
+ if (this.worker) {
714
+ if (typeof window !== 'undefined' && !window.Worker) {
715
+ throw new Error('Web Worker is not supported');
716
+ }
717
+ this.workerUrl = options === null || options === void 0 ? void 0 : options.workerUrl;
718
+ }
719
+ }
524
720
  }
525
721
  exports.default = RealtimeClient;
526
722
  //# sourceMappingURL=RealtimeClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RealtimeClient.js","sourceRoot":"","sources":["../../src/RealtimeClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RealtimeClient.js","sourceRoot":"","sources":["../../src/RealtimeClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import RealtimeClient, { RealtimeClientOptions, RealtimeMessage, RealtimeRemoveChannelResponse } from './RealtimeClient';
2
2
  import RealtimeChannel, { RealtimeChannelOptions, RealtimeChannelSendResponse, RealtimePostgresChangesFilter, RealtimePostgresChangesPayload, RealtimePostgresInsertPayload, RealtimePostgresUpdatePayload, RealtimePostgresDeletePayload, REALTIME_LISTEN_TYPES, REALTIME_POSTGRES_CHANGES_LISTEN_EVENT, REALTIME_SUBSCRIBE_STATES, REALTIME_CHANNEL_STATES } from './RealtimeChannel';
3
3
  import RealtimePresence, { RealtimePresenceState, RealtimePresenceJoinPayload, RealtimePresenceLeavePayload, REALTIME_PRESENCE_LISTEN_EVENTS } from './RealtimePresence';
4
- export { RealtimePresence, RealtimeChannel, RealtimeChannelOptions, RealtimeChannelSendResponse, RealtimeClient, RealtimeClientOptions, RealtimeMessage, RealtimePostgresChangesFilter, RealtimePostgresChangesPayload, RealtimePostgresInsertPayload, RealtimePostgresUpdatePayload, RealtimePostgresDeletePayload, RealtimePresenceJoinPayload, RealtimePresenceLeavePayload, RealtimePresenceState, RealtimeRemoveChannelResponse, REALTIME_LISTEN_TYPES, REALTIME_POSTGRES_CHANGES_LISTEN_EVENT, REALTIME_PRESENCE_LISTEN_EVENTS, REALTIME_SUBSCRIBE_STATES, REALTIME_CHANNEL_STATES, };
4
+ import WebSocketFactory, { WebSocketLike } from './lib/websocket-factory';
5
+ export { RealtimePresence, RealtimeChannel, RealtimeChannelOptions, RealtimeChannelSendResponse, RealtimeClient, RealtimeClientOptions, RealtimeMessage, RealtimePostgresChangesFilter, RealtimePostgresChangesPayload, RealtimePostgresInsertPayload, RealtimePostgresUpdatePayload, RealtimePostgresDeletePayload, RealtimePresenceJoinPayload, RealtimePresenceLeavePayload, RealtimePresenceState, RealtimeRemoveChannelResponse, REALTIME_LISTEN_TYPES, REALTIME_POSTGRES_CHANGES_LISTEN_EVENT, REALTIME_PRESENCE_LISTEN_EVENTS, REALTIME_SUBSCRIBE_STATES, REALTIME_CHANNEL_STATES, WebSocketFactory, WebSocketLike, };
5
6
  //# sourceMappingURL=index.d.ts.map