@supabase/realtime-js 2.0.0 → 2.2.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.
- package/README.md +165 -80
- package/dist/main/RealtimeChannel.d.ts +78 -56
- package/dist/main/RealtimeChannel.d.ts.map +1 -1
- package/dist/main/RealtimeChannel.js +32 -1
- package/dist/main/RealtimeChannel.js.map +1 -1
- package/dist/main/RealtimeClient.d.ts +12 -29
- package/dist/main/RealtimeClient.d.ts.map +1 -1
- package/dist/main/RealtimeClient.js +29 -2
- package/dist/main/RealtimeClient.js.map +1 -1
- package/dist/main/RealtimePresence.d.ts +14 -55
- package/dist/main/RealtimePresence.d.ts.map +1 -1
- package/dist/main/RealtimePresence.js +12 -0
- package/dist/main/RealtimePresence.js.map +1 -1
- package/dist/main/index.d.ts +2 -2
- package/dist/main/index.d.ts.map +1 -1
- package/dist/main/index.js.map +1 -1
- package/dist/main/lib/version.d.ts +1 -1
- package/dist/main/lib/version.js +1 -1
- package/dist/module/RealtimeChannel.d.ts +78 -56
- package/dist/module/RealtimeChannel.d.ts.map +1 -1
- package/dist/module/RealtimeChannel.js +32 -1
- package/dist/module/RealtimeChannel.js.map +1 -1
- package/dist/module/RealtimeClient.d.ts +12 -29
- package/dist/module/RealtimeClient.d.ts.map +1 -1
- package/dist/module/RealtimeClient.js +29 -2
- package/dist/module/RealtimeClient.js.map +1 -1
- package/dist/module/RealtimePresence.d.ts +14 -55
- package/dist/module/RealtimePresence.d.ts.map +1 -1
- package/dist/module/RealtimePresence.js +12 -0
- package/dist/module/RealtimePresence.js.map +1 -1
- package/dist/module/index.d.ts +2 -2
- package/dist/module/index.d.ts.map +1 -1
- package/dist/module/index.js.map +1 -1
- package/dist/module/lib/version.d.ts +1 -1
- package/dist/module/lib/version.js +1 -1
- package/package.json +1 -1
- package/src/RealtimeChannel.ts +109 -21
- package/src/RealtimeClient.ts +29 -3
- package/src/RealtimePresence.ts +20 -9
- package/src/index.ts +8 -0
- package/src/lib/version.ts +1 -1
|
@@ -7,7 +7,7 @@ export declare type RealtimeChannelOptions = {
|
|
|
7
7
|
config: {
|
|
8
8
|
/**
|
|
9
9
|
* self option enables client to receive message it broadcast
|
|
10
|
-
* ack option instructs server to
|
|
10
|
+
* ack option instructs server to acknowledge that broadcast message was received
|
|
11
11
|
*/
|
|
12
12
|
broadcast?: {
|
|
13
13
|
self?: boolean;
|
|
@@ -21,17 +21,42 @@ export declare type RealtimeChannelOptions = {
|
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
};
|
|
24
|
-
|
|
25
|
-
[key: string]: any;
|
|
26
|
-
}> = {
|
|
24
|
+
declare type RealtimePostgresChangesPayloadBase = {
|
|
27
25
|
schema: string;
|
|
28
26
|
table: string;
|
|
29
27
|
commit_timestamp: string;
|
|
30
|
-
eventType: `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.INSERT}` | `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.UPDATE}` | `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.DELETE}`;
|
|
31
|
-
new: T | {};
|
|
32
|
-
old: Partial<T> | {};
|
|
33
28
|
errors: string[];
|
|
34
29
|
};
|
|
30
|
+
export declare type RealtimePostgresInsertPayload<T extends {
|
|
31
|
+
[key: string]: any;
|
|
32
|
+
}> = RealtimePostgresChangesPayloadBase & {
|
|
33
|
+
eventType: `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.INSERT}`;
|
|
34
|
+
new: T;
|
|
35
|
+
old: {};
|
|
36
|
+
};
|
|
37
|
+
export declare type RealtimePostgresUpdatePayload<T extends {
|
|
38
|
+
[key: string]: any;
|
|
39
|
+
}> = RealtimePostgresChangesPayloadBase & {
|
|
40
|
+
eventType: `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.UPDATE}`;
|
|
41
|
+
new: T;
|
|
42
|
+
old: Partial<T>;
|
|
43
|
+
};
|
|
44
|
+
export declare type RealtimePostgresDeletePayload<T extends {
|
|
45
|
+
[key: string]: any;
|
|
46
|
+
}> = RealtimePostgresChangesPayloadBase & {
|
|
47
|
+
eventType: `${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.DELETE}`;
|
|
48
|
+
new: {};
|
|
49
|
+
old: Partial<T>;
|
|
50
|
+
};
|
|
51
|
+
export declare type RealtimePostgresChangesPayload<T extends {
|
|
52
|
+
[key: string]: any;
|
|
53
|
+
}> = RealtimePostgresInsertPayload<T> | RealtimePostgresUpdatePayload<T> | RealtimePostgresDeletePayload<T>;
|
|
54
|
+
export declare type RealtimePostgresChangesFilter<T extends string> = {
|
|
55
|
+
event: T;
|
|
56
|
+
schema: string;
|
|
57
|
+
table?: string;
|
|
58
|
+
filter?: string;
|
|
59
|
+
};
|
|
35
60
|
export declare type RealtimeChannelSendResponse = 'ok' | 'timed out' | 'rate limited';
|
|
36
61
|
export declare enum REALTIME_POSTGRES_CHANGES_LISTEN_EVENT {
|
|
37
62
|
ALL = "*",
|
|
@@ -50,7 +75,13 @@ export declare enum REALTIME_SUBSCRIBE_STATES {
|
|
|
50
75
|
CLOSED = "CLOSED",
|
|
51
76
|
CHANNEL_ERROR = "CHANNEL_ERROR"
|
|
52
77
|
}
|
|
78
|
+
/** A channel is the basic building block of Realtime
|
|
79
|
+
* and narrows the scope of data flow to subscribed clients.
|
|
80
|
+
* You can think of a channel as a chatroom where participants are able to see who's online
|
|
81
|
+
* and send and receive messages.
|
|
82
|
+
**/
|
|
53
83
|
export default class RealtimeChannel {
|
|
84
|
+
/** Topic name can be any string. */
|
|
54
85
|
topic: string;
|
|
55
86
|
params: RealtimeChannelOptions;
|
|
56
87
|
socket: RealtimeClient;
|
|
@@ -71,7 +102,10 @@ export default class RealtimeChannel {
|
|
|
71
102
|
rejoinTimer: Timer;
|
|
72
103
|
pushBuffer: Push[];
|
|
73
104
|
presence: RealtimePresence;
|
|
74
|
-
constructor(
|
|
105
|
+
constructor(
|
|
106
|
+
/** Topic name can be any string. */
|
|
107
|
+
topic: string, params: RealtimeChannelOptions, socket: RealtimeClient);
|
|
108
|
+
/** Subscribe registers your client with the server */
|
|
75
109
|
subscribe(callback?: (status: `${REALTIME_SUBSCRIBE_STATES}`, err?: Error) => void, timeout?: number): RealtimeChannel;
|
|
76
110
|
presenceState(): RealtimePresenceState;
|
|
77
111
|
track(payload: {
|
|
@@ -82,6 +116,19 @@ export default class RealtimeChannel {
|
|
|
82
116
|
untrack(opts?: {
|
|
83
117
|
[key: string]: any;
|
|
84
118
|
}): Promise<RealtimeChannelSendResponse>;
|
|
119
|
+
/**
|
|
120
|
+
* Creates an event handler that listens to changes
|
|
121
|
+
* @param type Realtime feature (broadcast, presence, or postgres_changes)
|
|
122
|
+
* @param filter Pre-defined and custom values specific to the Realtime feature
|
|
123
|
+
* @param filter.schema Database schema
|
|
124
|
+
* @param filter.event Event to listen to. If listening to postgres_changes type
|
|
125
|
+
* then this value is one of INSERT, UPDATE, DELETE, *
|
|
126
|
+
* @param filter.filter If listening to postgres_changes type then this value is used to specify
|
|
127
|
+
* the Postgres Changes filter (eq, neq, lt, lte, gt, or gte) and value to listen to
|
|
128
|
+
* @param filter.table If listening to postgres_changes type then this value is used to specify
|
|
129
|
+
* the database table to listen to
|
|
130
|
+
* @param callback Function to be invoked when event handler is triggered
|
|
131
|
+
*/
|
|
85
132
|
on(type: `${REALTIME_LISTEN_TYPES.BROADCAST}`, filter: {
|
|
86
133
|
event: string;
|
|
87
134
|
}, callback: (payload: {
|
|
@@ -90,16 +137,30 @@ export default class RealtimeChannel {
|
|
|
90
137
|
[key: string]: any;
|
|
91
138
|
}) => void): RealtimeChannel;
|
|
92
139
|
on(type: `${REALTIME_LISTEN_TYPES.PRESENCE}`, filter: {
|
|
93
|
-
event: `${REALTIME_PRESENCE_LISTEN_EVENTS}`;
|
|
94
|
-
}, callback: (
|
|
140
|
+
event: `${REALTIME_PRESENCE_LISTEN_EVENTS.SYNC}`;
|
|
141
|
+
}, callback: () => void): RealtimeChannel;
|
|
142
|
+
on<T extends {
|
|
143
|
+
[key: string]: any;
|
|
144
|
+
}>(type: `${REALTIME_LISTEN_TYPES.PRESENCE}`, filter: {
|
|
145
|
+
event: `${REALTIME_PRESENCE_LISTEN_EVENTS.JOIN}`;
|
|
146
|
+
}, callback: (payload: RealtimePresenceJoinPayload<T>) => void): RealtimeChannel;
|
|
147
|
+
on<T extends {
|
|
148
|
+
[key: string]: any;
|
|
149
|
+
}>(type: `${REALTIME_LISTEN_TYPES.PRESENCE}`, filter: {
|
|
150
|
+
event: `${REALTIME_PRESENCE_LISTEN_EVENTS.LEAVE}`;
|
|
151
|
+
}, callback: (payload: RealtimePresenceLeavePayload<T>) => void): RealtimeChannel;
|
|
95
152
|
on<T extends {
|
|
96
153
|
[key: string]: any;
|
|
97
|
-
}>(type: `${REALTIME_LISTEN_TYPES.POSTGRES_CHANGES}`, filter: {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
154
|
+
}>(type: `${REALTIME_LISTEN_TYPES.POSTGRES_CHANGES}`, filter: RealtimePostgresChangesFilter<`${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.ALL}`>, callback: (payload: RealtimePostgresChangesPayload<T>) => void): RealtimeChannel;
|
|
155
|
+
on<T extends {
|
|
156
|
+
[key: string]: any;
|
|
157
|
+
}>(type: `${REALTIME_LISTEN_TYPES.POSTGRES_CHANGES}`, filter: RealtimePostgresChangesFilter<`${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.INSERT}`>, callback: (payload: RealtimePostgresInsertPayload<T>) => void): RealtimeChannel;
|
|
158
|
+
on<T extends {
|
|
159
|
+
[key: string]: any;
|
|
160
|
+
}>(type: `${REALTIME_LISTEN_TYPES.POSTGRES_CHANGES}`, filter: RealtimePostgresChangesFilter<`${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.UPDATE}`>, callback: (payload: RealtimePostgresUpdatePayload<T>) => void): RealtimeChannel;
|
|
161
|
+
on<T extends {
|
|
162
|
+
[key: string]: any;
|
|
163
|
+
}>(type: `${REALTIME_LISTEN_TYPES.POSTGRES_CHANGES}`, filter: RealtimePostgresChangesFilter<`${REALTIME_POSTGRES_CHANGES_LISTEN_EVENT.DELETE}`>, callback: (payload: RealtimePostgresDeletePayload<T>) => void): RealtimeChannel;
|
|
103
164
|
send(payload: {
|
|
104
165
|
type: string;
|
|
105
166
|
[key: string]: any;
|
|
@@ -119,45 +180,6 @@ export default class RealtimeChannel {
|
|
|
119
180
|
* channel.unsubscribe().receive("ok", () => alert("left!") )
|
|
120
181
|
*/
|
|
121
182
|
unsubscribe(timeout?: number): Promise<'ok' | 'timed out' | 'error'>;
|
|
122
|
-
_push(event: string, payload: {
|
|
123
|
-
[key: string]: any;
|
|
124
|
-
}, timeout?: number): Push;
|
|
125
|
-
/**
|
|
126
|
-
* Overridable message hook
|
|
127
|
-
*
|
|
128
|
-
* Receives all events for specialized message handling before dispatching to the channel callbacks.
|
|
129
|
-
* Must return the payload, modified or unmodified.
|
|
130
|
-
*/
|
|
131
|
-
_onMessage(_event: string, payload: any, _ref?: string): any;
|
|
132
|
-
_isMember(topic: string): boolean;
|
|
133
|
-
_joinRef(): string;
|
|
134
|
-
_trigger(type: string, payload?: any, ref?: string): void;
|
|
135
|
-
_isClosed(): boolean;
|
|
136
|
-
_isJoined(): boolean;
|
|
137
|
-
_isJoining(): boolean;
|
|
138
|
-
_isLeaving(): boolean;
|
|
139
|
-
_replyEventName(ref: string): string;
|
|
140
|
-
_on(type: string, filter: {
|
|
141
|
-
[key: string]: any;
|
|
142
|
-
}, callback: Function): this;
|
|
143
|
-
_off(type: string, filter: {
|
|
144
|
-
[key: string]: any;
|
|
145
|
-
}): this;
|
|
146
|
-
private static isEqual;
|
|
147
|
-
private _rejoinUntilConnected;
|
|
148
|
-
/**
|
|
149
|
-
* Registers a callback that will be executed when the channel closes.
|
|
150
|
-
*/
|
|
151
|
-
private _onClose;
|
|
152
|
-
/**
|
|
153
|
-
* Registers a callback that will be executed when the channel encounteres an error.
|
|
154
|
-
*/
|
|
155
|
-
private _onError;
|
|
156
|
-
/**
|
|
157
|
-
* Returns `true` if the socket is connected and the channel has been joined.
|
|
158
|
-
*/
|
|
159
|
-
private _canPush;
|
|
160
|
-
private _rejoin;
|
|
161
|
-
private _getPayloadRecords;
|
|
162
183
|
}
|
|
184
|
+
export {};
|
|
163
185
|
//# sourceMappingURL=RealtimeChannel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RealtimeChannel.d.ts","sourceRoot":"","sources":["../../src/RealtimeChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChE,OAAO,IAAI,MAAM,YAAY,CAAA;AAC7B,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,MAAM,aAAa,CAAA;AAC/B,OAAO,gBAAgB,EAAE,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,qBAAqB,EACrB,+BAA+B,EAChC,MAAM,oBAAoB,CAAA;AAG3B,oBAAY,sBAAsB,GAAG;IACnC,MAAM,EAAE;QACN;;;WAGG;QACH,SAAS,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,OAAO,CAAC;YAAC,GAAG,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;QAC7C;;WAEG;QACH,QAAQ,CAAC,EAAE;YAAE,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAC5B,CAAA;CACF,CAAA;AAED,oBAAY,
|
|
1
|
+
{"version":3,"file":"RealtimeChannel.d.ts","sourceRoot":"","sources":["../../src/RealtimeChannel.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,8 +32,15 @@ export var REALTIME_SUBSCRIBE_STATES;
|
|
|
32
32
|
REALTIME_SUBSCRIBE_STATES["CLOSED"] = "CLOSED";
|
|
33
33
|
REALTIME_SUBSCRIBE_STATES["CHANNEL_ERROR"] = "CHANNEL_ERROR";
|
|
34
34
|
})(REALTIME_SUBSCRIBE_STATES || (REALTIME_SUBSCRIBE_STATES = {}));
|
|
35
|
+
/** A channel is the basic building block of Realtime
|
|
36
|
+
* and narrows the scope of data flow to subscribed clients.
|
|
37
|
+
* You can think of a channel as a chatroom where participants are able to see who's online
|
|
38
|
+
* and send and receive messages.
|
|
39
|
+
**/
|
|
35
40
|
export default class RealtimeChannel {
|
|
36
|
-
constructor(
|
|
41
|
+
constructor(
|
|
42
|
+
/** Topic name can be any string. */
|
|
43
|
+
topic, params = { config: {} }, socket) {
|
|
37
44
|
this.topic = topic;
|
|
38
45
|
this.params = params;
|
|
39
46
|
this.socket = socket;
|
|
@@ -81,6 +88,7 @@ export default class RealtimeChannel {
|
|
|
81
88
|
});
|
|
82
89
|
this.presence = new RealtimePresence(this);
|
|
83
90
|
}
|
|
91
|
+
/** Subscribe registers your client with the server */
|
|
84
92
|
subscribe(callback, timeout = this.timeout) {
|
|
85
93
|
var _a, _b;
|
|
86
94
|
if (this.joinedOnce) {
|
|
@@ -229,6 +237,7 @@ export default class RealtimeChannel {
|
|
|
229
237
|
}
|
|
230
238
|
});
|
|
231
239
|
}
|
|
240
|
+
/** @internal */
|
|
232
241
|
_push(event, payload, timeout = this.timeout) {
|
|
233
242
|
if (!this.joinedOnce) {
|
|
234
243
|
throw `tried to push '${event}' to '${this.topic}' before joining. Use channel.subscribe() before pushing events`;
|
|
@@ -248,16 +257,21 @@ export default class RealtimeChannel {
|
|
|
248
257
|
*
|
|
249
258
|
* Receives all events for specialized message handling before dispatching to the channel callbacks.
|
|
250
259
|
* Must return the payload, modified or unmodified.
|
|
260
|
+
*
|
|
261
|
+
* @internal
|
|
251
262
|
*/
|
|
252
263
|
_onMessage(_event, payload, _ref) {
|
|
253
264
|
return payload;
|
|
254
265
|
}
|
|
266
|
+
/** @internal */
|
|
255
267
|
_isMember(topic) {
|
|
256
268
|
return this.topic === topic;
|
|
257
269
|
}
|
|
270
|
+
/** @internal */
|
|
258
271
|
_joinRef() {
|
|
259
272
|
return this.joinPush.ref;
|
|
260
273
|
}
|
|
274
|
+
/** @internal */
|
|
261
275
|
_trigger(type, payload, ref) {
|
|
262
276
|
var _a, _b;
|
|
263
277
|
const typeLower = type.toLocaleLowerCase();
|
|
@@ -318,21 +332,27 @@ export default class RealtimeChannel {
|
|
|
318
332
|
});
|
|
319
333
|
}
|
|
320
334
|
}
|
|
335
|
+
/** @internal */
|
|
321
336
|
_isClosed() {
|
|
322
337
|
return this.state === CHANNEL_STATES.closed;
|
|
323
338
|
}
|
|
339
|
+
/** @internal */
|
|
324
340
|
_isJoined() {
|
|
325
341
|
return this.state === CHANNEL_STATES.joined;
|
|
326
342
|
}
|
|
343
|
+
/** @internal */
|
|
327
344
|
_isJoining() {
|
|
328
345
|
return this.state === CHANNEL_STATES.joining;
|
|
329
346
|
}
|
|
347
|
+
/** @internal */
|
|
330
348
|
_isLeaving() {
|
|
331
349
|
return this.state === CHANNEL_STATES.leaving;
|
|
332
350
|
}
|
|
351
|
+
/** @internal */
|
|
333
352
|
_replyEventName(ref) {
|
|
334
353
|
return `chan_reply_${ref}`;
|
|
335
354
|
}
|
|
355
|
+
/** @internal */
|
|
336
356
|
_on(type, filter, callback) {
|
|
337
357
|
const typeLower = type.toLocaleLowerCase();
|
|
338
358
|
const binding = {
|
|
@@ -348,6 +368,7 @@ export default class RealtimeChannel {
|
|
|
348
368
|
}
|
|
349
369
|
return this;
|
|
350
370
|
}
|
|
371
|
+
/** @internal */
|
|
351
372
|
_off(type, filter) {
|
|
352
373
|
const typeLower = type.toLocaleLowerCase();
|
|
353
374
|
this.bindings[typeLower] = this.bindings[typeLower].filter((bind) => {
|
|
@@ -357,6 +378,7 @@ export default class RealtimeChannel {
|
|
|
357
378
|
});
|
|
358
379
|
return this;
|
|
359
380
|
}
|
|
381
|
+
/** @internal */
|
|
360
382
|
static isEqual(obj1, obj2) {
|
|
361
383
|
if (Object.keys(obj1).length !== Object.keys(obj2).length) {
|
|
362
384
|
return false;
|
|
@@ -368,6 +390,7 @@ export default class RealtimeChannel {
|
|
|
368
390
|
}
|
|
369
391
|
return true;
|
|
370
392
|
}
|
|
393
|
+
/** @internal */
|
|
371
394
|
_rejoinUntilConnected() {
|
|
372
395
|
this.rejoinTimer.scheduleTimeout();
|
|
373
396
|
if (this.socket.isConnected()) {
|
|
@@ -376,22 +399,29 @@ export default class RealtimeChannel {
|
|
|
376
399
|
}
|
|
377
400
|
/**
|
|
378
401
|
* Registers a callback that will be executed when the channel closes.
|
|
402
|
+
*
|
|
403
|
+
* @internal
|
|
379
404
|
*/
|
|
380
405
|
_onClose(callback) {
|
|
381
406
|
this._on(CHANNEL_EVENTS.close, {}, callback);
|
|
382
407
|
}
|
|
383
408
|
/**
|
|
384
409
|
* Registers a callback that will be executed when the channel encounteres an error.
|
|
410
|
+
*
|
|
411
|
+
* @internal
|
|
385
412
|
*/
|
|
386
413
|
_onError(callback) {
|
|
387
414
|
this._on(CHANNEL_EVENTS.error, {}, (reason) => callback(reason));
|
|
388
415
|
}
|
|
389
416
|
/**
|
|
390
417
|
* Returns `true` if the socket is connected and the channel has been joined.
|
|
418
|
+
*
|
|
419
|
+
* @internal
|
|
391
420
|
*/
|
|
392
421
|
_canPush() {
|
|
393
422
|
return this.socket.isConnected() && this._isJoined();
|
|
394
423
|
}
|
|
424
|
+
/** @internal */
|
|
395
425
|
_rejoin(timeout = this.timeout) {
|
|
396
426
|
if (this._isLeaving()) {
|
|
397
427
|
return;
|
|
@@ -400,6 +430,7 @@ export default class RealtimeChannel {
|
|
|
400
430
|
this.state = CHANNEL_STATES.joining;
|
|
401
431
|
this.joinPush.resend(timeout);
|
|
402
432
|
}
|
|
433
|
+
/** @internal */
|
|
403
434
|
_getPayloadRecords(payload) {
|
|
404
435
|
const records = {
|
|
405
436
|
new: {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RealtimeChannel.js","sourceRoot":"","sources":["../../src/RealtimeChannel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RealtimeChannel.js","sourceRoot":"","sources":["../../src/RealtimeChannel.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,13 +83,23 @@ export default class RealtimeClient {
|
|
|
83
83
|
* @param reason A custom reason for the disconnect.
|
|
84
84
|
*/
|
|
85
85
|
disconnect(code?: number, reason?: string): void;
|
|
86
|
+
/**
|
|
87
|
+
* Returns all created channels
|
|
88
|
+
*/
|
|
86
89
|
getChannels(): RealtimeChannel[];
|
|
90
|
+
/**
|
|
91
|
+
* Unsubscribes and removes a single channel
|
|
92
|
+
* @param channel A RealtimeChannel instance
|
|
93
|
+
*/
|
|
87
94
|
removeChannel(channel: RealtimeChannel): Promise<RealtimeRemoveChannelResponse>;
|
|
95
|
+
/**
|
|
96
|
+
* Unsubscribes and removes all channels
|
|
97
|
+
*/
|
|
88
98
|
removeAllChannels(): Promise<RealtimeRemoveChannelResponse[]>;
|
|
89
99
|
/**
|
|
90
100
|
* Logs the message.
|
|
91
101
|
*
|
|
92
|
-
* For customized logging, `this.logger` can be
|
|
102
|
+
* For customized logging, `this.logger` can be overridden.
|
|
93
103
|
*/
|
|
94
104
|
log(kind: string, msg: string, data?: any): void;
|
|
95
105
|
/**
|
|
@@ -97,7 +107,7 @@ export default class RealtimeClient {
|
|
|
97
107
|
*/
|
|
98
108
|
connectionState(): CONNECTION_STATE;
|
|
99
109
|
/**
|
|
100
|
-
*
|
|
110
|
+
* Returns `true` is the connection is open.
|
|
101
111
|
*/
|
|
102
112
|
isConnected(): boolean;
|
|
103
113
|
channel(topic: string, params?: RealtimeChannelOptions): RealtimeChannel;
|
|
@@ -113,32 +123,5 @@ export default class RealtimeClient {
|
|
|
113
123
|
* @param token A JWT string.
|
|
114
124
|
*/
|
|
115
125
|
setAuth(token: string | null): void;
|
|
116
|
-
/**
|
|
117
|
-
* Return the next message ref, accounting for overflows
|
|
118
|
-
*/
|
|
119
|
-
_makeRef(): string;
|
|
120
|
-
/**
|
|
121
|
-
* Unsubscribe from channels with the specified topic.
|
|
122
|
-
*/
|
|
123
|
-
_leaveOpenTopic(topic: string): void;
|
|
124
|
-
/**
|
|
125
|
-
* Removes a subscription from the socket.
|
|
126
|
-
*
|
|
127
|
-
* @param channel An open subscription.
|
|
128
|
-
*/
|
|
129
|
-
_remove(channel: RealtimeChannel): void;
|
|
130
|
-
/**
|
|
131
|
-
* Returns the URL of the websocket.
|
|
132
|
-
*/
|
|
133
|
-
private _endPointURL;
|
|
134
|
-
private _onConnMessage;
|
|
135
|
-
private _onConnOpen;
|
|
136
|
-
private _onConnClose;
|
|
137
|
-
private _onConnError;
|
|
138
|
-
private _triggerChanError;
|
|
139
|
-
private _appendParams;
|
|
140
|
-
private _flushSendBuffer;
|
|
141
|
-
private _sendHeartbeat;
|
|
142
|
-
private _throttle;
|
|
143
126
|
}
|
|
144
127
|
//# sourceMappingURL=RealtimeClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RealtimeClient.d.ts","sourceRoot":"","sources":["../../src/RealtimeClient.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RealtimeClient.d.ts","sourceRoot":"","sources":["../../src/RealtimeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -124,9 +124,16 @@ export default class RealtimeClient {
|
|
|
124
124
|
this.reconnectTimer.reset();
|
|
125
125
|
}
|
|
126
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Returns all created channels
|
|
129
|
+
*/
|
|
127
130
|
getChannels() {
|
|
128
131
|
return this.channels;
|
|
129
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Unsubscribes and removes a single channel
|
|
135
|
+
* @param channel A RealtimeChannel instance
|
|
136
|
+
*/
|
|
130
137
|
removeChannel(channel) {
|
|
131
138
|
return channel.unsubscribe().then((status) => {
|
|
132
139
|
if (this.channels.length === 0) {
|
|
@@ -135,6 +142,9 @@ export default class RealtimeClient {
|
|
|
135
142
|
return status;
|
|
136
143
|
});
|
|
137
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Unsubscribes and removes all channels
|
|
147
|
+
*/
|
|
138
148
|
removeAllChannels() {
|
|
139
149
|
return Promise.all(this.channels.map((channel) => channel.unsubscribe())).then((values) => {
|
|
140
150
|
this.disconnect();
|
|
@@ -144,7 +154,7 @@ export default class RealtimeClient {
|
|
|
144
154
|
/**
|
|
145
155
|
* Logs the message.
|
|
146
156
|
*
|
|
147
|
-
* For customized logging, `this.logger` can be
|
|
157
|
+
* For customized logging, `this.logger` can be overridden.
|
|
148
158
|
*/
|
|
149
159
|
log(kind, msg, data) {
|
|
150
160
|
this.logger(kind, msg, data);
|
|
@@ -165,7 +175,7 @@ export default class RealtimeClient {
|
|
|
165
175
|
}
|
|
166
176
|
}
|
|
167
177
|
/**
|
|
168
|
-
*
|
|
178
|
+
* Returns `true` is the connection is open.
|
|
169
179
|
*/
|
|
170
180
|
isConnected() {
|
|
171
181
|
return this.connectionState() === CONNECTION_STATE.Open;
|
|
@@ -223,6 +233,8 @@ export default class RealtimeClient {
|
|
|
223
233
|
}
|
|
224
234
|
/**
|
|
225
235
|
* Return the next message ref, accounting for overflows
|
|
236
|
+
*
|
|
237
|
+
* @internal
|
|
226
238
|
*/
|
|
227
239
|
_makeRef() {
|
|
228
240
|
let newRef = this.ref + 1;
|
|
@@ -236,6 +248,8 @@ export default class RealtimeClient {
|
|
|
236
248
|
}
|
|
237
249
|
/**
|
|
238
250
|
* Unsubscribe from channels with the specified topic.
|
|
251
|
+
*
|
|
252
|
+
* @internal
|
|
239
253
|
*/
|
|
240
254
|
_leaveOpenTopic(topic) {
|
|
241
255
|
let dupChannel = this.channels.find((c) => c.topic === topic && (c._isJoined() || c._isJoining()));
|
|
@@ -248,16 +262,21 @@ export default class RealtimeClient {
|
|
|
248
262
|
* Removes a subscription from the socket.
|
|
249
263
|
*
|
|
250
264
|
* @param channel An open subscription.
|
|
265
|
+
*
|
|
266
|
+
* @internal
|
|
251
267
|
*/
|
|
252
268
|
_remove(channel) {
|
|
253
269
|
this.channels = this.channels.filter((c) => c._joinRef() !== channel._joinRef());
|
|
254
270
|
}
|
|
255
271
|
/**
|
|
256
272
|
* Returns the URL of the websocket.
|
|
273
|
+
*
|
|
274
|
+
* @internal
|
|
257
275
|
*/
|
|
258
276
|
_endPointURL() {
|
|
259
277
|
return this._appendParams(this.endPoint, Object.assign({}, this.params, { vsn: VSN }));
|
|
260
278
|
}
|
|
279
|
+
/** @internal */
|
|
261
280
|
_onConnMessage(rawMessage) {
|
|
262
281
|
this.decode(rawMessage.data, (msg) => {
|
|
263
282
|
let { topic, event, payload, ref } = msg;
|
|
@@ -272,6 +291,7 @@ export default class RealtimeClient {
|
|
|
272
291
|
this.stateChangeCallbacks.message.forEach((callback) => callback(msg));
|
|
273
292
|
});
|
|
274
293
|
}
|
|
294
|
+
/** @internal */
|
|
275
295
|
_onConnOpen() {
|
|
276
296
|
this.log('transport', `connected to ${this._endPointURL()}`);
|
|
277
297
|
this._flushSendBuffer();
|
|
@@ -280,6 +300,7 @@ export default class RealtimeClient {
|
|
|
280
300
|
this.heartbeatTimer = setInterval(() => this._sendHeartbeat(), this.heartbeatIntervalMs);
|
|
281
301
|
this.stateChangeCallbacks.open.forEach((callback) => callback());
|
|
282
302
|
}
|
|
303
|
+
/** @internal */
|
|
283
304
|
_onConnClose(event) {
|
|
284
305
|
this.log('transport', 'close', event);
|
|
285
306
|
this._triggerChanError();
|
|
@@ -287,14 +308,17 @@ export default class RealtimeClient {
|
|
|
287
308
|
this.reconnectTimer.scheduleTimeout();
|
|
288
309
|
this.stateChangeCallbacks.close.forEach((callback) => callback(event));
|
|
289
310
|
}
|
|
311
|
+
/** @internal */
|
|
290
312
|
_onConnError(error) {
|
|
291
313
|
this.log('transport', error.message);
|
|
292
314
|
this._triggerChanError();
|
|
293
315
|
this.stateChangeCallbacks.error.forEach((callback) => callback(error));
|
|
294
316
|
}
|
|
317
|
+
/** @internal */
|
|
295
318
|
_triggerChanError() {
|
|
296
319
|
this.channels.forEach((channel) => channel._trigger(CHANNEL_EVENTS.error));
|
|
297
320
|
}
|
|
321
|
+
/** @internal */
|
|
298
322
|
_appendParams(url, params) {
|
|
299
323
|
if (Object.keys(params).length === 0) {
|
|
300
324
|
return url;
|
|
@@ -303,12 +327,14 @@ export default class RealtimeClient {
|
|
|
303
327
|
const query = new URLSearchParams(params);
|
|
304
328
|
return `${url}${prefix}${query}`;
|
|
305
329
|
}
|
|
330
|
+
/** @internal */
|
|
306
331
|
_flushSendBuffer() {
|
|
307
332
|
if (this.isConnected() && this.sendBuffer.length > 0) {
|
|
308
333
|
this.sendBuffer.forEach((callback) => callback());
|
|
309
334
|
this.sendBuffer = [];
|
|
310
335
|
}
|
|
311
336
|
}
|
|
337
|
+
/** @internal */
|
|
312
338
|
_sendHeartbeat() {
|
|
313
339
|
var _a;
|
|
314
340
|
if (!this.isConnected()) {
|
|
@@ -329,6 +355,7 @@ export default class RealtimeClient {
|
|
|
329
355
|
});
|
|
330
356
|
this.setAuth(this.accessToken);
|
|
331
357
|
}
|
|
358
|
+
/** @internal */
|
|
332
359
|
_throttle(callback, eventsPerSecondLimit = this.eventsPerSecondLimitMs) {
|
|
333
360
|
return () => {
|
|
334
361
|
if (this.inThrottle)
|