@laboverwire/stitch 0.5.1 → 0.6.0

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/CHANGELOG.md CHANGED
@@ -6,6 +6,16 @@
6
6
 
7
7
  - _Nothing yet._
8
8
 
9
+ ## 0.6.0
10
+
11
+ ### Added
12
+
13
+ - **`RemoteConfig.autoConnect`** (`boolean`, default `true`). When `false`, `initialize()` skips the startup broker connect and the caller drives it via `reconnect(url, ticket)` — the pattern for dynamically-minted-per-connection JWTs, avoiding the ticketless startup probe that an auth-requiring broker rejects once per page load. The adapter already forwards options verbatim, so this only makes the field type-safe for consumers.
14
+
15
+ ### Changed
16
+
17
+ - Raised the `@laboverwire/stitch-wasm` floor to `^0.3.0`, which implements `remote.autoConnect`. Default `true` preserves existing behavior, so this is additive and non-breaking.
18
+
9
19
  ## 0.5.1
10
20
 
11
21
  ### Changed
package/dist/types.d.ts CHANGED
@@ -55,6 +55,7 @@ export interface RemoteConfig {
55
55
  ticket?: string;
56
56
  username?: string;
57
57
  password?: string;
58
+ autoConnect?: boolean;
58
59
  }
59
60
  export interface StoreOptions {
60
61
  persistence?: PersistenceConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;CAC/C;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC3C,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACrD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,cAAc,GAAG,YAAY,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjG,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACpE,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,YAAY,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC;AAEjE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3F,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CACrF;AAED,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,YAAY,GAAG,aAAa;IAC3D,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAExB,IAAI,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACjE,WAAW,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,gBAAgB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3F,IAAI,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9E,gBAAgB,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACzE,aAAa,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1E,UAAU,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;IAEvE,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7C,GAAG,CAAC,EAAE,SAAS,GACd,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAC3B,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACrB,GAAG,CAAC,EAAE,SAAS,GACd,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtF,gBAAgB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EACrC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,MAAM,IAAI,GACnB,MAAM,IAAI,CAAC;IACd,iBAAiB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EACtC,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,KAAK,IAAI,GACxE,MAAM,IAAI,CAAC;IAEd,UAAU,IAAI,IAAI,CAAC;IACnB,QAAQ,IAAI,IAAI,CAAC;IAEjB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3F,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,2BAA2B,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,gBAAgB,KAAK,IAAI,GAAG,MAAM,IAAI,CAAC;IAC3E,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IAEjC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,wBAAwB,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IACpD,qBAAqB,CAAC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5D,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACpF,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7F,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3E,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAC9B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface SchemaField {\n name: string;\n type: 'string' | 'number' | 'boolean' | 'object' | 'array';\n required?: boolean;\n default?: unknown;\n}\n\nexport interface ForeignKeyDefinition {\n field: string;\n references: string;\n onDelete: 'cascade' | 'set_null' | 'restrict';\n}\n\nexport interface EntityDefinition {\n fields: SchemaField[];\n foreignKeys?: ForeignKeyDefinition[];\n uniqueConstraints?: string[][];\n indexes?: string[];\n}\n\nexport interface StoreConfig {\n entities: Record<string, EntityDefinition>;\n scope: {\n rootEntity: string;\n childEntities: string[];\n scopeField: string;\n };\n topLevelEntities?: Array<{\n entity: string;\n subscriptionPattern: string;\n }>;\n localOnlyEntities?: Record<string, EntityDefinition>;\n syncTopicPrefix?: string;\n responseTopicPrefix?: string;\n versionField?: string;\n updatedAtField?: string;\n userScopeField?: string;\n}\n\nexport type OriginTag = 'remote' | 'load' | 'clear';\n\nexport type ConnectionStatus = 'connected' | 'disconnected' | 'connecting' | 'error' | 'offline';\n\nexport type SortDirection = 'asc' | 'desc';\n\nexport interface SortField {\n field: string;\n direction: SortDirection;\n}\n\nexport interface ListFilter {\n scopeId?: string;\n sort?: SortField[];\n projection?: string[];\n}\n\nexport interface PersistenceConfig {\n dbName: string;\n passphrase?: string;\n}\n\nexport interface RemoteConfig {\n url: string;\n clientId?: string;\n ticket?: string;\n username?: string;\n password?: string;\n}\n\nexport interface StoreOptions {\n persistence?: PersistenceConfig;\n remote?: RemoteConfig;\n}\n\n/**\n * A schema maps entity name → record type. Users declare their own:\n *\n * ```ts\n * type Schema = { project: Project; task: Task };\n * const store = createStore<Schema>(config, options);\n * ```\n *\n * When no generic argument is supplied, methods fall back to `Record<string, unknown>`.\n */\nexport type EntitySchema = Record<string, object>;\nexport type DefaultSchema = Record<string, Record<string, unknown>>;\nexport type EntityKey<S extends EntitySchema> = keyof S & string;\n\n/**\n * Read-only view over the in-memory cache, exposed for `useSyncExternalStore`-style\n * subscriptions. Snapshots are referentially stable until the scope's version changes.\n */\nexport interface MemoryStore {\n getSnapshot(entity: string, scopeId: string): Record<string, unknown>[];\n getSnapshotAsMap(entity: string, scopeId: string): Record<string, Record<string, unknown>>;\n subscribeToScope(scopeId: string, entity: string, callback: () => void): () => void;\n}\n\nexport interface Store<S extends EntitySchema = DefaultSchema> {\n initialize(): Promise<void>;\n destroy(): Promise<void>;\n readonly ready: boolean;\n\n read<K extends EntityKey<S>>(entity: K, id: string): S[K] | null;\n getSnapshot<K extends EntityKey<S>>(entity: K, scopeId: string): S[K][];\n getSnapshotAsMap<K extends EntityKey<S>>(entity: K, scopeId: string): Record<string, S[K]>;\n\n list<K extends EntityKey<S>>(entity: K, filter?: ListFilter): Promise<S[K][]>;\n listRootEntities(sort?: SortField[]): Promise<Record<string, unknown>[]>;\n getChildCount<K extends EntityKey<S>>(entity: K, scopeId: string): number;\n getVersion<K extends EntityKey<S>>(scopeId: string, entity: K): number;\n\n create<K extends EntityKey<S>>(\n entity: K,\n scopeId: string,\n data: Partial<S[K]> & Record<string, unknown>,\n tag?: OriginTag\n ): Promise<string>;\n update<K extends EntityKey<S>>(\n entity: K,\n id: string,\n fields: Partial<S[K]>,\n tag?: OriginTag\n ): Promise<void>;\n delete<K extends EntityKey<S>>(entity: K, id: string, tag?: OriginTag): Promise<void>;\n\n subscribeToScope<K extends EntityKey<S>>(\n scopeId: string,\n entity: K,\n callback: () => void\n ): () => void;\n subscribeToEntity<K extends EntityKey<S>>(\n entity: K,\n callback: (data: S[K] | null, op: 'insert' | 'update' | 'delete') => void\n ): () => void;\n\n beginBatch(): void;\n endBatch(): void;\n\n replaceScope(scopeId: string): Promise<void>;\n closeScope(scopeId: string): Promise<void>;\n loadScope(scopeId: string, data: Record<string, Record<string, unknown>[]>): Promise<void>;\n clearScope(scopeId: string): Promise<void>;\n\n readonly connectionStatus: ConnectionStatus;\n subscribeToConnectionStatus(cb: (s: ConnectionStatus) => void): () => void;\n disconnect(): Promise<void>;\n reconnect(serverUrl: string, getTicket?: () => Promise<string>): Promise<void>;\n readonly isReconnecting: boolean;\n\n setAuthenticatedUser(userId: string): void;\n setSessionInvalidHandler(handler: () => void): void;\n setReconnectValidator(validator: () => Promise<void>): void;\n resetForLogout(): Promise<void>;\n\n readLocalState(entity: string, id: string): Promise<Record<string, unknown> | null>;\n updateLocalState(entity: string, id: string, fields: Record<string, unknown>): Promise<void>;\n pendingMutationCount(scopeId: string): Promise<number>;\n\n request(topic: string, payload: unknown): Promise<Record<string, unknown>>;\n\n readonly hasPersistence: boolean;\n readonly hasRemote: boolean;\n\n readonly memory: MemoryStore;\n readonly config: StoreConfig;\n}\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["export interface SchemaField {\n name: string;\n type: 'string' | 'number' | 'boolean' | 'object' | 'array';\n required?: boolean;\n default?: unknown;\n}\n\nexport interface ForeignKeyDefinition {\n field: string;\n references: string;\n onDelete: 'cascade' | 'set_null' | 'restrict';\n}\n\nexport interface EntityDefinition {\n fields: SchemaField[];\n foreignKeys?: ForeignKeyDefinition[];\n uniqueConstraints?: string[][];\n indexes?: string[];\n}\n\nexport interface StoreConfig {\n entities: Record<string, EntityDefinition>;\n scope: {\n rootEntity: string;\n childEntities: string[];\n scopeField: string;\n };\n topLevelEntities?: Array<{\n entity: string;\n subscriptionPattern: string;\n }>;\n localOnlyEntities?: Record<string, EntityDefinition>;\n syncTopicPrefix?: string;\n responseTopicPrefix?: string;\n versionField?: string;\n updatedAtField?: string;\n userScopeField?: string;\n}\n\nexport type OriginTag = 'remote' | 'load' | 'clear';\n\nexport type ConnectionStatus = 'connected' | 'disconnected' | 'connecting' | 'error' | 'offline';\n\nexport type SortDirection = 'asc' | 'desc';\n\nexport interface SortField {\n field: string;\n direction: SortDirection;\n}\n\nexport interface ListFilter {\n scopeId?: string;\n sort?: SortField[];\n projection?: string[];\n}\n\nexport interface PersistenceConfig {\n dbName: string;\n passphrase?: string;\n}\n\nexport interface RemoteConfig {\n url: string;\n clientId?: string;\n ticket?: string;\n username?: string;\n password?: string;\n autoConnect?: boolean;\n}\n\nexport interface StoreOptions {\n persistence?: PersistenceConfig;\n remote?: RemoteConfig;\n}\n\n/**\n * A schema maps entity name → record type. Users declare their own:\n *\n * ```ts\n * type Schema = { project: Project; task: Task };\n * const store = createStore<Schema>(config, options);\n * ```\n *\n * When no generic argument is supplied, methods fall back to `Record<string, unknown>`.\n */\nexport type EntitySchema = Record<string, object>;\nexport type DefaultSchema = Record<string, Record<string, unknown>>;\nexport type EntityKey<S extends EntitySchema> = keyof S & string;\n\n/**\n * Read-only view over the in-memory cache, exposed for `useSyncExternalStore`-style\n * subscriptions. Snapshots are referentially stable until the scope's version changes.\n */\nexport interface MemoryStore {\n getSnapshot(entity: string, scopeId: string): Record<string, unknown>[];\n getSnapshotAsMap(entity: string, scopeId: string): Record<string, Record<string, unknown>>;\n subscribeToScope(scopeId: string, entity: string, callback: () => void): () => void;\n}\n\nexport interface Store<S extends EntitySchema = DefaultSchema> {\n initialize(): Promise<void>;\n destroy(): Promise<void>;\n readonly ready: boolean;\n\n read<K extends EntityKey<S>>(entity: K, id: string): S[K] | null;\n getSnapshot<K extends EntityKey<S>>(entity: K, scopeId: string): S[K][];\n getSnapshotAsMap<K extends EntityKey<S>>(entity: K, scopeId: string): Record<string, S[K]>;\n\n list<K extends EntityKey<S>>(entity: K, filter?: ListFilter): Promise<S[K][]>;\n listRootEntities(sort?: SortField[]): Promise<Record<string, unknown>[]>;\n getChildCount<K extends EntityKey<S>>(entity: K, scopeId: string): number;\n getVersion<K extends EntityKey<S>>(scopeId: string, entity: K): number;\n\n create<K extends EntityKey<S>>(\n entity: K,\n scopeId: string,\n data: Partial<S[K]> & Record<string, unknown>,\n tag?: OriginTag\n ): Promise<string>;\n update<K extends EntityKey<S>>(\n entity: K,\n id: string,\n fields: Partial<S[K]>,\n tag?: OriginTag\n ): Promise<void>;\n delete<K extends EntityKey<S>>(entity: K, id: string, tag?: OriginTag): Promise<void>;\n\n subscribeToScope<K extends EntityKey<S>>(\n scopeId: string,\n entity: K,\n callback: () => void\n ): () => void;\n subscribeToEntity<K extends EntityKey<S>>(\n entity: K,\n callback: (data: S[K] | null, op: 'insert' | 'update' | 'delete') => void\n ): () => void;\n\n beginBatch(): void;\n endBatch(): void;\n\n replaceScope(scopeId: string): Promise<void>;\n closeScope(scopeId: string): Promise<void>;\n loadScope(scopeId: string, data: Record<string, Record<string, unknown>[]>): Promise<void>;\n clearScope(scopeId: string): Promise<void>;\n\n readonly connectionStatus: ConnectionStatus;\n subscribeToConnectionStatus(cb: (s: ConnectionStatus) => void): () => void;\n disconnect(): Promise<void>;\n reconnect(serverUrl: string, getTicket?: () => Promise<string>): Promise<void>;\n readonly isReconnecting: boolean;\n\n setAuthenticatedUser(userId: string): void;\n setSessionInvalidHandler(handler: () => void): void;\n setReconnectValidator(validator: () => Promise<void>): void;\n resetForLogout(): Promise<void>;\n\n readLocalState(entity: string, id: string): Promise<Record<string, unknown> | null>;\n updateLocalState(entity: string, id: string, fields: Record<string, unknown>): Promise<void>;\n pendingMutationCount(scopeId: string): Promise<number>;\n\n request(topic: string, payload: unknown): Promise<Record<string, unknown>>;\n\n readonly hasPersistence: boolean;\n readonly hasRemote: boolean;\n\n readonly memory: MemoryStore;\n readonly config: StoreConfig;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@laboverwire/stitch",
3
- "version": "0.5.1",
3
+ "version": "0.6.0",
4
4
  "description": "Reactive state synchronization library bridging an in-memory store, IndexedDB persistence, and MQTT-based remote sync.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "LabOverWire",
@@ -74,7 +74,7 @@
74
74
  }
75
75
  },
76
76
  "dependencies": {
77
- "@laboverwire/stitch-wasm": "^0.2.2"
77
+ "@laboverwire/stitch-wasm": "^0.3.0"
78
78
  },
79
79
  "peerDependencies": {
80
80
  "react": "^19.0.0",