diff options
Diffstat (limited to 'src/state/persisted/index.ts')
-rw-r--r-- | src/state/persisted/index.ts | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/state/persisted/index.ts b/src/state/persisted/index.ts index 67fac6b65..545fdc0e1 100644 --- a/src/state/persisted/index.ts +++ b/src/state/persisted/index.ts @@ -3,10 +3,10 @@ import {logger} from '#/logger' import {defaults, Schema} from '#/state/persisted/schema' import {migrate} from '#/state/persisted/legacy' import * as store from '#/state/persisted/store' -import BroadcastChannel from '#/state/persisted/broadcast' +import BroadcastChannel from '#/lib/broadcast' -export type {Schema} from '#/state/persisted/schema' -export {defaults as schema} from '#/state/persisted/schema' +export type {Schema, PersistedAccount} from '#/state/persisted/schema' +export {defaults} from '#/state/persisted/schema' const broadcast = new BroadcastChannel('BSKY_BROADCAST_CHANNEL') const UPDATE_EVENT = 'BSKY_UPDATE' @@ -19,7 +19,7 @@ const _emitter = new EventEmitter() * the Provider. */ export async function init() { - logger.debug('persisted state: initializing') + logger.info('persisted state: initializing') broadcast.onmessage = onBroadcastMessage @@ -28,11 +28,12 @@ export async function init() { const stored = await store.read() // check for new store if (!stored) await store.write(defaults) // opt: init new store _state = stored || defaults // return new store + logger.log('persisted state: initialized') } catch (e) { logger.error('persisted state: failed to load root state from storage', { error: e, }) - // AsyncStorage failured, but we can still continue in memory + // AsyncStorage failure, but we can still continue in memory return defaults } } @@ -50,7 +51,9 @@ export async function write<K extends keyof Schema>( await store.write(_state) // must happen on next tick, otherwise the tab will read stale storage data setTimeout(() => broadcast.postMessage({event: UPDATE_EVENT}), 0) - logger.debug(`persisted state: wrote root state to storage`) + logger.debug(`persisted state: wrote root state to storage`, { + updatedKey: key, + }) } catch (e) { logger.error(`persisted state: failed writing root state to storage`, { error: e, |