@korajs/sync 1.0.0-beta.10 → 1.0.0-beta.12
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/index.cjs +389 -36
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +39 -2
- package/dist/index.d.ts +39 -2
- package/dist/index.js +388 -36
- package/dist/index.js.map +1 -1
- package/dist/internal.d.cts +1 -1
- package/dist/internal.d.ts +1 -1
- package/dist/{transport-B2GQerqJ.d.cts → transport-CJvRO5ix.d.cts} +84 -5
- package/dist/{transport-B2GQerqJ.d.ts → transport-CJvRO5ix.d.ts} +84 -5
- package/package.json +3 -3
package/dist/internal.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as SyncTransport, T as TransportOptions, a as SyncMessage, d as TransportMessageHandler, e as TransportCloseHandler, f as TransportErrorHandler, Q as QueueStorage } from './transport-
|
|
1
|
+
import { c as SyncTransport, T as TransportOptions, a as SyncMessage, d as TransportMessageHandler, e as TransportCloseHandler, f as TransportErrorHandler, Q as QueueStorage } from './transport-CJvRO5ix.cjs';
|
|
2
2
|
import { Operation } from '@korajs/core';
|
|
3
3
|
|
|
4
4
|
/**
|
package/dist/internal.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as SyncTransport, T as TransportOptions, a as SyncMessage, d as TransportMessageHandler, e as TransportCloseHandler, f as TransportErrorHandler, Q as QueueStorage } from './transport-
|
|
1
|
+
import { c as SyncTransport, T as TransportOptions, a as SyncMessage, d as TransportMessageHandler, e as TransportCloseHandler, f as TransportErrorHandler, Q as QueueStorage } from './transport-CJvRO5ix.js';
|
|
2
2
|
import { Operation } from '@korajs/core';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -93,14 +93,27 @@ type SyncState = (typeof SYNC_STATES)[number];
|
|
|
93
93
|
/**
|
|
94
94
|
* Developer-facing sync status. Simplified view of the internal state.
|
|
95
95
|
*/
|
|
96
|
-
declare const SYNC_STATUSES: readonly ["connected", "reconnecting", "syncing", "synced", "offline", "clock-error", "error", "schema-mismatch"];
|
|
96
|
+
declare const SYNC_STATUSES: readonly ["connected", "reconnecting", "syncing", "synced", "offline", "clock-error", "error", "schema-mismatch", "auth-required"];
|
|
97
97
|
type SyncStatus = (typeof SYNC_STATUSES)[number];
|
|
98
|
+
type SyncPhase = 'suspended' | 'offline' | 'connecting' | 'authenticating' | 'handshaking' | 'uploading' | 'receiving' | 'applying' | 'streaming' | 'blocked';
|
|
99
|
+
interface ActiveApplyFailure {
|
|
100
|
+
operationId: string;
|
|
101
|
+
collection: string;
|
|
102
|
+
recordId: string;
|
|
103
|
+
code: string;
|
|
104
|
+
message: string;
|
|
105
|
+
retriable: boolean;
|
|
106
|
+
firstSeenAt: number;
|
|
107
|
+
retryCount: number;
|
|
108
|
+
}
|
|
98
109
|
/**
|
|
99
110
|
* Sync status information exposed to developers.
|
|
100
111
|
*/
|
|
101
112
|
interface SyncStatusInfo {
|
|
102
113
|
/** Current developer-facing status */
|
|
103
114
|
status: SyncStatus;
|
|
115
|
+
phase?: SyncPhase;
|
|
116
|
+
reason?: string;
|
|
104
117
|
/** True when the engine is actively trying to re-establish a transport session. */
|
|
105
118
|
reconnecting: boolean;
|
|
106
119
|
/** Number of operations waiting to be sent */
|
|
@@ -115,7 +128,47 @@ interface SyncStatusInfo {
|
|
|
115
128
|
conflicts: number;
|
|
116
129
|
/** serverTime - localTime in ms measured at the last handshake, or null before first connect. Negative = this device's clock is fast. */
|
|
117
130
|
clockSkewMs: number | null;
|
|
131
|
+
inFlightUploadOperations?: number;
|
|
132
|
+
hasInFlightDeliveryBatch?: boolean;
|
|
133
|
+
activeViewId?: string;
|
|
134
|
+
activeViewComplete?: boolean;
|
|
135
|
+
initialSync?: {
|
|
136
|
+
complete: boolean;
|
|
137
|
+
receivedBatches: number;
|
|
138
|
+
totalBatches: number | null;
|
|
139
|
+
progress: number | null;
|
|
140
|
+
};
|
|
141
|
+
deliveryWatermark?: number;
|
|
142
|
+
serverFrontier?: number | null;
|
|
143
|
+
blockedFailure?: ActiveApplyFailure | null;
|
|
118
144
|
}
|
|
145
|
+
interface SyncSettlementOptions {
|
|
146
|
+
upload?: boolean;
|
|
147
|
+
download?: 'active-view' | false;
|
|
148
|
+
timeoutMs?: number;
|
|
149
|
+
signal?: AbortSignal;
|
|
150
|
+
}
|
|
151
|
+
type SyncSettlementResult = {
|
|
152
|
+
outcome: 'settled';
|
|
153
|
+
status: SyncStatusInfo;
|
|
154
|
+
} | {
|
|
155
|
+
outcome: 'offline';
|
|
156
|
+
status: SyncStatusInfo;
|
|
157
|
+
} | {
|
|
158
|
+
outcome: 'suspended';
|
|
159
|
+
reason: string;
|
|
160
|
+
status: SyncStatusInfo;
|
|
161
|
+
} | {
|
|
162
|
+
outcome: 'blocked';
|
|
163
|
+
failure: ActiveApplyFailure;
|
|
164
|
+
status: SyncStatusInfo;
|
|
165
|
+
} | {
|
|
166
|
+
outcome: 'timeout';
|
|
167
|
+
status: SyncStatusInfo;
|
|
168
|
+
} | {
|
|
169
|
+
outcome: 'aborted';
|
|
170
|
+
status: SyncStatusInfo;
|
|
171
|
+
};
|
|
119
172
|
/**
|
|
120
173
|
* Per-collection sync scope map. Maps collection names to field-value filters.
|
|
121
174
|
* Empty filter `{}` means no restriction (all records visible).
|
|
@@ -134,6 +187,16 @@ interface SyncConfig {
|
|
|
134
187
|
auth?: () => Promise<{
|
|
135
188
|
token: string;
|
|
136
189
|
}>;
|
|
190
|
+
/** Auth readiness gate. A suspended result prevents transport creation and retries. */
|
|
191
|
+
authState?: () => Promise<{
|
|
192
|
+
state: 'loading' | 'signed-out' | 'anonymous' | 'authenticated';
|
|
193
|
+
mayConnectAnonymously?: boolean;
|
|
194
|
+
}>;
|
|
195
|
+
querySubsets?: {
|
|
196
|
+
mode?: 'reactive' | 'static' | 'disabled';
|
|
197
|
+
};
|
|
198
|
+
/** Client-local behavior for records leaving the accepted downlink scope. Defaults to `retain`. */
|
|
199
|
+
scopeExit?: 'retain' | 'retract';
|
|
137
200
|
/** Sync scopes per collection. Limits which records sync to this client. */
|
|
138
201
|
scopes?: Record<string, (ctx: SyncScopeContext) => Record<string, unknown>>;
|
|
139
202
|
/**
|
|
@@ -150,6 +213,10 @@ interface SyncConfig {
|
|
|
150
213
|
* Defaults to 30000ms. Set to 0 to disable the watchdog.
|
|
151
214
|
*/
|
|
152
215
|
outboundAckTimeoutMs?: number;
|
|
216
|
+
/** Initial delay before resending a transiently rejected outbound operation. Defaults to 250ms. */
|
|
217
|
+
outboundRetryBaseDelayMs?: number;
|
|
218
|
+
/** Maximum transient-operation retry delay. Defaults to 30000ms. */
|
|
219
|
+
outboundRetryMaxDelayMs?: number;
|
|
153
220
|
/** Initial reconnection delay in ms. Defaults to 1000. */
|
|
154
221
|
reconnectInterval?: number;
|
|
155
222
|
/** Maximum reconnection delay in ms. Defaults to 30000. */
|
|
@@ -307,10 +374,10 @@ interface SyncQuerySubset {
|
|
|
307
374
|
* for its collection. Collections without query subsets pass through.
|
|
308
375
|
*/
|
|
309
376
|
declare function operationMatchesQuerySubsets(op: Operation, subsets: SyncQuerySubset[] | undefined, fullRecord?: Record<string, unknown> | null): boolean;
|
|
310
|
-
/**
|
|
311
|
-
* Deduplicate query subsets by collection + where JSON key.
|
|
312
|
-
*/
|
|
377
|
+
/** Canonicalize equality subsets and remove subsets already covered by a broader one. */
|
|
313
378
|
declare function dedupeQuerySubsets(subsets: SyncQuerySubset[]): SyncQuerySubset[];
|
|
379
|
+
/** True when every record selected by `narrow` is also selected by `broad`. */
|
|
380
|
+
declare function querySubsetContains(broad: SyncQuerySubset[], narrow: SyncQuerySubset[]): boolean;
|
|
314
381
|
|
|
315
382
|
type WireFormat = 'json' | 'protobuf';
|
|
316
383
|
/**
|
|
@@ -362,6 +429,8 @@ interface HandshakeMessage {
|
|
|
362
429
|
* cursor for the server->client direction. Optional, so old servers ignore it.
|
|
363
430
|
*/
|
|
364
431
|
lastDeliverySequence?: number;
|
|
432
|
+
/** Opt in to client-local removal when records leave the accepted downlink view. */
|
|
433
|
+
scopeExitPolicy?: 'retain' | 'retract';
|
|
365
434
|
}
|
|
366
435
|
/**
|
|
367
436
|
* Server response to a handshake.
|
|
@@ -381,6 +450,10 @@ interface HandshakeResponseMessage {
|
|
|
381
450
|
selectedWireFormat?: WireFormat;
|
|
382
451
|
/** The server-accepted per-collection sync scope. Confirms what data will be synced. */
|
|
383
452
|
acceptedScope?: Record<string, Record<string, unknown>>;
|
|
453
|
+
/** Server-authoritative scope for records delivered to this client. */
|
|
454
|
+
acceptedDownlinkScopes?: Record<string, Record<string, unknown>>;
|
|
455
|
+
/** Server-authoritative scope for operations uploaded by this client. */
|
|
456
|
+
acceptedUplinkScopes?: Record<string, Record<string, unknown>>;
|
|
384
457
|
/** Server wall-clock time (ms since epoch) at response creation. Lets clients measure their own clock skew. */
|
|
385
458
|
serverTime?: number;
|
|
386
459
|
/**
|
|
@@ -404,6 +477,8 @@ interface OperationBatchMessage {
|
|
|
404
477
|
type: 'operation-batch';
|
|
405
478
|
messageId: string;
|
|
406
479
|
operations: SerializedOperation[];
|
|
480
|
+
/** Client-local authorization removals; these are never domain delete operations. */
|
|
481
|
+
retractions?: ScopeRetraction[];
|
|
407
482
|
/** True if this is the last batch in the delta exchange phase */
|
|
408
483
|
isFinal: boolean;
|
|
409
484
|
/** Index of this batch (0-based) for ordering */
|
|
@@ -427,6 +502,10 @@ interface OperationBatchMessage {
|
|
|
427
502
|
baseDeliverySequence?: number;
|
|
428
503
|
maxDeliverySequence?: number;
|
|
429
504
|
}
|
|
505
|
+
interface ScopeRetraction {
|
|
506
|
+
collection: string;
|
|
507
|
+
recordId: string;
|
|
508
|
+
}
|
|
430
509
|
/**
|
|
431
510
|
* Acknowledgment of a received message.
|
|
432
511
|
*/
|
|
@@ -663,4 +742,4 @@ interface SyncTransport {
|
|
|
663
742
|
isConnected(): boolean;
|
|
664
743
|
}
|
|
665
744
|
|
|
666
|
-
export {
|
|
745
|
+
export { isHandshakeResponseMessage as $, type AcknowledgmentMessage as A, type BlobChunkRequestMessage as B, type SyncScopeContext as C, type DeltaCursor as D, type EncryptedPayload as E, type SyncSettlementOptions as F, type SyncSettlementResult as G, type HandshakeMessage as H, InvalidScopeError as I, type SyncStatus as J, dedupeQuerySubsets as K, isAcknowledgmentMessage as L, MemoryRejectedOperationStorage as M, isAwarenessUpdateMessage as N, type OperationBatchMessage as O, isBlobChunkPushMessage as P, type QueueStorage as Q, type RejectedOperationStorage as R, type SyncScopeMap as S, type TransportOptions as T, isBlobChunkRequestMessage as U, type VersionedKey as V, type WireFormat as W, isBlobChunkResponseMessage as X, type YjsDocUpdateMessage as Y, isErrorMessage as Z, isHandshakeMessage as _, type SyncMessage as a, isOperationBatchMessage as a0, isOperationRejectedMessage as a1, isSyncMessage as a2, isYjsDocUpdateMessage as a3, operationMatchesQuerySubsets as a4, querySubsetContains as a5, type SerializedOperation as b, type SyncTransport as c, type TransportMessageHandler as d, type TransportCloseHandler as e, type TransportErrorHandler as f, type BlobChunkResponseMessage as g, type BlobChunkPushMessage as h, type SyncEncryptionConfig as i, type SyncState as j, type SyncStatusInfo as k, type SyncConfig as l, type SyncStatePersistence as m, type SyncQuerySubset as n, type RejectedOperation as o, type ActiveApplyFailure as p, type AwarenessStateWire as q, type AwarenessUpdateMessage as r, type ErrorMessage as s, type HandshakeResponseMessage as t, type OperationRejectedMessage as u, SYNC_STATES as v, SYNC_STATUSES as w, ScopeViolationError as x, type SyncEncryptionAlgorithm as y, type SyncPhase as z };
|
|
@@ -93,14 +93,27 @@ type SyncState = (typeof SYNC_STATES)[number];
|
|
|
93
93
|
/**
|
|
94
94
|
* Developer-facing sync status. Simplified view of the internal state.
|
|
95
95
|
*/
|
|
96
|
-
declare const SYNC_STATUSES: readonly ["connected", "reconnecting", "syncing", "synced", "offline", "clock-error", "error", "schema-mismatch"];
|
|
96
|
+
declare const SYNC_STATUSES: readonly ["connected", "reconnecting", "syncing", "synced", "offline", "clock-error", "error", "schema-mismatch", "auth-required"];
|
|
97
97
|
type SyncStatus = (typeof SYNC_STATUSES)[number];
|
|
98
|
+
type SyncPhase = 'suspended' | 'offline' | 'connecting' | 'authenticating' | 'handshaking' | 'uploading' | 'receiving' | 'applying' | 'streaming' | 'blocked';
|
|
99
|
+
interface ActiveApplyFailure {
|
|
100
|
+
operationId: string;
|
|
101
|
+
collection: string;
|
|
102
|
+
recordId: string;
|
|
103
|
+
code: string;
|
|
104
|
+
message: string;
|
|
105
|
+
retriable: boolean;
|
|
106
|
+
firstSeenAt: number;
|
|
107
|
+
retryCount: number;
|
|
108
|
+
}
|
|
98
109
|
/**
|
|
99
110
|
* Sync status information exposed to developers.
|
|
100
111
|
*/
|
|
101
112
|
interface SyncStatusInfo {
|
|
102
113
|
/** Current developer-facing status */
|
|
103
114
|
status: SyncStatus;
|
|
115
|
+
phase?: SyncPhase;
|
|
116
|
+
reason?: string;
|
|
104
117
|
/** True when the engine is actively trying to re-establish a transport session. */
|
|
105
118
|
reconnecting: boolean;
|
|
106
119
|
/** Number of operations waiting to be sent */
|
|
@@ -115,7 +128,47 @@ interface SyncStatusInfo {
|
|
|
115
128
|
conflicts: number;
|
|
116
129
|
/** serverTime - localTime in ms measured at the last handshake, or null before first connect. Negative = this device's clock is fast. */
|
|
117
130
|
clockSkewMs: number | null;
|
|
131
|
+
inFlightUploadOperations?: number;
|
|
132
|
+
hasInFlightDeliveryBatch?: boolean;
|
|
133
|
+
activeViewId?: string;
|
|
134
|
+
activeViewComplete?: boolean;
|
|
135
|
+
initialSync?: {
|
|
136
|
+
complete: boolean;
|
|
137
|
+
receivedBatches: number;
|
|
138
|
+
totalBatches: number | null;
|
|
139
|
+
progress: number | null;
|
|
140
|
+
};
|
|
141
|
+
deliveryWatermark?: number;
|
|
142
|
+
serverFrontier?: number | null;
|
|
143
|
+
blockedFailure?: ActiveApplyFailure | null;
|
|
118
144
|
}
|
|
145
|
+
interface SyncSettlementOptions {
|
|
146
|
+
upload?: boolean;
|
|
147
|
+
download?: 'active-view' | false;
|
|
148
|
+
timeoutMs?: number;
|
|
149
|
+
signal?: AbortSignal;
|
|
150
|
+
}
|
|
151
|
+
type SyncSettlementResult = {
|
|
152
|
+
outcome: 'settled';
|
|
153
|
+
status: SyncStatusInfo;
|
|
154
|
+
} | {
|
|
155
|
+
outcome: 'offline';
|
|
156
|
+
status: SyncStatusInfo;
|
|
157
|
+
} | {
|
|
158
|
+
outcome: 'suspended';
|
|
159
|
+
reason: string;
|
|
160
|
+
status: SyncStatusInfo;
|
|
161
|
+
} | {
|
|
162
|
+
outcome: 'blocked';
|
|
163
|
+
failure: ActiveApplyFailure;
|
|
164
|
+
status: SyncStatusInfo;
|
|
165
|
+
} | {
|
|
166
|
+
outcome: 'timeout';
|
|
167
|
+
status: SyncStatusInfo;
|
|
168
|
+
} | {
|
|
169
|
+
outcome: 'aborted';
|
|
170
|
+
status: SyncStatusInfo;
|
|
171
|
+
};
|
|
119
172
|
/**
|
|
120
173
|
* Per-collection sync scope map. Maps collection names to field-value filters.
|
|
121
174
|
* Empty filter `{}` means no restriction (all records visible).
|
|
@@ -134,6 +187,16 @@ interface SyncConfig {
|
|
|
134
187
|
auth?: () => Promise<{
|
|
135
188
|
token: string;
|
|
136
189
|
}>;
|
|
190
|
+
/** Auth readiness gate. A suspended result prevents transport creation and retries. */
|
|
191
|
+
authState?: () => Promise<{
|
|
192
|
+
state: 'loading' | 'signed-out' | 'anonymous' | 'authenticated';
|
|
193
|
+
mayConnectAnonymously?: boolean;
|
|
194
|
+
}>;
|
|
195
|
+
querySubsets?: {
|
|
196
|
+
mode?: 'reactive' | 'static' | 'disabled';
|
|
197
|
+
};
|
|
198
|
+
/** Client-local behavior for records leaving the accepted downlink scope. Defaults to `retain`. */
|
|
199
|
+
scopeExit?: 'retain' | 'retract';
|
|
137
200
|
/** Sync scopes per collection. Limits which records sync to this client. */
|
|
138
201
|
scopes?: Record<string, (ctx: SyncScopeContext) => Record<string, unknown>>;
|
|
139
202
|
/**
|
|
@@ -150,6 +213,10 @@ interface SyncConfig {
|
|
|
150
213
|
* Defaults to 30000ms. Set to 0 to disable the watchdog.
|
|
151
214
|
*/
|
|
152
215
|
outboundAckTimeoutMs?: number;
|
|
216
|
+
/** Initial delay before resending a transiently rejected outbound operation. Defaults to 250ms. */
|
|
217
|
+
outboundRetryBaseDelayMs?: number;
|
|
218
|
+
/** Maximum transient-operation retry delay. Defaults to 30000ms. */
|
|
219
|
+
outboundRetryMaxDelayMs?: number;
|
|
153
220
|
/** Initial reconnection delay in ms. Defaults to 1000. */
|
|
154
221
|
reconnectInterval?: number;
|
|
155
222
|
/** Maximum reconnection delay in ms. Defaults to 30000. */
|
|
@@ -307,10 +374,10 @@ interface SyncQuerySubset {
|
|
|
307
374
|
* for its collection. Collections without query subsets pass through.
|
|
308
375
|
*/
|
|
309
376
|
declare function operationMatchesQuerySubsets(op: Operation, subsets: SyncQuerySubset[] | undefined, fullRecord?: Record<string, unknown> | null): boolean;
|
|
310
|
-
/**
|
|
311
|
-
* Deduplicate query subsets by collection + where JSON key.
|
|
312
|
-
*/
|
|
377
|
+
/** Canonicalize equality subsets and remove subsets already covered by a broader one. */
|
|
313
378
|
declare function dedupeQuerySubsets(subsets: SyncQuerySubset[]): SyncQuerySubset[];
|
|
379
|
+
/** True when every record selected by `narrow` is also selected by `broad`. */
|
|
380
|
+
declare function querySubsetContains(broad: SyncQuerySubset[], narrow: SyncQuerySubset[]): boolean;
|
|
314
381
|
|
|
315
382
|
type WireFormat = 'json' | 'protobuf';
|
|
316
383
|
/**
|
|
@@ -362,6 +429,8 @@ interface HandshakeMessage {
|
|
|
362
429
|
* cursor for the server->client direction. Optional, so old servers ignore it.
|
|
363
430
|
*/
|
|
364
431
|
lastDeliverySequence?: number;
|
|
432
|
+
/** Opt in to client-local removal when records leave the accepted downlink view. */
|
|
433
|
+
scopeExitPolicy?: 'retain' | 'retract';
|
|
365
434
|
}
|
|
366
435
|
/**
|
|
367
436
|
* Server response to a handshake.
|
|
@@ -381,6 +450,10 @@ interface HandshakeResponseMessage {
|
|
|
381
450
|
selectedWireFormat?: WireFormat;
|
|
382
451
|
/** The server-accepted per-collection sync scope. Confirms what data will be synced. */
|
|
383
452
|
acceptedScope?: Record<string, Record<string, unknown>>;
|
|
453
|
+
/** Server-authoritative scope for records delivered to this client. */
|
|
454
|
+
acceptedDownlinkScopes?: Record<string, Record<string, unknown>>;
|
|
455
|
+
/** Server-authoritative scope for operations uploaded by this client. */
|
|
456
|
+
acceptedUplinkScopes?: Record<string, Record<string, unknown>>;
|
|
384
457
|
/** Server wall-clock time (ms since epoch) at response creation. Lets clients measure their own clock skew. */
|
|
385
458
|
serverTime?: number;
|
|
386
459
|
/**
|
|
@@ -404,6 +477,8 @@ interface OperationBatchMessage {
|
|
|
404
477
|
type: 'operation-batch';
|
|
405
478
|
messageId: string;
|
|
406
479
|
operations: SerializedOperation[];
|
|
480
|
+
/** Client-local authorization removals; these are never domain delete operations. */
|
|
481
|
+
retractions?: ScopeRetraction[];
|
|
407
482
|
/** True if this is the last batch in the delta exchange phase */
|
|
408
483
|
isFinal: boolean;
|
|
409
484
|
/** Index of this batch (0-based) for ordering */
|
|
@@ -427,6 +502,10 @@ interface OperationBatchMessage {
|
|
|
427
502
|
baseDeliverySequence?: number;
|
|
428
503
|
maxDeliverySequence?: number;
|
|
429
504
|
}
|
|
505
|
+
interface ScopeRetraction {
|
|
506
|
+
collection: string;
|
|
507
|
+
recordId: string;
|
|
508
|
+
}
|
|
430
509
|
/**
|
|
431
510
|
* Acknowledgment of a received message.
|
|
432
511
|
*/
|
|
@@ -663,4 +742,4 @@ interface SyncTransport {
|
|
|
663
742
|
isConnected(): boolean;
|
|
664
743
|
}
|
|
665
744
|
|
|
666
|
-
export {
|
|
745
|
+
export { isHandshakeResponseMessage as $, type AcknowledgmentMessage as A, type BlobChunkRequestMessage as B, type SyncScopeContext as C, type DeltaCursor as D, type EncryptedPayload as E, type SyncSettlementOptions as F, type SyncSettlementResult as G, type HandshakeMessage as H, InvalidScopeError as I, type SyncStatus as J, dedupeQuerySubsets as K, isAcknowledgmentMessage as L, MemoryRejectedOperationStorage as M, isAwarenessUpdateMessage as N, type OperationBatchMessage as O, isBlobChunkPushMessage as P, type QueueStorage as Q, type RejectedOperationStorage as R, type SyncScopeMap as S, type TransportOptions as T, isBlobChunkRequestMessage as U, type VersionedKey as V, type WireFormat as W, isBlobChunkResponseMessage as X, type YjsDocUpdateMessage as Y, isErrorMessage as Z, isHandshakeMessage as _, type SyncMessage as a, isOperationBatchMessage as a0, isOperationRejectedMessage as a1, isSyncMessage as a2, isYjsDocUpdateMessage as a3, operationMatchesQuerySubsets as a4, querySubsetContains as a5, type SerializedOperation as b, type SyncTransport as c, type TransportMessageHandler as d, type TransportCloseHandler as e, type TransportErrorHandler as f, type BlobChunkResponseMessage as g, type BlobChunkPushMessage as h, type SyncEncryptionConfig as i, type SyncState as j, type SyncStatusInfo as k, type SyncConfig as l, type SyncStatePersistence as m, type SyncQuerySubset as n, type RejectedOperation as o, type ActiveApplyFailure as p, type AwarenessStateWire as q, type AwarenessUpdateMessage as r, type ErrorMessage as s, type HandshakeResponseMessage as t, type OperationRejectedMessage as u, SYNC_STATES as v, SYNC_STATUSES as w, ScopeViolationError as x, type SyncEncryptionAlgorithm as y, type SyncPhase as z };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@korajs/sync",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.12",
|
|
4
4
|
"description": "Sync protocol and transports for Kora.js with delta sync, causal ordering, and automatic reconnection",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
],
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"protobufjs": "^8.0.1",
|
|
37
|
-
"@korajs/core": "1.0.0-beta.
|
|
38
|
-
"@korajs/merge": "1.0.0-beta.
|
|
37
|
+
"@korajs/core": "1.0.0-beta.12",
|
|
38
|
+
"@korajs/merge": "1.0.0-beta.12"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@fast-check/vitest": "0.2.0",
|