@hvakr/firestate 0.1.3 → 0.1.5
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/README.md +229 -115
- package/dist/index.d.mts +219 -46
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +247 -69
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -27,27 +27,43 @@ interface UpdateOptions {
|
|
|
27
27
|
undoGroupId?: string;
|
|
28
28
|
}
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
30
|
+
* The full observable state of a document subscription — what a hook `selector`
|
|
31
|
+
* receives. Carries every status flag (including `isSynced`, which the default
|
|
32
|
+
* data handle deliberately omits) so a selector can react to exactly the slice
|
|
33
|
+
* it reads.
|
|
31
34
|
*/
|
|
32
35
|
interface DocumentState<T> {
|
|
33
36
|
/** Current merged state (local changes applied to sync state) */
|
|
34
37
|
data: T | undefined;
|
|
35
|
-
/** Whether initial
|
|
38
|
+
/** Whether the initial snapshot has not arrived yet */
|
|
36
39
|
isLoading: boolean;
|
|
37
|
-
/**
|
|
40
|
+
/**
|
|
41
|
+
* Whether the initial snapshot has arrived and data is ready to render — the
|
|
42
|
+
* completion of {@link DocumentState.isLoading} (`!isLoading` for a live
|
|
43
|
+
* subscription; `false` while the hook is disabled).
|
|
44
|
+
*/
|
|
45
|
+
isLoaded: boolean;
|
|
46
|
+
/** Whether all local changes have synced to Firestore (no pending writes) */
|
|
38
47
|
isSynced: boolean;
|
|
39
48
|
/** Error from listener, if any */
|
|
40
49
|
error: Error | undefined;
|
|
41
50
|
}
|
|
42
51
|
/**
|
|
43
|
-
*
|
|
52
|
+
* The full observable state of a collection subscription — what a hook
|
|
53
|
+
* `selector` receives. See {@link DocumentState}.
|
|
44
54
|
*/
|
|
45
55
|
interface CollectionState<T> {
|
|
46
56
|
/** Current merged state keyed by document ID */
|
|
47
57
|
data: Record<string, T>;
|
|
48
|
-
/** Whether initial
|
|
58
|
+
/** Whether the initial snapshot has not arrived yet */
|
|
49
59
|
isLoading: boolean;
|
|
50
|
-
/**
|
|
60
|
+
/**
|
|
61
|
+
* Whether the collection is active and its initial snapshot has arrived —
|
|
62
|
+
* `isActive && !isLoading`. `false` for a lazy collection before `load()`,
|
|
63
|
+
* and while the hook is disabled.
|
|
64
|
+
*/
|
|
65
|
+
isLoaded: boolean;
|
|
66
|
+
/** Whether all local changes have synced to Firestore (no pending writes) */
|
|
51
67
|
isSynced: boolean;
|
|
52
68
|
/** Whether the collection has been activated (for lazy loading) */
|
|
53
69
|
isActive: boolean;
|
|
@@ -55,7 +71,38 @@ interface CollectionState<T> {
|
|
|
55
71
|
error: Error | undefined;
|
|
56
72
|
}
|
|
57
73
|
/**
|
|
58
|
-
*
|
|
74
|
+
* Sync status of a single resource, returned by the per-entry
|
|
75
|
+
* `use{Name}SyncStatus` hook. Opt-in: only components that render save/dirty
|
|
76
|
+
* state subscribe to it, so the common data path does not re-render when a write
|
|
77
|
+
* settles. Shares the resource's one `onSnapshot` listener.
|
|
78
|
+
*/
|
|
79
|
+
interface SyncStatus {
|
|
80
|
+
/** Whether all local changes have synced to Firestore (no pending writes) */
|
|
81
|
+
isSynced: boolean;
|
|
82
|
+
/** Whether there are pending local changes still being saved (`!isSynced`) */
|
|
83
|
+
isSaving: boolean;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Loading status of a single resource, returned by the per-entry
|
|
87
|
+
* `use{Name}LoadingStatus` hook. A spinner-only channel: it re-renders on load
|
|
88
|
+
* transitions but never on data changes. Shares the resource's listener.
|
|
89
|
+
*/
|
|
90
|
+
interface LoadingStatus {
|
|
91
|
+
/** Whether the initial snapshot has not arrived yet */
|
|
92
|
+
isLoading: boolean;
|
|
93
|
+
/** Whether the initial snapshot has arrived (the completion of `isLoading`) */
|
|
94
|
+
isLoaded: boolean;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Document handle returned by the `useDocument` hook.
|
|
98
|
+
*
|
|
99
|
+
* **Sync-agnostic by default.** The handle carries `data`, `isLoaded`, `error`,
|
|
100
|
+
* the writers, and `ref` — but NOT `isSynced`. A document hook therefore does
|
|
101
|
+
* not re-render when a write settles (the `isSynced` flip on every autosave),
|
|
102
|
+
* so "just render the record" is the cheap, default path. Components that
|
|
103
|
+
* actually render save/dirty state opt into the per-entry `use{Name}SyncStatus`
|
|
104
|
+
* hook ({@link SyncStatus}), which shares the same listener. The raw
|
|
105
|
+
* `isLoading`/`isSynced` flags remain on {@link DocumentState} for selectors.
|
|
59
106
|
*/
|
|
60
107
|
interface DocumentHandle<T extends FirestoreObject> {
|
|
61
108
|
/** Current document data */
|
|
@@ -66,10 +113,13 @@ interface DocumentHandle<T extends FirestoreObject> {
|
|
|
66
113
|
set: (data: T, options?: UpdateOptions) => void;
|
|
67
114
|
/** Delete the document */
|
|
68
115
|
delete: (options?: UpdateOptions) => void;
|
|
69
|
-
/**
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
116
|
+
/**
|
|
117
|
+
* Whether the initial snapshot has arrived and data is ready to render — the
|
|
118
|
+
* completion of `isLoading`. `false` while loading or when the hook is
|
|
119
|
+
* disabled. (Use `use{Name}LoadingStatus` for an `isLoading`/`isLoaded`
|
|
120
|
+
* channel that does not re-render on data changes.)
|
|
121
|
+
*/
|
|
122
|
+
isLoaded: boolean;
|
|
73
123
|
/** Force sync pending changes immediately */
|
|
74
124
|
sync: () => Promise<void>;
|
|
75
125
|
/** Error from listener, if any */
|
|
@@ -81,7 +131,13 @@ interface DocumentHandle<T extends FirestoreObject> {
|
|
|
81
131
|
ref: DocumentReference<T> | undefined;
|
|
82
132
|
}
|
|
83
133
|
/**
|
|
84
|
-
* Collection handle returned by useCollection hook
|
|
134
|
+
* Collection handle returned by the `useCollection` hook.
|
|
135
|
+
*
|
|
136
|
+
* Sync-agnostic by default, exactly like {@link DocumentHandle}: it carries
|
|
137
|
+
* `data`, `isLoaded`, `isActive`, `error`, the writers, `load`, and `ref` — but
|
|
138
|
+
* NOT `isSynced`. Opt into `use{Name}SyncStatus` for save state. `isActive`
|
|
139
|
+
* stays (lazy collections gate a "Load" button on it); `isLoaded` is
|
|
140
|
+
* `isActive && !isLoading`.
|
|
85
141
|
*/
|
|
86
142
|
interface CollectionHandle<T extends FirestoreObject> {
|
|
87
143
|
/** Current collection data keyed by document ID */
|
|
@@ -97,15 +153,17 @@ interface CollectionHandle<T extends FirestoreObject> {
|
|
|
97
153
|
* before using the id to navigate or persist references.
|
|
98
154
|
*/
|
|
99
155
|
add: {
|
|
100
|
-
(id: string, data: Omit<T,
|
|
101
|
-
(data: Omit<T,
|
|
156
|
+
(id: string, data: Omit<T, 'id'>, options?: UpdateOptions): string | undefined;
|
|
157
|
+
(data: Omit<T, 'id'>, options?: UpdateOptions): string | undefined;
|
|
102
158
|
};
|
|
103
159
|
/** Remove a document from the collection */
|
|
104
160
|
remove: (id: string, options?: UpdateOptions) => void;
|
|
105
|
-
/**
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
161
|
+
/**
|
|
162
|
+
* Whether the collection is active and its initial snapshot has arrived
|
|
163
|
+
* (ready to render) — `isActive && !isLoading`. `false` for a lazy
|
|
164
|
+
* collection before `load()`, while loading, or when the hook is disabled.
|
|
165
|
+
*/
|
|
166
|
+
isLoaded: boolean;
|
|
109
167
|
/** Whether subscription is active (for lazy collections) */
|
|
110
168
|
isActive: boolean;
|
|
111
169
|
/** Activate a lazy subscription */
|
|
@@ -121,8 +179,8 @@ interface CollectionHandle<T extends FirestoreObject> {
|
|
|
121
179
|
ref: CollectionReference<T> | undefined;
|
|
122
180
|
}
|
|
123
181
|
/** Reactive status fields a selector drops unless it folds them into its slice. */
|
|
124
|
-
type DocumentStatusKeys =
|
|
125
|
-
type CollectionStatusKeys = DocumentStatusKeys |
|
|
182
|
+
type DocumentStatusKeys = 'isLoaded' | 'error';
|
|
183
|
+
type CollectionStatusKeys = DocumentStatusKeys | 'isActive';
|
|
126
184
|
/**
|
|
127
185
|
* A {@link DocumentHandle} reduced to a hook-level `selector`'s output. The
|
|
128
186
|
* selector receives the full observable state ({@link DocumentState}) and
|
|
@@ -131,8 +189,8 @@ type CollectionStatusKeys = DocumentStatusKeys | "isActive";
|
|
|
131
189
|
*
|
|
132
190
|
* A selected handle deliberately exposes **only** `data` (the slice) plus the
|
|
133
191
|
* writer surface (`update`/`set`/`delete`/`sync`) and `ref` — never the status
|
|
134
|
-
* fields (`
|
|
135
|
-
*
|
|
192
|
+
* fields (`isLoaded`/`error`). Status is not a freebie here: if a component
|
|
193
|
+
* needs it, it must select it (`s => ({ slice: s.data?.x, loading:
|
|
136
194
|
* s.isLoading })`), so what you re-render on is exactly what you select. The
|
|
137
195
|
* writers stay typed against the full document `TData`, because a selector
|
|
138
196
|
* changes what you *read*, never what you *write*.
|
|
@@ -143,7 +201,7 @@ type CollectionStatusKeys = DocumentStatusKeys | "isActive";
|
|
|
143
201
|
* to `set`, or you will overwrite every other field. Prefer `update` from a
|
|
144
202
|
* narrowed handle; reach for `set` only when you hold the full document.
|
|
145
203
|
*/
|
|
146
|
-
interface SelectedDocumentHandle<TData extends FirestoreObject, TSelected> extends Omit<DocumentHandle<TData>,
|
|
204
|
+
interface SelectedDocumentHandle<TData extends FirestoreObject, TSelected> extends Omit<DocumentHandle<TData>, 'data' | DocumentStatusKeys> {
|
|
147
205
|
/** The slice produced by the hook's `selector`. */
|
|
148
206
|
data: TSelected;
|
|
149
207
|
}
|
|
@@ -152,11 +210,11 @@ interface SelectedDocumentHandle<TData extends FirestoreObject, TSelected> exten
|
|
|
152
210
|
* with {@link SelectedDocumentHandle}, the selector receives the full
|
|
153
211
|
* observable state ({@link CollectionState}) and the handle exposes only the
|
|
154
212
|
* slice plus the writer surface (`update`/`add`/`remove`/`load`/`sync`) and
|
|
155
|
-
* `ref` — status fields (`
|
|
156
|
-
*
|
|
157
|
-
*
|
|
213
|
+
* `ref` — status fields (`isLoaded`/`isActive`/`error`) are dropped unless
|
|
214
|
+
* folded into the slice. Writers stay typed against the full collection of
|
|
215
|
+
* `TData`.
|
|
158
216
|
*/
|
|
159
|
-
interface SelectedCollectionHandle<TData extends FirestoreObject, TSelected> extends Omit<CollectionHandle<TData>,
|
|
217
|
+
interface SelectedCollectionHandle<TData extends FirestoreObject, TSelected> extends Omit<CollectionHandle<TData>, 'data' | CollectionStatusKeys> {
|
|
160
218
|
/** The slice produced by the hook's `selector`. */
|
|
161
219
|
data: TSelected;
|
|
162
220
|
}
|
|
@@ -289,6 +347,10 @@ interface FirestateConfig {
|
|
|
289
347
|
* where a change occurred before reverting it.
|
|
290
348
|
*/
|
|
291
349
|
onNavigate?: (path: string) => void;
|
|
350
|
+
/** Called after an undo action has been successfully applied. */
|
|
351
|
+
onUndo?: (action: UndoAction) => void;
|
|
352
|
+
/** Called after a redo action has been successfully applied. */
|
|
353
|
+
onRedo?: (action: UndoAction) => void;
|
|
292
354
|
/** Custom error handler */
|
|
293
355
|
onError?: (error: Error, context: ErrorContext) => void;
|
|
294
356
|
}
|
|
@@ -296,9 +358,9 @@ interface FirestateConfig {
|
|
|
296
358
|
* Context for error handling
|
|
297
359
|
*/
|
|
298
360
|
interface ErrorContext {
|
|
299
|
-
type:
|
|
361
|
+
type: 'document' | 'collection' | 'undo';
|
|
300
362
|
path: string;
|
|
301
|
-
operation:
|
|
363
|
+
operation: 'read' | 'write' | 'undo' | 'redo';
|
|
302
364
|
}
|
|
303
365
|
/**
|
|
304
366
|
* Subscriber callback type
|
|
@@ -404,6 +466,12 @@ interface UndoManagerConfig {
|
|
|
404
466
|
maxLength?: number;
|
|
405
467
|
/** Callback when navigation is requested (for path-aware undo) */
|
|
406
468
|
onNavigate?: (path: string) => void;
|
|
469
|
+
/** Callback after an undo action has been successfully applied */
|
|
470
|
+
onUndo?: (action: UndoAction) => void;
|
|
471
|
+
/** Callback after a redo action has been successfully applied */
|
|
472
|
+
onRedo?: (action: UndoAction) => void;
|
|
473
|
+
/** Callback when an undo or redo action fails */
|
|
474
|
+
onError?: (error: Error, action: UndoAction, operation: 'undo' | 'redo') => void;
|
|
407
475
|
}
|
|
408
476
|
/**
|
|
409
477
|
* Create an undo manager instance.
|
|
@@ -459,6 +527,10 @@ interface FirestateStore {
|
|
|
459
527
|
* callback that changes reference on every render.
|
|
460
528
|
*/
|
|
461
529
|
setOnNavigate: (handler?: (path: string) => void) => void;
|
|
530
|
+
/** Replace the successful-undo handler without recreating the store. */
|
|
531
|
+
setOnUndo: (handler?: (action: UndoAction) => void) => void;
|
|
532
|
+
/** Replace the successful-redo handler without recreating the store. */
|
|
533
|
+
setOnRedo: (handler?: (action: UndoAction) => void) => void;
|
|
462
534
|
/** Subscribe to sync state changes */
|
|
463
535
|
subscribeToSyncState: (fn: Subscriber<boolean>) => Unsubscribe;
|
|
464
536
|
/** Report a document/collection sync state change */
|
|
@@ -506,8 +578,9 @@ interface DocumentSelectorOptions<TData extends FirestoreObject, TSelected> {
|
|
|
506
578
|
/**
|
|
507
579
|
* Project the document's observable state down to the slice this component
|
|
508
580
|
* reacts to. The selector receives the full {@link DocumentState} —
|
|
509
|
-
* `{ data, isLoading, isSynced, error }`, where `data` is
|
|
510
|
-
* the document is loading or the hook is disabled — and
|
|
581
|
+
* `{ data, isLoading, isLoaded, isSynced, error }`, where `data` is
|
|
582
|
+
* `undefined` while the document is loading or the hook is disabled — and
|
|
583
|
+
* the component
|
|
511
584
|
* re-renders *only* when the returned slice changes (per `isEqual`). Status
|
|
512
585
|
* is not a freebie: read `s.isLoading`/`s.isSynced`/`s.error` here if you
|
|
513
586
|
* want to react to them (e.g. `s => ({ title: s.data?.title, saving:
|
|
@@ -533,8 +606,9 @@ interface CollectionSelectorOptions<TData extends FirestoreObject, TSelected> {
|
|
|
533
606
|
/**
|
|
534
607
|
* Project the collection's observable state down to the slice this component
|
|
535
608
|
* reacts to. The selector receives the full {@link CollectionState} —
|
|
536
|
-
* `{ data, isLoading, isSynced, isActive, error }`, where `data` is
|
|
537
|
-
* record (e.g. `s => s.data[id]` or `s => Object.keys(s.data)`) —
|
|
609
|
+
* `{ data, isLoading, isLoaded, isSynced, isActive, error }`, where `data` is
|
|
610
|
+
* the keyed record (e.g. `s => s.data[id]` or `s => Object.keys(s.data)`) —
|
|
611
|
+
* and the
|
|
538
612
|
* component re-renders *only* when the returned slice changes. As with
|
|
539
613
|
* {@link DocumentSelectorOptions.selector}, status is reactive only if you
|
|
540
614
|
* select it, and the returned handle exposes just the slice plus
|
|
@@ -583,9 +657,8 @@ interface UseDocumentOptions<TData extends FirestoreObject> {
|
|
|
583
657
|
undoable?: boolean;
|
|
584
658
|
/**
|
|
585
659
|
* If false, no subscription is created and a no-op handle is returned
|
|
586
|
-
* (`{ data: undefined,
|
|
587
|
-
*
|
|
588
|
-
* Default: true.
|
|
660
|
+
* (`{ data: undefined, isLoaded: false, ref: undefined }`). Use this to gate
|
|
661
|
+
* subscriptions on route params that aren't ready yet. Default: true.
|
|
589
662
|
*/
|
|
590
663
|
enabled?: boolean;
|
|
591
664
|
}
|
|
@@ -607,10 +680,15 @@ interface UseDocumentOptions<TData extends FirestoreObject> {
|
|
|
607
680
|
* route params aren't ready yet).
|
|
608
681
|
*
|
|
609
682
|
* **SSR.** On the server there is no Firestore listener, so this hook returns
|
|
610
|
-
* the initial handle (`{ data: undefined,
|
|
683
|
+
* the initial handle (`{ data: undefined, isLoaded: false }`). Mutations like
|
|
611
684
|
* `update`/`set` will mutate orphaned local state with no effect — avoid
|
|
612
685
|
* calling them server-side.
|
|
613
686
|
*
|
|
687
|
+
* The default handle is **sync-agnostic** — it carries `data`/`isLoaded`/`error`
|
|
688
|
+
* but not `isSynced`, so it does not re-render when a write settles. Render save
|
|
689
|
+
* state via the per-entry `use{Name}SyncStatus` hook, or fold `isSynced` into a
|
|
690
|
+
* `selector`.
|
|
691
|
+
*
|
|
614
692
|
* @example
|
|
615
693
|
* ```tsx
|
|
616
694
|
* const projectDoc = defineDocument<Project>({
|
|
@@ -619,12 +697,12 @@ interface UseDocumentOptions<TData extends FirestoreObject> {
|
|
|
619
697
|
* })
|
|
620
698
|
*
|
|
621
699
|
* function ProjectEditor({ projectId }: { projectId: string }) {
|
|
622
|
-
* const { data, update,
|
|
700
|
+
* const { data, update, isLoaded } = useDocument({
|
|
623
701
|
* definition: projectDoc,
|
|
624
702
|
* params: { projectId },
|
|
625
703
|
* })
|
|
626
704
|
*
|
|
627
|
-
* if (
|
|
705
|
+
* if (!isLoaded) return <Spinner />
|
|
628
706
|
*
|
|
629
707
|
* return (
|
|
630
708
|
* <input
|
|
@@ -669,7 +747,7 @@ interface UseCollectionOptions<TData extends FirestoreObject> {
|
|
|
669
747
|
undoable?: boolean;
|
|
670
748
|
/**
|
|
671
749
|
* If false, no subscription is created and a no-op handle is returned
|
|
672
|
-
* (`{ data: {},
|
|
750
|
+
* (`{ data: {}, isLoaded: false, isActive: false }`). Use this to gate on
|
|
673
751
|
* route params that aren't ready yet. Default: true.
|
|
674
752
|
*/
|
|
675
753
|
enabled?: boolean;
|
|
@@ -708,8 +786,13 @@ interface UseCollectionOptions<TData extends FirestoreObject> {
|
|
|
708
786
|
* route params aren't ready yet).
|
|
709
787
|
*
|
|
710
788
|
* **SSR.** On the server there is no Firestore listener, so this hook returns
|
|
711
|
-
* the initial handle (`{ data: {},
|
|
712
|
-
*
|
|
789
|
+
* the initial handle (`{ data: {}, isLoaded: false }`, `isActive: false` for
|
|
790
|
+
* lazy). Avoid calling mutations server-side.
|
|
791
|
+
*
|
|
792
|
+
* Like {@link useDocument}, the default handle is **sync-agnostic** — `data`,
|
|
793
|
+
* `isLoaded`, `isActive`, `error`, but not `isSynced`. `isActive` stays so a
|
|
794
|
+
* lazy collection can gate a "Load" button; `isLoaded` is `isActive &&
|
|
795
|
+
* !isLoading`. Render save state via `use{Name}SyncStatus`.
|
|
713
796
|
*
|
|
714
797
|
* @example
|
|
715
798
|
* ```tsx
|
|
@@ -719,7 +802,7 @@ interface UseCollectionOptions<TData extends FirestoreObject> {
|
|
|
719
802
|
* })
|
|
720
803
|
*
|
|
721
804
|
* function SpacesList({ projectId }: { projectId: string }) {
|
|
722
|
-
* const { data, update, load, isActive,
|
|
805
|
+
* const { data, update, load, isActive, isLoaded } = useCollection({
|
|
723
806
|
* definition: spacesCollection,
|
|
724
807
|
* params: { projectId },
|
|
725
808
|
* })
|
|
@@ -728,7 +811,7 @@ interface UseCollectionOptions<TData extends FirestoreObject> {
|
|
|
728
811
|
* useEffect(() => { load() }, [load])
|
|
729
812
|
*
|
|
730
813
|
* if (!isActive) return <Button onClick={load}>Load Spaces</Button>
|
|
731
|
-
* if (
|
|
814
|
+
* if (!isLoaded) return <Spinner />
|
|
732
815
|
*
|
|
733
816
|
* return (
|
|
734
817
|
* <ul>
|
|
@@ -758,6 +841,78 @@ declare function useCollection<TData extends FirestoreObject>(options: UseCollec
|
|
|
758
841
|
* ```
|
|
759
842
|
*/
|
|
760
843
|
declare function useCollection<TData extends FirestoreObject, TSelected>(options: UseCollectionOptions<TData> & CollectionSelectorOptions<TData, TSelected>): SelectedCollectionHandle<TData, TSelected>;
|
|
844
|
+
/** Options for the document status hooks (a subset of {@link UseDocumentOptions}). */
|
|
845
|
+
interface UseDocumentStatusOptions<TData extends FirestoreObject> {
|
|
846
|
+
/** Document definition from defineDocument(). */
|
|
847
|
+
definition: DocumentDefinition<TData>;
|
|
848
|
+
/** Route/path parameters for dynamic paths. */
|
|
849
|
+
params?: Record<string, string>;
|
|
850
|
+
/**
|
|
851
|
+
* If false, no subscription is created and the idle status is returned
|
|
852
|
+
* (`{ isSynced: true, isSaving: false }` / `{ isLoading: false, isLoaded:
|
|
853
|
+
* false }`). Default: true.
|
|
854
|
+
*/
|
|
855
|
+
enabled?: boolean;
|
|
856
|
+
}
|
|
857
|
+
/** Options for the collection status hooks. Adds `queryConstraints`. */
|
|
858
|
+
interface UseCollectionStatusOptions<TData extends FirestoreObject> {
|
|
859
|
+
/** Collection definition from defineCollection(). */
|
|
860
|
+
definition: CollectionDefinition<TData>;
|
|
861
|
+
/** Route/path parameters for dynamic paths. */
|
|
862
|
+
params?: Record<string, string>;
|
|
863
|
+
/**
|
|
864
|
+
* Query constraints. Must produce the same query the data hook uses, or the
|
|
865
|
+
* status hook resolves a *different* shared entry (a second listener) —
|
|
866
|
+
* sharing is keyed by semantic query identity.
|
|
867
|
+
*/
|
|
868
|
+
queryConstraints?: QueryConstraint[];
|
|
869
|
+
/** See {@link UseDocumentStatusOptions.enabled}. */
|
|
870
|
+
enabled?: boolean;
|
|
871
|
+
}
|
|
872
|
+
/**
|
|
873
|
+
* Subscribe to a document's **sync status only** — `{ isSynced, isSaving }`.
|
|
874
|
+
*
|
|
875
|
+
* The opt-in counterpart to the sync-agnostic default handle (see
|
|
876
|
+
* {@link DocumentHandle}): it re-renders when sync state flips but never on data
|
|
877
|
+
* changes, and shares the resource's one `onSnapshot` listener with
|
|
878
|
+
* `useDocument` and any slice hooks, so opting in adds no listener. While
|
|
879
|
+
* disabled it reports `{ isSynced: true, isSaving: false }`.
|
|
880
|
+
*/
|
|
881
|
+
declare function useDocumentSyncStatus<TData extends FirestoreObject>(options: UseDocumentStatusOptions<TData>): SyncStatus;
|
|
882
|
+
/**
|
|
883
|
+
* Subscribe to a document's **loading status only** — `{ isLoading, isLoaded }`.
|
|
884
|
+
*
|
|
885
|
+
* A spinner channel that shares the resource's listener and does NOT re-render
|
|
886
|
+
* on data changes — for a progress indicator rendered apart from the data. The
|
|
887
|
+
* data handle keeps `isLoaded` for the common render path; this is an extra
|
|
888
|
+
* channel, not a replacement.
|
|
889
|
+
*/
|
|
890
|
+
declare function useDocumentLoadingStatus<TData extends FirestoreObject>(options: UseDocumentStatusOptions<TData>): LoadingStatus;
|
|
891
|
+
/**
|
|
892
|
+
* Collection counterpart of {@link useDocumentSyncStatus} — `{ isSynced,
|
|
893
|
+
* isSaving }` over a collection query, sharing its one listener.
|
|
894
|
+
*
|
|
895
|
+
* **Lazy caveat.** On a `lazy` collection this hook never calls `load()` itself:
|
|
896
|
+
* activating a lazy listener is the data hook's job, and a passive status reader
|
|
897
|
+
* must not silently start the listener (and bill the reads) the laziness exists
|
|
898
|
+
* to defer. As the *lone* subscriber it therefore attaches no listener and stays
|
|
899
|
+
* at the idle `{ isSynced: true, isSaving: false }`. Mount it alongside a
|
|
900
|
+
* {@link useCollection} on the same query whose `load()` has run — the status
|
|
901
|
+
* hook rides that one shared listener and reports real sync state. Non-lazy
|
|
902
|
+
* collections activate on mount, so this hook works standalone there.
|
|
903
|
+
*/
|
|
904
|
+
declare function useCollectionSyncStatus<TData extends FirestoreObject>(options: UseCollectionStatusOptions<TData>): SyncStatus;
|
|
905
|
+
/**
|
|
906
|
+
* Collection counterpart of {@link useDocumentLoadingStatus} — `{ isLoading,
|
|
907
|
+
* isLoaded }` over a collection query, sharing its one listener.
|
|
908
|
+
*
|
|
909
|
+
* Same lazy caveat as {@link useCollectionSyncStatus}: on a `lazy` collection it
|
|
910
|
+
* never calls `load()`, so as the lone subscriber it attaches no listener and
|
|
911
|
+
* stays at the idle `{ isLoading: false, isLoaded: false }` until a co-mounted
|
|
912
|
+
* {@link useCollection} (or any active hook on the same query) activates the
|
|
913
|
+
* shared listener via `load()`. Non-lazy collections activate on mount.
|
|
914
|
+
*/
|
|
915
|
+
declare function useCollectionLoadingStatus<TData extends FirestoreObject>(options: UseCollectionStatusOptions<TData>): LoadingStatus;
|
|
761
916
|
/**
|
|
762
917
|
* Keyboard shortcut hook for undo/redo
|
|
763
918
|
*
|
|
@@ -1036,7 +1191,21 @@ type SelectedParams<P extends string, PExtra> = IsAny<PExtra> extends true ? Par
|
|
|
1036
1191
|
type SelectedDocHookFor<T extends FirestoreObject, P extends string, PExtra, TSelected> = keyof SelectedParams<P, PExtra> extends never ? (params?: Record<string, string>, options?: DocHookOptions<T>) => SelectedDocumentHandle<T, TSelected> : (params: SelectedParams<P, PExtra>, options?: DocHookOptions<T>) => SelectedDocumentHandle<T, TSelected>;
|
|
1037
1192
|
type SelectedColHookFor<T extends FirestoreObject, P extends string, PExtra, TSelected> = keyof SelectedParams<P, PExtra> extends never ? (params?: Record<string, string>, options?: ColHookOptions<T>) => SelectedCollectionHandle<T, TSelected> : (params: SelectedParams<P, PExtra>, options?: ColHookOptions<T>) => SelectedCollectionHandle<T, TSelected>;
|
|
1038
1193
|
type HookFor<E> = E extends SelectedDocEntry<infer T, infer P, infer PExtra, infer TSelected> ? SelectedDocHookFor<T, P, PExtra, TSelected> : E extends SelectedColEntry<infer T, infer P, infer PExtra, infer TSelected> ? SelectedColHookFor<T, P, PExtra, TSelected> : E extends DocEntry<infer T, infer P> ? keyof ParamsOf<P> extends never ? DocHookOptionalParams<T> : DocHookRequiredParams<T, P> : E extends ColEntry<infer T, infer P> ? keyof ParamsOf<P> extends never ? ColHookOptionalParams<T> : ColHookRequiredParams<T, P> : never;
|
|
1039
|
-
type
|
|
1194
|
+
type SyncStatusHookName<K extends string> = `${HookName<K>}SyncStatus`;
|
|
1195
|
+
type LoadingStatusHookName<K extends string> = `${HookName<K>}LoadingStatus`;
|
|
1196
|
+
type BaseEntry = DocEntry<any, any> | ColEntry<any, any>;
|
|
1197
|
+
type DocStatusHookOptions = {
|
|
1198
|
+
enabled?: boolean;
|
|
1199
|
+
};
|
|
1200
|
+
type ColStatusHookOptions = {
|
|
1201
|
+
enabled?: boolean;
|
|
1202
|
+
queryConstraints?: QueryConstraint[];
|
|
1203
|
+
};
|
|
1204
|
+
type DocStatusHookFor<P extends string, Ret> = keyof ParamsOf<P> extends never ? (params?: Record<string, string>, options?: DocStatusHookOptions) => Ret : (params: ParamsOf<P>, options?: DocStatusHookOptions) => Ret;
|
|
1205
|
+
type ColStatusHookFor<P extends string, Ret> = keyof ParamsOf<P> extends never ? (params?: Record<string, string>, options?: ColStatusHookOptions) => Ret : (params: ParamsOf<P>, options?: ColStatusHookOptions) => Ret;
|
|
1206
|
+
type SyncStatusHookFor<E> = E extends DocEntry<any, infer P> ? DocStatusHookFor<P, SyncStatus> : E extends ColEntry<any, infer P> ? ColStatusHookFor<P, SyncStatus> : never;
|
|
1207
|
+
type LoadingStatusHookFor<E> = E extends DocEntry<any, infer P> ? DocStatusHookFor<P, LoadingStatus> : E extends ColEntry<any, infer P> ? ColStatusHookFor<P, LoadingStatus> : never;
|
|
1208
|
+
type FirestateApi<R extends FirestateRegistry> = { [K in keyof R & string as HookName<K>]: HookFor<R[K]> } & { [K in keyof R & string as R[K] extends BaseEntry ? SyncStatusHookName<K> : never]: SyncStatusHookFor<R[K]> } & { [K in keyof R & string as R[K] extends BaseEntry ? LoadingStatusHookName<K> : never]: LoadingStatusHookFor<R[K]> };
|
|
1040
1209
|
/**
|
|
1041
1210
|
* Turn a Firestate registry into a map of typed React hooks. Each entry
|
|
1042
1211
|
* `K` produces a hook named `use{Capitalize<K>}`.
|
|
@@ -1408,6 +1577,10 @@ interface FirestateProviderProps {
|
|
|
1408
1577
|
onNavigate?: (path: string) => void;
|
|
1409
1578
|
/** Custom error handler */
|
|
1410
1579
|
onError?: (error: Error, context: ErrorContext) => void;
|
|
1580
|
+
/** Called after an undo action has been successfully applied */
|
|
1581
|
+
onUndo?: (action: UndoAction) => void;
|
|
1582
|
+
/** Called after a redo action has been successfully applied */
|
|
1583
|
+
onRedo?: (action: UndoAction) => void;
|
|
1411
1584
|
/** React children */
|
|
1412
1585
|
children: React.ReactNode;
|
|
1413
1586
|
}
|
|
@@ -1489,5 +1662,5 @@ declare const FirestateStoreProvider: React.FC<FirestateStoreProviderProps>;
|
|
|
1489
1662
|
*/
|
|
1490
1663
|
declare const useUnsavedChangesBlocker: () => boolean;
|
|
1491
1664
|
//#endregion
|
|
1492
|
-
export { type AnySelectedEntry, type ColEntry, type CollectionDefinition, type CollectionHandle, type CollectionOptions, type CollectionSelectorOptions, type CollectionState, type DeepPartial, type DocEntry, type DocumentDefinition, type DocumentHandle, type DocumentOptions, type DocumentSelectorOptions, type DocumentState, type ErrorContext, type FirestateApi, type FirestateConfig, FirestateContext, type FirestateEntry, FirestateProvider, type FirestateProviderProps, type FirestateRegistry, type FirestateStore, FirestateStoreProvider, type FirestateStoreProviderProps, type FirestoreObject, type InferCollectionData, type InferCollectionDocument, type InferDocument, type InferDocumentData, type SelectOptions, type SelectedColEntry, type SelectedCollectionHandle, type SelectedDocEntry, type SelectedDocumentHandle, type Store, type UndoAction, type UndoManager, type UndoManagerConfig, type UndoManagerState, type UndoManagerWithSubscribe, type UpdateOptions, type UseCollectionOptions, type UseDocumentOptions, applyDiff, applyDiffMutable, col, computeDiff, computeUndoDiff, createCollectionSubscription, createDiffAtPath, createDocumentSubscription, createFirestate, createStore, createUndoManager, deepClone, defineCollection, defineDocument, diffContainsPath, doc, extractDiffValue, flattenDiff, flattenDiffToFieldPaths, isDeepEqual, isDiffEmpty, mergeDiffs, shallow, unflattenDiff, useCollection, useDocument, useIsSynced, useStore, useUndoKeyboardShortcuts, useUndoManager, useUnsavedChangesBlocker };
|
|
1665
|
+
export { type AnySelectedEntry, type ColEntry, type CollectionDefinition, type CollectionHandle, type CollectionOptions, type CollectionSelectorOptions, type CollectionState, type DeepPartial, type DocEntry, type DocumentDefinition, type DocumentHandle, type DocumentOptions, type DocumentSelectorOptions, type DocumentState, type ErrorContext, type FirestateApi, type FirestateConfig, FirestateContext, type FirestateEntry, FirestateProvider, type FirestateProviderProps, type FirestateRegistry, type FirestateStore, FirestateStoreProvider, type FirestateStoreProviderProps, type FirestoreObject, type InferCollectionData, type InferCollectionDocument, type InferDocument, type InferDocumentData, type LoadingStatus, type SelectOptions, type SelectedColEntry, type SelectedCollectionHandle, type SelectedDocEntry, type SelectedDocumentHandle, type Store, type SyncStatus, type UndoAction, type UndoManager, type UndoManagerConfig, type UndoManagerState, type UndoManagerWithSubscribe, type UpdateOptions, type UseCollectionOptions, type UseCollectionStatusOptions, type UseDocumentOptions, type UseDocumentStatusOptions, applyDiff, applyDiffMutable, col, computeDiff, computeUndoDiff, createCollectionSubscription, createDiffAtPath, createDocumentSubscription, createFirestate, createStore, createUndoManager, deepClone, defineCollection, defineDocument, diffContainsPath, doc, extractDiffValue, flattenDiff, flattenDiffToFieldPaths, isDeepEqual, isDiffEmpty, mergeDiffs, shallow, unflattenDiff, useCollection, useCollectionLoadingStatus, useCollectionSyncStatus, useDocument, useDocumentLoadingStatus, useDocumentSyncStatus, useIsSynced, useStore, useUndoKeyboardShortcuts, useUndoManager, useUnsavedChangesBlocker };
|
|
1493
1666
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types.ts","../src/registry/schema.ts","../src/utils/undo.ts","../src/core/store.ts","../src/react/hooks.ts","../src/registry/firestate.ts","../src/utils/diff.ts","../src/utils/shallow.ts","../src/core/document.ts","../src/core/collection.ts","../src/react/provider.tsx"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/types.ts","../src/registry/schema.ts","../src/utils/undo.ts","../src/core/store.ts","../src/react/hooks.ts","../src/registry/firestate.ts","../src/utils/diff.ts","../src/utils/shallow.ts","../src/core/document.ts","../src/core/collection.ts","../src/react/provider.tsx"],"mappings":"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"}
|