@peerbit/document-react 0.4.2 → 0.4.4

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":"useQuery.d.ts","sourceRoot":"","sources":["../../src/useQuery.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EACX,qBAAqB,EACrB,oBAAoB,EAEpB,gBAAgB,EAChB,kBAAkB,EAElB,YAAY,EACZ,WAAW,EACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAC;AAI3D,KAAK,YAAY,GAAG;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD,KAAK,UAAU,GAAG,CACjB,CAAC,CAAC,EAAE,MAAM,EACV,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAC5C,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,KAAK,WAAW,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnD,KAAK,mBAAmB,CAAC,IAAI,IAAI,CAChC,IAAI,EAAE,IAAI,EAAE,EACZ,MAAM,EAAE;IAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,EAC9C,OAAO,EAAE;IAAE,YAAY,EAAE,MAAM,IAAI,EAAE,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAA;CAAE,KACzD,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE9B,KAAK,kBAAkB,CAAC,IAAI,IAAI,CAC/B,GAAG,EAAE,gBAAgB,CAAC,OAAO,CAAC,EAC9B,OAAO,EAAE;IACR,QAAQ,EAAE,UAAU,CAAC;IACrB,MAAM,EAAE,CACP,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,CAAA;KAAE,KAC1C,IAAI,CAAC;IACV,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;CACpB,KACG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAO1B,MAAM,MAAM,SAAS,GAAG;IACvB,iDAAiD;IACjD,KAAK,CAAC,EAAE,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC;IACtD,mEAAmE;IACnE,IAAI,CAAC,EAAE,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;CACvE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,qBAAqB,CAChC,CAAC,EACD,CAAC,EACD,CAAC,SAAS,OAAO,GAAG,SAAS,EAC7B,EAAE,GAAG,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,IAC7D;IAEH,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAenB,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EACJ,OAAO,GACP,kBAAkB,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC;IACxE,aAAa,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC;CACvC,GAAG,YAAY,CAAC;AAGjB;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,GACpB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,OAAO,GAAG,SAAS,GAAG,IAAI,EACpC,EAAE,GAAG,CAAC,SAAS,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;AAEhE,qFAAqF;AACrF,SAAS,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,SAAS,EACxD,SAAS,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;;mBA+hBvC,MAAM,SACF;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KAC9C,OAAO,CAAC,OAAO,CAAC;;;;CAgFnB,CAAC"}
1
+ {"version":3,"file":"useQuery.d.ts","sourceRoot":"","sources":["../../src/useQuery.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,14 @@
1
- import { ClosedError, Documents } from "@peerbit/document";
1
+ import { ClosedError, Documents, NotStartedError } from "@peerbit/document";
2
2
  import * as indexerTypes from "@peerbit/indexer-interface";
3
3
  import { useEffect, useMemo, useRef, useState } from "react";
4
4
  import { v4 as uuid } from "uuid";
5
+ /**
6
+ * Check if an error is a benign lifecycle error that should be silently ignored.
7
+ * These errors can occur during component unmount when the database is closing.
8
+ */
9
+ const isBenignLifecycleError = (e) => {
10
+ return e instanceof ClosedError || e instanceof NotStartedError;
11
+ };
5
12
  /* ────────────────────────── Main Hook ────────────────────────── */
6
13
  /**
7
14
  * `useQuery` – unified hook that accepts **either**
@@ -161,6 +168,8 @@ dbOrDbs, options) => {
161
168
  reset();
162
169
  const abortSignal = closeControllerRef.current?.signal;
163
170
  const resolveRemoteOptions = () => {
171
+ if (options.remote === false)
172
+ return false;
164
173
  if (!options.remote)
165
174
  return undefined;
166
175
  if (typeof options.remote === "object") {
@@ -189,14 +198,16 @@ dbOrDbs, options) => {
189
198
  await maybeUser;
190
199
  return;
191
200
  }
192
- // default handling: if we have concrete items, inject them at the front
201
+ // default handling: if we have concrete items, inject them at the edge
193
202
  const items = evt.items ?? (lateHelpers?.collect && (await lateHelpers.collect()));
194
203
  if (items && items.length) {
195
204
  const values = items
196
205
  .map((it) => it?.value ?? it?.indexed ?? it)
197
206
  .filter(Boolean);
198
207
  if (values.length) {
199
- injectItems(values, { position: "start" });
208
+ injectItems(values, {
209
+ position: reverseRef.current ? "end" : "start",
210
+ });
200
211
  }
201
212
  return;
202
213
  }
@@ -211,7 +222,7 @@ dbOrDbs, options) => {
211
222
  draining = true;
212
223
  loadMore(amount, opts)
213
224
  .catch((e) => {
214
- if (!(e instanceof ClosedError))
225
+ if (!isBenignLifecycleError(e))
215
226
  throw e;
216
227
  })
217
228
  .finally(() => {
@@ -244,6 +255,7 @@ dbOrDbs, options) => {
244
255
  const drainAmount = options.batchSize ?? 10;
245
256
  scheduleDrain(iterator, drainAmount, {
246
257
  force: true,
258
+ reason,
247
259
  });
248
260
  }
249
261
  },
@@ -408,40 +420,45 @@ dbOrDbs, options) => {
408
420
  log("No new items or mutations");
409
421
  return !emptyResultsRef.current;
410
422
  }
423
+ const incomingItems = freshItems.length
424
+ ? [...freshItems]
425
+ : processed.flatMap((p) => p.items);
411
426
  let combinedDefault;
412
- if (reason === "late") {
413
- let combined = [...freshItems, ...next];
414
- if (sortComparator) {
415
- try {
416
- combined = [...next, ...freshItems].sort(sortComparator);
417
- }
418
- catch (error) {
419
- console.warn("Failed to sort late results", error);
420
- }
427
+ if (sortComparator) {
428
+ let combined = [...next, ...freshItems];
429
+ try {
430
+ combined.sort(sortComparator);
431
+ }
432
+ catch (error) {
433
+ console.warn("Failed to sort results", error);
421
434
  }
422
435
  if (reverseRef.current) {
423
436
  combined.reverse();
424
437
  }
425
438
  combinedDefault = combined;
426
439
  }
440
+ else if (reason === "late") {
441
+ let combined = [...freshItems, ...next];
442
+ if (reverseRef.current) {
443
+ combined.reverse();
444
+ }
445
+ combinedDefault = combined;
446
+ }
427
447
  else if (reverseRef.current) {
428
- freshItems.reverse();
429
- freshItems.push(...next);
430
- combinedDefault = freshItems;
448
+ const combined = [...freshItems].reverse();
449
+ combined.push(...next);
450
+ combinedDefault = combined;
431
451
  }
432
452
  else {
433
453
  next.push(...freshItems);
434
454
  combinedDefault = next;
435
455
  }
436
456
  const defaultMerge = () => combinedDefault;
437
- const incoming = freshItems.length
438
- ? freshItems
439
- : processed.flatMap((p) => p.items);
440
457
  const loadMoreHelper = (...args) => loadMoreRef.current
441
458
  ? loadMoreRef.current(...args)
442
459
  : Promise.resolve(false);
443
460
  const mergedCandidate = options.applyResults
444
- ? await options.applyResults(allRef.current, { items: incoming, reason }, {
461
+ ? await options.applyResults(allRef.current, { items: incomingItems, reason }, {
445
462
  defaultMerge,
446
463
  loadMore: loadMoreHelper,
447
464
  })
@@ -518,7 +535,7 @@ dbOrDbs, options) => {
518
535
  return drainRoundRobin(iterators, n, opts?.reason ?? "batch");
519
536
  }
520
537
  catch (e) {
521
- if (!(e instanceof ClosedError))
538
+ if (!isBenignLifecycleError(e))
522
539
  throw e;
523
540
  return false;
524
541
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useQuery.js","sourceRoot":"","sources":["../../src/useQuery.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useQuery.js","sourceRoot":"","sources":["../../src/useQuery.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/document-react",
3
- "version": "0.4.2",
3
+ "version": "0.4.4",
4
4
  "description": "React hooks for @peerbit/document",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -42,7 +42,7 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "uuid": "^10.0.0",
45
- "@peerbit/document": "11.2.2",
45
+ "@peerbit/document": "11.2.4",
46
46
  "@peerbit/indexer-interface": "2.1.0",
47
47
  "@peerbit/react": "0.0.40",
48
48
  "@peerbit/logger": "2.0.0"
@@ -59,8 +59,8 @@
59
59
  "happy-dom": "^20.0.10",
60
60
  "vitest": "^4.0.12",
61
61
  "@peerbit/blocks-interface": "1.5.0",
62
- "peerbit": "4.4.5",
63
- "@peerbit/program": "5.4.3"
62
+ "@peerbit/program": "5.4.3",
63
+ "peerbit": "4.4.5"
64
64
  },
65
65
  "author": "dao.xyz",
66
66
  "license": "MIT",
package/src/useQuery.tsx CHANGED
@@ -1,4 +1,4 @@
1
- import { ClosedError, Documents } from "@peerbit/document";
1
+ import { ClosedError, Documents, NotStartedError } from "@peerbit/document";
2
2
  import type {
3
3
  AbstractSearchRequest,
4
4
  AbstractSearchResult,
@@ -14,6 +14,14 @@ import * as indexerTypes from "@peerbit/indexer-interface";
14
14
  import { useEffect, useMemo, useRef, useState } from "react";
15
15
  import { v4 as uuid } from "uuid";
16
16
 
17
+ /**
18
+ * Check if an error is a benign lifecycle error that should be silently ignored.
19
+ * These errors can occur during component unmount when the database is closing.
20
+ */
21
+ const isBenignLifecycleError = (e: unknown): boolean => {
22
+ return e instanceof ClosedError || e instanceof NotStartedError;
23
+ };
24
+
17
25
  type QueryOptions = { query: QueryLike; id?: string };
18
26
 
19
27
  type LoadMoreFn = (
@@ -283,6 +291,7 @@ export const useQuery = <
283
291
  reset();
284
292
  const abortSignal = closeControllerRef.current?.signal;
285
293
  const resolveRemoteOptions = () => {
294
+ if (options.remote === false) return false;
286
295
  if (!options.remote) return undefined;
287
296
  if (typeof options.remote === "object") {
288
297
  return {
@@ -315,7 +324,7 @@ export const useQuery = <
315
324
  return;
316
325
  }
317
326
 
318
- // default handling: if we have concrete items, inject them at the front
327
+ // default handling: if we have concrete items, inject them at the edge
319
328
  const items =
320
329
  evt.items ?? (lateHelpers?.collect && (await lateHelpers.collect()));
321
330
  if (items && items.length) {
@@ -323,7 +332,9 @@ export const useQuery = <
323
332
  .map((it: any) => it?.value ?? it?.indexed ?? it)
324
333
  .filter(Boolean) as Item[];
325
334
  if (values.length) {
326
- injectItems(values, { position: "start" });
335
+ injectItems(values, {
336
+ position: reverseRef.current ? "end" : "start",
337
+ });
327
338
  }
328
339
  return;
329
340
  }
@@ -334,14 +345,14 @@ export const useQuery = <
334
345
  const scheduleDrain = (
335
346
  ref: ResultsIterator<RT>,
336
347
  amount: number,
337
- opts?: { force?: boolean },
348
+ opts?: { force?: boolean; reason?: MergeReason },
338
349
  ) => {
339
350
  log("Schedule drain", draining, ref, amount);
340
351
  if (draining) return;
341
352
  draining = true;
342
353
  loadMore(amount, opts)
343
354
  .catch((e) => {
344
- if (!(e instanceof ClosedError)) throw e;
355
+ if (!isBenignLifecycleError(e)) throw e;
345
356
  })
346
357
  .finally(() => {
347
358
  draining = false;
@@ -376,6 +387,7 @@ export const useQuery = <
376
387
  const drainAmount = options.batchSize ?? 10;
377
388
  scheduleDrain(iterator as ResultsIterator<RT>, drainAmount, {
378
389
  force: true,
390
+ reason,
379
391
  });
380
392
  }
381
393
  },
@@ -582,33 +594,38 @@ export const useQuery = <
582
594
  return !emptyResultsRef.current;
583
595
  }
584
596
 
597
+ const incomingItems = freshItems.length
598
+ ? [...freshItems]
599
+ : processed.flatMap((p) => p.items);
600
+
585
601
  let combinedDefault: Item[];
586
- if (reason === "late") {
587
- let combined = [...freshItems, ...next];
588
- if (sortComparator) {
589
- try {
590
- combined = [...next, ...freshItems].sort(sortComparator);
591
- } catch (error) {
592
- console.warn("Failed to sort late results", error);
593
- }
602
+ if (sortComparator) {
603
+ let combined = [...next, ...freshItems];
604
+ try {
605
+ combined.sort(sortComparator);
606
+ } catch (error) {
607
+ console.warn("Failed to sort results", error);
608
+ }
609
+ if (reverseRef.current) {
610
+ combined.reverse();
594
611
  }
612
+ combinedDefault = combined;
613
+ } else if (reason === "late") {
614
+ let combined = [...freshItems, ...next];
595
615
  if (reverseRef.current) {
596
616
  combined.reverse();
597
617
  }
598
618
  combinedDefault = combined;
599
619
  } else if (reverseRef.current) {
600
- freshItems.reverse();
601
- freshItems.push(...next);
602
- combinedDefault = freshItems;
620
+ const combined = [...freshItems].reverse();
621
+ combined.push(...next);
622
+ combinedDefault = combined;
603
623
  } else {
604
624
  next.push(...freshItems);
605
625
  combinedDefault = next;
606
626
  }
607
627
 
608
628
  const defaultMerge = () => combinedDefault;
609
- const incoming = freshItems.length
610
- ? freshItems
611
- : processed.flatMap((p) => p.items);
612
629
  const loadMoreHelper: LoadMoreFn = (...args) =>
613
630
  loadMoreRef.current
614
631
  ? loadMoreRef.current(...args)
@@ -616,7 +633,7 @@ export const useQuery = <
616
633
  const mergedCandidate = options.applyResults
617
634
  ? await options.applyResults(
618
635
  allRef.current,
619
- { items: incoming, reason },
636
+ { items: incomingItems, reason },
620
637
  {
621
638
  defaultMerge,
622
639
  loadMore: loadMoreHelper,
@@ -705,7 +722,7 @@ export const useQuery = <
705
722
 
706
723
  return drainRoundRobin(iterators, n, opts?.reason ?? "batch");
707
724
  } catch (e) {
708
- if (!(e instanceof ClosedError)) throw e;
725
+ if (!isBenignLifecycleError(e)) throw e;
709
726
  return false;
710
727
  } finally {
711
728
  setIsLoading(false);