@syncular/client-react 0.0.6-126 → 0.0.6-135
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":"createSyncularReact.d.ts","sourceRoot":"","sources":["../src/createSyncularReact.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EAIZ,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EAErB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,YAAY,EAMjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,mBAAmB,EACxB,UAAU,EAEV,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,KAAK,MAAM,EAAO,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAEL,KAAK,SAAS,EAQf,MAAM,OAAO,CAAC;AAMf,KAAK,eAAe,CAAC,OAAO,IAAI;IAC9B,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"createSyncularReact.d.ts","sourceRoot":"","sources":["../src/createSyncularReact.tsx"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,32 @@ function isPresenceMetadataEqual(left, right) {
|
|
|
27
27
|
}
|
|
28
28
|
return true;
|
|
29
29
|
}
|
|
30
|
+
const SYNC_PROGRESS_REFRESH_EVENTS = [
|
|
31
|
+
'sync:start',
|
|
32
|
+
'sync:complete',
|
|
33
|
+
'sync:error',
|
|
34
|
+
'bootstrap:start',
|
|
35
|
+
'bootstrap:progress',
|
|
36
|
+
'bootstrap:complete',
|
|
37
|
+
];
|
|
38
|
+
const SYNC_INSPECTOR_REFRESH_EVENTS = [
|
|
39
|
+
'sync:start',
|
|
40
|
+
'sync:complete',
|
|
41
|
+
'sync:error',
|
|
42
|
+
'bootstrap:start',
|
|
43
|
+
'bootstrap:progress',
|
|
44
|
+
'bootstrap:complete',
|
|
45
|
+
'connection:change',
|
|
46
|
+
'outbox:change',
|
|
47
|
+
'data:change',
|
|
48
|
+
];
|
|
49
|
+
const SYNC_SUBSCRIPTION_REFRESH_EVENTS = [
|
|
50
|
+
'sync:complete',
|
|
51
|
+
'sync:error',
|
|
52
|
+
'bootstrap:start',
|
|
53
|
+
'bootstrap:progress',
|
|
54
|
+
'bootstrap:complete',
|
|
55
|
+
];
|
|
30
56
|
export function createSyncularReact() {
|
|
31
57
|
const SyncContext = createContext(null);
|
|
32
58
|
function SyncProvider({ db, transport, sync, identity, clientId, limitCommits, limitSnapshotRows, maxSnapshotPages, stateId, pollIntervalMs, maxRetries, migrate, onMigrationError, realtimeEnabled, realtimeFallbackPollMs, onError, onConflict, onDataChange, plugins, sha256, autoStart = true, renderWhileStarting = true, children, }) {
|
|
@@ -160,9 +186,17 @@ export function createSyncularReact() {
|
|
|
160
186
|
function useEngine() {
|
|
161
187
|
return useSyncContext().engine;
|
|
162
188
|
}
|
|
189
|
+
function useEngineStateSnapshot() {
|
|
190
|
+
const engine = useEngine();
|
|
191
|
+
const subscribe = useCallback((callback) => {
|
|
192
|
+
return engine.subscribe(callback);
|
|
193
|
+
}, [engine]);
|
|
194
|
+
const getSnapshot = useCallback(() => engine.getState(), [engine]);
|
|
195
|
+
return useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
196
|
+
}
|
|
163
197
|
function useSyncEngine() {
|
|
164
198
|
const engine = useEngine();
|
|
165
|
-
const state =
|
|
199
|
+
const state = useEngineStateSnapshot();
|
|
166
200
|
const sync = useCallback(() => engine.sync(), [engine]);
|
|
167
201
|
const reconnect = useCallback(() => engine.reconnect(), [engine]);
|
|
168
202
|
const disconnect = useCallback(() => engine.disconnect(), [engine]);
|
|
@@ -199,8 +233,7 @@ export function createSyncularReact() {
|
|
|
199
233
|
}
|
|
200
234
|
function useSyncStatus(options = {}) {
|
|
201
235
|
const { staleAfterMs } = options;
|
|
202
|
-
const
|
|
203
|
-
const state = useSyncExternalStore(useCallback((callback) => engine.subscribe(callback), [engine]), useCallback(() => engine.getState(), [engine]), useCallback(() => engine.getState(), [engine]));
|
|
236
|
+
const state = useEngineStateSnapshot();
|
|
204
237
|
const [staleClock, setStaleClock] = useState(Date.now());
|
|
205
238
|
useEffect(() => {
|
|
206
239
|
if (staleAfterMs === undefined || staleAfterMs <= 0)
|
|
@@ -233,7 +266,7 @@ export function createSyncularReact() {
|
|
|
233
266
|
}
|
|
234
267
|
function useSyncConnection() {
|
|
235
268
|
const engine = useEngine();
|
|
236
|
-
const engineState =
|
|
269
|
+
const engineState = useEngineStateSnapshot();
|
|
237
270
|
const reconnect = useCallback(() => engine.reconnect(), [engine]);
|
|
238
271
|
const disconnect = useCallback(() => engine.disconnect(), [engine]);
|
|
239
272
|
return useMemo(() => ({
|
|
@@ -266,57 +299,75 @@ export function createSyncularReact() {
|
|
|
266
299
|
}, [engine]), useCallback(() => engine.getTransportHealth(), [engine]), useCallback(() => engine.getTransportHealth(), [engine]));
|
|
267
300
|
return useMemo(() => ({ health }), [health]);
|
|
268
301
|
}
|
|
269
|
-
function
|
|
302
|
+
function useAsyncEngineResource(options) {
|
|
270
303
|
const engine = useEngine();
|
|
271
|
-
const { pollIntervalMs
|
|
272
|
-
const
|
|
304
|
+
const { initialValue, load, refreshOn, pollIntervalMs, shouldPoll } = options;
|
|
305
|
+
const loadRef = useRef(load);
|
|
306
|
+
loadRef.current = load;
|
|
307
|
+
const [value, setValue] = useState(initialValue);
|
|
273
308
|
const [isLoading, setIsLoading] = useState(true);
|
|
274
309
|
const [error, setError] = useState(null);
|
|
275
310
|
const loadedRef = useRef(false);
|
|
311
|
+
const versionRef = useRef(0);
|
|
276
312
|
const refresh = useCallback(async () => {
|
|
313
|
+
const version = ++versionRef.current;
|
|
314
|
+
const isCurrent = () => version === versionRef.current;
|
|
277
315
|
if (!loadedRef.current) {
|
|
278
316
|
setIsLoading(true);
|
|
279
317
|
}
|
|
280
318
|
try {
|
|
281
|
-
const next = await
|
|
282
|
-
|
|
319
|
+
const next = await loadRef.current();
|
|
320
|
+
if (!isCurrent())
|
|
321
|
+
return;
|
|
322
|
+
setValue(next);
|
|
283
323
|
setError(null);
|
|
284
324
|
}
|
|
285
325
|
catch (err) {
|
|
326
|
+
if (!isCurrent())
|
|
327
|
+
return;
|
|
286
328
|
setError(err instanceof Error ? err : new Error(String(err)));
|
|
287
329
|
}
|
|
288
330
|
finally {
|
|
289
|
-
|
|
290
|
-
|
|
331
|
+
if (isCurrent()) {
|
|
332
|
+
loadedRef.current = true;
|
|
333
|
+
setIsLoading(false);
|
|
334
|
+
}
|
|
291
335
|
}
|
|
292
|
-
}, [
|
|
336
|
+
}, []);
|
|
293
337
|
useEffect(() => {
|
|
294
338
|
void refresh();
|
|
295
339
|
}, [refresh]);
|
|
296
340
|
useEffect(() => {
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
engine.on('sync:error', refresh),
|
|
301
|
-
engine.on('bootstrap:start', refresh),
|
|
302
|
-
engine.on('bootstrap:progress', refresh),
|
|
303
|
-
engine.on('bootstrap:complete', refresh),
|
|
304
|
-
];
|
|
341
|
+
if (refreshOn.length === 0)
|
|
342
|
+
return;
|
|
343
|
+
const unsubscribers = refreshOn.map((eventName) => engine.on(eventName, refresh));
|
|
305
344
|
return () => {
|
|
306
345
|
for (const unsubscribe of unsubscribers)
|
|
307
346
|
unsubscribe();
|
|
308
347
|
};
|
|
309
|
-
}, [engine, refresh]);
|
|
348
|
+
}, [engine, refresh, refreshOn]);
|
|
310
349
|
useEffect(() => {
|
|
311
|
-
if (pollIntervalMs <= 0)
|
|
350
|
+
if (pollIntervalMs === undefined || pollIntervalMs <= 0)
|
|
312
351
|
return;
|
|
313
|
-
if (
|
|
352
|
+
if (shouldPoll && !shouldPoll(value))
|
|
314
353
|
return;
|
|
315
354
|
const timer = setInterval(() => {
|
|
316
355
|
void refresh();
|
|
317
356
|
}, pollIntervalMs);
|
|
318
357
|
return () => clearInterval(timer);
|
|
319
|
-
}, [pollIntervalMs,
|
|
358
|
+
}, [pollIntervalMs, refresh, shouldPoll, value]);
|
|
359
|
+
return { value, isLoading, error, refresh };
|
|
360
|
+
}
|
|
361
|
+
function useSyncProgress(options = {}) {
|
|
362
|
+
const engine = useEngine();
|
|
363
|
+
const { pollIntervalMs = 500 } = options;
|
|
364
|
+
const { value: progress, isLoading, error, refresh, } = useAsyncEngineResource({
|
|
365
|
+
initialValue: null,
|
|
366
|
+
load: () => engine.getProgress(),
|
|
367
|
+
refreshOn: SYNC_PROGRESS_REFRESH_EVENTS,
|
|
368
|
+
pollIntervalMs,
|
|
369
|
+
shouldPoll: (value) => value?.channelPhase === 'bootstrapping',
|
|
370
|
+
});
|
|
320
371
|
return useMemo(() => ({
|
|
321
372
|
progress,
|
|
322
373
|
isLoading,
|
|
@@ -327,55 +378,12 @@ export function createSyncularReact() {
|
|
|
327
378
|
function useSyncInspector(options = {}) {
|
|
328
379
|
const engine = useEngine();
|
|
329
380
|
const { pollIntervalMs = 2_000, eventLimit } = options;
|
|
330
|
-
const
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
setIsLoading(true);
|
|
337
|
-
}
|
|
338
|
-
try {
|
|
339
|
-
const next = await engine.getInspectorSnapshot({ eventLimit });
|
|
340
|
-
setSnapshot(next);
|
|
341
|
-
setError(null);
|
|
342
|
-
}
|
|
343
|
-
catch (err) {
|
|
344
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
345
|
-
}
|
|
346
|
-
finally {
|
|
347
|
-
loadedRef.current = true;
|
|
348
|
-
setIsLoading(false);
|
|
349
|
-
}
|
|
350
|
-
}, [engine, eventLimit]);
|
|
351
|
-
useEffect(() => {
|
|
352
|
-
void refresh();
|
|
353
|
-
}, [refresh]);
|
|
354
|
-
useEffect(() => {
|
|
355
|
-
const unsubscribers = [
|
|
356
|
-
engine.on('sync:start', refresh),
|
|
357
|
-
engine.on('sync:complete', refresh),
|
|
358
|
-
engine.on('sync:error', refresh),
|
|
359
|
-
engine.on('bootstrap:start', refresh),
|
|
360
|
-
engine.on('bootstrap:progress', refresh),
|
|
361
|
-
engine.on('bootstrap:complete', refresh),
|
|
362
|
-
engine.on('connection:change', refresh),
|
|
363
|
-
engine.on('outbox:change', refresh),
|
|
364
|
-
engine.on('data:change', refresh),
|
|
365
|
-
];
|
|
366
|
-
return () => {
|
|
367
|
-
for (const unsubscribe of unsubscribers)
|
|
368
|
-
unsubscribe();
|
|
369
|
-
};
|
|
370
|
-
}, [engine, refresh]);
|
|
371
|
-
useEffect(() => {
|
|
372
|
-
if (pollIntervalMs <= 0)
|
|
373
|
-
return;
|
|
374
|
-
const timer = setInterval(() => {
|
|
375
|
-
void refresh();
|
|
376
|
-
}, pollIntervalMs);
|
|
377
|
-
return () => clearInterval(timer);
|
|
378
|
-
}, [pollIntervalMs, refresh]);
|
|
381
|
+
const { value: snapshot, isLoading, error, refresh, } = useAsyncEngineResource({
|
|
382
|
+
initialValue: null,
|
|
383
|
+
load: () => engine.getInspectorSnapshot({ eventLimit }),
|
|
384
|
+
refreshOn: SYNC_INSPECTOR_REFRESH_EVENTS,
|
|
385
|
+
pollIntervalMs,
|
|
386
|
+
});
|
|
379
387
|
return useMemo(() => ({
|
|
380
388
|
snapshot,
|
|
381
389
|
isLoading,
|
|
@@ -386,47 +394,15 @@ export function createSyncularReact() {
|
|
|
386
394
|
function useSyncSubscriptions(options = {}) {
|
|
387
395
|
const engine = useEngine();
|
|
388
396
|
const { stateId, table, status } = options;
|
|
389
|
-
const
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
const next = await engine.listSubscriptionStates({
|
|
399
|
-
stateId,
|
|
400
|
-
table,
|
|
401
|
-
status,
|
|
402
|
-
});
|
|
403
|
-
setSubscriptions(next);
|
|
404
|
-
setError(null);
|
|
405
|
-
}
|
|
406
|
-
catch (err) {
|
|
407
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
408
|
-
}
|
|
409
|
-
finally {
|
|
410
|
-
loadedRef.current = true;
|
|
411
|
-
setIsLoading(false);
|
|
412
|
-
}
|
|
413
|
-
}, [engine, stateId, table, status]);
|
|
414
|
-
useEffect(() => {
|
|
415
|
-
void refresh();
|
|
416
|
-
}, [refresh]);
|
|
417
|
-
useEffect(() => {
|
|
418
|
-
const unsubscribers = [
|
|
419
|
-
engine.on('sync:complete', refresh),
|
|
420
|
-
engine.on('sync:error', refresh),
|
|
421
|
-
engine.on('bootstrap:start', refresh),
|
|
422
|
-
engine.on('bootstrap:progress', refresh),
|
|
423
|
-
engine.on('bootstrap:complete', refresh),
|
|
424
|
-
];
|
|
425
|
-
return () => {
|
|
426
|
-
for (const unsubscribe of unsubscribers)
|
|
427
|
-
unsubscribe();
|
|
428
|
-
};
|
|
429
|
-
}, [engine, refresh]);
|
|
397
|
+
const { value: subscriptions, isLoading, error, refresh, } = useAsyncEngineResource({
|
|
398
|
+
initialValue: [],
|
|
399
|
+
load: () => engine.listSubscriptionStates({
|
|
400
|
+
stateId,
|
|
401
|
+
table,
|
|
402
|
+
status,
|
|
403
|
+
}),
|
|
404
|
+
refreshOn: SYNC_SUBSCRIPTION_REFRESH_EVENTS,
|
|
405
|
+
});
|
|
430
406
|
return useMemo(() => ({
|
|
431
407
|
subscriptions,
|
|
432
408
|
isLoading,
|
|
@@ -437,45 +413,13 @@ export function createSyncularReact() {
|
|
|
437
413
|
function useSyncSubscription(subscriptionId, options = {}) {
|
|
438
414
|
const engine = useEngine();
|
|
439
415
|
const { stateId } = options;
|
|
440
|
-
const
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
}
|
|
448
|
-
try {
|
|
449
|
-
const next = await engine.getSubscriptionState(subscriptionId, {
|
|
450
|
-
stateId,
|
|
451
|
-
});
|
|
452
|
-
setSubscription(next);
|
|
453
|
-
setError(null);
|
|
454
|
-
}
|
|
455
|
-
catch (err) {
|
|
456
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
457
|
-
}
|
|
458
|
-
finally {
|
|
459
|
-
loadedRef.current = true;
|
|
460
|
-
setIsLoading(false);
|
|
461
|
-
}
|
|
462
|
-
}, [engine, stateId, subscriptionId]);
|
|
463
|
-
useEffect(() => {
|
|
464
|
-
void refresh();
|
|
465
|
-
}, [refresh]);
|
|
466
|
-
useEffect(() => {
|
|
467
|
-
const unsubscribers = [
|
|
468
|
-
engine.on('sync:complete', refresh),
|
|
469
|
-
engine.on('sync:error', refresh),
|
|
470
|
-
engine.on('bootstrap:start', refresh),
|
|
471
|
-
engine.on('bootstrap:progress', refresh),
|
|
472
|
-
engine.on('bootstrap:complete', refresh),
|
|
473
|
-
];
|
|
474
|
-
return () => {
|
|
475
|
-
for (const unsubscribe of unsubscribers)
|
|
476
|
-
unsubscribe();
|
|
477
|
-
};
|
|
478
|
-
}, [engine, refresh]);
|
|
416
|
+
const { value: subscription, isLoading, error, refresh, } = useAsyncEngineResource({
|
|
417
|
+
initialValue: null,
|
|
418
|
+
load: () => engine.getSubscriptionState(subscriptionId, {
|
|
419
|
+
stateId,
|
|
420
|
+
}),
|
|
421
|
+
refreshOn: SYNC_SUBSCRIPTION_REFRESH_EVENTS,
|
|
422
|
+
});
|
|
479
423
|
return useMemo(() => ({
|
|
480
424
|
subscription,
|
|
481
425
|
isLoading,
|
|
@@ -485,36 +429,11 @@ export function createSyncularReact() {
|
|
|
485
429
|
}
|
|
486
430
|
function useConflicts() {
|
|
487
431
|
const engine = useEngine();
|
|
488
|
-
const
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
const result = await engine.getConflicts();
|
|
494
|
-
setConflicts(result);
|
|
495
|
-
}
|
|
496
|
-
catch (err) {
|
|
497
|
-
console.error('[useConflicts] Failed to refresh:', err);
|
|
498
|
-
}
|
|
499
|
-
finally {
|
|
500
|
-
setIsLoading(false);
|
|
501
|
-
}
|
|
502
|
-
}, [engine]);
|
|
503
|
-
useEffect(() => {
|
|
504
|
-
refresh();
|
|
505
|
-
}, [refresh]);
|
|
506
|
-
useEffect(() => {
|
|
507
|
-
const unsubscribe = engine.on('sync:complete', () => {
|
|
508
|
-
refresh();
|
|
509
|
-
});
|
|
510
|
-
return unsubscribe;
|
|
511
|
-
}, [engine, refresh]);
|
|
512
|
-
useEffect(() => {
|
|
513
|
-
const unsubscribe = engine.on('sync:error', () => {
|
|
514
|
-
refresh();
|
|
515
|
-
});
|
|
516
|
-
return unsubscribe;
|
|
517
|
-
}, [engine, refresh]);
|
|
432
|
+
const { value: conflicts, isLoading, refresh, } = useAsyncEngineResource({
|
|
433
|
+
initialValue: [],
|
|
434
|
+
load: () => engine.getConflicts(),
|
|
435
|
+
refreshOn: ['sync:complete', 'sync:error'],
|
|
436
|
+
});
|
|
518
437
|
return useMemo(() => ({
|
|
519
438
|
conflicts,
|
|
520
439
|
count: conflicts.length,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSyncularReact.js","sourceRoot":"","sources":["../src/createSyncularReact.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"createSyncularReact.js","sourceRoot":"","sources":["../src/createSyncularReact.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@syncular/client-react",
|
|
3
|
-
"version": "0.0.6-
|
|
3
|
+
"version": "0.0.6-135",
|
|
4
4
|
"description": "React hooks and bindings for the Syncular client",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Benjamin Kniffler",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"release": "bunx syncular-publish"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@syncular/client": "0.0.6-
|
|
47
|
+
"@syncular/client": "0.0.6-135"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
50
|
"kysely": "^0.28.0",
|
|
@@ -53,9 +53,9 @@
|
|
|
53
53
|
"devDependencies": {
|
|
54
54
|
"@happy-dom/global-registrator": "^20.7.0",
|
|
55
55
|
"@syncular/config": "0.0.0",
|
|
56
|
-
"@syncular/core": "0.0.6-
|
|
57
|
-
"@syncular/dialect-bun-sqlite": "0.0.6-
|
|
58
|
-
"@syncular/testkit": "0.0.6-
|
|
56
|
+
"@syncular/core": "0.0.6-135",
|
|
57
|
+
"@syncular/dialect-bun-sqlite": "0.0.6-135",
|
|
58
|
+
"@syncular/testkit": "0.0.6-135",
|
|
59
59
|
"@testing-library/react": "^16.3.2",
|
|
60
60
|
"@types/react": "^19.2.14",
|
|
61
61
|
"happy-dom": "^20.7.0",
|
|
@@ -94,6 +94,35 @@ function isPresenceMetadataEqual(left: unknown, right: unknown): boolean {
|
|
|
94
94
|
return true;
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
+
const SYNC_PROGRESS_REFRESH_EVENTS = [
|
|
98
|
+
'sync:start',
|
|
99
|
+
'sync:complete',
|
|
100
|
+
'sync:error',
|
|
101
|
+
'bootstrap:start',
|
|
102
|
+
'bootstrap:progress',
|
|
103
|
+
'bootstrap:complete',
|
|
104
|
+
] as const;
|
|
105
|
+
|
|
106
|
+
const SYNC_INSPECTOR_REFRESH_EVENTS = [
|
|
107
|
+
'sync:start',
|
|
108
|
+
'sync:complete',
|
|
109
|
+
'sync:error',
|
|
110
|
+
'bootstrap:start',
|
|
111
|
+
'bootstrap:progress',
|
|
112
|
+
'bootstrap:complete',
|
|
113
|
+
'connection:change',
|
|
114
|
+
'outbox:change',
|
|
115
|
+
'data:change',
|
|
116
|
+
] as const;
|
|
117
|
+
|
|
118
|
+
const SYNC_SUBSCRIPTION_REFRESH_EVENTS = [
|
|
119
|
+
'sync:complete',
|
|
120
|
+
'sync:error',
|
|
121
|
+
'bootstrap:start',
|
|
122
|
+
'bootstrap:progress',
|
|
123
|
+
'bootstrap:complete',
|
|
124
|
+
] as const;
|
|
125
|
+
|
|
97
126
|
export interface SyncContextValue<DB extends SyncClientDb> {
|
|
98
127
|
engine: SyncEngine<DB>;
|
|
99
128
|
db: Kysely<DB>;
|
|
@@ -606,14 +635,21 @@ export function createSyncularReact<
|
|
|
606
635
|
return useSyncContext().engine;
|
|
607
636
|
}
|
|
608
637
|
|
|
609
|
-
function
|
|
638
|
+
function useEngineStateSnapshot(): SyncEngineState {
|
|
610
639
|
const engine = useEngine();
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
640
|
+
const subscribe = useCallback(
|
|
641
|
+
(callback: () => void) => {
|
|
642
|
+
return engine.subscribe(callback);
|
|
643
|
+
},
|
|
644
|
+
[engine]
|
|
616
645
|
);
|
|
646
|
+
const getSnapshot = useCallback(() => engine.getState(), [engine]);
|
|
647
|
+
return useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
function useSyncEngine(): UseSyncEngineResult {
|
|
651
|
+
const engine = useEngine();
|
|
652
|
+
const state = useEngineStateSnapshot();
|
|
617
653
|
|
|
618
654
|
const sync = useCallback(() => engine.sync(), [engine]);
|
|
619
655
|
const reconnect = useCallback(() => engine.reconnect(), [engine]);
|
|
@@ -687,13 +723,7 @@ export function createSyncularReact<
|
|
|
687
723
|
|
|
688
724
|
function useSyncStatus(options: UseSyncStatusOptions = {}): SyncStatus {
|
|
689
725
|
const { staleAfterMs } = options;
|
|
690
|
-
const
|
|
691
|
-
|
|
692
|
-
const state = useSyncExternalStore(
|
|
693
|
-
useCallback((callback) => engine.subscribe(callback), [engine]),
|
|
694
|
-
useCallback(() => engine.getState(), [engine]),
|
|
695
|
-
useCallback(() => engine.getState(), [engine])
|
|
696
|
-
);
|
|
726
|
+
const state = useEngineStateSnapshot();
|
|
697
727
|
|
|
698
728
|
const [staleClock, setStaleClock] = useState<number>(Date.now());
|
|
699
729
|
|
|
@@ -737,12 +767,7 @@ export function createSyncularReact<
|
|
|
737
767
|
|
|
738
768
|
function useSyncConnection(): UseSyncConnectionResult {
|
|
739
769
|
const engine = useEngine();
|
|
740
|
-
|
|
741
|
-
const engineState = useSyncExternalStore(
|
|
742
|
-
useCallback((callback) => engine.subscribe(callback), [engine]),
|
|
743
|
-
useCallback(() => engine.getState(), [engine]),
|
|
744
|
-
useCallback(() => engine.getState(), [engine])
|
|
745
|
-
);
|
|
770
|
+
const engineState = useEngineStateSnapshot();
|
|
746
771
|
|
|
747
772
|
const reconnect = useCallback(() => engine.reconnect(), [engine]);
|
|
748
773
|
const disconnect = useCallback(() => engine.disconnect(), [engine]);
|
|
@@ -790,62 +815,100 @@ export function createSyncularReact<
|
|
|
790
815
|
return useMemo(() => ({ health }), [health]);
|
|
791
816
|
}
|
|
792
817
|
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
818
|
+
type SyncEngineEventName = Parameters<SyncEngine<DB>['on']>[0];
|
|
819
|
+
|
|
820
|
+
function useAsyncEngineResource<T>(options: {
|
|
821
|
+
initialValue: T;
|
|
822
|
+
load: () => Promise<T>;
|
|
823
|
+
refreshOn: readonly SyncEngineEventName[];
|
|
824
|
+
pollIntervalMs?: number;
|
|
825
|
+
shouldPoll?: (value: T) => boolean;
|
|
826
|
+
}): {
|
|
827
|
+
value: T;
|
|
828
|
+
isLoading: boolean;
|
|
829
|
+
error: Error | null;
|
|
830
|
+
refresh: () => Promise<void>;
|
|
831
|
+
} {
|
|
796
832
|
const engine = useEngine();
|
|
797
|
-
const { pollIntervalMs
|
|
833
|
+
const { initialValue, load, refreshOn, pollIntervalMs, shouldPoll } =
|
|
834
|
+
options;
|
|
798
835
|
|
|
799
|
-
const
|
|
836
|
+
const loadRef = useRef(load);
|
|
837
|
+
loadRef.current = load;
|
|
838
|
+
|
|
839
|
+
const [value, setValue] = useState(initialValue);
|
|
800
840
|
const [isLoading, setIsLoading] = useState(true);
|
|
801
841
|
const [error, setError] = useState<Error | null>(null);
|
|
802
842
|
const loadedRef = useRef(false);
|
|
843
|
+
const versionRef = useRef(0);
|
|
803
844
|
|
|
804
845
|
const refresh = useCallback(async () => {
|
|
846
|
+
const version = ++versionRef.current;
|
|
847
|
+
const isCurrent = () => version === versionRef.current;
|
|
848
|
+
|
|
805
849
|
if (!loadedRef.current) {
|
|
806
850
|
setIsLoading(true);
|
|
807
851
|
}
|
|
808
852
|
|
|
809
853
|
try {
|
|
810
|
-
const next = await
|
|
811
|
-
|
|
854
|
+
const next = await loadRef.current();
|
|
855
|
+
if (!isCurrent()) return;
|
|
856
|
+
setValue(next);
|
|
812
857
|
setError(null);
|
|
813
858
|
} catch (err) {
|
|
859
|
+
if (!isCurrent()) return;
|
|
814
860
|
setError(err instanceof Error ? err : new Error(String(err)));
|
|
815
861
|
} finally {
|
|
816
|
-
|
|
817
|
-
|
|
862
|
+
if (isCurrent()) {
|
|
863
|
+
loadedRef.current = true;
|
|
864
|
+
setIsLoading(false);
|
|
865
|
+
}
|
|
818
866
|
}
|
|
819
|
-
}, [
|
|
867
|
+
}, []);
|
|
820
868
|
|
|
821
869
|
useEffect(() => {
|
|
822
870
|
void refresh();
|
|
823
871
|
}, [refresh]);
|
|
824
872
|
|
|
825
873
|
useEffect(() => {
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
engine.on(
|
|
829
|
-
|
|
830
|
-
engine.on('bootstrap:start', refresh),
|
|
831
|
-
engine.on('bootstrap:progress', refresh),
|
|
832
|
-
engine.on('bootstrap:complete', refresh),
|
|
833
|
-
];
|
|
874
|
+
if (refreshOn.length === 0) return;
|
|
875
|
+
const unsubscribers = refreshOn.map((eventName) =>
|
|
876
|
+
engine.on(eventName, refresh)
|
|
877
|
+
);
|
|
834
878
|
return () => {
|
|
835
879
|
for (const unsubscribe of unsubscribers) unsubscribe();
|
|
836
880
|
};
|
|
837
|
-
}, [engine, refresh]);
|
|
881
|
+
}, [engine, refresh, refreshOn]);
|
|
838
882
|
|
|
839
883
|
useEffect(() => {
|
|
840
|
-
if (pollIntervalMs <= 0) return;
|
|
841
|
-
if (
|
|
842
|
-
|
|
884
|
+
if (pollIntervalMs === undefined || pollIntervalMs <= 0) return;
|
|
885
|
+
if (shouldPoll && !shouldPoll(value)) return;
|
|
843
886
|
const timer = setInterval(() => {
|
|
844
887
|
void refresh();
|
|
845
888
|
}, pollIntervalMs);
|
|
846
|
-
|
|
847
889
|
return () => clearInterval(timer);
|
|
848
|
-
}, [pollIntervalMs,
|
|
890
|
+
}, [pollIntervalMs, refresh, shouldPoll, value]);
|
|
891
|
+
|
|
892
|
+
return { value, isLoading, error, refresh };
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
function useSyncProgress(
|
|
896
|
+
options: UseSyncProgressOptions = {}
|
|
897
|
+
): UseSyncProgressResult {
|
|
898
|
+
const engine = useEngine();
|
|
899
|
+
const { pollIntervalMs = 500 } = options;
|
|
900
|
+
const {
|
|
901
|
+
value: progress,
|
|
902
|
+
isLoading,
|
|
903
|
+
error,
|
|
904
|
+
refresh,
|
|
905
|
+
} = useAsyncEngineResource<SyncProgress | null>({
|
|
906
|
+
initialValue: null,
|
|
907
|
+
load: () => engine.getProgress(),
|
|
908
|
+
refreshOn: SYNC_PROGRESS_REFRESH_EVENTS,
|
|
909
|
+
pollIntervalMs,
|
|
910
|
+
shouldPoll: (value) => value?.channelPhase === 'bootstrapping',
|
|
911
|
+
});
|
|
849
912
|
|
|
850
913
|
return useMemo(
|
|
851
914
|
() => ({
|
|
@@ -863,59 +926,17 @@ export function createSyncularReact<
|
|
|
863
926
|
): UseSyncInspectorResult {
|
|
864
927
|
const engine = useEngine();
|
|
865
928
|
const { pollIntervalMs = 2_000, eventLimit } = options;
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
}
|
|
878
|
-
|
|
879
|
-
try {
|
|
880
|
-
const next = await engine.getInspectorSnapshot({ eventLimit });
|
|
881
|
-
setSnapshot(next);
|
|
882
|
-
setError(null);
|
|
883
|
-
} catch (err) {
|
|
884
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
885
|
-
} finally {
|
|
886
|
-
loadedRef.current = true;
|
|
887
|
-
setIsLoading(false);
|
|
888
|
-
}
|
|
889
|
-
}, [engine, eventLimit]);
|
|
890
|
-
|
|
891
|
-
useEffect(() => {
|
|
892
|
-
void refresh();
|
|
893
|
-
}, [refresh]);
|
|
894
|
-
|
|
895
|
-
useEffect(() => {
|
|
896
|
-
const unsubscribers = [
|
|
897
|
-
engine.on('sync:start', refresh),
|
|
898
|
-
engine.on('sync:complete', refresh),
|
|
899
|
-
engine.on('sync:error', refresh),
|
|
900
|
-
engine.on('bootstrap:start', refresh),
|
|
901
|
-
engine.on('bootstrap:progress', refresh),
|
|
902
|
-
engine.on('bootstrap:complete', refresh),
|
|
903
|
-
engine.on('connection:change', refresh),
|
|
904
|
-
engine.on('outbox:change', refresh),
|
|
905
|
-
engine.on('data:change', refresh),
|
|
906
|
-
];
|
|
907
|
-
return () => {
|
|
908
|
-
for (const unsubscribe of unsubscribers) unsubscribe();
|
|
909
|
-
};
|
|
910
|
-
}, [engine, refresh]);
|
|
911
|
-
|
|
912
|
-
useEffect(() => {
|
|
913
|
-
if (pollIntervalMs <= 0) return;
|
|
914
|
-
const timer = setInterval(() => {
|
|
915
|
-
void refresh();
|
|
916
|
-
}, pollIntervalMs);
|
|
917
|
-
return () => clearInterval(timer);
|
|
918
|
-
}, [pollIntervalMs, refresh]);
|
|
929
|
+
const {
|
|
930
|
+
value: snapshot,
|
|
931
|
+
isLoading,
|
|
932
|
+
error,
|
|
933
|
+
refresh,
|
|
934
|
+
} = useAsyncEngineResource<SyncInspectorSnapshot | null>({
|
|
935
|
+
initialValue: null,
|
|
936
|
+
load: () => engine.getInspectorSnapshot({ eventLimit }),
|
|
937
|
+
refreshOn: SYNC_INSPECTOR_REFRESH_EVENTS,
|
|
938
|
+
pollIntervalMs,
|
|
939
|
+
});
|
|
919
940
|
|
|
920
941
|
return useMemo(
|
|
921
942
|
() => ({
|
|
@@ -933,49 +954,21 @@ export function createSyncularReact<
|
|
|
933
954
|
): UseSyncSubscriptionsResult {
|
|
934
955
|
const engine = useEngine();
|
|
935
956
|
const { stateId, table, status } = options;
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
}
|
|
946
|
-
|
|
947
|
-
try {
|
|
948
|
-
const next = await engine.listSubscriptionStates({
|
|
957
|
+
const {
|
|
958
|
+
value: subscriptions,
|
|
959
|
+
isLoading,
|
|
960
|
+
error,
|
|
961
|
+
refresh,
|
|
962
|
+
} = useAsyncEngineResource<SubscriptionState[]>({
|
|
963
|
+
initialValue: [],
|
|
964
|
+
load: () =>
|
|
965
|
+
engine.listSubscriptionStates({
|
|
949
966
|
stateId,
|
|
950
967
|
table,
|
|
951
968
|
status,
|
|
952
|
-
})
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
} catch (err) {
|
|
956
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
957
|
-
} finally {
|
|
958
|
-
loadedRef.current = true;
|
|
959
|
-
setIsLoading(false);
|
|
960
|
-
}
|
|
961
|
-
}, [engine, stateId, table, status]);
|
|
962
|
-
|
|
963
|
-
useEffect(() => {
|
|
964
|
-
void refresh();
|
|
965
|
-
}, [refresh]);
|
|
966
|
-
|
|
967
|
-
useEffect(() => {
|
|
968
|
-
const unsubscribers = [
|
|
969
|
-
engine.on('sync:complete', refresh),
|
|
970
|
-
engine.on('sync:error', refresh),
|
|
971
|
-
engine.on('bootstrap:start', refresh),
|
|
972
|
-
engine.on('bootstrap:progress', refresh),
|
|
973
|
-
engine.on('bootstrap:complete', refresh),
|
|
974
|
-
];
|
|
975
|
-
return () => {
|
|
976
|
-
for (const unsubscribe of unsubscribers) unsubscribe();
|
|
977
|
-
};
|
|
978
|
-
}, [engine, refresh]);
|
|
969
|
+
}),
|
|
970
|
+
refreshOn: SYNC_SUBSCRIPTION_REFRESH_EVENTS,
|
|
971
|
+
});
|
|
979
972
|
|
|
980
973
|
return useMemo(
|
|
981
974
|
() => ({
|
|
@@ -994,49 +987,19 @@ export function createSyncularReact<
|
|
|
994
987
|
): UseSyncSubscriptionResult {
|
|
995
988
|
const engine = useEngine();
|
|
996
989
|
const { stateId } = options;
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
if (!loadedRef.current) {
|
|
1007
|
-
setIsLoading(true);
|
|
1008
|
-
}
|
|
1009
|
-
|
|
1010
|
-
try {
|
|
1011
|
-
const next = await engine.getSubscriptionState(subscriptionId, {
|
|
990
|
+
const {
|
|
991
|
+
value: subscription,
|
|
992
|
+
isLoading,
|
|
993
|
+
error,
|
|
994
|
+
refresh,
|
|
995
|
+
} = useAsyncEngineResource<SubscriptionState | null>({
|
|
996
|
+
initialValue: null,
|
|
997
|
+
load: () =>
|
|
998
|
+
engine.getSubscriptionState(subscriptionId, {
|
|
1012
999
|
stateId,
|
|
1013
|
-
})
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
} catch (err) {
|
|
1017
|
-
setError(err instanceof Error ? err : new Error(String(err)));
|
|
1018
|
-
} finally {
|
|
1019
|
-
loadedRef.current = true;
|
|
1020
|
-
setIsLoading(false);
|
|
1021
|
-
}
|
|
1022
|
-
}, [engine, stateId, subscriptionId]);
|
|
1023
|
-
|
|
1024
|
-
useEffect(() => {
|
|
1025
|
-
void refresh();
|
|
1026
|
-
}, [refresh]);
|
|
1027
|
-
|
|
1028
|
-
useEffect(() => {
|
|
1029
|
-
const unsubscribers = [
|
|
1030
|
-
engine.on('sync:complete', refresh),
|
|
1031
|
-
engine.on('sync:error', refresh),
|
|
1032
|
-
engine.on('bootstrap:start', refresh),
|
|
1033
|
-
engine.on('bootstrap:progress', refresh),
|
|
1034
|
-
engine.on('bootstrap:complete', refresh),
|
|
1035
|
-
];
|
|
1036
|
-
return () => {
|
|
1037
|
-
for (const unsubscribe of unsubscribers) unsubscribe();
|
|
1038
|
-
};
|
|
1039
|
-
}, [engine, refresh]);
|
|
1000
|
+
}),
|
|
1001
|
+
refreshOn: SYNC_SUBSCRIPTION_REFRESH_EVENTS,
|
|
1002
|
+
});
|
|
1040
1003
|
|
|
1041
1004
|
return useMemo(
|
|
1042
1005
|
() => ({
|
|
@@ -1051,39 +1014,15 @@ export function createSyncularReact<
|
|
|
1051
1014
|
|
|
1052
1015
|
function useConflicts(): UseConflictsResult {
|
|
1053
1016
|
const engine = useEngine();
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
} catch (err) {
|
|
1064
|
-
console.error('[useConflicts] Failed to refresh:', err);
|
|
1065
|
-
} finally {
|
|
1066
|
-
setIsLoading(false);
|
|
1067
|
-
}
|
|
1068
|
-
}, [engine]);
|
|
1069
|
-
|
|
1070
|
-
useEffect(() => {
|
|
1071
|
-
refresh();
|
|
1072
|
-
}, [refresh]);
|
|
1073
|
-
|
|
1074
|
-
useEffect(() => {
|
|
1075
|
-
const unsubscribe = engine.on('sync:complete', () => {
|
|
1076
|
-
refresh();
|
|
1077
|
-
});
|
|
1078
|
-
return unsubscribe;
|
|
1079
|
-
}, [engine, refresh]);
|
|
1080
|
-
|
|
1081
|
-
useEffect(() => {
|
|
1082
|
-
const unsubscribe = engine.on('sync:error', () => {
|
|
1083
|
-
refresh();
|
|
1084
|
-
});
|
|
1085
|
-
return unsubscribe;
|
|
1086
|
-
}, [engine, refresh]);
|
|
1017
|
+
const {
|
|
1018
|
+
value: conflicts,
|
|
1019
|
+
isLoading,
|
|
1020
|
+
refresh,
|
|
1021
|
+
} = useAsyncEngineResource<ConflictInfo[]>({
|
|
1022
|
+
initialValue: [],
|
|
1023
|
+
load: () => engine.getConflicts(),
|
|
1024
|
+
refreshOn: ['sync:complete', 'sync:error'],
|
|
1025
|
+
});
|
|
1087
1026
|
|
|
1088
1027
|
return useMemo(
|
|
1089
1028
|
() => ({
|