@vibes.diy/vibe-runtime 10.0.0 → 10.0.1

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/use-firefly.js CHANGED
@@ -1,50 +1,5 @@
1
- import { useCallback, useEffect, useLayoutEffect, useMemo, useState, useRef } from "react";
2
- import { exception2Result } from "@adviser/cement";
3
- import { FireflyDatabase, } from "./firefly-database.js";
4
- import { getOrCreateLocalDb, migrateLegacyAnonStore } from "./localfly.js";
5
- import { readCacheEntry, writeCacheEntry, clearAllCache, persistViewerKey, readLastViewerKey, queryCacheKey, docCacheKey, cacheAppOrigin, markSignedOut, clearSignedOutMarker, isSignedOutMarked, } from "./read-cache.js";
6
- import { createEphemeralCoalescer } from "./merge-coalescer.js";
7
- import { useVibeContext } from "./VibeContext.js";
8
- import { isViewerEnvPending } from "./vibe.js";
9
- const useIsomorphicLayoutEffect = typeof window !== "undefined" ? useLayoutEffect : useEffect;
10
- const EMPTY_ACCESS = {
11
- roles: new Set(),
12
- channels: new Set(),
13
- hasRole: () => false,
14
- hasChannel: () => false,
15
- };
16
- function grantsSignature(viewerEnv, dbName) {
17
- const g = viewerEnv?.grants?.[dbName];
18
- if (!g)
19
- return "";
20
- const sig = (arr) => [...new Set(arr ?? [])].sort().join(",");
21
- return `${sig(g.channels)}|${sig(g.publicChannels)}|${sig(g.roles)}`;
22
- }
23
1
  export const INTERNAL_MEDIA_DB_ACCESS = Symbol("vibes.diy.internal.mediaDbAccess");
24
- function warnOnReservedDbName(name, internalMediaAccess) {
25
- if (name.startsWith("media:") && internalMediaAccess === false) {
26
- console.error(`useFireproof("${name}"): the "media:" database namespace is reserved for platform media storage and cannot be opened by app code.`);
27
- }
28
- }
29
2
  let vibeApiRef;
30
- const dbCache = new Map();
31
- function getOrCreateDb(name, acl, seedDocs) {
32
- let db = dbCache.get(name);
33
- if (!db) {
34
- if (!vibeApiRef) {
35
- throw new Error("Firefly not initialized — registerFirefly() must be called before useFireproof()");
36
- }
37
- db = new FireflyDatabase(name, vibeApiRef, acl);
38
- dbCache.set(name, db);
39
- }
40
- else if (acl) {
41
- db.applyAcl(acl);
42
- }
43
- if (seedDocs !== undefined && db.seedDocs === undefined) {
44
- db.seedDocs = seedDocs;
45
- }
46
- return db;
47
- }
48
3
  export async function registerFirefly(api) {
49
4
  vibeApiRef = api;
50
5
  }
@@ -65,480 +20,4 @@ export async function listDbNames() {
65
20
  }
66
21
  return rRes.Ok().dbNames;
67
22
  }
68
- export function fireproof(name) {
69
- return getOrCreateDb(name);
70
- }
71
- export function useFireproof(name = "useFireproof", config = {}) {
72
- warnOnReservedDbName(name, config[INTERNAL_MEDIA_DB_ACCESS] === true);
73
- const { mountParams } = useVibeContext();
74
- const viewerEnv = mountParams.viewerEnv;
75
- const userHandle = viewerEnv?.viewer?.userHandle;
76
- const signedIn = !!userHandle;
77
- const optimistic = config.optimistic ?? true;
78
- const seedDocs = mountParams.seedDocs?.[name];
79
- const cloudDb = useMemo(() => {
80
- const db = getOrCreateDb(name, config.acl, seedDocs);
81
- db.setOptimistic(optimistic);
82
- return db;
83
- }, [name, optimistic]);
84
- const database = cloudDb;
85
- const migrate = config.migrate;
86
- const anonymousLocal = config.anonymousLocal === true;
87
- const noticedRef = useRef(false);
88
- if (anonymousLocal && noticedRef.current === false) {
89
- noticedRef.current = true;
90
- console.warn(`useFireproof("${name}", { anonymousLocal: true }): the anonymousLocal keyword is deprecated and ignored — ` +
91
- `local-first writes with cloud+overlay reads are now the default for every vibe. Remove the flag.`);
92
- }
93
- const migrateRef = useRef(migrate);
94
- migrateRef.current = migrate;
95
- const offlineQueueEnabled = config.offlineQueue ?? true;
96
- const handoffRef = useRef(undefined);
97
- useEffect(() => {
98
- cloudDb.setActiveIdentity(signedIn && userHandle !== undefined ? userHandle : undefined);
99
- if (offlineQueueEnabled === false) {
100
- cloudDb.setAnonFallback(false);
101
- cloudDb.setOfflineQueue(undefined);
102
- handoffRef.current = undefined;
103
- return;
104
- }
105
- if (signedIn && userHandle !== undefined) {
106
- const handleLedger = getOrCreateLocalDb(`pending:${userHandle}:${name}`);
107
- const anonLedger = getOrCreateLocalDb(`pending:anon:${name}`);
108
- if (anonLedger.size > 0 && handoffRef.current !== userHandle) {
109
- handoffRef.current = userHandle;
110
- void cloudDb
111
- .handoffAnonymousLedger({ anonLedger, handleLedger, userHandle, migrate: migrateRef.current })
112
- .catch((e) => {
113
- handoffRef.current = undefined;
114
- console.error(`Sign-in ledger handoff failed for db "${name}":`, e);
115
- });
116
- }
117
- else {
118
- handoffRef.current = userHandle;
119
- cloudDb.setAnonFallback(false);
120
- cloudDb.setOfflineQueue(handleLedger);
121
- }
122
- }
123
- else {
124
- handoffRef.current = undefined;
125
- cloudDb.setAnonFallback(true);
126
- cloudDb.setOfflineQueue(getOrCreateLocalDb(`pending:anon:${name}`));
127
- }
128
- }, [cloudDb, offlineQueueEnabled, signedIn, userHandle, name]);
129
- const legacyDoneRef = useRef(false);
130
- useEffect(() => {
131
- if (legacyDoneRef.current === true || offlineQueueEnabled === false)
132
- return;
133
- legacyDoneRef.current = true;
134
- const target = signedIn && userHandle !== undefined ? cloudDb : getOrCreateLocalDb(`pending:anon:${name}`);
135
- void migrateLegacyAnonStore({
136
- name,
137
- target,
138
- ...(signedIn && userHandle !== undefined ? { userHandle } : {}),
139
- migrate: migrateRef.current,
140
- }).catch((e) => {
141
- legacyDoneRef.current = false;
142
- console.error(`Legacy anon-store migration failed for db "${name}":`, e);
143
- });
144
- }, [cloudDb, offlineQueueEnabled, signedIn, userHandle, name]);
145
- const useDocument = useMemo(() => createUseDocument(database), [database]);
146
- const useLiveQuery = useMemo(() => createUseLiveQuery(database), [database]);
147
- const useAllDocs = useMemo(() => createUseAllDocs(database), [database]);
148
- const useChanges = useMemo(() => createUseChanges(database), [database]);
149
- const attach = () => Promise.resolve();
150
- const grantsForDb = viewerEnv?.grants?.[name];
151
- const access = useMemo(() => {
152
- if (!grantsForDb)
153
- return EMPTY_ACCESS;
154
- const roles = new Set(grantsForDb.roles);
155
- const channels = new Set(grantsForDb.channels);
156
- return {
157
- roles,
158
- channels,
159
- hasRole: (role) => roles.has(role),
160
- hasChannel: (channel) => channels.has(channel),
161
- };
162
- }, [grantsForDb]);
163
- const grantsSig = grantsSignature(mountParams.viewerEnv, name);
164
- const lastGrantsSig = useRef(grantsSig);
165
- useEffect(() => {
166
- if (lastGrantsSig.current === grantsSig)
167
- return;
168
- lastGrantsSig.current = grantsSig;
169
- database.resubscribe();
170
- }, [database, grantsSig]);
171
- const origin = cacheAppOrigin();
172
- const prevSignedInRef = useRef(signedIn);
173
- useEffect(() => {
174
- if (prevSignedInRef.current && signedIn === false) {
175
- clearAllCache();
176
- markSignedOut(origin);
177
- }
178
- else if (signedIn) {
179
- clearSignedOutMarker(origin);
180
- }
181
- prevSignedInRef.current = signedIn;
182
- }, [signedIn, origin]);
183
- return { database, useLiveQuery, useDocument, useAllDocs, useChanges, attach, access };
184
- }
185
- function createUseDocument(database) {
186
- return function useDocument(initialDocOrFn) {
187
- const { mountParams } = useVibeContext();
188
- const viewerEnv = mountParams.viewerEnv;
189
- const viewerKey = `${viewerEnv?.viewer?.userHandle ?? ""}:${viewerEnv?.access ?? ""}:${grantsSignature(viewerEnv, database.name)}`;
190
- const updateHappenedRef = useRef(false);
191
- let initialDoc;
192
- if (typeof initialDocOrFn === "function") {
193
- initialDoc = initialDocOrFn();
194
- }
195
- else {
196
- initialDoc = initialDocOrFn ?? {};
197
- }
198
- const originalInitialDoc = useMemo(() => structuredClone({ ...initialDoc }), []);
199
- const [doc, setDoc] = useState(initialDoc);
200
- const readReqRef = useRef(0);
201
- const servedViewerKeyRef = useRef(undefined);
202
- const coalescer = useMemo(() => createEphemeralCoalescer((id, snapshot) => database.broadcastEphemeral?.(id, snapshot)), []);
203
- useEffect(() => () => coalescer.cancel(), [coalescer]);
204
- const refresh = useCallback(async () => {
205
- const myReq = ++readReqRef.current;
206
- const viewerChanged = servedViewerKeyRef.current !== undefined && servedViewerKeyRef.current !== viewerKey;
207
- servedViewerKeyRef.current = viewerKey;
208
- if (doc._id) {
209
- const key = docCacheKey(viewerKey, database.name, doc._id);
210
- const cached = readCacheEntry(key);
211
- const hasCached = cached !== undefined && cached.length > 0;
212
- if (viewerChanged) {
213
- setDoc(hasCached ? cached[0] : initialDoc);
214
- }
215
- else if (hasCached) {
216
- setDoc(cached[0]);
217
- }
218
- try {
219
- const gotDoc = await database.get(doc._id);
220
- if (myReq !== readReqRef.current)
221
- return;
222
- setDoc(gotDoc);
223
- writeCacheEntry(key, [gotDoc]);
224
- }
225
- catch {
226
- if (myReq !== readReqRef.current)
227
- return;
228
- if (hasCached === false)
229
- setDoc(initialDoc);
230
- }
231
- }
232
- else {
233
- setDoc(initialDoc);
234
- }
235
- }, [doc._id, viewerKey]);
236
- const save = useCallback(async (existingDoc) => {
237
- updateHappenedRef.current = false;
238
- const toSave = existingDoc ?? doc;
239
- const res = await database.put(toSave);
240
- if (!updateHappenedRef.current && !doc._id && !existingDoc) {
241
- setDoc((d) => ({ ...d, _id: res.id }));
242
- }
243
- return res;
244
- }, [doc]);
245
- const remove = useCallback(async (existingDoc) => {
246
- const id = (existingDoc?._id ?? doc._id);
247
- if (!id)
248
- throw new Error("Document must have an _id to be removed");
249
- const gotDoc = await database.get(id).catch(() => undefined);
250
- if (!gotDoc)
251
- throw new Error(`Document not found: ${id}`);
252
- const res = await database.del(id);
253
- setDoc(initialDoc);
254
- return res;
255
- }, [doc, initialDoc]);
256
- const merge = useCallback((newDoc) => {
257
- updateHappenedRef.current = true;
258
- setDoc((prev) => {
259
- const next = { ...prev, ...newDoc };
260
- if (next._id)
261
- coalescer.push(next._id, next);
262
- return next;
263
- });
264
- }, [coalescer]);
265
- const replace = useCallback((newDoc) => {
266
- updateHappenedRef.current = true;
267
- setDoc(newDoc);
268
- }, []);
269
- const reset = useCallback(() => {
270
- updateHappenedRef.current = true;
271
- setDoc({ ...originalInitialDoc });
272
- }, [originalInitialDoc]);
273
- const _updateDoc = useCallback((newDoc, opts = { replace: false, reset: false }) => {
274
- if (!newDoc) {
275
- return opts.reset ? reset() : refresh();
276
- }
277
- return opts.replace ? replace(newDoc) : merge(newDoc);
278
- }, [refresh, reset, replace, merge]);
279
- useEffect(() => {
280
- if (!doc._id)
281
- return;
282
- return database.subscribe((changes) => {
283
- if (updateHappenedRef.current)
284
- return;
285
- if (changes.find((c) => c._id === doc._id)) {
286
- void refresh();
287
- }
288
- }, true);
289
- }, [doc._id, refresh]);
290
- useEffect(() => {
291
- void refresh();
292
- }, [refresh, viewerKey]);
293
- const submit = useCallback(async (e) => {
294
- if (e?.preventDefault)
295
- e.preventDefault();
296
- await save();
297
- reset();
298
- }, [save, reset]);
299
- return { doc: { ...doc }, merge, replace, reset, refresh, save, remove, submit };
300
- };
301
- }
302
- function createUseLiveQuery(database) {
303
- return function useLiveQuery(mapFn, query = {}, initialRows = []) {
304
- const { mountParams } = useVibeContext();
305
- const viewerEnv = mountParams.viewerEnv;
306
- const signedIn = !!viewerEnv?.viewer?.userHandle;
307
- const viewerKey = `${viewerEnv?.viewer?.userHandle ?? ""}:${viewerEnv?.access ?? ""}:${grantsSignature(viewerEnv, database.name)}`;
308
- const origin = cacheAppOrigin();
309
- const seed = database.seedDocs;
310
- const queryString = useMemo(() => JSON.stringify(query), [query]);
311
- const mapFnString = useMemo(() => mapFn.toString(), [mapFn]);
312
- const queryOpts = useMemo(() => ({ ...query, includeDocs: true }), [queryString]);
313
- const viewerPending = isViewerEnvPending(viewerEnv);
314
- const usePersistedFallback = viewerPending && isSignedOutMarked(origin) === false;
315
- const effectiveViewerKey = usePersistedFallback ? (readLastViewerKey(origin) ?? viewerKey) : viewerKey;
316
- const cacheKey = queryCacheKey({ viewerKey: effectiveViewerKey, dbName: database.name, mapFnString, queryString });
317
- const initRef = useRef(null);
318
- if (initRef.current === null) {
319
- if (seed !== undefined && seed.length > 0 && initialRows.length === 0) {
320
- const mat = database.materializeLive(seed, mapFn, queryOpts);
321
- initRef.current = {
322
- result: { ...mat, fromCache: false },
323
- serverDocs: seed,
324
- fromCache: false,
325
- servedKey: cacheKey,
326
- deferred: false,
327
- };
328
- }
329
- else if (initialRows.length > 0) {
330
- const rows = initialRows;
331
- initRef.current = {
332
- result: { docs: rows.map((r) => r.doc).filter((d) => d !== undefined), rows, fromCache: false },
333
- serverDocs: [],
334
- fromCache: false,
335
- servedKey: cacheKey,
336
- deferred: false,
337
- };
338
- }
339
- else {
340
- initRef.current = {
341
- result: { docs: [], rows: [], fromCache: false },
342
- serverDocs: [],
343
- fromCache: false,
344
- servedKey: cacheKey,
345
- deferred: true,
346
- };
347
- }
348
- }
349
- const [result, setResult] = useState(initRef.current.result);
350
- const serverDocsRef = useRef(initRef.current.serverDocs);
351
- const deferredCacheReadRef = useRef(initRef.current.deferred);
352
- const fromCacheRef = useRef(initRef.current.fromCache);
353
- const servedKeyRef = useRef(initRef.current.servedKey);
354
- const readReqRef = useRef(0);
355
- const refreshRows = useCallback(async () => {
356
- const myReq = ++readReqRef.current;
357
- const r = await exception2Result(() => database.queryLive(mapFn, queryOpts));
358
- if (r.isErr())
359
- return;
360
- if (myReq !== readReqRef.current)
361
- return;
362
- const { result: res, serverDocs } = r.Ok();
363
- serverDocsRef.current = serverDocs;
364
- fromCacheRef.current = false;
365
- setResult({ ...res, fromCache: false });
366
- writeCacheEntry(servedKeyRef.current, serverDocs);
367
- }, [database, mapFnString, queryString]);
368
- useIsomorphicLayoutEffect(() => {
369
- if (deferredCacheReadRef.current === false)
370
- return;
371
- deferredCacheReadRef.current = false;
372
- servedKeyRef.current = cacheKey;
373
- const cached = readCacheEntry(cacheKey);
374
- if (cached !== undefined && cached.length > 0) {
375
- serverDocsRef.current = cached;
376
- fromCacheRef.current = true;
377
- setResult({ ...database.materializeLive(cached, mapFn, queryOpts), fromCache: true });
378
- }
379
- }, []);
380
- useEffect(() => {
381
- if (signedIn)
382
- persistViewerKey(origin, viewerKey);
383
- if (cacheKey !== servedKeyRef.current) {
384
- servedKeyRef.current = cacheKey;
385
- const cached = readCacheEntry(cacheKey);
386
- if (cached !== undefined && cached.length > 0) {
387
- serverDocsRef.current = cached;
388
- fromCacheRef.current = true;
389
- setResult({ ...database.materializeLive(cached, mapFn, queryOpts), fromCache: true });
390
- }
391
- else {
392
- const floor = database.seedDocs ?? [];
393
- serverDocsRef.current = floor;
394
- fromCacheRef.current = false;
395
- setResult({ ...database.materializeLive(floor, mapFn, queryOpts), fromCache: false });
396
- }
397
- }
398
- else {
399
- setResult({ ...database.materializeLive(serverDocsRef.current, mapFn, queryOpts), fromCache: fromCacheRef.current });
400
- }
401
- refreshRows();
402
- const unsubscribe = database.subscribe((_changes, meta) => {
403
- if (meta?.ephemeral) {
404
- setResult({ ...database.materializeLive(serverDocsRef.current, mapFn, queryOpts), fromCache: fromCacheRef.current });
405
- return;
406
- }
407
- if (meta?.optimistic) {
408
- setResult({ ...database.materializeLive(serverDocsRef.current, mapFn, queryOpts), fromCache: fromCacheRef.current });
409
- }
410
- void refreshRows();
411
- });
412
- return () => {
413
- unsubscribe();
414
- };
415
- }, [database, refreshRows, viewerKey, cacheKey]);
416
- return result;
417
- };
418
- }
419
- function toResult(mat, fromCache) {
420
- return { ...mat, docs: mat.rows.map((r) => r.value), fromCache };
421
- }
422
- function createUseAllDocs(database) {
423
- return function useAllDocs(query = {}) {
424
- const { mountParams } = useVibeContext();
425
- const viewerEnv = mountParams.viewerEnv;
426
- const signedIn = !!viewerEnv?.viewer?.userHandle;
427
- const viewerKey = `${viewerEnv?.viewer?.userHandle ?? ""}:${viewerEnv?.access ?? ""}:${grantsSignature(viewerEnv, database.name)}`;
428
- const origin = cacheAppOrigin();
429
- const seed = database.seedDocs;
430
- const queryString = useMemo(() => JSON.stringify(query), [query]);
431
- const queryOpts = useMemo(() => query, [queryString]);
432
- const mapFnString = "";
433
- const viewerPending = isViewerEnvPending(viewerEnv);
434
- const usePersistedFallback = viewerPending && isSignedOutMarked(origin) === false;
435
- const effectiveViewerKey = usePersistedFallback ? (readLastViewerKey(origin) ?? viewerKey) : viewerKey;
436
- const cacheKey = queryCacheKey({ viewerKey: effectiveViewerKey, dbName: database.name, mapFnString, queryString });
437
- const initRef = useRef(null);
438
- if (initRef.current === null) {
439
- if (seed !== undefined && seed.length > 0) {
440
- initRef.current = {
441
- result: toResult(database.materializeAllDocs(seed, query), false),
442
- serverDocs: seed,
443
- fromCache: false,
444
- servedKey: cacheKey,
445
- deferred: false,
446
- };
447
- }
448
- else {
449
- initRef.current = {
450
- result: { docs: [], rows: [], fromCache: false },
451
- serverDocs: [],
452
- fromCache: false,
453
- servedKey: cacheKey,
454
- deferred: true,
455
- };
456
- }
457
- }
458
- const [result, setResult] = useState(initRef.current.result);
459
- const serverDocsRef = useRef(initRef.current.serverDocs);
460
- const fromCacheRef = useRef(initRef.current.fromCache);
461
- const servedKeyRef = useRef(initRef.current.servedKey);
462
- const deferredCacheReadRef = useRef(initRef.current.deferred);
463
- const readReqRef = useRef(0);
464
- const refreshRows = useCallback(async () => {
465
- const myReq = ++readReqRef.current;
466
- const r = await exception2Result(() => database.allDocs(queryOpts));
467
- if (r.isErr())
468
- return;
469
- if (myReq !== readReqRef.current)
470
- return;
471
- const res = r.Ok();
472
- serverDocsRef.current = res.docs;
473
- fromCacheRef.current = false;
474
- setResult(toResult(res, false));
475
- writeCacheEntry(servedKeyRef.current, res.docs);
476
- }, [database, queryString]);
477
- useIsomorphicLayoutEffect(() => {
478
- if (deferredCacheReadRef.current === false)
479
- return;
480
- deferredCacheReadRef.current = false;
481
- servedKeyRef.current = cacheKey;
482
- const cached = readCacheEntry(cacheKey);
483
- if (cached !== undefined && cached.length > 0) {
484
- serverDocsRef.current = cached;
485
- fromCacheRef.current = true;
486
- setResult(toResult(database.materializeAllDocs(cached, query), true));
487
- }
488
- }, []);
489
- useEffect(() => {
490
- if (signedIn)
491
- persistViewerKey(origin, viewerKey);
492
- if (cacheKey !== servedKeyRef.current) {
493
- servedKeyRef.current = cacheKey;
494
- const cached = readCacheEntry(cacheKey);
495
- if (cached !== undefined && cached.length > 0) {
496
- serverDocsRef.current = cached;
497
- fromCacheRef.current = true;
498
- setResult(toResult(database.materializeAllDocs(cached, query), true));
499
- }
500
- else {
501
- const floor = database.seedDocs ?? [];
502
- serverDocsRef.current = floor;
503
- fromCacheRef.current = false;
504
- setResult(toResult(database.materializeAllDocs(floor, query), false));
505
- }
506
- }
507
- else {
508
- setResult(toResult(database.materializeAllDocs(serverDocsRef.current, queryOpts), fromCacheRef.current));
509
- }
510
- refreshRows();
511
- const unsubscribe = database.subscribe((_changes, meta) => {
512
- if (meta?.optimistic || meta?.ephemeral) {
513
- setResult(toResult(database.materializeAllDocs(serverDocsRef.current, queryOpts), fromCacheRef.current));
514
- if (meta?.ephemeral)
515
- return;
516
- }
517
- void refreshRows();
518
- });
519
- return () => {
520
- unsubscribe();
521
- };
522
- }, [database, refreshRows, viewerKey, cacheKey]);
523
- return result;
524
- };
525
- }
526
- function createUseChanges(database) {
527
- return function useChanges(_since = [], opts = {}) {
528
- const { mountParams } = useVibeContext();
529
- const viewerEnv = mountParams.viewerEnv;
530
- const viewerKey = `${viewerEnv?.viewer?.userHandle ?? ""}:${viewerEnv?.access ?? ""}:${grantsSignature(viewerEnv, database.name)}`;
531
- const [result, setResult] = useState({ docs: [], rows: [] });
532
- const queryString = useMemo(() => JSON.stringify(opts), [opts]);
533
- const refreshRows = useCallback(async () => {
534
- const res = await database.changes();
535
- setResult({ ...res, docs: res.rows.map((r) => r.value) });
536
- }, [queryString]);
537
- useEffect(() => {
538
- refreshRows();
539
- return database.subscribe(refreshRows);
540
- }, [refreshRows, viewerKey]);
541
- return result;
542
- };
543
- }
544
23
  //# sourceMappingURL=use-firefly.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-firefly.js","sourceRoot":"","sources":["../jsr/use-firefly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-firefly.js","sourceRoot":"","sources":["../jsr/use-firefly.ts"],"names":[],"mappings":"AAiCA,MAAM,CAAC,MAAM,wBAAwB,GAAkB,MAAM,CAAC,kCAAkC,CAAC,CAAC;AAGlG,IAAI,UAAsC,CAAC;AAK3C,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAmB;IACvD,UAAU,GAAG,GAAG,CAAC;AACnB,CAAC;AAOD,MAAM,UAAU,mBAAmB;IACjC,OAAO,UAAU,KAAK,SAAS,CAAC;AAClC,CAAC;AAQD,MAAM,UAAU,gBAAgB;IAC9B,MAAM,GAAG,GAAG,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC;IACpC,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;AAC7E,CAAC;AAKD,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAC;IACrG,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC;AAC3B,CAAC"}
@@ -2,7 +2,6 @@ import { type AccessFunction, type DbAcl } from "@vibes.diy/vibe-types";
2
2
  import type { DocWithId, IndexRow, MapFnArg, QueryOpts } from "./firefly-database.js";
3
3
  import { type IndexedDbStore } from "./indexeddb-store.js";
4
4
  import { INTERNAL_MEDIA_DB_ACCESS, isFireflyRegistered, listDbNames, registerFirefly } from "./use-firefly.js";
5
- import type { MigrateFn } from "./localfly.js";
6
5
  export { INTERNAL_MEDIA_DB_ACCESS, isFireflyRegistered, listDbNames, registerFirefly };
7
6
  export interface DatabaseAccess {
8
7
  readonly roles: ReadonlySet<string>;
@@ -18,7 +17,7 @@ export declare function useFireproof(name?: string, _config?: {
18
17
  optimistic?: boolean;
19
18
  anonymousLocal?: boolean;
20
19
  offlineQueue?: boolean;
21
- migrate?: MigrateFn;
20
+ migrate?: (doc: DocWithId, userHandle: string) => Record<string, unknown> | null | undefined | false;
22
21
  [INTERNAL_MEDIA_DB_ACCESS]?: boolean;
23
22
  [key: string]: unknown;
24
23
  }): {
@@ -1 +1 @@
1
- {"version":3,"file":"use-fireproof-local.js","sourceRoot":"","sources":["../jsr/use-fireproof-local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-fireproof-local.js","sourceRoot":"","sources":["../jsr/use-fireproof-local.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export interface PersistedViewerIdentity {
2
+ readonly userHandle: string;
3
+ readonly displayName?: string;
4
+ }
5
+ export declare function persistViewerIdentity(appOrigin: string, viewer: PersistedViewerIdentity): void;
6
+ export declare function readPersistedViewerIdentity(appOrigin: string): PersistedViewerIdentity | undefined;
7
+ export declare function clearPersistedViewerIdentity(appOrigin: string): void;
8
+ export declare function cacheAppOrigin(): string;
9
+ export declare function markSignedOut(appOrigin: string): void;
10
+ export declare function clearSignedOutMarker(appOrigin: string): void;
11
+ export declare function isSignedOutMarked(appOrigin: string): boolean;
12
+ export declare function clearAllCache(): void;