@supabase/realtime-js 2.0.0 → 2.1.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 +61 -55
  2. package/dist/main/RealtimeChannel.d.ts.map +1 -1
  3. package/dist/main/RealtimeChannel.js +32 -1
  4. package/dist/main/RealtimeChannel.js.map +1 -1
  5. package/dist/main/RealtimeClient.d.ts +0 -27
  6. package/dist/main/RealtimeClient.d.ts.map +1 -1
  7. package/dist/main/RealtimeClient.js +17 -0
  8. package/dist/main/RealtimeClient.js.map +1 -1
  9. package/dist/main/RealtimePresence.d.ts +0 -46
  10. package/dist/main/RealtimePresence.d.ts.map +1 -1
  11. package/dist/main/RealtimePresence.js +12 -0
  12. package/dist/main/RealtimePresence.js.map +1 -1
  13. package/dist/main/index.d.ts +2 -2
  14. package/dist/main/index.d.ts.map +1 -1
  15. package/dist/main/index.js.map +1 -1
  16. package/dist/main/lib/version.d.ts +1 -1
  17. package/dist/main/lib/version.js +1 -1
  18. package/dist/module/RealtimeChannel.d.ts +61 -55
  19. package/dist/module/RealtimeChannel.d.ts.map +1 -1
  20. package/dist/module/RealtimeChannel.js +32 -1
  21. package/dist/module/RealtimeChannel.js.map +1 -1
  22. package/dist/module/RealtimeClient.d.ts +0 -27
  23. package/dist/module/RealtimeClient.d.ts.map +1 -1
  24. package/dist/module/RealtimeClient.js +17 -0
  25. package/dist/module/RealtimeClient.js.map +1 -1
  26. package/dist/module/RealtimePresence.d.ts +0 -46
  27. package/dist/module/RealtimePresence.d.ts.map +1 -1
  28. package/dist/module/RealtimePresence.js +12 -0
  29. package/dist/module/RealtimePresence.js.map +1 -1
  30. package/dist/module/index.d.ts +2 -2
  31. package/dist/module/index.d.ts.map +1 -1
  32. package/dist/module/index.js.map +1 -1
  33. package/dist/module/lib/version.d.ts +1 -1
  34. package/dist/module/lib/version.js +1 -1
  35. package/package.json +1 -1
  36. package/src/RealtimeChannel.ts +96 -20
  37. package/src/RealtimeClient.ts +17 -1
  38. package/src/RealtimePresence.ts +12 -0
  39. package/src/index.ts +8 -0
  40. package/src/lib/version.ts +1 -1
@@ -274,6 +274,8 @@ export default class RealtimeClient {
274
274
 
275
275
  /**
276
276
  * Return the next message ref, accounting for overflows
277
+ *
278
+ * @internal
277
279
  */
278
280
  _makeRef(): string {
279
281
  let newRef = this.ref + 1
@@ -288,6 +290,8 @@ export default class RealtimeClient {
288
290
 
289
291
  /**
290
292
  * Unsubscribe from channels with the specified topic.
293
+ *
294
+ * @internal
291
295
  */
292
296
  _leaveOpenTopic(topic: string): void {
293
297
  let dupChannel = this.channels.find(
@@ -303,6 +307,8 @@ export default class RealtimeClient {
303
307
  * Removes a subscription from the socket.
304
308
  *
305
309
  * @param channel An open subscription.
310
+ *
311
+ * @internal
306
312
  */
307
313
  _remove(channel: RealtimeChannel) {
308
314
  this.channels = this.channels.filter(
@@ -312,6 +318,8 @@ export default class RealtimeClient {
312
318
 
313
319
  /**
314
320
  * Returns the URL of the websocket.
321
+ *
322
+ * @internal
315
323
  */
316
324
  private _endPointURL(): string {
317
325
  return this._appendParams(
@@ -320,6 +328,7 @@ export default class RealtimeClient {
320
328
  )
321
329
  }
322
330
 
331
+ /** @internal */
323
332
  private _onConnMessage(rawMessage: { data: any }) {
324
333
  this.decode(rawMessage.data, (msg: RealtimeMessage) => {
325
334
  let { topic, event, payload, ref } = msg
@@ -347,6 +356,7 @@ export default class RealtimeClient {
347
356
  })
348
357
  }
349
358
 
359
+ /** @internal */
350
360
  private _onConnOpen() {
351
361
  this.log('transport', `connected to ${this._endPointURL()}`)
352
362
  this._flushSendBuffer()
@@ -359,6 +369,7 @@ export default class RealtimeClient {
359
369
  this.stateChangeCallbacks.open.forEach((callback) => callback())!
360
370
  }
361
371
 
372
+ /** @internal */
362
373
  private _onConnClose(event: any) {
363
374
  this.log('transport', 'close', event)
364
375
  this._triggerChanError()
@@ -367,18 +378,21 @@ export default class RealtimeClient {
367
378
  this.stateChangeCallbacks.close.forEach((callback) => callback(event))
368
379
  }
369
380
 
381
+ /** @internal */
370
382
  private _onConnError(error: ErrorEvent) {
371
383
  this.log('transport', error.message)
372
384
  this._triggerChanError()
373
385
  this.stateChangeCallbacks.error.forEach((callback) => callback(error))
374
386
  }
375
387
 
388
+ /** @internal */
376
389
  private _triggerChanError() {
377
390
  this.channels.forEach((channel: RealtimeChannel) =>
378
391
  channel._trigger(CHANNEL_EVENTS.error)
379
392
  )
380
393
  }
381
394
 
395
+ /** @internal */
382
396
  private _appendParams(
383
397
  url: string,
384
398
  params: { [key: string]: string }
@@ -392,13 +406,14 @@ export default class RealtimeClient {
392
406
  return `${url}${prefix}${query}`
393
407
  }
394
408
 
409
+ /** @internal */
395
410
  private _flushSendBuffer() {
396
411
  if (this.isConnected() && this.sendBuffer.length > 0) {
397
412
  this.sendBuffer.forEach((callback) => callback())
398
413
  this.sendBuffer = []
399
414
  }
400
415
  }
401
-
416
+ /** @internal */
402
417
  private _sendHeartbeat() {
403
418
  if (!this.isConnected()) {
404
419
  return
@@ -422,6 +437,7 @@ export default class RealtimeClient {
422
437
  this.setAuth(this.accessToken)
423
438
  }
424
439
 
440
+ /** @internal */
425
441
  private _throttle(
426
442
  callback: Function,
427
443
  eventsPerSecondLimit: number = this.eventsPerSecondLimitMs
@@ -159,6 +159,8 @@ export default class RealtimePresence {
159
159
  * An optional `onJoin` and `onLeave` callback can be provided to
160
160
  * react to changes in the client's local presences across
161
161
  * disconnects and reconnects with the server.
162
+ *
163
+ * @internal
162
164
  */
163
165
  private static syncState(
164
166
  currentState: RealtimePresenceState,
@@ -216,6 +218,8 @@ export default class RealtimePresence {
216
218
  * Like `syncState`, `syncDiff` accepts optional `onJoin` and
217
219
  * `onLeave` callbacks to react to a user joining or leaving from a
218
220
  * device.
221
+ *
222
+ * @internal
219
223
  */
220
224
  private static syncDiff(
221
225
  state: RealtimePresenceState,
@@ -276,6 +280,7 @@ export default class RealtimePresence {
276
280
  return state
277
281
  }
278
282
 
283
+ /** @internal */
279
284
  private static map<T = any>(
280
285
  obj: RealtimePresenceState,
281
286
  func: PresenceChooser<T>
@@ -303,6 +308,8 @@ export default class RealtimePresence {
303
308
  * ]
304
309
  * }
305
310
  * })
311
+ *
312
+ * @internal
306
313
  */
307
314
  private static transformState(
308
315
  state: RawPresenceState | RealtimePresenceState
@@ -329,22 +336,27 @@ export default class RealtimePresence {
329
336
  }, {} as RealtimePresenceState)
330
337
  }
331
338
 
339
+ /** @internal */
332
340
  private static cloneDeep(obj: { [key: string]: any }) {
333
341
  return JSON.parse(JSON.stringify(obj))
334
342
  }
335
343
 
344
+ /** @internal */
336
345
  private onJoin(callback: PresenceOnJoinCallback): void {
337
346
  this.caller.onJoin = callback
338
347
  }
339
348
 
349
+ /** @internal */
340
350
  private onLeave(callback: PresenceOnLeaveCallback): void {
341
351
  this.caller.onLeave = callback
342
352
  }
343
353
 
354
+ /** @internal */
344
355
  private onSync(callback: () => void): void {
345
356
  this.caller.onSync = callback
346
357
  }
347
358
 
359
+ /** @internal */
348
360
  private inPendingSyncState(): boolean {
349
361
  return !this.joinRef || this.joinRef !== this.channel._joinRef()
350
362
  }
package/src/index.ts CHANGED
@@ -6,7 +6,11 @@ import RealtimeClient, {
6
6
  import RealtimeChannel, {
7
7
  RealtimeChannelOptions,
8
8
  RealtimeChannelSendResponse,
9
+ RealtimePostgresChangesFilter,
9
10
  RealtimePostgresChangesPayload,
11
+ RealtimePostgresInsertPayload,
12
+ RealtimePostgresUpdatePayload,
13
+ RealtimePostgresDeletePayload,
10
14
  REALTIME_LISTEN_TYPES,
11
15
  REALTIME_POSTGRES_CHANGES_LISTEN_EVENT,
12
16
  REALTIME_SUBSCRIBE_STATES,
@@ -26,7 +30,11 @@ export {
26
30
  RealtimeClient,
27
31
  RealtimeClientOptions,
28
32
  RealtimeMessage,
33
+ RealtimePostgresChangesFilter,
29
34
  RealtimePostgresChangesPayload,
35
+ RealtimePostgresInsertPayload,
36
+ RealtimePostgresUpdatePayload,
37
+ RealtimePostgresDeletePayload,
30
38
  RealtimePresenceJoinPayload,
31
39
  RealtimePresenceLeavePayload,
32
40
  RealtimePresenceState,
@@ -1 +1 @@
1
- export const version = '2.0.0'
1
+ export const version = '2.1.0'