@supabase/realtime-js 2.84.0 → 2.84.1-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main/lib/constants.d.ts +2 -2
- package/dist/main/lib/constants.d.ts.map +1 -1
- package/dist/main/lib/serializer.d.ts +4 -1
- package/dist/main/lib/serializer.d.ts.map +1 -1
- package/dist/main/lib/serializer.js +49 -39
- package/dist/main/lib/serializer.js.map +1 -1
- package/dist/main/lib/version.d.ts +1 -1
- package/dist/main/lib/version.d.ts.map +1 -1
- package/dist/main/lib/version.js +1 -1
- package/dist/main/lib/version.js.map +1 -1
- package/dist/module/lib/constants.d.ts +2 -2
- package/dist/module/lib/constants.d.ts.map +1 -1
- package/dist/module/lib/serializer.d.ts +4 -1
- package/dist/module/lib/serializer.d.ts.map +1 -1
- package/dist/module/lib/serializer.js +49 -39
- package/dist/module/lib/serializer.js.map +1 -1
- package/dist/module/lib/version.d.ts +1 -1
- package/dist/module/lib/version.d.ts.map +1 -1
- package/dist/module/lib/version.js +1 -1
- package/dist/module/lib/version.js.map +1 -1
- package/dist/tsconfig.module.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/lib/serializer.ts +56 -41
- package/src/lib/version.ts +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export declare const DEFAULT_VERSION = "realtime-js/2.84.
|
|
1
|
+
export declare const DEFAULT_VERSION = "realtime-js/2.84.1-canary.1";
|
|
2
2
|
export declare const VSN_1_0_0: string;
|
|
3
3
|
export declare const VSN_2_0_0: string;
|
|
4
4
|
export declare const DEFAULT_VSN: string;
|
|
5
|
-
export declare const VERSION = "2.84.
|
|
5
|
+
export declare const VERSION = "2.84.1-canary.1";
|
|
6
6
|
export declare const DEFAULT_TIMEOUT = 10000;
|
|
7
7
|
export declare const WS_CLOSE_NORMAL = 1000;
|
|
8
8
|
export declare const MAX_PUSH_BUFFER_SIZE = 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,gCAA2B,CAAA;AAEvD,eAAO,MAAM,SAAS,EAAE,MAAgB,CAAA;AACxC,eAAO,MAAM,SAAS,EAAE,MAAgB,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAkB,CAAA;AAE5C,eAAO,MAAM,OAAO,oBAAU,CAAA;AAE9B,eAAO,MAAM,eAAe,QAAQ,CAAA;AAEpC,eAAO,MAAM,eAAe,OAAO,CAAA;AACnC,eAAO,MAAM,oBAAoB,MAAM,CAAA;AAEvC,oBAAY,aAAa;IACvB,UAAU,IAAI;IACd,IAAI,IAAI;IACR,OAAO,IAAI;IACX,MAAM,IAAI;CACX;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,cAAc;IACxB,KAAK,cAAc;IACnB,KAAK,cAAc;IACnB,IAAI,aAAa;IACjB,KAAK,cAAc;IACnB,KAAK,cAAc;IACnB,YAAY,iBAAiB;CAC9B;AAED,oBAAY,UAAU;IACpB,SAAS,cAAc;CACxB;AAED,oBAAY,gBAAgB;IAC1B,UAAU,eAAe;IACzB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
|
|
@@ -7,7 +7,6 @@ export type Msg<T> = {
|
|
|
7
7
|
};
|
|
8
8
|
export default class Serializer {
|
|
9
9
|
HEADER_LENGTH: number;
|
|
10
|
-
META_LENGTH: number;
|
|
11
10
|
USER_BROADCAST_PUSH_META_LENGTH: number;
|
|
12
11
|
KINDS: {
|
|
13
12
|
userBroadcastPush: number;
|
|
@@ -16,15 +15,19 @@ export default class Serializer {
|
|
|
16
15
|
BINARY_ENCODING: number;
|
|
17
16
|
JSON_ENCODING: number;
|
|
18
17
|
BROADCAST_EVENT: string;
|
|
18
|
+
allowedMetadataKeys: string[];
|
|
19
|
+
constructor(allowedMetadataKeys?: string[] | null);
|
|
19
20
|
encode(msg: Msg<{
|
|
20
21
|
[key: string]: any;
|
|
21
22
|
}>, callback: (result: ArrayBuffer | string) => any): any;
|
|
22
23
|
private _binaryEncodeUserBroadcastPush;
|
|
23
24
|
private _encodeBinaryUserBroadcastPush;
|
|
24
25
|
private _encodeJsonUserBroadcastPush;
|
|
26
|
+
private _encodeUserBroadcastPush;
|
|
25
27
|
decode(rawPayload: ArrayBuffer | string, callback: Function): any;
|
|
26
28
|
private _binaryDecode;
|
|
27
29
|
private _decodeUserBroadcast;
|
|
28
30
|
private _isArrayBuffer;
|
|
31
|
+
private _pick;
|
|
29
32
|
}
|
|
30
33
|
//# sourceMappingURL=serializer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,CAAA;CACX,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,aAAa,SAAI;IACjB
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,CAAA;CACX,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,aAAa,SAAI;IACjB,+BAA+B,SAAI;IACnC,KAAK;;;MAA6C;IAClD,eAAe,SAAI;IACnB,aAAa,SAAI;IACjB,eAAe,SAAc;IAE7B,mBAAmB,EAAE,MAAM,EAAE,CAAK;gBAEtB,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjD,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,KAAK,GAAG;IAexF,OAAO,CAAC,8BAA8B;IAQtC,OAAO,CAAC,8BAA8B;IAKtC,OAAO,CAAC,4BAA4B;IAOpC,OAAO,CAAC,wBAAwB;IAkEhC,MAAM,CAAC,UAAU,EAAE,WAAW,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAe3D,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,KAAK;CAMd"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
class Serializer {
|
|
4
|
-
constructor() {
|
|
4
|
+
constructor(allowedMetadataKeys) {
|
|
5
5
|
this.HEADER_LENGTH = 1;
|
|
6
|
-
this.
|
|
7
|
-
this.USER_BROADCAST_PUSH_META_LENGTH = 5;
|
|
6
|
+
this.USER_BROADCAST_PUSH_META_LENGTH = 6;
|
|
8
7
|
this.KINDS = { userBroadcastPush: 3, userBroadcast: 4 };
|
|
9
8
|
this.BINARY_ENCODING = 0;
|
|
10
9
|
this.JSON_ENCODING = 1;
|
|
11
10
|
this.BROADCAST_EVENT = 'broadcast';
|
|
11
|
+
this.allowedMetadataKeys = [];
|
|
12
|
+
this.allowedMetadataKeys = allowedMetadataKeys !== null && allowedMetadataKeys !== void 0 ? allowedMetadataKeys : [];
|
|
12
13
|
}
|
|
13
14
|
encode(msg, callback) {
|
|
14
15
|
if (msg.event === this.BROADCAST_EVENT &&
|
|
@@ -29,49 +30,50 @@ class Serializer {
|
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
_encodeBinaryUserBroadcastPush(message) {
|
|
32
|
-
var _a, _b
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
const joinRef = (_b = message.join_ref) !== null && _b !== void 0 ? _b : '';
|
|
36
|
-
const userEvent = message.payload.event;
|
|
37
|
-
const userPayload = (_d = (_c = message.payload) === null || _c === void 0 ? void 0 : _c.payload) !== null && _d !== void 0 ? _d : new ArrayBuffer(0);
|
|
38
|
-
const metaLength = this.USER_BROADCAST_PUSH_META_LENGTH +
|
|
39
|
-
joinRef.length +
|
|
40
|
-
ref.length +
|
|
41
|
-
topic.length +
|
|
42
|
-
userEvent.length;
|
|
43
|
-
const header = new ArrayBuffer(this.HEADER_LENGTH + metaLength);
|
|
44
|
-
let view = new DataView(header);
|
|
45
|
-
let offset = 0;
|
|
46
|
-
view.setUint8(offset++, this.KINDS.userBroadcastPush); // kind
|
|
47
|
-
view.setUint8(offset++, joinRef.length);
|
|
48
|
-
view.setUint8(offset++, ref.length);
|
|
49
|
-
view.setUint8(offset++, topic.length);
|
|
50
|
-
view.setUint8(offset++, userEvent.length);
|
|
51
|
-
view.setUint8(offset++, this.BINARY_ENCODING);
|
|
52
|
-
Array.from(joinRef, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
53
|
-
Array.from(ref, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
54
|
-
Array.from(topic, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
55
|
-
Array.from(userEvent, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
56
|
-
var combined = new Uint8Array(header.byteLength + userPayload.byteLength);
|
|
57
|
-
combined.set(new Uint8Array(header), 0);
|
|
58
|
-
combined.set(new Uint8Array(userPayload), header.byteLength);
|
|
59
|
-
return combined.buffer;
|
|
33
|
+
var _a, _b;
|
|
34
|
+
const userPayload = (_b = (_a = message.payload) === null || _a === void 0 ? void 0 : _a.payload) !== null && _b !== void 0 ? _b : new ArrayBuffer(0);
|
|
35
|
+
return this._encodeUserBroadcastPush(message, this.BINARY_ENCODING, userPayload);
|
|
60
36
|
}
|
|
61
37
|
_encodeJsonUserBroadcastPush(message) {
|
|
62
|
-
var _a, _b
|
|
38
|
+
var _a, _b;
|
|
39
|
+
const userPayload = (_b = (_a = message.payload) === null || _a === void 0 ? void 0 : _a.payload) !== null && _b !== void 0 ? _b : {};
|
|
40
|
+
const encoder = new TextEncoder();
|
|
41
|
+
const encodedUserPayload = encoder.encode(JSON.stringify(userPayload)).buffer;
|
|
42
|
+
return this._encodeUserBroadcastPush(message, this.JSON_ENCODING, encodedUserPayload);
|
|
43
|
+
}
|
|
44
|
+
_encodeUserBroadcastPush(message, encodingType, encodedPayload) {
|
|
45
|
+
var _a, _b;
|
|
63
46
|
const topic = message.topic;
|
|
64
47
|
const ref = (_a = message.ref) !== null && _a !== void 0 ? _a : '';
|
|
65
48
|
const joinRef = (_b = message.join_ref) !== null && _b !== void 0 ? _b : '';
|
|
66
49
|
const userEvent = message.payload.event;
|
|
67
|
-
|
|
68
|
-
const
|
|
69
|
-
|
|
50
|
+
// Filter metadata based on allowed keys
|
|
51
|
+
const rest = this.allowedMetadataKeys
|
|
52
|
+
? this._pick(message.payload, this.allowedMetadataKeys)
|
|
53
|
+
: {};
|
|
54
|
+
const metadata = Object.keys(rest).length === 0 ? '' : JSON.stringify(rest);
|
|
55
|
+
// Validate lengths don't exceed uint8 max value (255)
|
|
56
|
+
if (joinRef.length > 255) {
|
|
57
|
+
throw new Error(`joinRef length ${joinRef.length} exceeds maximum of 255`);
|
|
58
|
+
}
|
|
59
|
+
if (ref.length > 255) {
|
|
60
|
+
throw new Error(`ref length ${ref.length} exceeds maximum of 255`);
|
|
61
|
+
}
|
|
62
|
+
if (topic.length > 255) {
|
|
63
|
+
throw new Error(`topic length ${topic.length} exceeds maximum of 255`);
|
|
64
|
+
}
|
|
65
|
+
if (userEvent.length > 255) {
|
|
66
|
+
throw new Error(`userEvent length ${userEvent.length} exceeds maximum of 255`);
|
|
67
|
+
}
|
|
68
|
+
if (metadata.length > 255) {
|
|
69
|
+
throw new Error(`metadata length ${metadata.length} exceeds maximum of 255`);
|
|
70
|
+
}
|
|
70
71
|
const metaLength = this.USER_BROADCAST_PUSH_META_LENGTH +
|
|
71
72
|
joinRef.length +
|
|
72
73
|
ref.length +
|
|
73
74
|
topic.length +
|
|
74
|
-
userEvent.length
|
|
75
|
+
userEvent.length +
|
|
76
|
+
metadata.length;
|
|
75
77
|
const header = new ArrayBuffer(this.HEADER_LENGTH + metaLength);
|
|
76
78
|
let view = new DataView(header);
|
|
77
79
|
let offset = 0;
|
|
@@ -80,14 +82,16 @@ class Serializer {
|
|
|
80
82
|
view.setUint8(offset++, ref.length);
|
|
81
83
|
view.setUint8(offset++, topic.length);
|
|
82
84
|
view.setUint8(offset++, userEvent.length);
|
|
83
|
-
view.setUint8(offset++,
|
|
85
|
+
view.setUint8(offset++, metadata.length);
|
|
86
|
+
view.setUint8(offset++, encodingType);
|
|
84
87
|
Array.from(joinRef, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
85
88
|
Array.from(ref, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
86
89
|
Array.from(topic, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
87
90
|
Array.from(userEvent, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
88
|
-
|
|
91
|
+
Array.from(metadata, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
92
|
+
var combined = new Uint8Array(header.byteLength + encodedPayload.byteLength);
|
|
89
93
|
combined.set(new Uint8Array(header), 0);
|
|
90
|
-
combined.set(new Uint8Array(
|
|
94
|
+
combined.set(new Uint8Array(encodedPayload), header.byteLength);
|
|
91
95
|
return combined.buffer;
|
|
92
96
|
}
|
|
93
97
|
decode(rawPayload, callback) {
|
|
@@ -140,6 +144,12 @@ class Serializer {
|
|
|
140
144
|
var _a;
|
|
141
145
|
return buffer instanceof ArrayBuffer || ((_a = buffer === null || buffer === void 0 ? void 0 : buffer.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'ArrayBuffer';
|
|
142
146
|
}
|
|
147
|
+
_pick(obj, keys) {
|
|
148
|
+
if (!obj || typeof obj !== 'object') {
|
|
149
|
+
return {};
|
|
150
|
+
}
|
|
151
|
+
return Object.fromEntries(Object.entries(obj).filter(([key]) => keys.includes(key)));
|
|
152
|
+
}
|
|
143
153
|
}
|
|
144
154
|
exports.default = Serializer;
|
|
145
155
|
//# sourceMappingURL=serializer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":";;AAUA,MAAqB,UAAU;
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "2.84.
|
|
1
|
+
export declare const version = "2.84.1-canary.1";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,oBAAoB,CAAA"}
|
package/dist/main/lib/version.js
CHANGED
|
@@ -7,5 +7,5 @@ exports.version = void 0;
|
|
|
7
7
|
// - Debugging and support (identifying which version is running)
|
|
8
8
|
// - Telemetry and logging (version reporting in errors/analytics)
|
|
9
9
|
// - Ensuring build artifacts match the published package version
|
|
10
|
-
exports.version = '2.84.
|
|
10
|
+
exports.version = '2.84.1-canary.1';
|
|
11
11
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":";;;AAAA,6EAA6E;AAC7E,gEAAgE;AAChE,uEAAuE;AACvE,iEAAiE;AACjE,kEAAkE;AAClE,iEAAiE;AACpD,QAAA,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":";;;AAAA,6EAA6E;AAC7E,gEAAgE;AAChE,uEAAuE;AACvE,iEAAiE;AACjE,kEAAkE;AAClE,iEAAiE;AACpD,QAAA,OAAO,GAAG,iBAAiB,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
export declare const DEFAULT_VERSION = "realtime-js/2.84.
|
|
1
|
+
export declare const DEFAULT_VERSION = "realtime-js/2.84.1-canary.1";
|
|
2
2
|
export declare const VSN_1_0_0: string;
|
|
3
3
|
export declare const VSN_2_0_0: string;
|
|
4
4
|
export declare const DEFAULT_VSN: string;
|
|
5
|
-
export declare const VERSION = "2.84.
|
|
5
|
+
export declare const VERSION = "2.84.1-canary.1";
|
|
6
6
|
export declare const DEFAULT_TIMEOUT = 10000;
|
|
7
7
|
export declare const WS_CLOSE_NORMAL = 1000;
|
|
8
8
|
export declare const MAX_PUSH_BUFFER_SIZE = 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,gCAA2B,CAAA;AAEvD,eAAO,MAAM,SAAS,EAAE,MAAgB,CAAA;AACxC,eAAO,MAAM,SAAS,EAAE,MAAgB,CAAA;AACxC,eAAO,MAAM,WAAW,EAAE,MAAkB,CAAA;AAE5C,eAAO,MAAM,OAAO,oBAAU,CAAA;AAE9B,eAAO,MAAM,eAAe,QAAQ,CAAA;AAEpC,eAAO,MAAM,eAAe,OAAO,CAAA;AACnC,eAAO,MAAM,oBAAoB,MAAM,CAAA;AAEvC,oBAAY,aAAa;IACvB,UAAU,IAAI;IACd,IAAI,IAAI;IACR,OAAO,IAAI;IACX,MAAM,IAAI;CACX;AAED,oBAAY,cAAc;IACxB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,oBAAY,cAAc;IACxB,KAAK,cAAc;IACnB,KAAK,cAAc;IACnB,IAAI,aAAa;IACjB,KAAK,cAAc;IACnB,KAAK,cAAc;IACnB,YAAY,iBAAiB;CAC9B;AAED,oBAAY,UAAU;IACpB,SAAS,cAAc;CACxB;AAED,oBAAY,gBAAgB;IAC1B,UAAU,eAAe;IACzB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB"}
|
|
@@ -7,7 +7,6 @@ export type Msg<T> = {
|
|
|
7
7
|
};
|
|
8
8
|
export default class Serializer {
|
|
9
9
|
HEADER_LENGTH: number;
|
|
10
|
-
META_LENGTH: number;
|
|
11
10
|
USER_BROADCAST_PUSH_META_LENGTH: number;
|
|
12
11
|
KINDS: {
|
|
13
12
|
userBroadcastPush: number;
|
|
@@ -16,15 +15,19 @@ export default class Serializer {
|
|
|
16
15
|
BINARY_ENCODING: number;
|
|
17
16
|
JSON_ENCODING: number;
|
|
18
17
|
BROADCAST_EVENT: string;
|
|
18
|
+
allowedMetadataKeys: string[];
|
|
19
|
+
constructor(allowedMetadataKeys?: string[] | null);
|
|
19
20
|
encode(msg: Msg<{
|
|
20
21
|
[key: string]: any;
|
|
21
22
|
}>, callback: (result: ArrayBuffer | string) => any): any;
|
|
22
23
|
private _binaryEncodeUserBroadcastPush;
|
|
23
24
|
private _encodeBinaryUserBroadcastPush;
|
|
24
25
|
private _encodeJsonUserBroadcastPush;
|
|
26
|
+
private _encodeUserBroadcastPush;
|
|
25
27
|
decode(rawPayload: ArrayBuffer | string, callback: Function): any;
|
|
26
28
|
private _binaryDecode;
|
|
27
29
|
private _decodeUserBroadcast;
|
|
28
30
|
private _isArrayBuffer;
|
|
31
|
+
private _pick;
|
|
29
32
|
}
|
|
30
33
|
//# sourceMappingURL=serializer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,CAAA;CACX,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,aAAa,SAAI;IACjB
|
|
1
|
+
{"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,CAAA;CACX,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;IAC7B,aAAa,SAAI;IACjB,+BAA+B,SAAI;IACnC,KAAK;;;MAA6C;IAClD,eAAe,SAAI;IACnB,aAAa,SAAI;IACjB,eAAe,SAAc;IAE7B,mBAAmB,EAAE,MAAM,EAAE,CAAK;gBAEtB,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAIjD,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,KAAK,GAAG;IAexF,OAAO,CAAC,8BAA8B;IAQtC,OAAO,CAAC,8BAA8B;IAKtC,OAAO,CAAC,4BAA4B;IAOpC,OAAO,CAAC,wBAAwB;IAkEhC,MAAM,CAAC,UAAU,EAAE,WAAW,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAe3D,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,oBAAoB;IA0C5B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,KAAK;CAMd"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
export default class Serializer {
|
|
2
|
-
constructor() {
|
|
2
|
+
constructor(allowedMetadataKeys) {
|
|
3
3
|
this.HEADER_LENGTH = 1;
|
|
4
|
-
this.
|
|
5
|
-
this.USER_BROADCAST_PUSH_META_LENGTH = 5;
|
|
4
|
+
this.USER_BROADCAST_PUSH_META_LENGTH = 6;
|
|
6
5
|
this.KINDS = { userBroadcastPush: 3, userBroadcast: 4 };
|
|
7
6
|
this.BINARY_ENCODING = 0;
|
|
8
7
|
this.JSON_ENCODING = 1;
|
|
9
8
|
this.BROADCAST_EVENT = 'broadcast';
|
|
9
|
+
this.allowedMetadataKeys = [];
|
|
10
|
+
this.allowedMetadataKeys = allowedMetadataKeys !== null && allowedMetadataKeys !== void 0 ? allowedMetadataKeys : [];
|
|
10
11
|
}
|
|
11
12
|
encode(msg, callback) {
|
|
12
13
|
if (msg.event === this.BROADCAST_EVENT &&
|
|
@@ -27,49 +28,50 @@ export default class Serializer {
|
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
30
|
_encodeBinaryUserBroadcastPush(message) {
|
|
30
|
-
var _a, _b
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
const joinRef = (_b = message.join_ref) !== null && _b !== void 0 ? _b : '';
|
|
34
|
-
const userEvent = message.payload.event;
|
|
35
|
-
const userPayload = (_d = (_c = message.payload) === null || _c === void 0 ? void 0 : _c.payload) !== null && _d !== void 0 ? _d : new ArrayBuffer(0);
|
|
36
|
-
const metaLength = this.USER_BROADCAST_PUSH_META_LENGTH +
|
|
37
|
-
joinRef.length +
|
|
38
|
-
ref.length +
|
|
39
|
-
topic.length +
|
|
40
|
-
userEvent.length;
|
|
41
|
-
const header = new ArrayBuffer(this.HEADER_LENGTH + metaLength);
|
|
42
|
-
let view = new DataView(header);
|
|
43
|
-
let offset = 0;
|
|
44
|
-
view.setUint8(offset++, this.KINDS.userBroadcastPush); // kind
|
|
45
|
-
view.setUint8(offset++, joinRef.length);
|
|
46
|
-
view.setUint8(offset++, ref.length);
|
|
47
|
-
view.setUint8(offset++, topic.length);
|
|
48
|
-
view.setUint8(offset++, userEvent.length);
|
|
49
|
-
view.setUint8(offset++, this.BINARY_ENCODING);
|
|
50
|
-
Array.from(joinRef, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
51
|
-
Array.from(ref, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
52
|
-
Array.from(topic, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
53
|
-
Array.from(userEvent, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
54
|
-
var combined = new Uint8Array(header.byteLength + userPayload.byteLength);
|
|
55
|
-
combined.set(new Uint8Array(header), 0);
|
|
56
|
-
combined.set(new Uint8Array(userPayload), header.byteLength);
|
|
57
|
-
return combined.buffer;
|
|
31
|
+
var _a, _b;
|
|
32
|
+
const userPayload = (_b = (_a = message.payload) === null || _a === void 0 ? void 0 : _a.payload) !== null && _b !== void 0 ? _b : new ArrayBuffer(0);
|
|
33
|
+
return this._encodeUserBroadcastPush(message, this.BINARY_ENCODING, userPayload);
|
|
58
34
|
}
|
|
59
35
|
_encodeJsonUserBroadcastPush(message) {
|
|
60
|
-
var _a, _b
|
|
36
|
+
var _a, _b;
|
|
37
|
+
const userPayload = (_b = (_a = message.payload) === null || _a === void 0 ? void 0 : _a.payload) !== null && _b !== void 0 ? _b : {};
|
|
38
|
+
const encoder = new TextEncoder();
|
|
39
|
+
const encodedUserPayload = encoder.encode(JSON.stringify(userPayload)).buffer;
|
|
40
|
+
return this._encodeUserBroadcastPush(message, this.JSON_ENCODING, encodedUserPayload);
|
|
41
|
+
}
|
|
42
|
+
_encodeUserBroadcastPush(message, encodingType, encodedPayload) {
|
|
43
|
+
var _a, _b;
|
|
61
44
|
const topic = message.topic;
|
|
62
45
|
const ref = (_a = message.ref) !== null && _a !== void 0 ? _a : '';
|
|
63
46
|
const joinRef = (_b = message.join_ref) !== null && _b !== void 0 ? _b : '';
|
|
64
47
|
const userEvent = message.payload.event;
|
|
65
|
-
|
|
66
|
-
const
|
|
67
|
-
|
|
48
|
+
// Filter metadata based on allowed keys
|
|
49
|
+
const rest = this.allowedMetadataKeys
|
|
50
|
+
? this._pick(message.payload, this.allowedMetadataKeys)
|
|
51
|
+
: {};
|
|
52
|
+
const metadata = Object.keys(rest).length === 0 ? '' : JSON.stringify(rest);
|
|
53
|
+
// Validate lengths don't exceed uint8 max value (255)
|
|
54
|
+
if (joinRef.length > 255) {
|
|
55
|
+
throw new Error(`joinRef length ${joinRef.length} exceeds maximum of 255`);
|
|
56
|
+
}
|
|
57
|
+
if (ref.length > 255) {
|
|
58
|
+
throw new Error(`ref length ${ref.length} exceeds maximum of 255`);
|
|
59
|
+
}
|
|
60
|
+
if (topic.length > 255) {
|
|
61
|
+
throw new Error(`topic length ${topic.length} exceeds maximum of 255`);
|
|
62
|
+
}
|
|
63
|
+
if (userEvent.length > 255) {
|
|
64
|
+
throw new Error(`userEvent length ${userEvent.length} exceeds maximum of 255`);
|
|
65
|
+
}
|
|
66
|
+
if (metadata.length > 255) {
|
|
67
|
+
throw new Error(`metadata length ${metadata.length} exceeds maximum of 255`);
|
|
68
|
+
}
|
|
68
69
|
const metaLength = this.USER_BROADCAST_PUSH_META_LENGTH +
|
|
69
70
|
joinRef.length +
|
|
70
71
|
ref.length +
|
|
71
72
|
topic.length +
|
|
72
|
-
userEvent.length
|
|
73
|
+
userEvent.length +
|
|
74
|
+
metadata.length;
|
|
73
75
|
const header = new ArrayBuffer(this.HEADER_LENGTH + metaLength);
|
|
74
76
|
let view = new DataView(header);
|
|
75
77
|
let offset = 0;
|
|
@@ -78,14 +80,16 @@ export default class Serializer {
|
|
|
78
80
|
view.setUint8(offset++, ref.length);
|
|
79
81
|
view.setUint8(offset++, topic.length);
|
|
80
82
|
view.setUint8(offset++, userEvent.length);
|
|
81
|
-
view.setUint8(offset++,
|
|
83
|
+
view.setUint8(offset++, metadata.length);
|
|
84
|
+
view.setUint8(offset++, encodingType);
|
|
82
85
|
Array.from(joinRef, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
83
86
|
Array.from(ref, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
84
87
|
Array.from(topic, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
85
88
|
Array.from(userEvent, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
86
|
-
|
|
89
|
+
Array.from(metadata, (char) => view.setUint8(offset++, char.charCodeAt(0)));
|
|
90
|
+
var combined = new Uint8Array(header.byteLength + encodedPayload.byteLength);
|
|
87
91
|
combined.set(new Uint8Array(header), 0);
|
|
88
|
-
combined.set(new Uint8Array(
|
|
92
|
+
combined.set(new Uint8Array(encodedPayload), header.byteLength);
|
|
89
93
|
return combined.buffer;
|
|
90
94
|
}
|
|
91
95
|
decode(rawPayload, callback) {
|
|
@@ -138,5 +142,11 @@ export default class Serializer {
|
|
|
138
142
|
var _a;
|
|
139
143
|
return buffer instanceof ArrayBuffer || ((_a = buffer === null || buffer === void 0 ? void 0 : buffer.constructor) === null || _a === void 0 ? void 0 : _a.name) === 'ArrayBuffer';
|
|
140
144
|
}
|
|
145
|
+
_pick(obj, keys) {
|
|
146
|
+
if (!obj || typeof obj !== 'object') {
|
|
147
|
+
return {};
|
|
148
|
+
}
|
|
149
|
+
return Object.fromEntries(Object.entries(obj).filter(([key]) => keys.includes(key)));
|
|
150
|
+
}
|
|
141
151
|
}
|
|
142
152
|
//# sourceMappingURL=serializer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,OAAO,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../src/lib/serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const version = "2.84.
|
|
1
|
+
export declare const version = "2.84.1-canary.1";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,OAAO,oBAAoB,CAAA"}
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
// - Debugging and support (identifying which version is running)
|
|
5
5
|
// - Telemetry and logging (version reporting in errors/analytics)
|
|
6
6
|
// - Ensuring build artifacts match the published package version
|
|
7
|
-
export const version = '2.84.
|
|
7
|
+
export const version = '2.84.1-canary.1';
|
|
8
8
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,gEAAgE;AAChE,uEAAuE;AACvE,iEAAiE;AACjE,kEAAkE;AAClE,iEAAiE;AACjE,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/lib/version.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,gEAAgE;AAChE,uEAAuE;AACvE,iEAAiE;AACjE,kEAAkE;AAClE,iEAAiE;AACjE,MAAM,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAA"}
|