@syncular/client 0.0.6-185 → 0.0.6-201
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/client.d.ts +14 -71
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +81 -406
- package/dist/client.js.map +1 -1
- package/dist/create-client.d.ts +0 -2
- package/dist/create-client.d.ts.map +1 -1
- package/dist/create-client.js +2 -3
- package/dist/create-client.js.map +1 -1
- package/dist/engine/SyncEngine.d.ts +1 -0
- package/dist/engine/SyncEngine.d.ts.map +1 -1
- package/dist/engine/SyncEngine.js +21 -6
- package/dist/engine/SyncEngine.js.map +1 -1
- package/dist/handlers/create-handler.d.ts +5 -0
- package/dist/handlers/create-handler.d.ts.map +1 -1
- package/dist/handlers/create-handler.js +123 -4
- package/dist/handlers/create-handler.js.map +1 -1
- package/dist/handlers/types.d.ts +7 -0
- package/dist/handlers/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/blob-schema.d.ts +32 -0
- package/dist/internal/blob-schema.d.ts.map +1 -0
- package/dist/internal/blob-schema.js +2 -0
- package/dist/internal/blob-schema.js.map +1 -0
- package/dist/mutations.d.ts.map +1 -1
- package/dist/mutations.js +15 -6
- package/dist/mutations.js.map +1 -1
- package/dist/plugins/incrementing-version.d.ts.map +1 -1
- package/dist/plugins/incrementing-version.js +20 -8
- package/dist/plugins/incrementing-version.js.map +1 -1
- package/dist/plugins/types.d.ts +26 -1
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/plugins/types.js.map +1 -1
- package/dist/pull-engine.d.ts +8 -2
- package/dist/pull-engine.d.ts.map +1 -1
- package/dist/pull-engine.js +150 -26
- package/dist/pull-engine.js.map +1 -1
- package/dist/push-engine.d.ts.map +1 -1
- package/dist/push-engine.js +21 -5
- package/dist/push-engine.js.map +1 -1
- package/dist/schema.d.ts +2 -2
- package/dist/schema.d.ts.map +1 -1
- package/dist/sync-loop.d.ts +3 -1
- package/dist/sync-loop.d.ts.map +1 -1
- package/dist/sync-loop.js +382 -139
- package/dist/sync-loop.js.map +1 -1
- package/package.json +76 -3
- package/src/client.test.ts +72 -155
- package/src/client.ts +113 -572
- package/src/create-client.ts +1 -6
- package/src/engine/SyncEngine.test.ts +90 -0
- package/src/engine/SyncEngine.ts +29 -9
- package/src/handlers/create-handler.ts +197 -4
- package/src/handlers/types.ts +11 -0
- package/src/index.ts +1 -2
- package/src/internal/blob-schema.ts +40 -0
- package/src/mutations.ts +17 -6
- package/src/plugins/incrementing-version.ts +36 -7
- package/src/plugins/types.ts +42 -0
- package/src/pull-engine.test.ts +494 -0
- package/src/pull-engine.ts +193 -29
- package/src/push-engine.ts +31 -5
- package/src/schema.ts +2 -2
- package/src/sync-loop.ts +538 -145
- package/dist/blobs/index.d.ts +0 -6
- package/dist/blobs/index.d.ts.map +0 -1
- package/dist/blobs/index.js +0 -6
- package/dist/blobs/index.js.map +0 -1
- package/dist/blobs/migrate.d.ts +0 -14
- package/dist/blobs/migrate.d.ts.map +0 -1
- package/dist/blobs/migrate.js +0 -59
- package/dist/blobs/migrate.js.map +0 -1
- package/dist/blobs/types.d.ts +0 -62
- package/dist/blobs/types.d.ts.map +0 -1
- package/dist/blobs/types.js +0 -5
- package/dist/blobs/types.js.map +0 -1
- package/src/blobs/index.ts +0 -6
- package/src/blobs/migrate.ts +0 -67
- package/src/blobs/types.ts +0 -84
package/dist/client.d.ts
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Single entry point for offline-first sync with:
|
|
5
5
|
* - Built-in mutations API
|
|
6
|
-
* - Optional blob support
|
|
7
6
|
* - Automatic migrations
|
|
8
7
|
* - Event-driven state management
|
|
9
8
|
* - Conflict handling with events
|
|
@@ -13,30 +12,9 @@ import type { Kysely } from 'kysely';
|
|
|
13
12
|
import type { OutboxStats, PresenceEntry, PushResultInfo, SubscriptionProgress, SyncAwaitBootstrapOptions, SyncAwaitPhaseOptions, SyncDiagnostics, SyncInspectorOptions, SyncInspectorSnapshot, SyncProgress, SyncRepairOptions, SyncResetOptions, SyncResetResult, SyncResult, TransportHealth } from './engine/types';
|
|
14
13
|
import type { ClientHandlerCollection } from './handlers/collection';
|
|
15
14
|
import { type MutationsApi } from './mutations';
|
|
16
|
-
import type { SyncClientPlugin } from './plugins/types';
|
|
15
|
+
import type { SyncClientFeatureRegistry, SyncClientPlugin } from './plugins/types';
|
|
17
16
|
import type { SyncClientDb } from './schema';
|
|
18
17
|
import type { SubscriptionState } from './subscription-state';
|
|
19
|
-
/**
|
|
20
|
-
* Pluggable client-side blob storage adapter.
|
|
21
|
-
* Implementations handle platform-specific binary storage (OPFS, Expo FileSystem, etc.)
|
|
22
|
-
* Metadata is stored separately in the main SQLite db.
|
|
23
|
-
*/
|
|
24
|
-
export interface ClientBlobStorage {
|
|
25
|
-
/** Write blob data from bytes or stream */
|
|
26
|
-
write(hash: string, data: Uint8Array | ReadableStream<Uint8Array>): Promise<void>;
|
|
27
|
-
/** Read blob data, null if not found */
|
|
28
|
-
read(hash: string): Promise<Uint8Array | null>;
|
|
29
|
-
/** Read blob data as stream, null if not found */
|
|
30
|
-
readStream?(hash: string): Promise<ReadableStream<Uint8Array> | null>;
|
|
31
|
-
/** Delete blob data */
|
|
32
|
-
delete(hash: string): Promise<void>;
|
|
33
|
-
/** Check if blob exists in storage */
|
|
34
|
-
exists(hash: string): Promise<boolean>;
|
|
35
|
-
/** Get total storage usage in bytes (for cache management) */
|
|
36
|
-
getUsage?(): Promise<number>;
|
|
37
|
-
/** Clear all blobs (for cache reset) */
|
|
38
|
-
clear?(): Promise<void>;
|
|
39
|
-
}
|
|
40
18
|
export interface ClientOptions<DB extends SyncClientDb> {
|
|
41
19
|
/** Kysely database instance */
|
|
42
20
|
db: Kysely<DB>;
|
|
@@ -55,8 +33,6 @@ export interface ClientOptions<DB extends SyncClientDb> {
|
|
|
55
33
|
scopes?: Record<string, string | string[]>;
|
|
56
34
|
params?: Record<string, unknown>;
|
|
57
35
|
}>;
|
|
58
|
-
/** Optional: Local blob storage adapter (enables blob support) */
|
|
59
|
-
blobStorage?: ClientBlobStorage;
|
|
60
36
|
/** Optional: Sync plugins */
|
|
61
37
|
plugins?: SyncClientPlugin[];
|
|
62
38
|
/** Optional: Enable realtime transport mode */
|
|
@@ -133,47 +109,8 @@ export interface ConflictResolution {
|
|
|
133
109
|
strategy: 'keep-local' | 'keep-server' | 'custom';
|
|
134
110
|
payload?: Record<string, unknown>;
|
|
135
111
|
}
|
|
136
|
-
interface BlobStoreOptions {
|
|
137
|
-
/** MIME type of the blob */
|
|
138
|
-
mimeType?: string;
|
|
139
|
-
/** Upload immediately vs queue for later */
|
|
140
|
-
immediate?: boolean;
|
|
141
|
-
}
|
|
142
|
-
export interface BlobClient {
|
|
143
|
-
/** Store a blob locally and queue for upload */
|
|
144
|
-
store(data: Blob | File | Uint8Array, options?: BlobStoreOptions): Promise<BlobRef>;
|
|
145
|
-
/** Retrieve a blob (from local storage or fetch from server) */
|
|
146
|
-
retrieve(ref: BlobRef): Promise<Uint8Array>;
|
|
147
|
-
/** Check if blob is available locally */
|
|
148
|
-
isLocal(hash: string): Promise<boolean>;
|
|
149
|
-
/** Preload blobs for offline use */
|
|
150
|
-
preload(refs: BlobRef[]): Promise<void>;
|
|
151
|
-
/** Process pending uploads */
|
|
152
|
-
processUploadQueue(): Promise<{
|
|
153
|
-
uploaded: number;
|
|
154
|
-
failed: number;
|
|
155
|
-
}>;
|
|
156
|
-
/** Get upload queue statistics */
|
|
157
|
-
getUploadQueueStats(): Promise<{
|
|
158
|
-
pending: number;
|
|
159
|
-
uploading: number;
|
|
160
|
-
failed: number;
|
|
161
|
-
}>;
|
|
162
|
-
/** Get cache statistics */
|
|
163
|
-
getCacheStats(): Promise<{
|
|
164
|
-
count: number;
|
|
165
|
-
totalBytes: number;
|
|
166
|
-
}>;
|
|
167
|
-
/** Prune cache to free space */
|
|
168
|
-
pruneCache(maxBytes?: number): Promise<number>;
|
|
169
|
-
/** Clear all cached blobs */
|
|
170
|
-
clearCache(): Promise<void>;
|
|
171
|
-
}
|
|
172
112
|
export interface MigrationInfo {
|
|
173
|
-
/** Whether sync schema is migrated */
|
|
174
113
|
syncMigrated: boolean;
|
|
175
|
-
/** Whether blob schema is migrated */
|
|
176
|
-
blobsMigrated: boolean;
|
|
177
114
|
}
|
|
178
115
|
type ClientEventType = 'sync:start' | 'sync:complete' | 'sync:live' | 'sync:error' | 'push:result' | 'bootstrap:start' | 'bootstrap:progress' | 'bootstrap:complete' | 'connection:change' | 'data:change' | 'outbox:change' | 'conflict:new' | 'conflict:resolved' | 'blob:upload:complete' | 'blob:upload:error' | 'presence:change';
|
|
179
116
|
type ClientEventPayloads = {
|
|
@@ -260,12 +197,11 @@ export declare class Client<DB extends SyncClientDb = SyncClientDb> {
|
|
|
260
197
|
private engine;
|
|
261
198
|
private started;
|
|
262
199
|
private destroyed;
|
|
200
|
+
private readonly pluginFeatures;
|
|
263
201
|
private eventListeners;
|
|
264
202
|
private outboxStats;
|
|
265
203
|
/** Mutations API (always available) */
|
|
266
204
|
readonly mutations: MutationsApi<DB>;
|
|
267
|
-
/** Blob client (only available if blobStorage configured) */
|
|
268
|
-
readonly blobs: BlobClient | undefined;
|
|
269
205
|
constructor(options: ClientOptions<DB>);
|
|
270
206
|
/** Client ID */
|
|
271
207
|
get clientId(): string;
|
|
@@ -371,6 +307,12 @@ export declare class Client<DB extends SyncClientDb = SyncClientDb> {
|
|
|
371
307
|
*/
|
|
372
308
|
on<E extends ClientEventType>(event: E, handler: ClientEventHandler<E>): () => void;
|
|
373
309
|
private emit;
|
|
310
|
+
private setupPluginFeatures;
|
|
311
|
+
private runPluginMigrations;
|
|
312
|
+
private createPluginLifecycleContext;
|
|
313
|
+
private defineFeature;
|
|
314
|
+
private emitPluginEvent;
|
|
315
|
+
private scheduleLocalSyncAfterMutation;
|
|
374
316
|
/**
|
|
375
317
|
* Get pending conflicts.
|
|
376
318
|
*/
|
|
@@ -417,18 +359,19 @@ export declare class Client<DB extends SyncClientDb = SyncClientDb> {
|
|
|
417
359
|
static checkMigrations<DB extends SyncClientDb>(db: Kysely<DB>): Promise<{
|
|
418
360
|
needsMigration: boolean;
|
|
419
361
|
syncMigrated: boolean;
|
|
420
|
-
blobsMigrated: boolean;
|
|
421
362
|
}>;
|
|
422
363
|
/**
|
|
423
364
|
* Static: Run migrations.
|
|
424
365
|
*/
|
|
425
|
-
static migrate<DB extends SyncClientDb>(db: Kysely<DB
|
|
426
|
-
blobs?: boolean;
|
|
427
|
-
}): Promise<void>;
|
|
366
|
+
static migrate<DB extends SyncClientDb>(db: Kysely<DB>): Promise<void>;
|
|
428
367
|
private createInitialEngineState;
|
|
429
368
|
private wireEngineEvents;
|
|
430
369
|
private mapConflictInfo;
|
|
431
|
-
|
|
370
|
+
}
|
|
371
|
+
type SyncClientFeatureAccessors = {
|
|
372
|
+
[K in keyof SyncClientFeatureRegistry]: SyncClientFeatureRegistry[K];
|
|
373
|
+
};
|
|
374
|
+
export interface Client extends SyncClientFeatureAccessors {
|
|
432
375
|
}
|
|
433
376
|
export {};
|
|
434
377
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|