@syncular/core 0.0.6-188 → 0.0.6-202
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-chunks.d.ts","sourceRoot":"","sources":["../src/snapshot-chunks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAChE,MAAM,MAAM,yBAAyB,GAAG,OAAO,4BAA4B,CAAC;AAE5E,eAAO,MAAM,+BAA+B,SAAS,CAAC;AACtD,MAAM,MAAM,4BAA4B,GACtC,OAAO,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot-chunks.d.ts","sourceRoot":"","sources":["../src/snapshot-chunks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAChE,MAAM,MAAM,yBAAyB,GAAG,OAAO,4BAA4B,CAAC;AAE5E,eAAO,MAAM,+BAA+B,SAAS,CAAC;AACtD,MAAM,MAAM,4BAA4B,GACtC,OAAO,+BAA+B,CAAC;AAazC;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CA0B5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,OAAO,EAAE,GAAG,UAAU,CASvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,EAAE,CAmC/D"}
|
package/dist/snapshot-chunks.js
CHANGED
|
@@ -6,6 +6,8 @@ export const SYNC_SNAPSHOT_CHUNK_COMPRESSION = 'gzip';
|
|
|
6
6
|
const SNAPSHOT_ROW_FRAME_MAGIC = new Uint8Array([0x53, 0x52, 0x46, 0x31]); // "SRF1"
|
|
7
7
|
const FRAME_LENGTH_BYTES = 4;
|
|
8
8
|
const MAX_FRAME_BYTE_LENGTH = 0xffff_ffff;
|
|
9
|
+
const snapshotRowFrameEncoder = new TextEncoder();
|
|
10
|
+
const snapshotRowFrameDecoder = new TextDecoder();
|
|
9
11
|
function normalizeRowJson(row) {
|
|
10
12
|
const serialized = JSON.stringify(row);
|
|
11
13
|
return serialized === undefined ? 'null' : serialized;
|
|
@@ -14,11 +16,10 @@ function normalizeRowJson(row) {
|
|
|
14
16
|
* Encode rows as framed JSON bytes without the format header.
|
|
15
17
|
*/
|
|
16
18
|
export function encodeSnapshotRowFrames(rows) {
|
|
17
|
-
const encoder = new TextEncoder();
|
|
18
19
|
const payloads = [];
|
|
19
20
|
let totalByteLength = 0;
|
|
20
21
|
for (const row of rows) {
|
|
21
|
-
const payload =
|
|
22
|
+
const payload = snapshotRowFrameEncoder.encode(normalizeRowJson(row));
|
|
22
23
|
if (payload.length > MAX_FRAME_BYTE_LENGTH) {
|
|
23
24
|
throw new Error(`Snapshot row payload exceeds ${MAX_FRAME_BYTE_LENGTH} bytes`);
|
|
24
25
|
}
|
|
@@ -68,7 +69,6 @@ export function decodeSnapshotRows(bytes) {
|
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
71
|
const rows = [];
|
|
71
|
-
const decoder = new TextDecoder();
|
|
72
72
|
const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.length);
|
|
73
73
|
let offset = SNAPSHOT_ROW_FRAME_MAGIC.length;
|
|
74
74
|
while (offset < bytes.length) {
|
|
@@ -82,7 +82,7 @@ export function decodeSnapshotRows(bytes) {
|
|
|
82
82
|
}
|
|
83
83
|
const payload = bytes.subarray(offset, offset + payloadLength);
|
|
84
84
|
offset += payloadLength;
|
|
85
|
-
rows.push(JSON.parse(
|
|
85
|
+
rows.push(JSON.parse(snapshotRowFrameDecoder.decode(payload)));
|
|
86
86
|
}
|
|
87
87
|
return rows;
|
|
88
88
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-chunks.js","sourceRoot":"","sources":["../src/snapshot-chunks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,mBAAmB,CAAC;AAGhE,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAItD,MAAM,wBAAwB,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;AACpF,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,qBAAqB,GAAG,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot-chunks.js","sourceRoot":"","sources":["../src/snapshot-chunks.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/snapshot-chunks.ts
CHANGED
|
@@ -12,6 +12,8 @@ export type SyncSnapshotChunkCompression =
|
|
|
12
12
|
const SNAPSHOT_ROW_FRAME_MAGIC = new Uint8Array([0x53, 0x52, 0x46, 0x31]); // "SRF1"
|
|
13
13
|
const FRAME_LENGTH_BYTES = 4;
|
|
14
14
|
const MAX_FRAME_BYTE_LENGTH = 0xffff_ffff;
|
|
15
|
+
const snapshotRowFrameEncoder = new TextEncoder();
|
|
16
|
+
const snapshotRowFrameDecoder = new TextDecoder();
|
|
15
17
|
|
|
16
18
|
function normalizeRowJson(row: unknown): string {
|
|
17
19
|
const serialized = JSON.stringify(row);
|
|
@@ -22,12 +24,11 @@ function normalizeRowJson(row: unknown): string {
|
|
|
22
24
|
* Encode rows as framed JSON bytes without the format header.
|
|
23
25
|
*/
|
|
24
26
|
export function encodeSnapshotRowFrames(rows: readonly unknown[]): Uint8Array {
|
|
25
|
-
const encoder = new TextEncoder();
|
|
26
27
|
const payloads: Uint8Array[] = [];
|
|
27
28
|
let totalByteLength = 0;
|
|
28
29
|
|
|
29
30
|
for (const row of rows) {
|
|
30
|
-
const payload =
|
|
31
|
+
const payload = snapshotRowFrameEncoder.encode(normalizeRowJson(row));
|
|
31
32
|
if (payload.length > MAX_FRAME_BYTE_LENGTH) {
|
|
32
33
|
throw new Error(
|
|
33
34
|
`Snapshot row payload exceeds ${MAX_FRAME_BYTE_LENGTH} bytes`
|
|
@@ -87,7 +88,6 @@ export function decodeSnapshotRows(bytes: Uint8Array): unknown[] {
|
|
|
87
88
|
}
|
|
88
89
|
|
|
89
90
|
const rows: unknown[] = [];
|
|
90
|
-
const decoder = new TextDecoder();
|
|
91
91
|
const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.length);
|
|
92
92
|
let offset = SNAPSHOT_ROW_FRAME_MAGIC.length;
|
|
93
93
|
|
|
@@ -105,7 +105,7 @@ export function decodeSnapshotRows(bytes: Uint8Array): unknown[] {
|
|
|
105
105
|
|
|
106
106
|
const payload = bytes.subarray(offset, offset + payloadLength);
|
|
107
107
|
offset += payloadLength;
|
|
108
|
-
rows.push(JSON.parse(
|
|
108
|
+
rows.push(JSON.parse(snapshotRowFrameDecoder.decode(payload)));
|
|
109
109
|
}
|
|
110
110
|
|
|
111
111
|
return rows;
|