tinybase 5.4.0-beta.1 → 5.4.0-beta.3
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/@types/mergeable-store/index.d.cts +7 -5
- package/@types/mergeable-store/index.d.ts +7 -5
- package/@types/mergeable-store/with-schemas/index.d.cts +16 -9
- package/@types/mergeable-store/with-schemas/index.d.ts +16 -9
- package/@types/persisters/index.d.cts +14 -10
- package/@types/persisters/index.d.ts +14 -10
- package/@types/persisters/persister-durable-object-storage/index.d.cts +108 -0
- package/@types/persisters/persister-durable-object-storage/index.d.ts +108 -0
- package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.cts +122 -0
- package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +122 -0
- package/@types/persisters/with-schemas/index.d.cts +14 -10
- package/@types/persisters/with-schemas/index.d.ts +14 -10
- package/@types/synchronizers/synchronizer-ws-server/index.d.cts +5 -0
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +5 -0
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +6 -0
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +6 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.cts +119 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +119 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.cts +144 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +144 -0
- package/cjs/es6/index.cjs +37 -32
- package/cjs/es6/indexes/index.cjs +1 -1
- package/cjs/es6/indexes/with-schemas/index.cjs +1 -1
- package/cjs/es6/mergeable-store/index.cjs +36 -32
- package/cjs/es6/mergeable-store/with-schemas/index.cjs +36 -32
- package/cjs/es6/metrics/index.cjs +1 -1
- package/cjs/es6/metrics/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/index.cjs +1 -1
- package/cjs/es6/min/index.cjs.gz +0 -0
- package/cjs/es6/min/indexes/index.cjs +1 -1
- package/cjs/es6/min/indexes/index.cjs.gz +0 -0
- package/cjs/es6/min/indexes/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/indexes/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/mergeable-store/index.cjs +1 -1
- package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
- package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/metrics/index.cjs +1 -1
- package/cjs/es6/min/metrics/index.cjs.gz +0 -0
- package/cjs/es6/min/metrics/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/metrics/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/index.cjs +1 -1
- package/cjs/es6/min/persisters/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-automerge/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-browser/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-browser/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs +1 -0
- package/cjs/es6/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +1 -0
- package/cjs/es6/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-file/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-file/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-indexed-db/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-partykit-client/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-pglite/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-pglite/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-remote/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-remote/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-yjs/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-yjs/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/persisters/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/persisters/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/queries/index.cjs +1 -1
- package/cjs/es6/min/queries/index.cjs.gz +0 -0
- package/cjs/es6/min/queries/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/queries/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/relationships/index.cjs +1 -1
- package/cjs/es6/min/relationships/index.cjs.gz +0 -0
- package/cjs/es6/min/relationships/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/relationships/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/store/index.cjs +1 -1
- package/cjs/es6/min/store/index.cjs.gz +0 -0
- package/cjs/es6/min/store/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/store/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +1 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +1 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
- package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
- package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/persisters/index.cjs +21 -9
- package/cjs/es6/persisters/persister-automerge/index.cjs +17 -8
- package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +17 -8
- package/cjs/es6/persisters/persister-browser/index.cjs +17 -8
- package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +17 -8
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +21 -9
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-durable-object-storage/index.cjs +687 -0
- package/cjs/es6/persisters/persister-durable-object-storage/with-schemas/index.cjs +687 -0
- package/cjs/es6/persisters/persister-electric-sql/index.cjs +21 -9
- package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +21 -9
- package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-file/index.cjs +17 -8
- package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +17 -8
- package/cjs/es6/persisters/persister-indexed-db/index.cjs +19 -9
- package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +19 -9
- package/cjs/es6/persisters/persister-libsql/index.cjs +21 -9
- package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-partykit-client/index.cjs +23 -11
- package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +23 -11
- package/cjs/es6/persisters/persister-pglite/index.cjs +19 -8
- package/cjs/es6/persisters/persister-pglite/with-schemas/index.cjs +19 -8
- package/cjs/es6/persisters/persister-postgres/index.cjs +19 -8
- package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +19 -8
- package/cjs/es6/persisters/persister-powersync/index.cjs +21 -9
- package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-remote/index.cjs +19 -9
- package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +19 -9
- package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +21 -9
- package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-sqlite3/index.cjs +21 -9
- package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +21 -9
- package/cjs/es6/persisters/persister-yjs/index.cjs +17 -8
- package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +17 -8
- package/cjs/es6/persisters/with-schemas/index.cjs +21 -9
- package/cjs/es6/queries/index.cjs +1 -0
- package/cjs/es6/queries/with-schemas/index.cjs +1 -0
- package/cjs/es6/relationships/index.cjs +1 -1
- package/cjs/es6/relationships/with-schemas/index.cjs +1 -1
- package/cjs/es6/store/index.cjs +5 -5
- package/cjs/es6/store/with-schemas/index.cjs +5 -5
- package/cjs/es6/synchronizers/index.cjs +142 -93
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +142 -93
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +142 -93
- package/cjs/es6/synchronizers/synchronizer-local/index.cjs +145 -97
- package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +145 -97
- package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +162 -100
- package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +162 -100
- package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +179 -107
- package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +179 -107
- package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/index.cjs +1076 -0
- package/cjs/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +1076 -0
- package/cjs/es6/synchronizers/synchronizer-ws-server-simple/index.cjs +12 -12
- package/cjs/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +12 -12
- package/cjs/es6/synchronizers/with-schemas/index.cjs +142 -93
- package/cjs/es6/ui-react-inspector/index.cjs +22 -13
- package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +22 -13
- package/cjs/es6/with-schemas/index.cjs +37 -32
- package/cjs/index.cjs +36 -32
- package/cjs/mergeable-store/index.cjs +36 -32
- package/cjs/mergeable-store/with-schemas/index.cjs +36 -32
- package/cjs/min/index.cjs +1 -1
- package/cjs/min/index.cjs.gz +0 -0
- package/cjs/min/mergeable-store/index.cjs +1 -1
- package/cjs/min/mergeable-store/index.cjs.gz +0 -0
- package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
- package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/index.cjs +1 -1
- package/cjs/min/persisters/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-automerge/index.cjs +1 -1
- package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-browser/index.cjs +1 -1
- package/cjs/min/persisters/persister-browser/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-browser/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-browser/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
- package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-durable-object-storage/index.cjs +1 -0
- package/cjs/min/persisters/persister-durable-object-storage/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs +1 -0
- package/cjs/min/persisters/persister-durable-object-storage/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
- package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
- package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-file/index.cjs +1 -1
- package/cjs/min/persisters/persister-file/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-file/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-file/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-indexed-db/index.cjs +1 -1
- package/cjs/min/persisters/persister-indexed-db/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-indexed-db/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
- package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-partykit-client/index.cjs +1 -1
- package/cjs/min/persisters/persister-partykit-client/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-partykit-client/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-pglite/index.cjs +1 -1
- package/cjs/min/persisters/persister-pglite/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-pglite/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
- package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
- package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-remote/index.cjs +1 -1
- package/cjs/min/persisters/persister-remote/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-remote/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-remote/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
- package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
- package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-yjs/index.cjs +1 -1
- package/cjs/min/persisters/persister-yjs/index.cjs.gz +0 -0
- package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/persister-yjs/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/persisters/with-schemas/index.cjs +1 -1
- package/cjs/min/persisters/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/store/index.cjs +1 -1
- package/cjs/min/store/index.cjs.gz +0 -0
- package/cjs/min/store/with-schemas/index.cjs +1 -1
- package/cjs/min/store/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/index.cjs +1 -1
- package/cjs/min/synchronizers/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-local/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-local/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-local/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-client/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-client/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs +1 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +1 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-simple/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-server-simple/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/ui-react-inspector/index.cjs +1 -1
- package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
- package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
- package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/with-schemas/index.cjs +1 -1
- package/cjs/min/with-schemas/index.cjs.gz +0 -0
- package/cjs/persisters/index.cjs +21 -9
- package/cjs/persisters/persister-automerge/index.cjs +17 -8
- package/cjs/persisters/persister-automerge/with-schemas/index.cjs +17 -8
- package/cjs/persisters/persister-browser/index.cjs +17 -8
- package/cjs/persisters/persister-browser/with-schemas/index.cjs +17 -8
- package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +21 -9
- package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-durable-object-storage/index.cjs +542 -0
- package/cjs/persisters/persister-durable-object-storage/with-schemas/index.cjs +542 -0
- package/cjs/persisters/persister-electric-sql/index.cjs +21 -9
- package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-expo-sqlite/index.cjs +21 -9
- package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-file/index.cjs +17 -8
- package/cjs/persisters/persister-file/with-schemas/index.cjs +17 -8
- package/cjs/persisters/persister-indexed-db/index.cjs +19 -9
- package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +19 -9
- package/cjs/persisters/persister-libsql/index.cjs +21 -9
- package/cjs/persisters/persister-libsql/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-partykit-client/index.cjs +18 -9
- package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +18 -9
- package/cjs/persisters/persister-pglite/index.cjs +19 -8
- package/cjs/persisters/persister-pglite/with-schemas/index.cjs +19 -8
- package/cjs/persisters/persister-postgres/index.cjs +19 -8
- package/cjs/persisters/persister-postgres/with-schemas/index.cjs +19 -8
- package/cjs/persisters/persister-powersync/index.cjs +21 -9
- package/cjs/persisters/persister-powersync/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-remote/index.cjs +19 -9
- package/cjs/persisters/persister-remote/with-schemas/index.cjs +19 -9
- package/cjs/persisters/persister-sqlite-wasm/index.cjs +21 -9
- package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-sqlite3/index.cjs +21 -9
- package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +21 -9
- package/cjs/persisters/persister-yjs/index.cjs +17 -8
- package/cjs/persisters/persister-yjs/with-schemas/index.cjs +17 -8
- package/cjs/persisters/with-schemas/index.cjs +21 -9
- package/cjs/store/index.cjs +5 -5
- package/cjs/store/with-schemas/index.cjs +5 -5
- package/cjs/synchronizers/index.cjs +119 -73
- package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +119 -73
- package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +119 -73
- package/cjs/synchronizers/synchronizer-local/index.cjs +128 -85
- package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +128 -85
- package/cjs/synchronizers/synchronizer-ws-client/index.cjs +139 -80
- package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +139 -80
- package/cjs/synchronizers/synchronizer-ws-server/index.cjs +156 -87
- package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +156 -87
- package/cjs/synchronizers/synchronizer-ws-server-durable-object/index.cjs +797 -0
- package/cjs/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.cjs +797 -0
- package/cjs/synchronizers/synchronizer-ws-server-simple/index.cjs +12 -12
- package/cjs/synchronizers/synchronizer-ws-server-simple/with-schemas/index.cjs +12 -12
- package/cjs/synchronizers/with-schemas/index.cjs +119 -73
- package/cjs/ui-react-inspector/index.cjs +22 -13
- package/cjs/ui-react-inspector/with-schemas/index.cjs +22 -13
- package/cjs/with-schemas/index.cjs +36 -32
- package/es6/index.js +37 -32
- package/es6/indexes/index.js +1 -1
- package/es6/indexes/with-schemas/index.js +1 -1
- package/es6/mergeable-store/index.js +36 -32
- package/es6/mergeable-store/with-schemas/index.js +36 -32
- package/es6/metrics/index.js +1 -1
- package/es6/metrics/with-schemas/index.js +1 -1
- package/es6/min/index.js +1 -1
- package/es6/min/index.js.gz +0 -0
- package/es6/min/indexes/index.js +1 -1
- package/es6/min/indexes/index.js.gz +0 -0
- package/es6/min/indexes/with-schemas/index.js +1 -1
- package/es6/min/indexes/with-schemas/index.js.gz +0 -0
- package/es6/min/mergeable-store/index.js +1 -1
- package/es6/min/mergeable-store/index.js.gz +0 -0
- package/es6/min/mergeable-store/with-schemas/index.js +1 -1
- package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/es6/min/metrics/index.js +1 -1
- package/es6/min/metrics/index.js.gz +0 -0
- package/es6/min/metrics/with-schemas/index.js +1 -1
- package/es6/min/metrics/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/index.js +1 -1
- package/es6/min/persisters/index.js.gz +0 -0
- package/es6/min/persisters/persister-automerge/index.js +1 -1
- package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
- package/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-browser/index.js +1 -1
- package/es6/min/persisters/persister-browser/index.js.gz +0 -0
- package/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-durable-object-storage/index.js +1 -0
- package/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
- package/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-electric-sql/index.js +1 -1
- package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-file/index.js +1 -1
- package/es6/min/persisters/persister-file/index.js.gz +0 -0
- package/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-indexed-db/index.js +1 -1
- package/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-libsql/index.js +1 -1
- package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
- package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-partykit-client/index.js +1 -1
- package/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-pglite/index.js +1 -1
- package/es6/min/persisters/persister-pglite/index.js.gz +0 -0
- package/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-postgres/index.js +1 -1
- package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
- package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-powersync/index.js +1 -1
- package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
- package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-remote/index.js +1 -1
- package/es6/min/persisters/persister-remote/index.js.gz +0 -0
- package/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-sqlite3/index.js +1 -1
- package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/persister-yjs/index.js +1 -1
- package/es6/min/persisters/persister-yjs/index.js.gz +0 -0
- package/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/es6/min/persisters/with-schemas/index.js +1 -1
- package/es6/min/persisters/with-schemas/index.js.gz +0 -0
- package/es6/min/queries/index.js +1 -1
- package/es6/min/queries/index.js.gz +0 -0
- package/es6/min/queries/with-schemas/index.js +1 -1
- package/es6/min/queries/with-schemas/index.js.gz +0 -0
- package/es6/min/relationships/index.js +1 -1
- package/es6/min/relationships/index.js.gz +0 -0
- package/es6/min/relationships/with-schemas/index.js +1 -1
- package/es6/min/relationships/with-schemas/index.js.gz +0 -0
- package/es6/min/store/index.js +1 -1
- package/es6/min/store/index.js.gz +0 -0
- package/es6/min/store/with-schemas/index.js +1 -1
- package/es6/min/store/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/index.js +1 -1
- package/es6/min/synchronizers/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-local/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -0
- package/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -0
- package/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/es6/min/synchronizers/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/es6/min/ui-react-dom/index.js +1 -1
- package/es6/min/ui-react-dom/index.js.gz +0 -0
- package/es6/min/ui-react-dom/with-schemas/index.js +1 -1
- package/es6/min/ui-react-dom/with-schemas/index.js.gz +0 -0
- package/es6/min/ui-react-inspector/index.js +1 -1
- package/es6/min/ui-react-inspector/index.js.gz +0 -0
- package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/es6/min/with-schemas/index.js +1 -1
- package/es6/min/with-schemas/index.js.gz +0 -0
- package/es6/persisters/index.js +21 -9
- package/es6/persisters/persister-automerge/index.js +17 -8
- package/es6/persisters/persister-automerge/with-schemas/index.js +17 -8
- package/es6/persisters/persister-browser/index.js +17 -8
- package/es6/persisters/persister-browser/with-schemas/index.js +17 -8
- package/es6/persisters/persister-cr-sqlite-wasm/index.js +21 -9
- package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
- package/es6/persisters/persister-durable-object-storage/index.js +684 -0
- package/es6/persisters/persister-durable-object-storage/with-schemas/index.js +684 -0
- package/es6/persisters/persister-electric-sql/index.js +21 -9
- package/es6/persisters/persister-electric-sql/with-schemas/index.js +21 -9
- package/es6/persisters/persister-expo-sqlite/index.js +21 -9
- package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
- package/es6/persisters/persister-file/index.js +18 -9
- package/es6/persisters/persister-file/with-schemas/index.js +18 -9
- package/es6/persisters/persister-indexed-db/index.js +19 -9
- package/es6/persisters/persister-indexed-db/with-schemas/index.js +19 -9
- package/es6/persisters/persister-libsql/index.js +21 -9
- package/es6/persisters/persister-libsql/with-schemas/index.js +21 -9
- package/es6/persisters/persister-partykit-client/index.js +23 -11
- package/es6/persisters/persister-partykit-client/with-schemas/index.js +23 -11
- package/es6/persisters/persister-pglite/index.js +19 -8
- package/es6/persisters/persister-pglite/with-schemas/index.js +19 -8
- package/es6/persisters/persister-postgres/index.js +19 -8
- package/es6/persisters/persister-postgres/with-schemas/index.js +19 -8
- package/es6/persisters/persister-powersync/index.js +21 -9
- package/es6/persisters/persister-powersync/with-schemas/index.js +21 -9
- package/es6/persisters/persister-remote/index.js +19 -9
- package/es6/persisters/persister-remote/with-schemas/index.js +19 -9
- package/es6/persisters/persister-sqlite-wasm/index.js +21 -9
- package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
- package/es6/persisters/persister-sqlite3/index.js +21 -9
- package/es6/persisters/persister-sqlite3/with-schemas/index.js +21 -9
- package/es6/persisters/persister-yjs/index.js +17 -8
- package/es6/persisters/persister-yjs/with-schemas/index.js +17 -8
- package/es6/persisters/with-schemas/index.js +21 -9
- package/es6/queries/index.js +1 -0
- package/es6/queries/with-schemas/index.js +1 -0
- package/es6/relationships/index.js +1 -1
- package/es6/relationships/with-schemas/index.js +1 -1
- package/es6/store/index.js +5 -5
- package/es6/store/with-schemas/index.js +5 -5
- package/es6/synchronizers/index.js +142 -93
- package/es6/synchronizers/synchronizer-broadcast-channel/index.js +142 -93
- package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +142 -93
- package/es6/synchronizers/synchronizer-local/index.js +145 -97
- package/es6/synchronizers/synchronizer-local/with-schemas/index.js +145 -97
- package/es6/synchronizers/synchronizer-ws-client/index.js +162 -100
- package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +162 -100
- package/es6/synchronizers/synchronizer-ws-server/index.js +179 -107
- package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +179 -107
- package/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +1073 -0
- package/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1073 -0
- package/es6/synchronizers/synchronizer-ws-server-simple/index.js +12 -12
- package/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +12 -12
- package/es6/synchronizers/with-schemas/index.js +142 -93
- package/es6/ui-react-dom/index.js +8 -8
- package/es6/ui-react-dom/with-schemas/index.js +8 -8
- package/es6/ui-react-inspector/index.js +26 -17
- package/es6/ui-react-inspector/with-schemas/index.js +26 -17
- package/es6/with-schemas/index.js +37 -32
- package/index.js +36 -32
- package/mergeable-store/index.js +36 -32
- package/mergeable-store/with-schemas/index.js +36 -32
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-automerge/index.js +1 -1
- package/min/persisters/persister-automerge/index.js.gz +0 -0
- package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-browser/index.js +1 -1
- package/min/persisters/persister-browser/index.js.gz +0 -0
- package/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/index.js +1 -0
- package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/index.js +1 -1
- package/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-file/index.js +1 -1
- package/min/persisters/persister-file/index.js.gz +0 -0
- package/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/index.js +1 -1
- package/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-libsql/index.js +1 -1
- package/min/persisters/persister-libsql/index.js.gz +0 -0
- package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/index.js +1 -1
- package/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-powersync/index.js +1 -1
- package/min/persisters/persister-powersync/index.js.gz +0 -0
- package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-remote/index.js +1 -1
- package/min/persisters/persister-remote/index.js.gz +0 -0
- package/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/index.js +1 -1
- package/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-yjs/index.js +1 -1
- package/min/persisters/persister-yjs/index.js.gz +0 -0
- package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/index.js +1 -1
- package/min/synchronizers/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/index.js +1 -1
- package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react-dom/index.js +1 -1
- package/min/ui-react-dom/index.js.gz +0 -0
- package/min/ui-react-dom/with-schemas/index.js +1 -1
- package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/package.json +220 -8
- package/persisters/index.js +21 -9
- package/persisters/persister-automerge/index.js +17 -8
- package/persisters/persister-automerge/with-schemas/index.js +17 -8
- package/persisters/persister-browser/index.js +17 -8
- package/persisters/persister-browser/with-schemas/index.js +17 -8
- package/persisters/persister-cr-sqlite-wasm/index.js +21 -9
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
- package/persisters/persister-durable-object-storage/index.js +539 -0
- package/persisters/persister-durable-object-storage/with-schemas/index.js +539 -0
- package/persisters/persister-electric-sql/index.js +21 -9
- package/persisters/persister-electric-sql/with-schemas/index.js +21 -9
- package/persisters/persister-expo-sqlite/index.js +21 -9
- package/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
- package/persisters/persister-file/index.js +18 -9
- package/persisters/persister-file/with-schemas/index.js +18 -9
- package/persisters/persister-indexed-db/index.js +19 -9
- package/persisters/persister-indexed-db/with-schemas/index.js +19 -9
- package/persisters/persister-libsql/index.js +21 -9
- package/persisters/persister-libsql/with-schemas/index.js +21 -9
- package/persisters/persister-partykit-client/index.js +18 -9
- package/persisters/persister-partykit-client/with-schemas/index.js +18 -9
- package/persisters/persister-pglite/index.js +19 -8
- package/persisters/persister-pglite/with-schemas/index.js +19 -8
- package/persisters/persister-postgres/index.js +19 -8
- package/persisters/persister-postgres/with-schemas/index.js +19 -8
- package/persisters/persister-powersync/index.js +21 -9
- package/persisters/persister-powersync/with-schemas/index.js +21 -9
- package/persisters/persister-remote/index.js +19 -9
- package/persisters/persister-remote/with-schemas/index.js +19 -9
- package/persisters/persister-sqlite-wasm/index.js +21 -9
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
- package/persisters/persister-sqlite3/index.js +21 -9
- package/persisters/persister-sqlite3/with-schemas/index.js +21 -9
- package/persisters/persister-yjs/index.js +17 -8
- package/persisters/persister-yjs/with-schemas/index.js +17 -8
- package/persisters/with-schemas/index.js +21 -9
- package/readme.md +2 -2
- package/releases.md +23 -1
- package/store/index.js +5 -5
- package/store/with-schemas/index.js +5 -5
- package/synchronizers/index.js +119 -73
- package/synchronizers/synchronizer-broadcast-channel/index.js +119 -73
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +119 -73
- package/synchronizers/synchronizer-local/index.js +128 -85
- package/synchronizers/synchronizer-local/with-schemas/index.js +128 -85
- package/synchronizers/synchronizer-ws-client/index.js +139 -80
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +139 -80
- package/synchronizers/synchronizer-ws-server/index.js +156 -87
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +156 -87
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +794 -0
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +794 -0
- package/synchronizers/synchronizer-ws-server-simple/index.js +12 -12
- package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +12 -12
- package/synchronizers/with-schemas/index.js +119 -73
- package/ui-react-dom/index.js +8 -8
- package/ui-react-dom/with-schemas/index.js +8 -8
- package/ui-react-inspector/index.js +26 -17
- package/ui-react-inspector/with-schemas/index.js +26 -17
- package/umd/es6/index.js +37 -32
- package/umd/es6/indexes/index.js +5 -1
- package/umd/es6/indexes/with-schemas/index.js +5 -1
- package/umd/es6/mergeable-store/index.js +36 -32
- package/umd/es6/mergeable-store/with-schemas/index.js +36 -32
- package/umd/es6/metrics/index.js +5 -1
- package/umd/es6/metrics/with-schemas/index.js +5 -1
- package/umd/es6/min/index.js +1 -1
- package/umd/es6/min/index.js.gz +0 -0
- package/umd/es6/min/indexes/index.js +1 -1
- package/umd/es6/min/indexes/index.js.gz +0 -0
- package/umd/es6/min/indexes/with-schemas/index.js +1 -1
- package/umd/es6/min/indexes/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/mergeable-store/index.js +1 -1
- package/umd/es6/min/mergeable-store/index.js.gz +0 -0
- package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
- package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/metrics/index.js +1 -1
- package/umd/es6/min/metrics/index.js.gz +0 -0
- package/umd/es6/min/metrics/with-schemas/index.js +1 -1
- package/umd/es6/min/metrics/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/index.js +1 -1
- package/umd/es6/min/persisters/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-automerge/index.js +1 -1
- package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-browser/index.js +1 -1
- package/umd/es6/min/persisters/persister-browser/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-durable-object-storage/index.js +1 -0
- package/umd/es6/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
- package/umd/es6/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
- package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-file/index.js +1 -1
- package/umd/es6/min/persisters/persister-file/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-indexed-db/index.js +1 -1
- package/umd/es6/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
- package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-partykit-client/index.js +1 -1
- package/umd/es6/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-pglite/index.js +1 -1
- package/umd/es6/min/persisters/persister-pglite/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
- package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
- package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-remote/index.js +1 -1
- package/umd/es6/min/persisters/persister-remote/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
- package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-yjs/index.js +1 -1
- package/umd/es6/min/persisters/persister-yjs/index.js.gz +0 -0
- package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/persisters/with-schemas/index.js +1 -1
- package/umd/es6/min/persisters/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/queries/index.js +1 -1
- package/umd/es6/min/queries/index.js.gz +0 -0
- package/umd/es6/min/queries/with-schemas/index.js +1 -1
- package/umd/es6/min/queries/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/relationships/index.js +1 -1
- package/umd/es6/min/relationships/index.js.gz +0 -0
- package/umd/es6/min/relationships/with-schemas/index.js +1 -1
- package/umd/es6/min/relationships/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/store/index.js +1 -1
- package/umd/es6/min/store/index.js.gz +0 -0
- package/umd/es6/min/store/with-schemas/index.js +1 -1
- package/umd/es6/min/store/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/index.js +1 -1
- package/umd/es6/min/synchronizers/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-local/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/ui-react-inspector/index.js +1 -1
- package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
- package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/with-schemas/index.js +1 -1
- package/umd/es6/min/with-schemas/index.js.gz +0 -0
- package/umd/es6/persisters/index.js +21 -9
- package/umd/es6/persisters/persister-automerge/index.js +17 -8
- package/umd/es6/persisters/persister-automerge/with-schemas/index.js +17 -8
- package/umd/es6/persisters/persister-browser/index.js +17 -8
- package/umd/es6/persisters/persister-browser/with-schemas/index.js +17 -8
- package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +21 -9
- package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-durable-object-storage/index.js +707 -0
- package/umd/es6/persisters/persister-durable-object-storage/with-schemas/index.js +707 -0
- package/umd/es6/persisters/persister-electric-sql/index.js +21 -9
- package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-expo-sqlite/index.js +21 -9
- package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-file/index.js +17 -8
- package/umd/es6/persisters/persister-file/with-schemas/index.js +17 -8
- package/umd/es6/persisters/persister-indexed-db/index.js +19 -9
- package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +19 -9
- package/umd/es6/persisters/persister-libsql/index.js +21 -9
- package/umd/es6/persisters/persister-libsql/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-partykit-client/index.js +23 -11
- package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +23 -11
- package/umd/es6/persisters/persister-pglite/index.js +19 -8
- package/umd/es6/persisters/persister-pglite/with-schemas/index.js +19 -8
- package/umd/es6/persisters/persister-postgres/index.js +19 -8
- package/umd/es6/persisters/persister-postgres/with-schemas/index.js +19 -8
- package/umd/es6/persisters/persister-powersync/index.js +21 -9
- package/umd/es6/persisters/persister-powersync/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-remote/index.js +19 -9
- package/umd/es6/persisters/persister-remote/with-schemas/index.js +19 -9
- package/umd/es6/persisters/persister-sqlite-wasm/index.js +21 -9
- package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-sqlite3/index.js +21 -9
- package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +21 -9
- package/umd/es6/persisters/persister-yjs/index.js +17 -8
- package/umd/es6/persisters/persister-yjs/with-schemas/index.js +17 -8
- package/umd/es6/persisters/with-schemas/index.js +21 -9
- package/umd/es6/queries/index.js +1 -0
- package/umd/es6/queries/with-schemas/index.js +1 -0
- package/umd/es6/relationships/index.js +5 -1
- package/umd/es6/relationships/with-schemas/index.js +5 -1
- package/umd/es6/store/index.js +5 -5
- package/umd/es6/store/with-schemas/index.js +5 -5
- package/umd/es6/synchronizers/index.js +143 -101
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +143 -101
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +143 -101
- package/umd/es6/synchronizers/synchronizer-local/index.js +146 -105
- package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +146 -105
- package/umd/es6/synchronizers/synchronizer-ws-client/index.js +163 -108
- package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +163 -108
- package/umd/es6/synchronizers/synchronizer-ws-server/index.js +180 -115
- package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +180 -115
- package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/index.js +1099 -0
- package/umd/es6/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1099 -0
- package/umd/es6/synchronizers/synchronizer-ws-server-simple/index.js +12 -12
- package/umd/es6/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +12 -12
- package/umd/es6/synchronizers/with-schemas/index.js +143 -101
- package/umd/es6/ui-react-inspector/index.js +22 -13
- package/umd/es6/ui-react-inspector/with-schemas/index.js +22 -13
- package/umd/es6/with-schemas/index.js +37 -32
- package/umd/index.js +36 -32
- package/umd/mergeable-store/index.js +36 -32
- package/umd/mergeable-store/with-schemas/index.js +36 -32
- package/umd/min/index.js +1 -1
- package/umd/min/index.js.gz +0 -0
- package/umd/min/mergeable-store/index.js +1 -1
- package/umd/min/mergeable-store/index.js.gz +0 -0
- package/umd/min/mergeable-store/with-schemas/index.js +1 -1
- package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/index.js +1 -1
- package/umd/min/persisters/index.js.gz +0 -0
- package/umd/min/persisters/persister-automerge/index.js +1 -1
- package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
- package/umd/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-browser/index.js +1 -1
- package/umd/min/persisters/persister-browser/index.js.gz +0 -0
- package/umd/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-durable-object-storage/index.js +1 -0
- package/umd/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -0
- package/umd/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-electric-sql/index.js +1 -1
- package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-file/index.js +1 -1
- package/umd/min/persisters/persister-file/index.js.gz +0 -0
- package/umd/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-indexed-db/index.js +1 -1
- package/umd/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/umd/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-libsql/index.js +1 -1
- package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
- package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-partykit-client/index.js +1 -1
- package/umd/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/umd/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-pglite/index.js +1 -1
- package/umd/min/persisters/persister-pglite/index.js.gz +0 -0
- package/umd/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-postgres/index.js +1 -1
- package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
- package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-powersync/index.js +1 -1
- package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
- package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-remote/index.js +1 -1
- package/umd/min/persisters/persister-remote/index.js.gz +0 -0
- package/umd/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-sqlite3/index.js +1 -1
- package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/persister-yjs/index.js +1 -1
- package/umd/min/persisters/persister-yjs/index.js.gz +0 -0
- package/umd/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/umd/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/umd/min/persisters/with-schemas/index.js +1 -1
- package/umd/min/persisters/with-schemas/index.js.gz +0 -0
- package/umd/min/store/index.js +1 -1
- package/umd/min/store/index.js.gz +0 -0
- package/umd/min/store/with-schemas/index.js +1 -1
- package/umd/min/store/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/index.js +1 -1
- package/umd/min/synchronizers/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-local/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -0
- package/umd/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -0
- package/umd/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/umd/min/synchronizers/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/umd/min/ui-react-inspector/index.js +1 -1
- package/umd/min/ui-react-inspector/index.js.gz +0 -0
- package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/umd/min/with-schemas/index.js +1 -1
- package/umd/min/with-schemas/index.js.gz +0 -0
- package/umd/persisters/index.js +21 -9
- package/umd/persisters/persister-automerge/index.js +17 -8
- package/umd/persisters/persister-automerge/with-schemas/index.js +17 -8
- package/umd/persisters/persister-browser/index.js +17 -8
- package/umd/persisters/persister-browser/with-schemas/index.js +17 -8
- package/umd/persisters/persister-cr-sqlite-wasm/index.js +21 -9
- package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +21 -9
- package/umd/persisters/persister-durable-object-storage/index.js +562 -0
- package/umd/persisters/persister-durable-object-storage/with-schemas/index.js +562 -0
- package/umd/persisters/persister-electric-sql/index.js +21 -9
- package/umd/persisters/persister-electric-sql/with-schemas/index.js +21 -9
- package/umd/persisters/persister-expo-sqlite/index.js +21 -9
- package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +21 -9
- package/umd/persisters/persister-file/index.js +17 -8
- package/umd/persisters/persister-file/with-schemas/index.js +17 -8
- package/umd/persisters/persister-indexed-db/index.js +19 -9
- package/umd/persisters/persister-indexed-db/with-schemas/index.js +19 -9
- package/umd/persisters/persister-libsql/index.js +21 -9
- package/umd/persisters/persister-libsql/with-schemas/index.js +21 -9
- package/umd/persisters/persister-partykit-client/index.js +18 -9
- package/umd/persisters/persister-partykit-client/with-schemas/index.js +18 -9
- package/umd/persisters/persister-pglite/index.js +19 -8
- package/umd/persisters/persister-pglite/with-schemas/index.js +19 -8
- package/umd/persisters/persister-postgres/index.js +19 -8
- package/umd/persisters/persister-postgres/with-schemas/index.js +19 -8
- package/umd/persisters/persister-powersync/index.js +21 -9
- package/umd/persisters/persister-powersync/with-schemas/index.js +21 -9
- package/umd/persisters/persister-remote/index.js +19 -9
- package/umd/persisters/persister-remote/with-schemas/index.js +19 -9
- package/umd/persisters/persister-sqlite-wasm/index.js +21 -9
- package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +21 -9
- package/umd/persisters/persister-sqlite3/index.js +21 -9
- package/umd/persisters/persister-sqlite3/with-schemas/index.js +21 -9
- package/umd/persisters/persister-yjs/index.js +17 -8
- package/umd/persisters/persister-yjs/with-schemas/index.js +17 -8
- package/umd/persisters/with-schemas/index.js +21 -9
- package/umd/store/index.js +5 -5
- package/umd/store/with-schemas/index.js +5 -5
- package/umd/synchronizers/index.js +120 -76
- package/umd/synchronizers/synchronizer-broadcast-channel/index.js +120 -76
- package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +120 -76
- package/umd/synchronizers/synchronizer-local/index.js +129 -88
- package/umd/synchronizers/synchronizer-local/with-schemas/index.js +129 -88
- package/umd/synchronizers/synchronizer-ws-client/index.js +140 -83
- package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +140 -83
- package/umd/synchronizers/synchronizer-ws-server/index.js +157 -90
- package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +157 -90
- package/umd/synchronizers/synchronizer-ws-server-durable-object/index.js +815 -0
- package/umd/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +815 -0
- package/umd/synchronizers/synchronizer-ws-server-simple/index.js +12 -12
- package/umd/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +12 -12
- package/umd/synchronizers/with-schemas/index.js +120 -76
- package/umd/ui-react-inspector/index.js +22 -13
- package/umd/ui-react-inspector/with-schemas/index.js +22 -13
- package/umd/with-schemas/index.js +36 -32
- package/with-schemas/index.js +36 -32
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The synchronizer-ws-server-durable-object module of the TinyBase project lets
|
|
3
|
+
* you create a server that facilitates synchronization between clients, running
|
|
4
|
+
* as a Cloudflare Durable Object.
|
|
5
|
+
* @see Synchronization guide
|
|
6
|
+
* @see Todo App v6 (collaboration) demo
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
* @module synchronizer-ws-server-durable-object
|
|
9
|
+
* @since v5.4.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
import type {
|
|
13
|
+
Id,
|
|
14
|
+
IdAddedOrRemoved,
|
|
15
|
+
Ids,
|
|
16
|
+
OptionalSchemas,
|
|
17
|
+
} from '../../../with-schemas/index.d.cts';
|
|
18
|
+
import type {
|
|
19
|
+
Persister,
|
|
20
|
+
Persists,
|
|
21
|
+
} from '../../../persisters/with-schemas/index.d.cts';
|
|
22
|
+
import {DurableObject} from 'cloudflare:workers';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* A WsServerDurableObject is the server component (running as a Cloudflare
|
|
26
|
+
* Durable Object) for synchronization between clients that are using
|
|
27
|
+
* WsSynchronizer instances.
|
|
28
|
+
* @category Creation
|
|
29
|
+
* @since v5.4.0
|
|
30
|
+
*/
|
|
31
|
+
export class WsServerDurableObject<
|
|
32
|
+
Schemas extends OptionalSchemas,
|
|
33
|
+
Env = unknown,
|
|
34
|
+
> extends DurableObject<Env> {
|
|
35
|
+
/**
|
|
36
|
+
* The createPersister method is used to return a persister for the
|
|
37
|
+
* Durable Object to preserve Store state for when clients are not connected.
|
|
38
|
+
*
|
|
39
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
40
|
+
*
|
|
41
|
+
* ```ts override
|
|
42
|
+
* createPersister():
|
|
43
|
+
* | Persister<Persists.MergeableStoreOnly>
|
|
44
|
+
* | Promise<Persister<Persists.MergeableStoreOnly>>
|
|
45
|
+
* | undefined;
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* This should almost certainly be a DurableObjectStoragePersister, created
|
|
49
|
+
* with the createDurableObjectStoragePersister function.
|
|
50
|
+
* @example
|
|
51
|
+
* This example creates a Persister object against a newly-created
|
|
52
|
+
* MergeableStore (within the createPersister method of a
|
|
53
|
+
* WsServerDurableObject instance) and then gets the storage reference back
|
|
54
|
+
* out again.
|
|
55
|
+
*
|
|
56
|
+
* ```js yolo
|
|
57
|
+
* import {createDurableObjectStoragePersister} from 'tinybase/persisters/persister-durable-object-storage';
|
|
58
|
+
* import {createMergeableStore} from 'tinybase';
|
|
59
|
+
*
|
|
60
|
+
* // Within the createPersister method of a WsServerDurableObject instance.
|
|
61
|
+
* const store = createMergeableStore().setTables();
|
|
62
|
+
* const persister = createDurableObjectStoragePersister(
|
|
63
|
+
* store,
|
|
64
|
+
* this.ctx.storage,
|
|
65
|
+
* );
|
|
66
|
+
*
|
|
67
|
+
* return persister;
|
|
68
|
+
* ```
|
|
69
|
+
* @category Creation
|
|
70
|
+
* @since v5.4.0
|
|
71
|
+
*/
|
|
72
|
+
createPersister():
|
|
73
|
+
| Persister<Schemas, Persists.MergeableStoreOnly>
|
|
74
|
+
| Promise<Persister<Schemas, Persists.MergeableStoreOnly>>
|
|
75
|
+
| undefined;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The getPathId method is used to get the Id of the path that is being
|
|
79
|
+
* served.
|
|
80
|
+
* @category Getter
|
|
81
|
+
* @since v5.4.0
|
|
82
|
+
*/
|
|
83
|
+
getPathId(): Id;
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* The getClientIds method is used to access a list of all the connected
|
|
87
|
+
* clients on a given path.
|
|
88
|
+
*
|
|
89
|
+
* Note that if you call this method from the onClientId method as a client is
|
|
90
|
+
* getting removed, it will still be returned in the list of client Ids.
|
|
91
|
+
* @category Getter
|
|
92
|
+
* @since v5.4.0
|
|
93
|
+
*/
|
|
94
|
+
getClientIds(pathId: Id): Ids;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* The onPathId method is called when the first client connects to, or the
|
|
98
|
+
* last client disconnects from, the server with a given path Id.
|
|
99
|
+
* @category Event
|
|
100
|
+
* @since v5.4.0
|
|
101
|
+
*/
|
|
102
|
+
onPathId(pathId: Id, addedOrRemoved: IdAddedOrRemoved): void;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* The onClientId method is called when a client connects to, or disconnects
|
|
106
|
+
* from, the server.
|
|
107
|
+
* @category Event
|
|
108
|
+
* @since v5.4.0
|
|
109
|
+
*/
|
|
110
|
+
onClientId(pathId: Id, clientId: Id, addedOrRemoved: IdAddedOrRemoved): void;
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* The onMessage method is called when a message is handled by the server.
|
|
114
|
+
*
|
|
115
|
+
* Note that this method is potentially called very frequently, and should be
|
|
116
|
+
* performant. A pathId is not passed as an argument, since it has a small
|
|
117
|
+
* cost to provide by default. You can use the getPathId method yourself if
|
|
118
|
+
* that information is needed.
|
|
119
|
+
* @category Event
|
|
120
|
+
* @since v5.4.0
|
|
121
|
+
*/
|
|
122
|
+
onMessage(_fromClientId: Id, _toClientId: Id, _remainder: string): void;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* The getWsServerDurableObjectFetch function returns a convenient fetch handler
|
|
127
|
+
* for a Cloudflare worker to route requests to a WsServerDurableObject for the
|
|
128
|
+
* given namespace.
|
|
129
|
+
* @category Creation
|
|
130
|
+
* @since v5.4.0
|
|
131
|
+
*/
|
|
132
|
+
export function getWsServerDurableObjectFetch<
|
|
133
|
+
Schemas extends OptionalSchemas,
|
|
134
|
+
Namespace extends string,
|
|
135
|
+
>(
|
|
136
|
+
namespace: Namespace,
|
|
137
|
+
): (
|
|
138
|
+
request: Request,
|
|
139
|
+
env: {
|
|
140
|
+
[namespace in Namespace]: DurableObjectNamespace<
|
|
141
|
+
WsServerDurableObject<Schemas>
|
|
142
|
+
>;
|
|
143
|
+
},
|
|
144
|
+
) => Response;
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The synchronizer-ws-server-durable-object module of the TinyBase project lets
|
|
3
|
+
* you create a server that facilitates synchronization between clients, running
|
|
4
|
+
* as a Cloudflare Durable Object.
|
|
5
|
+
* @see Synchronization guide
|
|
6
|
+
* @see Todo App v6 (collaboration) demo
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
* @module synchronizer-ws-server-durable-object
|
|
9
|
+
* @since v5.4.0
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
import type {
|
|
13
|
+
Id,
|
|
14
|
+
IdAddedOrRemoved,
|
|
15
|
+
Ids,
|
|
16
|
+
OptionalSchemas,
|
|
17
|
+
} from '../../../with-schemas/index.d.ts';
|
|
18
|
+
import type {
|
|
19
|
+
Persister,
|
|
20
|
+
Persists,
|
|
21
|
+
} from '../../../persisters/with-schemas/index.d.ts';
|
|
22
|
+
import {DurableObject} from 'cloudflare:workers';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* A WsServerDurableObject is the server component (running as a Cloudflare
|
|
26
|
+
* Durable Object) for synchronization between clients that are using
|
|
27
|
+
* WsSynchronizer instances.
|
|
28
|
+
* @category Creation
|
|
29
|
+
* @since v5.4.0
|
|
30
|
+
*/
|
|
31
|
+
export class WsServerDurableObject<
|
|
32
|
+
Schemas extends OptionalSchemas,
|
|
33
|
+
Env = unknown,
|
|
34
|
+
> extends DurableObject<Env> {
|
|
35
|
+
/**
|
|
36
|
+
* The createPersister method is used to return a persister for the
|
|
37
|
+
* Durable Object to preserve Store state for when clients are not connected.
|
|
38
|
+
*
|
|
39
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
40
|
+
*
|
|
41
|
+
* ```ts override
|
|
42
|
+
* createPersister():
|
|
43
|
+
* | Persister<Persists.MergeableStoreOnly>
|
|
44
|
+
* | Promise<Persister<Persists.MergeableStoreOnly>>
|
|
45
|
+
* | undefined;
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* This should almost certainly be a DurableObjectStoragePersister, created
|
|
49
|
+
* with the createDurableObjectStoragePersister function.
|
|
50
|
+
* @example
|
|
51
|
+
* This example creates a Persister object against a newly-created
|
|
52
|
+
* MergeableStore (within the createPersister method of a
|
|
53
|
+
* WsServerDurableObject instance) and then gets the storage reference back
|
|
54
|
+
* out again.
|
|
55
|
+
*
|
|
56
|
+
* ```js yolo
|
|
57
|
+
* import {createDurableObjectStoragePersister} from 'tinybase/persisters/persister-durable-object-storage';
|
|
58
|
+
* import {createMergeableStore} from 'tinybase';
|
|
59
|
+
*
|
|
60
|
+
* // Within the createPersister method of a WsServerDurableObject instance.
|
|
61
|
+
* const store = createMergeableStore().setTables();
|
|
62
|
+
* const persister = createDurableObjectStoragePersister(
|
|
63
|
+
* store,
|
|
64
|
+
* this.ctx.storage,
|
|
65
|
+
* );
|
|
66
|
+
*
|
|
67
|
+
* return persister;
|
|
68
|
+
* ```
|
|
69
|
+
* @category Creation
|
|
70
|
+
* @since v5.4.0
|
|
71
|
+
*/
|
|
72
|
+
createPersister():
|
|
73
|
+
| Persister<Schemas, Persists.MergeableStoreOnly>
|
|
74
|
+
| Promise<Persister<Schemas, Persists.MergeableStoreOnly>>
|
|
75
|
+
| undefined;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The getPathId method is used to get the Id of the path that is being
|
|
79
|
+
* served.
|
|
80
|
+
* @category Getter
|
|
81
|
+
* @since v5.4.0
|
|
82
|
+
*/
|
|
83
|
+
getPathId(): Id;
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* The getClientIds method is used to access a list of all the connected
|
|
87
|
+
* clients on a given path.
|
|
88
|
+
*
|
|
89
|
+
* Note that if you call this method from the onClientId method as a client is
|
|
90
|
+
* getting removed, it will still be returned in the list of client Ids.
|
|
91
|
+
* @category Getter
|
|
92
|
+
* @since v5.4.0
|
|
93
|
+
*/
|
|
94
|
+
getClientIds(pathId: Id): Ids;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* The onPathId method is called when the first client connects to, or the
|
|
98
|
+
* last client disconnects from, the server with a given path Id.
|
|
99
|
+
* @category Event
|
|
100
|
+
* @since v5.4.0
|
|
101
|
+
*/
|
|
102
|
+
onPathId(pathId: Id, addedOrRemoved: IdAddedOrRemoved): void;
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* The onClientId method is called when a client connects to, or disconnects
|
|
106
|
+
* from, the server.
|
|
107
|
+
* @category Event
|
|
108
|
+
* @since v5.4.0
|
|
109
|
+
*/
|
|
110
|
+
onClientId(pathId: Id, clientId: Id, addedOrRemoved: IdAddedOrRemoved): void;
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* The onMessage method is called when a message is handled by the server.
|
|
114
|
+
*
|
|
115
|
+
* Note that this method is potentially called very frequently, and should be
|
|
116
|
+
* performant. A pathId is not passed as an argument, since it has a small
|
|
117
|
+
* cost to provide by default. You can use the getPathId method yourself if
|
|
118
|
+
* that information is needed.
|
|
119
|
+
* @category Event
|
|
120
|
+
* @since v5.4.0
|
|
121
|
+
*/
|
|
122
|
+
onMessage(_fromClientId: Id, _toClientId: Id, _remainder: string): void;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* The getWsServerDurableObjectFetch function returns a convenient fetch handler
|
|
127
|
+
* for a Cloudflare worker to route requests to a WsServerDurableObject for the
|
|
128
|
+
* given namespace.
|
|
129
|
+
* @category Creation
|
|
130
|
+
* @since v5.4.0
|
|
131
|
+
*/
|
|
132
|
+
export function getWsServerDurableObjectFetch<
|
|
133
|
+
Schemas extends OptionalSchemas,
|
|
134
|
+
Namespace extends string,
|
|
135
|
+
>(
|
|
136
|
+
namespace: Namespace,
|
|
137
|
+
): (
|
|
138
|
+
request: Request,
|
|
139
|
+
env: {
|
|
140
|
+
[namespace in Namespace]: DurableObjectNamespace<
|
|
141
|
+
WsServerDurableObject<Schemas>
|
|
142
|
+
>;
|
|
143
|
+
},
|
|
144
|
+
) => Response;
|
package/cjs/es6/index.cjs
CHANGED
|
@@ -1650,6 +1650,7 @@ const createQueries = getCreateFunction((store) => {
|
|
|
1650
1650
|
};
|
|
1651
1651
|
const getListenerStats = () => {
|
|
1652
1652
|
const _a = resultStore.getListenerStats(),
|
|
1653
|
+
{tables: _1, tableIds: _2, transaction: _3} = _a,
|
|
1653
1654
|
stats = __objRest(_a, ['tables', 'tableIds', 'transaction']);
|
|
1654
1655
|
return stats;
|
|
1655
1656
|
};
|
|
@@ -1913,9 +1914,10 @@ const getHash = (value) => {
|
|
|
1913
1914
|
return hash >>> 0;
|
|
1914
1915
|
};
|
|
1915
1916
|
|
|
1917
|
+
const stampClone = ([value, time]) => stampNew(value, time);
|
|
1916
1918
|
const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
|
|
1917
|
-
const
|
|
1918
|
-
const
|
|
1919
|
+
const stampNew = (value, time) => (time ? [value, time] : [value]);
|
|
1920
|
+
const stampNewWithHash = (value, time, hash) => [value, time, hash];
|
|
1919
1921
|
const getStampHash = (stamp) => stamp[2];
|
|
1920
1922
|
const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
|
|
1921
1923
|
const replaceTimeHash = (oldTime, newTime) =>
|
|
@@ -1932,22 +1934,20 @@ const getLatestTime = (time1, time2) => {
|
|
|
1932
1934
|
: ''
|
|
1933
1935
|
);
|
|
1934
1936
|
};
|
|
1935
|
-
const stampUpdate = (stamp,
|
|
1936
|
-
stamp[2] = hash >>> 0;
|
|
1937
|
+
const stampUpdate = (stamp, time, hash) => {
|
|
1937
1938
|
if (time > stamp[1]) {
|
|
1938
1939
|
stamp[1] = time;
|
|
1939
1940
|
}
|
|
1941
|
+
stamp[2] = hash >>> 0;
|
|
1940
1942
|
};
|
|
1941
|
-
const stampNewObj = (time = EMPTY_STRING) =>
|
|
1943
|
+
const stampNewObj = (time = EMPTY_STRING) => stampNew(objNew(), time);
|
|
1942
1944
|
const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
|
|
1943
1945
|
const stampMapToObjWithHash = (
|
|
1944
1946
|
[map, time, hash],
|
|
1945
1947
|
mapper = stampCloneWithHash,
|
|
1946
1948
|
) => [mapToObj(map, mapper), time, hash];
|
|
1947
|
-
const stampMapToObjWithoutHash = (
|
|
1948
|
-
|
|
1949
|
-
mapper = stampCloneWithoutHash,
|
|
1950
|
-
) => newStamp(mapToObj(map, mapper), time);
|
|
1949
|
+
const stampMapToObjWithoutHash = ([map, time], mapper = stampClone) =>
|
|
1950
|
+
stampNew(mapToObj(map, mapper), time);
|
|
1951
1951
|
const stampValidate = (stamp, validateThing) =>
|
|
1952
1952
|
isArray(stamp) &&
|
|
1953
1953
|
size(stamp) == 3 &&
|
|
@@ -2270,11 +2270,11 @@ const createStore = () => {
|
|
|
2270
2270
|
};
|
|
2271
2271
|
const getNewRowId = (tableId, reuse) => {
|
|
2272
2272
|
const [getId] = mapGet(tablePoolFunctions, tableId);
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
}
|
|
2277
|
-
return
|
|
2273
|
+
let rowId;
|
|
2274
|
+
do {
|
|
2275
|
+
rowId = getId(reuse);
|
|
2276
|
+
} while (collHas(mapGet(tablesMap, tableId), rowId));
|
|
2277
|
+
return rowId;
|
|
2278
2278
|
};
|
|
2279
2279
|
const getOrCreateTable = (tableId) => {
|
|
2280
2280
|
var _a;
|
|
@@ -3509,7 +3509,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3509
3509
|
tableHash ^= isContent
|
|
3510
3510
|
? 0
|
|
3511
3511
|
: replaceTimeHash(oldTableTime, incomingTableTime);
|
|
3512
|
-
stampUpdate(tableStampMap,
|
|
3512
|
+
stampUpdate(tableStampMap, incomingTableTime, tableHash);
|
|
3513
3513
|
tablesHash ^= isContent
|
|
3514
3514
|
? 0
|
|
3515
3515
|
: (oldTableHash ? hashIdAndHash(tableId, oldTableHash) : 0) ^
|
|
@@ -3520,7 +3520,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3520
3520
|
tablesHash ^= isContent
|
|
3521
3521
|
? 0
|
|
3522
3522
|
: replaceTimeHash(oldTablesTime, incomingTablesTime);
|
|
3523
|
-
stampUpdate(tablesStampMap,
|
|
3523
|
+
stampUpdate(tablesStampMap, incomingTablesTime, tablesHash);
|
|
3524
3524
|
const [valuesTime] = mergeCellsOrValues(
|
|
3525
3525
|
values,
|
|
3526
3526
|
valuesStampMap,
|
|
@@ -3556,6 +3556,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3556
3556
|
if (!oldThingTime || thingTime > oldThingTime) {
|
|
3557
3557
|
stampUpdate(
|
|
3558
3558
|
thingStampMap,
|
|
3559
|
+
thingTime,
|
|
3559
3560
|
isContent
|
|
3560
3561
|
? incomingThingHash
|
|
3561
3562
|
: getHash(
|
|
@@ -3563,7 +3564,6 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3563
3564
|
':' +
|
|
3564
3565
|
thingTime,
|
|
3565
3566
|
),
|
|
3566
|
-
thingTime,
|
|
3567
3567
|
);
|
|
3568
3568
|
thingStampMap[0] = thing;
|
|
3569
3569
|
thingsChanges[thingId] = thing;
|
|
@@ -3578,7 +3578,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3578
3578
|
thingsHash ^= isContent
|
|
3579
3579
|
? 0
|
|
3580
3580
|
: replaceTimeHash(oldThingsTime, incomingThingsTime);
|
|
3581
|
-
stampUpdate(thingsStampMap,
|
|
3581
|
+
stampUpdate(thingsStampMap, incomingThingsTime, thingsHash);
|
|
3582
3582
|
return [thingsTime, oldThingsHash, thingsStampMap[2]];
|
|
3583
3583
|
};
|
|
3584
3584
|
const preStartTransaction = () => {};
|
|
@@ -3742,7 +3742,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3742
3742
|
),
|
|
3743
3743
|
),
|
|
3744
3744
|
);
|
|
3745
|
-
return
|
|
3745
|
+
return stampNew(tablesObj, tablesTime);
|
|
3746
3746
|
};
|
|
3747
3747
|
const getMergeableValueHashes = () =>
|
|
3748
3748
|
mapToObj(contentStampMap[1][0], getStampHash);
|
|
@@ -3750,11 +3750,11 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3750
3750
|
const [, [valueStampMaps, valuesTime]] = contentStampMap;
|
|
3751
3751
|
const values = mapToObj(
|
|
3752
3752
|
valueStampMaps,
|
|
3753
|
-
|
|
3753
|
+
stampClone,
|
|
3754
3754
|
([, , hash], valueId) =>
|
|
3755
3755
|
hash == (otherValueHashes == null ? void 0 : otherValueHashes[valueId]),
|
|
3756
3756
|
);
|
|
3757
|
-
return
|
|
3757
|
+
return stampNew(values, valuesTime);
|
|
3758
3758
|
};
|
|
3759
3759
|
const setMergeableContent = (mergeableContent) =>
|
|
3760
3760
|
disableListeningToRawStoreChanges(() =>
|
|
@@ -3774,31 +3774,35 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3774
3774
|
});
|
|
3775
3775
|
return mergeableStore;
|
|
3776
3776
|
};
|
|
3777
|
-
const getTransactionMergeableChanges = () => {
|
|
3778
|
-
const [
|
|
3779
|
-
|
|
3777
|
+
const getTransactionMergeableChanges = (withHashes = false) => {
|
|
3778
|
+
const [
|
|
3779
|
+
[tableStampMaps, tablesTime, tablesHash],
|
|
3780
|
+
[valueStampMaps, valuesTime, valuesHash],
|
|
3781
|
+
] = contentStampMap;
|
|
3782
|
+
const newStamp = withHashes ? stampNewWithHash : stampNew;
|
|
3780
3783
|
const tablesObj = {};
|
|
3781
3784
|
collForEach(touchedCells, (touchedTable, tableId) =>
|
|
3782
3785
|
ifNotUndefined(
|
|
3783
3786
|
mapGet(tableStampMaps, tableId),
|
|
3784
|
-
([rowStampMaps, tableTime]) => {
|
|
3787
|
+
([rowStampMaps, tableTime, tableHash]) => {
|
|
3785
3788
|
const tableObj = {};
|
|
3786
3789
|
collForEach(touchedTable, (touchedRow, rowId) =>
|
|
3787
3790
|
ifNotUndefined(
|
|
3788
3791
|
mapGet(rowStampMaps, rowId),
|
|
3789
|
-
([cellStampMaps, rowTime]) => {
|
|
3792
|
+
([cellStampMaps, rowTime, rowHash]) => {
|
|
3790
3793
|
const rowObj = {};
|
|
3791
3794
|
collForEach(touchedRow, (cellId) => {
|
|
3792
3795
|
ifNotUndefined(
|
|
3793
3796
|
mapGet(cellStampMaps, cellId),
|
|
3794
|
-
([cell, time]) =>
|
|
3797
|
+
([cell, time, hash]) =>
|
|
3798
|
+
(rowObj[cellId] = newStamp(cell, time, hash)),
|
|
3795
3799
|
);
|
|
3796
3800
|
});
|
|
3797
|
-
tableObj[rowId] = newStamp(rowObj, rowTime);
|
|
3801
|
+
tableObj[rowId] = newStamp(rowObj, rowTime, rowHash);
|
|
3798
3802
|
},
|
|
3799
3803
|
),
|
|
3800
3804
|
);
|
|
3801
|
-
tablesObj[tableId] = newStamp(tableObj, tableTime);
|
|
3805
|
+
tablesObj[tableId] = newStamp(tableObj, tableTime, tableHash);
|
|
3802
3806
|
},
|
|
3803
3807
|
),
|
|
3804
3808
|
);
|
|
@@ -3806,12 +3810,13 @@ const createMergeableStore = (uniqueId) => {
|
|
|
3806
3810
|
collForEach(touchedValues, (valueId) =>
|
|
3807
3811
|
ifNotUndefined(
|
|
3808
3812
|
mapGet(valueStampMaps, valueId),
|
|
3809
|
-
([value, time]) =>
|
|
3813
|
+
([value, time, hash]) =>
|
|
3814
|
+
(valuesObj[valueId] = newStamp(value, time, hash)),
|
|
3810
3815
|
),
|
|
3811
3816
|
);
|
|
3812
3817
|
return [
|
|
3813
|
-
newStamp(tablesObj, tablesTime),
|
|
3814
|
-
newStamp(valuesObj, valuesTime),
|
|
3818
|
+
newStamp(tablesObj, tablesTime, tablesHash),
|
|
3819
|
+
newStamp(valuesObj, valuesTime, valuesHash),
|
|
3815
3820
|
1,
|
|
3816
3821
|
];
|
|
3817
3822
|
};
|
|
@@ -7,7 +7,7 @@ const id = (key) => EMPTY_STRING + key;
|
|
|
7
7
|
|
|
8
8
|
const isUndefined = (thing) => thing == void 0;
|
|
9
9
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
10
|
-
isUndefined(value) ? void 0 : then(value);
|
|
10
|
+
isUndefined(value) ? (otherwise == null ? void 0 : otherwise()) : then(value);
|
|
11
11
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
12
12
|
const isArray = (thing) => Array.isArray(thing);
|
|
13
13
|
const size = (arrayOrString) => arrayOrString.length;
|
|
@@ -7,7 +7,7 @@ const id = (key) => EMPTY_STRING + key;
|
|
|
7
7
|
|
|
8
8
|
const isUndefined = (thing) => thing == void 0;
|
|
9
9
|
const ifNotUndefined = (value, then, otherwise) =>
|
|
10
|
-
isUndefined(value) ? void 0 : then(value);
|
|
10
|
+
isUndefined(value) ? (otherwise == null ? void 0 : otherwise()) : then(value);
|
|
11
11
|
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
12
12
|
const isArray = (thing) => Array.isArray(thing);
|
|
13
13
|
const size = (arrayOrString) => arrayOrString.length;
|
|
@@ -253,9 +253,10 @@ const getHash = (value) => {
|
|
|
253
253
|
return hash >>> 0;
|
|
254
254
|
};
|
|
255
255
|
|
|
256
|
+
const stampClone = ([value, time]) => stampNew(value, time);
|
|
256
257
|
const stampCloneWithHash = ([value, time, hash]) => [value, time, hash];
|
|
257
|
-
const
|
|
258
|
-
const
|
|
258
|
+
const stampNew = (value, time) => (time ? [value, time] : [value]);
|
|
259
|
+
const stampNewWithHash = (value, time, hash) => [value, time, hash];
|
|
259
260
|
const getStampHash = (stamp) => stamp[2];
|
|
260
261
|
const hashIdAndHash = (id, hash) => getHash(id + ':' + hash);
|
|
261
262
|
const replaceTimeHash = (oldTime, newTime) =>
|
|
@@ -272,22 +273,20 @@ const getLatestTime = (time1, time2) => {
|
|
|
272
273
|
: ''
|
|
273
274
|
);
|
|
274
275
|
};
|
|
275
|
-
const stampUpdate = (stamp,
|
|
276
|
-
stamp[2] = hash >>> 0;
|
|
276
|
+
const stampUpdate = (stamp, time, hash) => {
|
|
277
277
|
if (time > stamp[1]) {
|
|
278
278
|
stamp[1] = time;
|
|
279
279
|
}
|
|
280
|
+
stamp[2] = hash >>> 0;
|
|
280
281
|
};
|
|
281
|
-
const stampNewObj = (time = EMPTY_STRING) =>
|
|
282
|
+
const stampNewObj = (time = EMPTY_STRING) => stampNew(objNew(), time);
|
|
282
283
|
const stampNewMap = (time = EMPTY_STRING) => [mapNew(), time, 0];
|
|
283
284
|
const stampMapToObjWithHash = (
|
|
284
285
|
[map, time, hash],
|
|
285
286
|
mapper = stampCloneWithHash,
|
|
286
287
|
) => [mapToObj(map, mapper), time, hash];
|
|
287
|
-
const stampMapToObjWithoutHash = (
|
|
288
|
-
|
|
289
|
-
mapper = stampCloneWithoutHash,
|
|
290
|
-
) => newStamp(mapToObj(map, mapper), time);
|
|
288
|
+
const stampMapToObjWithoutHash = ([map, time], mapper = stampClone) =>
|
|
289
|
+
stampNew(mapToObj(map, mapper), time);
|
|
291
290
|
const stampValidate = (stamp, validateThing) =>
|
|
292
291
|
isArray(stamp) &&
|
|
293
292
|
size(stamp) == 3 &&
|
|
@@ -764,11 +763,11 @@ const createStore = () => {
|
|
|
764
763
|
};
|
|
765
764
|
const getNewRowId = (tableId, reuse) => {
|
|
766
765
|
const [getId] = mapGet(tablePoolFunctions, tableId);
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
}
|
|
771
|
-
return
|
|
766
|
+
let rowId;
|
|
767
|
+
do {
|
|
768
|
+
rowId = getId(reuse);
|
|
769
|
+
} while (collHas(mapGet(tablesMap, tableId), rowId));
|
|
770
|
+
return rowId;
|
|
772
771
|
};
|
|
773
772
|
const getOrCreateTable = (tableId) => {
|
|
774
773
|
var _a;
|
|
@@ -2003,7 +2002,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2003
2002
|
tableHash ^= isContent
|
|
2004
2003
|
? 0
|
|
2005
2004
|
: replaceTimeHash(oldTableTime, incomingTableTime);
|
|
2006
|
-
stampUpdate(tableStampMap,
|
|
2005
|
+
stampUpdate(tableStampMap, incomingTableTime, tableHash);
|
|
2007
2006
|
tablesHash ^= isContent
|
|
2008
2007
|
? 0
|
|
2009
2008
|
: (oldTableHash ? hashIdAndHash(tableId, oldTableHash) : 0) ^
|
|
@@ -2014,7 +2013,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2014
2013
|
tablesHash ^= isContent
|
|
2015
2014
|
? 0
|
|
2016
2015
|
: replaceTimeHash(oldTablesTime, incomingTablesTime);
|
|
2017
|
-
stampUpdate(tablesStampMap,
|
|
2016
|
+
stampUpdate(tablesStampMap, incomingTablesTime, tablesHash);
|
|
2018
2017
|
const [valuesTime] = mergeCellsOrValues(
|
|
2019
2018
|
values,
|
|
2020
2019
|
valuesStampMap,
|
|
@@ -2050,6 +2049,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2050
2049
|
if (!oldThingTime || thingTime > oldThingTime) {
|
|
2051
2050
|
stampUpdate(
|
|
2052
2051
|
thingStampMap,
|
|
2052
|
+
thingTime,
|
|
2053
2053
|
isContent
|
|
2054
2054
|
? incomingThingHash
|
|
2055
2055
|
: getHash(
|
|
@@ -2057,7 +2057,6 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2057
2057
|
':' +
|
|
2058
2058
|
thingTime,
|
|
2059
2059
|
),
|
|
2060
|
-
thingTime,
|
|
2061
2060
|
);
|
|
2062
2061
|
thingStampMap[0] = thing;
|
|
2063
2062
|
thingsChanges[thingId] = thing;
|
|
@@ -2072,7 +2071,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2072
2071
|
thingsHash ^= isContent
|
|
2073
2072
|
? 0
|
|
2074
2073
|
: replaceTimeHash(oldThingsTime, incomingThingsTime);
|
|
2075
|
-
stampUpdate(thingsStampMap,
|
|
2074
|
+
stampUpdate(thingsStampMap, incomingThingsTime, thingsHash);
|
|
2076
2075
|
return [thingsTime, oldThingsHash, thingsStampMap[2]];
|
|
2077
2076
|
};
|
|
2078
2077
|
const preStartTransaction = () => {};
|
|
@@ -2236,7 +2235,7 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2236
2235
|
),
|
|
2237
2236
|
),
|
|
2238
2237
|
);
|
|
2239
|
-
return
|
|
2238
|
+
return stampNew(tablesObj, tablesTime);
|
|
2240
2239
|
};
|
|
2241
2240
|
const getMergeableValueHashes = () =>
|
|
2242
2241
|
mapToObj(contentStampMap[1][0], getStampHash);
|
|
@@ -2244,11 +2243,11 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2244
2243
|
const [, [valueStampMaps, valuesTime]] = contentStampMap;
|
|
2245
2244
|
const values = mapToObj(
|
|
2246
2245
|
valueStampMaps,
|
|
2247
|
-
|
|
2246
|
+
stampClone,
|
|
2248
2247
|
([, , hash], valueId) =>
|
|
2249
2248
|
hash == (otherValueHashes == null ? void 0 : otherValueHashes[valueId]),
|
|
2250
2249
|
);
|
|
2251
|
-
return
|
|
2250
|
+
return stampNew(values, valuesTime);
|
|
2252
2251
|
};
|
|
2253
2252
|
const setMergeableContent = (mergeableContent) =>
|
|
2254
2253
|
disableListeningToRawStoreChanges(() =>
|
|
@@ -2268,31 +2267,35 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2268
2267
|
});
|
|
2269
2268
|
return mergeableStore;
|
|
2270
2269
|
};
|
|
2271
|
-
const getTransactionMergeableChanges = () => {
|
|
2272
|
-
const [
|
|
2273
|
-
|
|
2270
|
+
const getTransactionMergeableChanges = (withHashes = false) => {
|
|
2271
|
+
const [
|
|
2272
|
+
[tableStampMaps, tablesTime, tablesHash],
|
|
2273
|
+
[valueStampMaps, valuesTime, valuesHash],
|
|
2274
|
+
] = contentStampMap;
|
|
2275
|
+
const newStamp = withHashes ? stampNewWithHash : stampNew;
|
|
2274
2276
|
const tablesObj = {};
|
|
2275
2277
|
collForEach(touchedCells, (touchedTable, tableId) =>
|
|
2276
2278
|
ifNotUndefined(
|
|
2277
2279
|
mapGet(tableStampMaps, tableId),
|
|
2278
|
-
([rowStampMaps, tableTime]) => {
|
|
2280
|
+
([rowStampMaps, tableTime, tableHash]) => {
|
|
2279
2281
|
const tableObj = {};
|
|
2280
2282
|
collForEach(touchedTable, (touchedRow, rowId) =>
|
|
2281
2283
|
ifNotUndefined(
|
|
2282
2284
|
mapGet(rowStampMaps, rowId),
|
|
2283
|
-
([cellStampMaps, rowTime]) => {
|
|
2285
|
+
([cellStampMaps, rowTime, rowHash]) => {
|
|
2284
2286
|
const rowObj = {};
|
|
2285
2287
|
collForEach(touchedRow, (cellId) => {
|
|
2286
2288
|
ifNotUndefined(
|
|
2287
2289
|
mapGet(cellStampMaps, cellId),
|
|
2288
|
-
([cell, time]) =>
|
|
2290
|
+
([cell, time, hash]) =>
|
|
2291
|
+
(rowObj[cellId] = newStamp(cell, time, hash)),
|
|
2289
2292
|
);
|
|
2290
2293
|
});
|
|
2291
|
-
tableObj[rowId] = newStamp(rowObj, rowTime);
|
|
2294
|
+
tableObj[rowId] = newStamp(rowObj, rowTime, rowHash);
|
|
2292
2295
|
},
|
|
2293
2296
|
),
|
|
2294
2297
|
);
|
|
2295
|
-
tablesObj[tableId] = newStamp(tableObj, tableTime);
|
|
2298
|
+
tablesObj[tableId] = newStamp(tableObj, tableTime, tableHash);
|
|
2296
2299
|
},
|
|
2297
2300
|
),
|
|
2298
2301
|
);
|
|
@@ -2300,12 +2303,13 @@ const createMergeableStore = (uniqueId) => {
|
|
|
2300
2303
|
collForEach(touchedValues, (valueId) =>
|
|
2301
2304
|
ifNotUndefined(
|
|
2302
2305
|
mapGet(valueStampMaps, valueId),
|
|
2303
|
-
([value, time]) =>
|
|
2306
|
+
([value, time, hash]) =>
|
|
2307
|
+
(valuesObj[valueId] = newStamp(value, time, hash)),
|
|
2304
2308
|
),
|
|
2305
2309
|
);
|
|
2306
2310
|
return [
|
|
2307
|
-
newStamp(tablesObj, tablesTime),
|
|
2308
|
-
newStamp(valuesObj, valuesTime),
|
|
2311
|
+
newStamp(tablesObj, tablesTime, tablesHash),
|
|
2312
|
+
newStamp(valuesObj, valuesTime, valuesHash),
|
|
2309
2313
|
1,
|
|
2310
2314
|
];
|
|
2311
2315
|
};
|