tinybase 5.0.0-beta.25 → 5.0.0-beta.27
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/checkpoints/index.d.cts +4 -6
- package/@types/checkpoints/index.d.ts +4 -6
- package/@types/checkpoints/with-schemas/index.d.cts +4 -6
- package/@types/checkpoints/with-schemas/index.d.ts +4 -6
- package/@types/common/index.d.cts +1 -1
- package/@types/common/index.d.ts +1 -1
- package/@types/common/with-schemas/index.d.cts +1 -1
- package/@types/common/with-schemas/index.d.ts +1 -1
- package/@types/indexes/index.d.cts +3 -6
- package/@types/indexes/index.d.ts +3 -6
- package/@types/indexes/with-schemas/index.d.cts +3 -6
- package/@types/indexes/with-schemas/index.d.ts +3 -6
- package/@types/mergeable-store/index.d.cts +767 -22
- package/@types/mergeable-store/index.d.ts +767 -22
- package/@types/mergeable-store/with-schemas/index.d.cts +863 -22
- package/@types/mergeable-store/with-schemas/index.d.ts +863 -22
- package/@types/metrics/index.d.cts +3 -6
- package/@types/metrics/index.d.ts +3 -6
- package/@types/metrics/with-schemas/index.d.cts +3 -6
- package/@types/metrics/with-schemas/index.d.ts +3 -6
- package/@types/persisters/index.d.cts +221 -82
- package/@types/persisters/index.d.ts +221 -82
- package/@types/persisters/persister-automerge/index.d.cts +11 -7
- package/@types/persisters/persister-automerge/index.d.ts +11 -7
- package/@types/persisters/persister-automerge/with-schemas/index.d.cts +11 -7
- package/@types/persisters/persister-automerge/with-schemas/index.d.ts +11 -7
- package/@types/persisters/persister-browser/index.d.cts +25 -16
- package/@types/persisters/persister-browser/index.d.ts +25 -16
- package/@types/persisters/persister-browser/with-schemas/index.d.cts +23 -16
- package/@types/persisters/persister-browser/with-schemas/index.d.ts +23 -16
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +10 -7
- package/@types/persisters/persister-electric-sql/index.d.cts +10 -7
- package/@types/persisters/persister-electric-sql/index.d.ts +10 -7
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +10 -7
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +10 -7
- package/@types/persisters/persister-expo-sqlite/index.d.cts +15 -10
- package/@types/persisters/persister-expo-sqlite/index.d.ts +15 -10
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +14 -9
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +14 -9
- package/@types/persisters/persister-file/index.d.cts +13 -8
- package/@types/persisters/persister-file/index.d.ts +13 -8
- package/@types/persisters/persister-file/with-schemas/index.d.cts +12 -8
- package/@types/persisters/persister-file/with-schemas/index.d.ts +12 -8
- package/@types/persisters/persister-indexed-db/index.d.cts +10 -6
- package/@types/persisters/persister-indexed-db/index.d.ts +10 -6
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +10 -6
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +10 -6
- package/@types/persisters/persister-libsql/index.d.cts +10 -6
- package/@types/persisters/persister-libsql/index.d.ts +10 -6
- package/@types/persisters/persister-libsql/with-schemas/index.d.cts +10 -6
- package/@types/persisters/persister-libsql/with-schemas/index.d.ts +10 -6
- package/@types/persisters/persister-partykit-client/index.d.cts +14 -9
- package/@types/persisters/persister-partykit-client/index.d.ts +14 -9
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +14 -9
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +14 -9
- package/@types/persisters/persister-partykit-server/index.d.cts +3 -3
- package/@types/persisters/persister-partykit-server/index.d.ts +3 -3
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.cts +3 -3
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +3 -3
- package/@types/persisters/persister-powersync/index.d.cts +12 -7
- package/@types/persisters/persister-powersync/index.d.ts +12 -7
- package/@types/persisters/persister-powersync/with-schemas/index.d.cts +12 -7
- package/@types/persisters/persister-powersync/with-schemas/index.d.ts +12 -7
- package/@types/persisters/persister-remote/index.d.cts +11 -8
- package/@types/persisters/persister-remote/index.d.ts +11 -8
- package/@types/persisters/persister-remote/with-schemas/index.d.cts +11 -8
- package/@types/persisters/persister-remote/with-schemas/index.d.ts +11 -8
- package/@types/persisters/persister-sqlite-wasm/index.d.cts +15 -9
- package/@types/persisters/persister-sqlite-wasm/index.d.ts +15 -9
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +14 -8
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +14 -8
- package/@types/persisters/persister-sqlite3/index.d.cts +15 -9
- package/@types/persisters/persister-sqlite3/index.d.ts +15 -9
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +14 -8
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +14 -8
- package/@types/persisters/persister-yjs/index.d.cts +11 -6
- package/@types/persisters/persister-yjs/index.d.ts +11 -6
- package/@types/persisters/persister-yjs/with-schemas/index.d.cts +11 -6
- package/@types/persisters/persister-yjs/with-schemas/index.d.ts +11 -6
- package/@types/persisters/with-schemas/index.d.cts +266 -94
- package/@types/persisters/with-schemas/index.d.ts +266 -94
- package/@types/queries/index.d.cts +6 -10
- package/@types/queries/index.d.ts +6 -10
- package/@types/queries/with-schemas/index.d.cts +6 -10
- package/@types/queries/with-schemas/index.d.ts +6 -10
- package/@types/relationships/index.d.cts +3 -5
- package/@types/relationships/index.d.ts +3 -5
- package/@types/relationships/with-schemas/index.d.cts +3 -5
- package/@types/relationships/with-schemas/index.d.ts +3 -5
- package/@types/store/index.d.cts +24 -23
- package/@types/store/index.d.ts +24 -23
- package/@types/store/with-schemas/index.d.cts +24 -23
- package/@types/store/with-schemas/index.d.ts +24 -23
- package/@types/synchronizers/index.d.cts +351 -39
- package/@types/synchronizers/index.d.ts +351 -39
- package/@types/synchronizers/synchronizer-local/index.d.cts +62 -2
- package/@types/synchronizers/synchronizer-local/index.d.ts +62 -2
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +77 -2
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +77 -2
- package/@types/synchronizers/synchronizer-ws-client/index.d.cts +49 -2
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +49 -2
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +49 -2
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +49 -2
- package/@types/synchronizers/synchronizer-ws-server/index.d.cts +5 -5
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +5 -5
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +5 -5
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +5 -5
- package/@types/synchronizers/with-schemas/index.d.cts +354 -39
- package/@types/synchronizers/with-schemas/index.d.ts +354 -39
- package/@types/tools/index.d.cts +20 -10
- package/@types/tools/index.d.ts +20 -10
- package/@types/tools/with-schemas/index.d.cts +20 -10
- package/@types/tools/with-schemas/index.d.ts +20 -10
- package/@types/ui-react/index.d.cts +1 -1
- package/@types/ui-react/index.d.ts +1 -1
- package/@types/ui-react/with-schemas/index.d.cts +1 -1
- package/@types/ui-react/with-schemas/index.d.ts +1 -1
- package/@types/ui-react-dom/index.d.cts +2 -2
- package/@types/ui-react-dom/index.d.ts +2 -2
- package/@types/ui-react-dom/with-schemas/index.d.cts +2 -2
- package/@types/ui-react-dom/with-schemas/index.d.ts +2 -2
- package/@types/ui-react-inspector/with-schemas/index.d.cts +2 -2
- package/@types/ui-react-inspector/with-schemas/index.d.ts +2 -2
- package/cjs/es6/index.cjs +63 -51
- package/cjs/es6/mergeable-store/index.cjs +8 -8
- package/cjs/es6/mergeable-store/with-schemas/index.cjs +8 -8
- package/cjs/es6/min/index.cjs +1 -1
- package/cjs/es6/min/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-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-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/synchronizers/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/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/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/synchronizers/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/min/ui-react/index.cjs +1 -1
- package/cjs/es6/min/ui-react/index.cjs.gz +0 -0
- package/cjs/es6/min/ui-react/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/ui-react/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 +11 -5
- package/cjs/es6/persisters/persister-automerge/index.cjs +11 -6
- package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +11 -6
- package/cjs/es6/persisters/persister-browser/index.cjs +17 -12
- package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +17 -12
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-electric-sql/index.cjs +17 -12
- package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +17 -12
- package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-file/index.cjs +16 -11
- package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +16 -11
- package/cjs/es6/persisters/persister-indexed-db/index.cjs +11 -6
- package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +11 -6
- package/cjs/es6/persisters/persister-libsql/index.cjs +287 -282
- package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +287 -282
- package/cjs/es6/persisters/persister-partykit-client/index.cjs +11 -6
- package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +11 -6
- package/cjs/es6/persisters/persister-powersync/index.cjs +17 -12
- package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-remote/index.cjs +17 -12
- package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +17 -12
- package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-sqlite3/index.cjs +17 -12
- package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +17 -12
- package/cjs/es6/persisters/persister-yjs/index.cjs +11 -6
- package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +11 -6
- package/cjs/es6/persisters/with-schemas/index.cjs +11 -5
- package/cjs/es6/synchronizers/index.cjs +68 -57
- package/cjs/es6/synchronizers/synchronizer-local/index.cjs +70 -60
- package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +70 -60
- package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +67 -57
- package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +67 -57
- package/cjs/es6/synchronizers/with-schemas/index.cjs +68 -57
- package/cjs/es6/ui-react/index.cjs +137 -75
- package/cjs/es6/ui-react/with-schemas/index.cjs +137 -75
- package/cjs/es6/ui-react-inspector/index.cjs +11 -6
- package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +11 -6
- package/cjs/es6/with-schemas/index.cjs +63 -51
- package/cjs/index.cjs +63 -51
- package/cjs/mergeable-store/index.cjs +8 -8
- package/cjs/mergeable-store/with-schemas/index.cjs +8 -8
- package/cjs/min/index.cjs +1 -1
- package/cjs/min/index.cjs.gz +0 -0
- package/cjs/min/metrics/index.cjs +1 -1
- package/cjs/min/metrics/index.cjs.gz +0 -0
- package/cjs/min/metrics/with-schemas/index.cjs +1 -1
- package/cjs/min/metrics/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-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-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/queries/index.cjs +1 -1
- package/cjs/min/queries/index.cjs.gz +0 -0
- package/cjs/min/queries/with-schemas/index.cjs +1 -1
- package/cjs/min/queries/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-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/with-schemas/index.cjs +1 -1
- package/cjs/min/synchronizers/with-schemas/index.cjs.gz +0 -0
- package/cjs/min/ui-react/index.cjs +1 -1
- package/cjs/min/ui-react/index.cjs.gz +0 -0
- package/cjs/min/ui-react/with-schemas/index.cjs +1 -1
- package/cjs/min/ui-react/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 +11 -5
- package/cjs/persisters/persister-automerge/index.cjs +11 -6
- package/cjs/persisters/persister-automerge/with-schemas/index.cjs +11 -6
- package/cjs/persisters/persister-browser/index.cjs +17 -12
- package/cjs/persisters/persister-browser/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +17 -12
- package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-electric-sql/index.cjs +17 -12
- package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-expo-sqlite/index.cjs +17 -12
- package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-file/index.cjs +16 -11
- package/cjs/persisters/persister-file/with-schemas/index.cjs +16 -11
- package/cjs/persisters/persister-indexed-db/index.cjs +11 -6
- package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +11 -6
- package/cjs/persisters/persister-libsql/index.cjs +194 -189
- package/cjs/persisters/persister-libsql/with-schemas/index.cjs +194 -189
- package/cjs/persisters/persister-partykit-client/index.cjs +11 -6
- package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +11 -6
- package/cjs/persisters/persister-powersync/index.cjs +17 -12
- package/cjs/persisters/persister-powersync/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-remote/index.cjs +17 -12
- package/cjs/persisters/persister-remote/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-sqlite-wasm/index.cjs +17 -12
- package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-sqlite3/index.cjs +17 -12
- package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +17 -12
- package/cjs/persisters/persister-yjs/index.cjs +11 -6
- package/cjs/persisters/persister-yjs/with-schemas/index.cjs +11 -6
- package/cjs/persisters/with-schemas/index.cjs +11 -5
- package/cjs/synchronizers/index.cjs +61 -50
- package/cjs/synchronizers/synchronizer-local/index.cjs +63 -58
- package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +63 -58
- package/cjs/synchronizers/synchronizer-ws-client/index.cjs +60 -50
- package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +60 -50
- package/cjs/synchronizers/with-schemas/index.cjs +61 -50
- package/cjs/ui-react/index.cjs +139 -74
- package/cjs/ui-react/with-schemas/index.cjs +139 -74
- package/cjs/ui-react-inspector/index.cjs +11 -6
- package/cjs/ui-react-inspector/with-schemas/index.cjs +11 -6
- package/cjs/with-schemas/index.cjs +63 -51
- package/es6/index.js +63 -51
- package/es6/mergeable-store/index.js +8 -8
- package/es6/mergeable-store/with-schemas/index.js +8 -8
- package/es6/min/index.js +1 -1
- package/es6/min/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-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-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/synchronizers/index.js +1 -1
- package/es6/min/synchronizers/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/with-schemas/index.js +1 -1
- package/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/es6/min/ui-react/index.js +1 -1
- package/es6/min/ui-react/index.js.gz +0 -0
- package/es6/min/ui-react/with-schemas/index.js +1 -1
- package/es6/min/ui-react/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 +11 -6
- package/es6/persisters/persister-automerge/index.js +11 -6
- package/es6/persisters/persister-automerge/with-schemas/index.js +11 -6
- package/es6/persisters/persister-browser/index.js +17 -12
- package/es6/persisters/persister-browser/with-schemas/index.js +17 -12
- package/es6/persisters/persister-cr-sqlite-wasm/index.js +17 -12
- package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +17 -12
- package/es6/persisters/persister-electric-sql/index.js +17 -12
- package/es6/persisters/persister-electric-sql/with-schemas/index.js +17 -12
- package/es6/persisters/persister-expo-sqlite/index.js +17 -12
- package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +17 -12
- package/es6/persisters/persister-file/index.js +16 -11
- package/es6/persisters/persister-file/with-schemas/index.js +16 -11
- package/es6/persisters/persister-indexed-db/index.js +11 -6
- package/es6/persisters/persister-indexed-db/with-schemas/index.js +11 -6
- package/es6/persisters/persister-libsql/index.js +287 -282
- package/es6/persisters/persister-libsql/with-schemas/index.js +287 -282
- package/es6/persisters/persister-partykit-client/index.js +11 -6
- package/es6/persisters/persister-partykit-client/with-schemas/index.js +11 -6
- package/es6/persisters/persister-powersync/index.js +17 -12
- package/es6/persisters/persister-powersync/with-schemas/index.js +17 -12
- package/es6/persisters/persister-remote/index.js +17 -12
- package/es6/persisters/persister-remote/with-schemas/index.js +17 -12
- package/es6/persisters/persister-sqlite-wasm/index.js +17 -12
- package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +17 -12
- package/es6/persisters/persister-sqlite3/index.js +17 -12
- package/es6/persisters/persister-sqlite3/with-schemas/index.js +17 -12
- package/es6/persisters/persister-yjs/index.js +11 -6
- package/es6/persisters/persister-yjs/with-schemas/index.js +11 -6
- package/es6/persisters/with-schemas/index.js +11 -6
- package/es6/synchronizers/index.js +68 -58
- package/es6/synchronizers/synchronizer-local/index.js +70 -60
- package/es6/synchronizers/synchronizer-local/with-schemas/index.js +70 -60
- package/es6/synchronizers/synchronizer-ws-client/index.js +67 -57
- package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +67 -57
- package/es6/synchronizers/with-schemas/index.js +68 -58
- package/es6/ui-react/index.js +137 -75
- package/es6/ui-react/with-schemas/index.js +137 -75
- package/es6/ui-react-inspector/index.js +11 -6
- package/es6/ui-react-inspector/with-schemas/index.js +11 -6
- package/es6/with-schemas/index.js +63 -51
- package/index.js +63 -51
- package/mergeable-store/index.js +8 -8
- package/mergeable-store/with-schemas/index.js +8 -8
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/metrics/index.js +1 -1
- package/min/metrics/index.js.gz +0 -0
- package/min/metrics/with-schemas/index.js +1 -1
- package/min/metrics/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-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-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/queries/index.js +1 -1
- package/min/queries/index.js.gz +0 -0
- package/min/queries/with-schemas/index.js +1 -1
- package/min/queries/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-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/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react/index.js +1 -1
- package/min/ui-react/index.js.gz +0 -0
- package/min/ui-react/with-schemas/index.js +1 -1
- package/min/ui-react/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 +9 -9
- package/persisters/index.js +11 -6
- package/persisters/persister-automerge/index.js +11 -6
- package/persisters/persister-automerge/with-schemas/index.js +11 -6
- package/persisters/persister-browser/index.js +17 -12
- package/persisters/persister-browser/with-schemas/index.js +17 -12
- package/persisters/persister-cr-sqlite-wasm/index.js +17 -12
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +17 -12
- package/persisters/persister-electric-sql/index.js +17 -12
- package/persisters/persister-electric-sql/with-schemas/index.js +17 -12
- package/persisters/persister-expo-sqlite/index.js +17 -12
- package/persisters/persister-expo-sqlite/with-schemas/index.js +17 -12
- package/persisters/persister-file/index.js +16 -11
- package/persisters/persister-file/with-schemas/index.js +16 -11
- package/persisters/persister-indexed-db/index.js +11 -6
- package/persisters/persister-indexed-db/with-schemas/index.js +11 -6
- package/persisters/persister-libsql/index.js +194 -189
- package/persisters/persister-libsql/with-schemas/index.js +194 -189
- package/persisters/persister-partykit-client/index.js +11 -6
- package/persisters/persister-partykit-client/with-schemas/index.js +11 -6
- package/persisters/persister-powersync/index.js +17 -12
- package/persisters/persister-powersync/with-schemas/index.js +17 -12
- package/persisters/persister-remote/index.js +17 -12
- package/persisters/persister-remote/with-schemas/index.js +17 -12
- package/persisters/persister-sqlite-wasm/index.js +17 -12
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +17 -12
- package/persisters/persister-sqlite3/index.js +17 -12
- package/persisters/persister-sqlite3/with-schemas/index.js +17 -12
- package/persisters/persister-yjs/index.js +11 -6
- package/persisters/persister-yjs/with-schemas/index.js +11 -6
- package/persisters/with-schemas/index.js +11 -6
- package/readme.md +2 -2
- package/releases.md +4 -4
- package/synchronizers/index.js +61 -51
- package/synchronizers/synchronizer-local/index.js +63 -58
- package/synchronizers/synchronizer-local/with-schemas/index.js +63 -58
- package/synchronizers/synchronizer-ws-client/index.js +60 -50
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +60 -50
- package/synchronizers/with-schemas/index.js +61 -51
- package/ui-react/index.js +139 -74
- package/ui-react/with-schemas/index.js +139 -74
- package/ui-react-inspector/index.js +11 -6
- package/ui-react-inspector/with-schemas/index.js +11 -6
- package/umd/es6/index.js +67 -51
- package/umd/es6/mergeable-store/index.js +9 -8
- package/umd/es6/mergeable-store/with-schemas/index.js +9 -8
- package/umd/es6/min/index.js +1 -1
- package/umd/es6/min/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-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-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/synchronizers/index.js +1 -1
- package/umd/es6/min/synchronizers/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/with-schemas/index.js +1 -1
- package/umd/es6/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/umd/es6/min/ui-react/index.js +1 -1
- package/umd/es6/min/ui-react/index.js.gz +0 -0
- package/umd/es6/min/ui-react/with-schemas/index.js +1 -1
- package/umd/es6/min/ui-react/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 +11 -5
- package/umd/es6/persisters/persister-automerge/index.js +11 -6
- package/umd/es6/persisters/persister-automerge/with-schemas/index.js +11 -6
- package/umd/es6/persisters/persister-browser/index.js +19 -14
- package/umd/es6/persisters/persister-browser/with-schemas/index.js +19 -14
- package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +17 -12
- package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-electric-sql/index.js +17 -12
- package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-expo-sqlite/index.js +17 -12
- package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-file/index.js +18 -13
- package/umd/es6/persisters/persister-file/with-schemas/index.js +18 -13
- package/umd/es6/persisters/persister-indexed-db/index.js +11 -6
- package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +11 -6
- package/umd/es6/persisters/persister-libsql/index.js +289 -284
- package/umd/es6/persisters/persister-libsql/with-schemas/index.js +289 -284
- package/umd/es6/persisters/persister-partykit-client/index.js +11 -6
- package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +11 -6
- package/umd/es6/persisters/persister-powersync/index.js +17 -12
- package/umd/es6/persisters/persister-powersync/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-remote/index.js +17 -12
- package/umd/es6/persisters/persister-remote/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-sqlite-wasm/index.js +17 -12
- package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-sqlite3/index.js +17 -12
- package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +17 -12
- package/umd/es6/persisters/persister-yjs/index.js +11 -6
- package/umd/es6/persisters/persister-yjs/with-schemas/index.js +11 -6
- package/umd/es6/persisters/with-schemas/index.js +11 -5
- package/umd/es6/synchronizers/index.js +71 -57
- package/umd/es6/synchronizers/synchronizer-local/index.js +73 -60
- package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +73 -60
- package/umd/es6/synchronizers/synchronizer-ws-client/index.js +70 -57
- package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +70 -57
- package/umd/es6/synchronizers/with-schemas/index.js +71 -57
- package/umd/es6/ui-react/index.js +135 -72
- package/umd/es6/ui-react/with-schemas/index.js +135 -72
- package/umd/es6/ui-react-inspector/index.js +11 -6
- package/umd/es6/ui-react-inspector/with-schemas/index.js +11 -6
- package/umd/es6/with-schemas/index.js +67 -51
- package/umd/index.js +66 -55
- package/umd/mergeable-store/index.js +8 -8
- package/umd/mergeable-store/with-schemas/index.js +8 -8
- package/umd/min/index.js +1 -1
- package/umd/min/index.js.gz +0 -0
- package/umd/min/metrics/index.js +1 -1
- package/umd/min/metrics/index.js.gz +0 -0
- package/umd/min/metrics/with-schemas/index.js +1 -1
- package/umd/min/metrics/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-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-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/queries/index.js +1 -1
- package/umd/min/queries/index.js.gz +0 -0
- package/umd/min/queries/with-schemas/index.js +1 -1
- package/umd/min/queries/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-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/with-schemas/index.js +1 -1
- package/umd/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/umd/min/ui-react/index.js +1 -1
- package/umd/min/ui-react/index.js.gz +0 -0
- package/umd/min/ui-react/with-schemas/index.js +1 -1
- package/umd/min/ui-react/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 +11 -5
- package/umd/persisters/persister-automerge/index.js +11 -6
- package/umd/persisters/persister-automerge/with-schemas/index.js +11 -6
- package/umd/persisters/persister-browser/index.js +19 -14
- package/umd/persisters/persister-browser/with-schemas/index.js +19 -14
- package/umd/persisters/persister-cr-sqlite-wasm/index.js +17 -12
- package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/persisters/persister-electric-sql/index.js +17 -12
- package/umd/persisters/persister-electric-sql/with-schemas/index.js +17 -12
- package/umd/persisters/persister-expo-sqlite/index.js +17 -12
- package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +17 -12
- package/umd/persisters/persister-file/index.js +18 -13
- package/umd/persisters/persister-file/with-schemas/index.js +18 -13
- package/umd/persisters/persister-indexed-db/index.js +11 -6
- package/umd/persisters/persister-indexed-db/with-schemas/index.js +11 -6
- package/umd/persisters/persister-libsql/index.js +196 -191
- package/umd/persisters/persister-libsql/with-schemas/index.js +196 -191
- package/umd/persisters/persister-partykit-client/index.js +11 -6
- package/umd/persisters/persister-partykit-client/with-schemas/index.js +11 -6
- package/umd/persisters/persister-powersync/index.js +17 -12
- package/umd/persisters/persister-powersync/with-schemas/index.js +17 -12
- package/umd/persisters/persister-remote/index.js +17 -12
- package/umd/persisters/persister-remote/with-schemas/index.js +17 -12
- package/umd/persisters/persister-sqlite-wasm/index.js +17 -12
- package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +17 -12
- package/umd/persisters/persister-sqlite3/index.js +17 -12
- package/umd/persisters/persister-sqlite3/with-schemas/index.js +17 -12
- package/umd/persisters/persister-yjs/index.js +11 -6
- package/umd/persisters/persister-yjs/with-schemas/index.js +11 -6
- package/umd/persisters/with-schemas/index.js +11 -5
- package/umd/synchronizers/index.js +64 -54
- package/umd/synchronizers/synchronizer-local/index.js +66 -62
- package/umd/synchronizers/synchronizer-local/with-schemas/index.js +66 -62
- package/umd/synchronizers/synchronizer-ws-client/index.js +63 -54
- package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +63 -54
- package/umd/synchronizers/with-schemas/index.js +64 -54
- package/umd/ui-react/index.js +140 -71
- package/umd/ui-react/with-schemas/index.js +140 -71
- package/umd/ui-react-inspector/index.js +11 -6
- package/umd/ui-react-inspector/with-schemas/index.js +11 -6
- package/umd/with-schemas/index.js +66 -55
- package/with-schemas/index.js +63 -51
|
@@ -1224,7 +1224,7 @@ export type HasTableCellListener<
|
|
|
1224
1224
|
* the Table whose Row Ids changed, and the number of Row objects in the Table.
|
|
1225
1225
|
* @param store A reference to the Store that changed.
|
|
1226
1226
|
* @param tableId The Id of the Table that changed.
|
|
1227
|
-
* @param count The number of Row objects in the Table
|
|
1227
|
+
* @param count The number of Row objects in the Table.
|
|
1228
1228
|
* @category Listener
|
|
1229
1229
|
* @since v4.1.0
|
|
1230
1230
|
*/
|
|
@@ -2419,8 +2419,7 @@ export type TransactionLog<Schemas extends OptionalSchemas> = {
|
|
|
2419
2419
|
*
|
|
2420
2420
|
* The StoreListenerStats object contains a breakdown of the different types of
|
|
2421
2421
|
* listener. Totals include both mutator and non-mutator listeners. A
|
|
2422
|
-
* StoreListenerStats object is returned from the getListenerStats method
|
|
2423
|
-
* is only populated in a debug build.
|
|
2422
|
+
* StoreListenerStats object is returned from the getListenerStats method.
|
|
2424
2423
|
* @category Development
|
|
2425
2424
|
*/
|
|
2426
2425
|
export type StoreListenerStats = {
|
|
@@ -2458,7 +2457,7 @@ export type StoreListenerStats = {
|
|
|
2458
2457
|
hasTableCell: number;
|
|
2459
2458
|
/**
|
|
2460
2459
|
* The number of RowCountListener functions registered with the Store, since
|
|
2461
|
-
* v4.1.0
|
|
2460
|
+
* v4.1.0.
|
|
2462
2461
|
*/
|
|
2463
2462
|
rowCount: number;
|
|
2464
2463
|
/**
|
|
@@ -2547,7 +2546,7 @@ export type StoreListenerStats = {
|
|
|
2547
2546
|
*
|
|
2548
2547
|
* The keyed value support is best thought of as a flat JavaScript object. The
|
|
2549
2548
|
* Store contains a number of Value objects, each with a unique ID, and which is
|
|
2550
|
-
* a string, boolean, or number
|
|
2549
|
+
* a string, boolean, or number.
|
|
2551
2550
|
*
|
|
2552
2551
|
* ```json
|
|
2553
2552
|
* { // Store
|
|
@@ -2631,8 +2630,8 @@ export type StoreListenerStats = {
|
|
|
2631
2630
|
* There are two extra methods to manipulate Row objects. The addRow method is
|
|
2632
2631
|
* like the setRow method but automatically assigns it a new unique Id. And the
|
|
2633
2632
|
* setPartialRow method lets you update multiple Cell values in a Row without
|
|
2634
|
-
* affecting the others.
|
|
2635
|
-
* same for the Values in a Store.
|
|
2633
|
+
* affecting the others. There is a similar setPartialValues method to do the
|
|
2634
|
+
* same for the Values in a Store.
|
|
2636
2635
|
*
|
|
2637
2636
|
* You can listen to attempts to write invalid data to a Value or Cell with the
|
|
2638
2637
|
* addInvalidValueListener method or addInvalidCellListener method.
|
|
@@ -3888,6 +3887,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
3888
3887
|
* can be chained in a fluent style.
|
|
3889
3888
|
* @param content An array containing the tabular and keyed-value data of the
|
|
3890
3889
|
* Store to be set.
|
|
3890
|
+
* @returns A reference to the Store.
|
|
3891
3891
|
* @example
|
|
3892
3892
|
* This example sets the data of a Store.
|
|
3893
3893
|
*
|
|
@@ -3954,6 +3954,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
3954
3954
|
* The method returns a reference to the Store so that subsequent operations
|
|
3955
3955
|
* can be chained in a fluent style.
|
|
3956
3956
|
* @param tables The data of the Store to be set.
|
|
3957
|
+
* @returns A reference to the Store.
|
|
3957
3958
|
* @example
|
|
3958
3959
|
* This example sets the tabular data of a Store.
|
|
3959
3960
|
*
|
|
@@ -4014,6 +4015,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
4014
4015
|
* can be chained in a fluent style.
|
|
4015
4016
|
* @param tableId The Id of the Table in the Store.
|
|
4016
4017
|
* @param table The data of a single Table to be set.
|
|
4018
|
+
* @returns A reference to the Store.
|
|
4017
4019
|
* @example
|
|
4018
4020
|
* This example sets the data of a single Table.
|
|
4019
4021
|
*
|
|
@@ -4133,7 +4135,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
4133
4135
|
*
|
|
4134
4136
|
* Assuming that at least some of the provided Row object is valid, a new Row
|
|
4135
4137
|
* will be created. If the object is completely invalid, no change will be
|
|
4136
|
-
* made to the Store and the method will return `undefined
|
|
4138
|
+
* made to the Store and the method will return `undefined`.
|
|
4137
4139
|
*
|
|
4138
4140
|
* You should not guarantee the form of the unique Id that is generated when a
|
|
4139
4141
|
* Row is added to the Table. However it is likely to be a string
|
|
@@ -4543,8 +4545,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
4543
4545
|
* @param changes The Changes to apply to the Store.
|
|
4544
4546
|
* @returns A reference to the Store.
|
|
4545
4547
|
* @example
|
|
4546
|
-
* This example applies a Changes object that sets a Cell and
|
|
4547
|
-
* removes a Value.
|
|
4548
|
+
* This example applies a Changes object that sets a Cell and removes a Value.
|
|
4548
4549
|
*
|
|
4549
4550
|
* ```js
|
|
4550
4551
|
* import {createStore} from 'tinybase';
|
|
@@ -5430,6 +5431,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
5430
5431
|
* This is useful for deciding whether to rollback a transaction, for example.
|
|
5431
5432
|
* The returned object is only meaningful if the method is called when the
|
|
5432
5433
|
* Store is in a transaction - such as in a TransactionListener.
|
|
5434
|
+
* @returns A Changes object representing the changes.
|
|
5433
5435
|
* @example
|
|
5434
5436
|
* This example makes changes to the Store. At the end of the transaction,
|
|
5435
5437
|
* detail about what changed is enumerated.
|
|
@@ -5472,6 +5474,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
5472
5474
|
* This is useful for deciding whether to rollback a transaction, for example.
|
|
5473
5475
|
* The returned object is only meaningful if the method is called when the
|
|
5474
5476
|
* Store is in a transaction - such as in a TransactionListener.
|
|
5477
|
+
* @returns A TransactionLog object representing the changes.
|
|
5475
5478
|
* @example
|
|
5476
5479
|
* This example makes changes to the Store. At the end of the transaction,
|
|
5477
5480
|
* detail about what changed is enumerated.
|
|
@@ -8212,11 +8215,11 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
8212
8215
|
* Special note should be made for how the listener will be called when a
|
|
8213
8216
|
* TablesSchema is present. The listener will be called:
|
|
8214
8217
|
*
|
|
8215
|
-
* - if a Table is being updated that is not specified in the TablesSchema
|
|
8216
|
-
* - if a Cell is of the wrong type specified in the TablesSchema
|
|
8217
|
-
* - if a Cell is omitted and is not defaulted in the TablesSchema
|
|
8218
|
-
* - if an empty Row is provided and there are no Cell defaults in the
|
|
8219
|
-
* TablesSchema
|
|
8218
|
+
* - if a Table is being updated that is not specified in the TablesSchema,
|
|
8219
|
+
* - if a Cell is of the wrong type specified in the TablesSchema,
|
|
8220
|
+
* - if a Cell is omitted and is not defaulted in the TablesSchema,
|
|
8221
|
+
* - or if an empty Row is provided and there are no Cell defaults in the
|
|
8222
|
+
* TablesSchema.
|
|
8220
8223
|
*
|
|
8221
8224
|
* The listener will not be called if a Cell that is defaulted in the
|
|
8222
8225
|
* TablesSchema is not provided, as long as all of the Cells that are _not_
|
|
@@ -8454,10 +8457,10 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
8454
8457
|
* Special note should be made for how the listener will be called when a
|
|
8455
8458
|
* ValuesSchema is present. The listener will be called:
|
|
8456
8459
|
*
|
|
8457
|
-
* - if a Value is being updated that is not specified in the ValuesSchema
|
|
8458
|
-
* - if a Value is of the wrong type specified in the ValuesSchema
|
|
8459
|
-
* - if a Value is omitted when using setValues that is not defaulted in
|
|
8460
|
-
* ValuesSchema
|
|
8460
|
+
* - if a Value is being updated that is not specified in the ValuesSchema,
|
|
8461
|
+
* - if a Value is of the wrong type specified in the ValuesSchema,
|
|
8462
|
+
* - or if a Value is omitted when using setValues that is not defaulted in
|
|
8463
|
+
* the ValuesSchema.
|
|
8461
8464
|
*
|
|
8462
8465
|
* The listener will not be called if a Value that is defaulted in the
|
|
8463
8466
|
* ValuesSchema is not provided, as long as all of the Values that are _not_
|
|
@@ -9040,10 +9043,8 @@ export interface Store<in out Schemas extends OptionalSchemas> {
|
|
|
9040
9043
|
* The StoreListenerStats object contains a breakdown of the different types
|
|
9041
9044
|
* of listener. Totals include both mutator and non-mutator listeners.
|
|
9042
9045
|
*
|
|
9043
|
-
* The
|
|
9044
|
-
*
|
|
9045
|
-
* development to ensure your application is not leaking listener
|
|
9046
|
-
* registrations, for example.
|
|
9046
|
+
* The method is intended to be used during development to ensure your
|
|
9047
|
+
* application is not leaking listener registrations, for example.
|
|
9047
9048
|
* @returns A StoreListenerStats object containing Store listener statistics.
|
|
9048
9049
|
* @example
|
|
9049
9050
|
* This example gets the listener statistics of a small and simple Store.
|
|
@@ -8,72 +8,353 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
import type {Id, IdOrNull} from '../common/index.d.cts';
|
|
11
|
+
import type {Persister, Persists} from '../persisters/index.d.cts';
|
|
11
12
|
import type {Content} from '../store/index.d.cts';
|
|
12
13
|
import type {MergeableStore} from '../mergeable-store/index.d.cts';
|
|
13
|
-
import type {Persister} from '../persisters/index.d.cts';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
-
* The
|
|
16
|
+
* The Message enum is used to indicate the type of the message being passed
|
|
17
|
+
* between Synchronizer instances.
|
|
18
|
+
*
|
|
19
|
+
* These message comprise the basic synchronization protocol for merging
|
|
20
|
+
* MergeableStore instances across multiple systems.
|
|
21
|
+
*
|
|
22
|
+
* The enum is generally intended to be used internally within TinyBase itself
|
|
23
|
+
* and opaque to applications that use synchronization.
|
|
17
24
|
* @category Synchronization
|
|
25
|
+
* @since v5.0.0
|
|
18
26
|
*/
|
|
19
|
-
export
|
|
27
|
+
export const enum Message {
|
|
28
|
+
/**
|
|
29
|
+
* A message that is a response to a previous request.
|
|
30
|
+
*/
|
|
31
|
+
Response = 0,
|
|
32
|
+
/**
|
|
33
|
+
* A message that is a request to get ContentHashes from another
|
|
34
|
+
* MergeableStore.
|
|
35
|
+
*/
|
|
36
|
+
GetContentHashes = 1,
|
|
37
|
+
/**
|
|
38
|
+
* A message that contains ContentHashes.
|
|
39
|
+
*/
|
|
40
|
+
ContentHashes = 2,
|
|
41
|
+
/**
|
|
42
|
+
* A message that contains a ContentDiff.
|
|
43
|
+
*/
|
|
44
|
+
ContentDiff = 3,
|
|
45
|
+
/**
|
|
46
|
+
* A message that is a request to get a TableDiff from another MergeableStore.
|
|
47
|
+
*/
|
|
48
|
+
GetTableDiff = 4,
|
|
49
|
+
/**
|
|
50
|
+
* A message that is a request to get a RowDiff from another MergeableStore.
|
|
51
|
+
*/
|
|
52
|
+
GetRowDiff = 5,
|
|
53
|
+
/**
|
|
54
|
+
* A message that is a request to get a CellDiff from another MergeableStore.
|
|
55
|
+
*/
|
|
56
|
+
GetCellDiff = 6,
|
|
57
|
+
/**
|
|
58
|
+
* A message that is a request to get a ValueDiff from another MergeableStore.
|
|
59
|
+
*/
|
|
60
|
+
GetValueDiff = 7,
|
|
61
|
+
}
|
|
20
62
|
|
|
21
63
|
/**
|
|
22
|
-
* The Receive type
|
|
64
|
+
* The Receive type describes a function that knows how to handle the arrival of
|
|
65
|
+
* a message as part of the synchronization protocol.
|
|
66
|
+
*
|
|
67
|
+
* When a message arrives (most likely from another system), the function will
|
|
68
|
+
* be called with parameters that indicate where the message came from, and its
|
|
69
|
+
* meaning and content.
|
|
70
|
+
* @param fromClientId The Id of the other client (in other words, the other
|
|
71
|
+
* system) that sent the message.
|
|
72
|
+
* @param requestId The optional Id of the message, which should be returned in
|
|
73
|
+
* the response (if requested) to constitute a matched request/response
|
|
74
|
+
* transaction.
|
|
75
|
+
* @param message A number that indicates the type of the message, according to
|
|
76
|
+
* the Message enum.
|
|
77
|
+
* @param body A message-specific payload.
|
|
23
78
|
* @category Synchronization
|
|
79
|
+
* @since v5.0.0
|
|
24
80
|
*/
|
|
25
81
|
export type Receive = (
|
|
26
82
|
fromClientId: Id,
|
|
27
83
|
requestId: IdOrNull,
|
|
28
|
-
|
|
29
|
-
|
|
84
|
+
message: Message,
|
|
85
|
+
body: any,
|
|
30
86
|
) => void;
|
|
31
87
|
|
|
32
88
|
/**
|
|
33
|
-
* The Send type
|
|
89
|
+
* The Send type describes a function that knows how to dispatch a message as
|
|
90
|
+
* part of the synchronization protocol.
|
|
91
|
+
* @param toClientId The optional Id of the other client (in other words, the
|
|
92
|
+
* other system) to which the message should be sent. If omitted, this is to be
|
|
93
|
+
* a broadcast.
|
|
94
|
+
* @param requestId The optional Id of the message, which should be awaited in
|
|
95
|
+
* the response (if requested) to constitute a matched request/response
|
|
96
|
+
* transaction.
|
|
97
|
+
* @param message A number that indicates the type of the message, according to
|
|
98
|
+
* the Message enum.
|
|
99
|
+
* @param body A message-specific payload.
|
|
34
100
|
* @category Synchronization
|
|
101
|
+
* @since v5.0.0
|
|
35
102
|
*/
|
|
36
103
|
export type Send = (
|
|
37
104
|
toClientId: IdOrNull,
|
|
38
105
|
requestId: IdOrNull,
|
|
39
|
-
|
|
40
|
-
|
|
106
|
+
message: Message,
|
|
107
|
+
body: any,
|
|
41
108
|
) => void;
|
|
42
109
|
|
|
43
110
|
/**
|
|
44
|
-
* The SynchronizerStats type
|
|
111
|
+
* The SynchronizerStats type describes the number of times a Synchronizer
|
|
112
|
+
* object has sent or received data.
|
|
113
|
+
*
|
|
114
|
+
* A SynchronizerStats object is returned from the getSynchronizerStats method.
|
|
45
115
|
* @category Development
|
|
116
|
+
* @since v5.0.0
|
|
46
117
|
*/
|
|
47
118
|
export type SynchronizerStats = {
|
|
119
|
+
/**
|
|
120
|
+
* The number of times messages have been sent.
|
|
121
|
+
*/
|
|
48
122
|
sends: number;
|
|
123
|
+
/**
|
|
124
|
+
* The number of times messages has been received.
|
|
125
|
+
*/
|
|
49
126
|
receives: number;
|
|
50
127
|
};
|
|
51
128
|
|
|
52
129
|
/**
|
|
53
|
-
* The Synchronizer
|
|
130
|
+
* The Synchronizer object lets you synchronize MergeableStore data with another
|
|
131
|
+
* TinyBase client or system.
|
|
132
|
+
*
|
|
133
|
+
* This is useful for sharing data between users, or between devices of a single
|
|
134
|
+
* user. This is especially valuable when there is the possibility that there
|
|
135
|
+
* has been a lack of immediate connectivity between clients and the
|
|
136
|
+
* synchronization requires some negotiation to orchestrate merging the
|
|
137
|
+
* MergeableStore objects together.
|
|
138
|
+
*
|
|
139
|
+
* Creating a Synchronizer depends on the choice of underlying medium over which
|
|
140
|
+
* the synchronization will take place. Options include the createWsSynchronizer
|
|
141
|
+
* function (for a Synchronizer that will sync over web-sockets), and the
|
|
142
|
+
* createLocalSynchronizer function (for a Synchronizer that will sync two
|
|
143
|
+
* MergeableStore objects in memory on one system). The createCustomSynchronizer
|
|
144
|
+
* function can also be used to easily create a fully customized way to send and
|
|
145
|
+
* receive the messages of the synchronization protocol.
|
|
54
146
|
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
147
|
+
* Note that, as an interface, it is an extension to the Persister interface,
|
|
148
|
+
* since they share underlying implementations. Think of a Synchronizer as
|
|
149
|
+
* 'persisting' your MergeableStore to another client (and vice-versa).
|
|
150
|
+
* @example
|
|
151
|
+
* This example creates two empty MergeableStore objects, creates a
|
|
152
|
+
* LocalSynchronizer for each, and starts synchronizing them. A change in one
|
|
153
|
+
* becomes evident in the other.
|
|
154
|
+
*
|
|
155
|
+
* ```js
|
|
156
|
+
* import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
|
|
157
|
+
* import {createMergeableStore} from 'tinybase';
|
|
158
|
+
*
|
|
159
|
+
* const store1 = createMergeableStore();
|
|
160
|
+
* const store2 = createMergeableStore();
|
|
161
|
+
*
|
|
162
|
+
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
163
|
+
* const synchronizer2 = createLocalSynchronizer(store2);
|
|
164
|
+
*
|
|
165
|
+
* await synchronizer1.startSync();
|
|
166
|
+
* await synchronizer2.startSync();
|
|
167
|
+
*
|
|
168
|
+
* store1.setTables({pets: {fido: {species: 'dog'}}});
|
|
169
|
+
* // ...
|
|
170
|
+
* console.log(store2.getTables());
|
|
171
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
57
172
|
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
173
|
+
* store2.setRow('pets', 'felix', {species: 'cat'});
|
|
174
|
+
* // ...
|
|
175
|
+
* console.log(store1.getTables());
|
|
176
|
+
* // -> {pets: {fido: {species: 'dog'}, felix: {species: 'cat'}}}
|
|
177
|
+
*
|
|
178
|
+
* synchronizer1.destroy();
|
|
179
|
+
* synchronizer2.destroy();
|
|
180
|
+
* ```
|
|
60
181
|
* @category Synchronizer
|
|
61
182
|
* @since v5.0.0
|
|
62
183
|
*/
|
|
63
|
-
export interface Synchronizer extends Persister<
|
|
184
|
+
export interface Synchronizer extends Persister<Persists.MergeableStoreOnly> {
|
|
64
185
|
/**
|
|
65
|
-
* The startSync method
|
|
186
|
+
* The startSync method is used to start the process of synchronization
|
|
187
|
+
* between this instance and another matching Synchronizer.
|
|
188
|
+
*
|
|
189
|
+
* The underlying implementation of a Synchronizer is shared with the
|
|
190
|
+
* Persister framework, and so this startSync method is equivalent to starting
|
|
191
|
+
* both auto-loading (listening to sync messages from other active
|
|
192
|
+
* Synchronizer instances) and auto-saving (sending sync messages to it).
|
|
193
|
+
*
|
|
194
|
+
* This method is asynchronous so you should you `await` calls to this method
|
|
195
|
+
* or handle the return type natively as a Promise.
|
|
196
|
+
* @param initialContent An optional Content object used when no content is
|
|
197
|
+
* available from another other peer Synchronizer instances.
|
|
198
|
+
* @returns A Promise containing a reference to the Synchronizer object.
|
|
199
|
+
* @example
|
|
200
|
+
* This example creates two empty MergeableStore objects, creates a
|
|
201
|
+
* LocalSynchronizer for each, and starts synchronizing them. A change in one
|
|
202
|
+
* becomes evident in the other.
|
|
203
|
+
*
|
|
204
|
+
* ```js
|
|
205
|
+
* import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
|
|
206
|
+
* import {createMergeableStore} from 'tinybase';
|
|
207
|
+
*
|
|
208
|
+
* const store1 = createMergeableStore();
|
|
209
|
+
* const store2 = createMergeableStore();
|
|
210
|
+
*
|
|
211
|
+
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
212
|
+
* const synchronizer2 = createLocalSynchronizer(store2);
|
|
213
|
+
*
|
|
214
|
+
* await synchronizer1.startSync();
|
|
215
|
+
* await synchronizer2.startSync();
|
|
216
|
+
*
|
|
217
|
+
* store1.setTables({pets: {fido: {species: 'dog'}}});
|
|
218
|
+
* // ...
|
|
219
|
+
* console.log(store2.getTables());
|
|
220
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
221
|
+
*
|
|
222
|
+
* store2.setRow('pets', 'felix', {species: 'cat'});
|
|
223
|
+
* // ...
|
|
224
|
+
* console.log(store1.getTables());
|
|
225
|
+
* // -> {pets: {fido: {species: 'dog'}, felix: {species: 'cat'}}}
|
|
226
|
+
*
|
|
227
|
+
* synchronizer1.destroy();
|
|
228
|
+
* synchronizer2.destroy();
|
|
229
|
+
* ```
|
|
230
|
+
* @example
|
|
231
|
+
* This example creates two empty MergeableStore objects, creates a
|
|
232
|
+
* LocalSynchronizer for each, and starts synchronizing them with default
|
|
233
|
+
* content. The default content from the first Synchronizer's startSync method
|
|
234
|
+
* ends up populated in both MergeableStore instances: by the time the second
|
|
235
|
+
* started, the first was available to synchronize with and its default was
|
|
236
|
+
* not needed.
|
|
237
|
+
*
|
|
238
|
+
* ```js
|
|
239
|
+
* import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
|
|
240
|
+
* import {createMergeableStore} from 'tinybase';
|
|
241
|
+
*
|
|
242
|
+
* const store1 = createMergeableStore();
|
|
243
|
+
* const store2 = createMergeableStore();
|
|
244
|
+
*
|
|
245
|
+
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
246
|
+
* const synchronizer2 = createLocalSynchronizer(store2);
|
|
247
|
+
*
|
|
248
|
+
* await synchronizer1.startSync([{pets: {fido: {species: 'dog'}}}, {}]);
|
|
249
|
+
* await synchronizer2.startSync([{pets: {felix: {species: 'cat'}}}, {}]);
|
|
250
|
+
*
|
|
251
|
+
* // ...
|
|
252
|
+
*
|
|
253
|
+
* console.log(store1.getTables());
|
|
254
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
255
|
+
* console.log(store2.getTables());
|
|
256
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
257
|
+
*
|
|
258
|
+
* synchronizer1.destroy();
|
|
259
|
+
* synchronizer2.destroy();
|
|
260
|
+
* ```
|
|
66
261
|
* @category Synchronization
|
|
262
|
+
* @since v5.0.0
|
|
67
263
|
*/
|
|
68
264
|
startSync(initialContent?: Content): Promise<this>;
|
|
69
265
|
/**
|
|
70
|
-
* The stopSync method
|
|
266
|
+
* The stopSync method is used to stop the process of synchronization between
|
|
267
|
+
* this instance and another matching Synchronizer.
|
|
268
|
+
*
|
|
269
|
+
* The underlying implementation of a Synchronizer is shared with the
|
|
270
|
+
* Persister framework, and so this startSync method is equivalent to stopping
|
|
271
|
+
* both auto-loading (listening to sync messages from other active
|
|
272
|
+
* Synchronizer instances) and auto-saving (sending sync messages to them).
|
|
273
|
+
* @returns A reference to the Synchronizer object.
|
|
274
|
+
* @example
|
|
275
|
+
* This example creates two empty MergeableStore objects, creates a
|
|
276
|
+
* LocalSynchronizer for each, and starts - then stops - synchronizing them.
|
|
277
|
+
* Subsequent changes are not merged.
|
|
278
|
+
*
|
|
279
|
+
* ```js
|
|
280
|
+
* import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
|
|
281
|
+
* import {createMergeableStore} from 'tinybase';
|
|
282
|
+
*
|
|
283
|
+
* const store1 = createMergeableStore();
|
|
284
|
+
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
285
|
+
* await synchronizer1.startSync();
|
|
286
|
+
*
|
|
287
|
+
* const store2 = createMergeableStore();
|
|
288
|
+
* const synchronizer2 = createLocalSynchronizer(store2);
|
|
289
|
+
* await synchronizer2.startSync();
|
|
290
|
+
*
|
|
291
|
+
* store1.setTables({pets: {fido: {species: 'dog'}}});
|
|
292
|
+
* // ...
|
|
293
|
+
* console.log(store1.getTables());
|
|
294
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
295
|
+
* console.log(store2.getTables());
|
|
296
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
297
|
+
*
|
|
298
|
+
* synchronizer1.stopSync();
|
|
299
|
+
* synchronizer2.stopSync();
|
|
300
|
+
*
|
|
301
|
+
* store1.setCell('pets', 'fido', 'color', 'brown');
|
|
302
|
+
* // ...
|
|
303
|
+
* console.log(store1.getTables());
|
|
304
|
+
* // -> {pets: {fido: {species: 'dog', color: 'brown'}}}
|
|
305
|
+
* console.log(store2.getTables());
|
|
306
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
307
|
+
*
|
|
308
|
+
* synchronizer1.destroy();
|
|
309
|
+
* synchronizer2.destroy();
|
|
310
|
+
* ```
|
|
71
311
|
* @category Synchronization
|
|
312
|
+
* @since v5.0.0
|
|
72
313
|
*/
|
|
73
314
|
stopSync(): this;
|
|
74
315
|
/**
|
|
75
|
-
* The getSynchronizerStats method
|
|
316
|
+
* The getSynchronizerStats method provides a set of statistics about the
|
|
317
|
+
* Synchronizer, and is used for debugging purposes.
|
|
318
|
+
*
|
|
319
|
+
* The SynchronizerStats object contains a count of the number of times the
|
|
320
|
+
* Persister has sent and received messages.
|
|
321
|
+
*
|
|
322
|
+
* The method is intended to be used during development to ensure your
|
|
323
|
+
* synchronization layer is acting as expected, for example.
|
|
324
|
+
* @returns A SynchronizerStats object containing Synchronizer send and
|
|
325
|
+
* receive statistics.
|
|
326
|
+
* @example
|
|
327
|
+
* This example gets the send and receive statistics of two active
|
|
328
|
+
* Synchronizer instances.
|
|
329
|
+
*
|
|
330
|
+
* ```js
|
|
331
|
+
* import {createLocalSynchronizer} from 'tinybase/synchronizers/synchronizer-local';
|
|
332
|
+
* import {createMergeableStore} from 'tinybase';
|
|
333
|
+
*
|
|
334
|
+
* const store1 = createMergeableStore();
|
|
335
|
+
* const store2 = createMergeableStore();
|
|
336
|
+
*
|
|
337
|
+
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
338
|
+
* const synchronizer2 = createLocalSynchronizer(store2);
|
|
339
|
+
*
|
|
340
|
+
* await synchronizer1.startSync();
|
|
341
|
+
* await synchronizer2.startSync();
|
|
342
|
+
*
|
|
343
|
+
* store1.setTables({pets: {fido: {species: 'dog'}}});
|
|
344
|
+
* // ...
|
|
345
|
+
* store2.setRow('pets', 'felix', {species: 'cat'});
|
|
346
|
+
* // ...
|
|
347
|
+
*
|
|
348
|
+
* console.log(synchronizer1.getSynchronizerStats());
|
|
349
|
+
* // -> {receives: 4, sends: 5}
|
|
350
|
+
* console.log(synchronizer2.getSynchronizerStats());
|
|
351
|
+
* // -> {receives: 5, sends: 4}
|
|
352
|
+
*
|
|
353
|
+
* synchronizer1.destroy();
|
|
354
|
+
* synchronizer2.destroy();
|
|
355
|
+
* ```
|
|
76
356
|
* @category Synchronization
|
|
357
|
+
* @since v5.0.0
|
|
77
358
|
*/
|
|
78
359
|
getSynchronizerStats(): SynchronizerStats;
|
|
79
360
|
}
|
|
@@ -84,50 +365,81 @@ export interface Synchronizer extends Persister<2> {
|
|
|
84
365
|
*
|
|
85
366
|
* As well as providing a reference to the MergeableStore to synchronize, you
|
|
86
367
|
* must provide parameters which identify how to send and receive changes to and
|
|
87
|
-
* from this MergeableStore and its peers.
|
|
368
|
+
* from this MergeableStore and its peers. This is entirely dependent upon the
|
|
369
|
+
* medium of communication used.
|
|
88
370
|
* @param store The MergeableStore to synchronize.
|
|
89
371
|
* @param send A Send function for sending a message.
|
|
90
|
-
* @param onReceive A callback
|
|
91
|
-
*
|
|
372
|
+
* @param onReceive A callback (called once when the Synchronizer is created)
|
|
373
|
+
* that is passed a Receive function that you need to ensure can receive
|
|
374
|
+
* messages.
|
|
92
375
|
* @param destroy A function called when destroying the Persister which can be
|
|
93
376
|
* used to clean up underlying resources.
|
|
94
377
|
* @param requestTimeoutSeconds An number of seconds before a request sent from
|
|
95
378
|
* this Persister to another peer times out.
|
|
96
379
|
* @param onIgnoredError An optional handler for the errors that the
|
|
97
|
-
* Synchronizer would otherwise ignore when trying to
|
|
380
|
+
* Synchronizer would otherwise ignore when trying to synchronize data. This is
|
|
98
381
|
* suitable for debugging synchronization issues in a development environment.
|
|
99
382
|
* @returns A reference to the new Synchronizer object.
|
|
100
383
|
* @example
|
|
101
|
-
* This example creates a
|
|
102
|
-
*
|
|
384
|
+
* This example creates a function for creating custom Synchronizer objects via
|
|
385
|
+
* a very naive pair of message buses (which are first-in, first-out). Each
|
|
386
|
+
* Synchronizer can write to the other's bus, and they each poll to read from
|
|
387
|
+
* their own. The example then uses these Synchronizer instances to sync two
|
|
388
|
+
* MergeableStore objects together
|
|
103
389
|
*
|
|
104
390
|
* ```js
|
|
105
|
-
* import {
|
|
106
|
-
*
|
|
391
|
+
* import {
|
|
392
|
+
* createCustomSynchronizer,
|
|
393
|
+
* createMergeableStore,
|
|
394
|
+
* getUniqueId,
|
|
395
|
+
* } from 'tinybase';
|
|
107
396
|
*
|
|
108
|
-
* const
|
|
109
|
-
*
|
|
110
|
-
* });
|
|
111
|
-
* const synchronizer1 = createLocalSynchronizer(store1);
|
|
397
|
+
* const bus1 = [];
|
|
398
|
+
* const bus2 = [];
|
|
112
399
|
*
|
|
113
|
-
* const
|
|
114
|
-
*
|
|
400
|
+
* const createBusSynchronizer = (store, localBus, remoteBus) => {
|
|
401
|
+
* let timer;
|
|
402
|
+
* const clientId = getUniqueId();
|
|
403
|
+
* return createCustomSynchronizer(
|
|
404
|
+
* store,
|
|
405
|
+
* (toClientId, requestId, message, body) => {
|
|
406
|
+
* // send
|
|
407
|
+
* remoteBus.push([clientId, requestId, message, body]);
|
|
408
|
+
* },
|
|
409
|
+
* (receive) => {
|
|
410
|
+
* // onReceive
|
|
411
|
+
* timer = setInterval(() => {
|
|
412
|
+
* if (localBus.length > 0) {
|
|
413
|
+
* receive(...localBus.shift());
|
|
414
|
+
* }
|
|
415
|
+
* }, 1);
|
|
416
|
+
* },
|
|
417
|
+
* () => clearInterval(timer), // destroy
|
|
418
|
+
* 1,
|
|
419
|
+
* );
|
|
420
|
+
* };
|
|
421
|
+
*
|
|
422
|
+
* const store1 = createMergeableStore();
|
|
423
|
+
* const store2 = createMergeableStore();
|
|
424
|
+
*
|
|
425
|
+
* const synchronizer1 = createBusSynchronizer(store1, bus1, bus2);
|
|
426
|
+
* const synchronizer2 = createBusSynchronizer(store2, bus2, bus1);
|
|
427
|
+
*
|
|
428
|
+
* await synchronizer1.startSync();
|
|
115
429
|
* await synchronizer2.startSync();
|
|
116
430
|
*
|
|
117
|
-
*
|
|
431
|
+
* store1.setTables({pets: {fido: {species: 'dog'}}});
|
|
118
432
|
* // ...
|
|
119
|
-
*
|
|
120
|
-
*
|
|
433
|
+
* console.log(store1.getTables());
|
|
434
|
+
* // -> {pets: {fido: {species: 'dog'}}}
|
|
121
435
|
* console.log(store2.getTables());
|
|
122
436
|
* // -> {pets: {fido: {species: 'dog'}}}
|
|
123
437
|
*
|
|
124
|
-
* await synchronizer1.load();
|
|
125
|
-
* // Store1 will be synced with Store2.
|
|
126
|
-
*
|
|
127
438
|
* synchronizer1.destroy();
|
|
128
439
|
* synchronizer2.destroy();
|
|
129
440
|
* ```
|
|
130
441
|
* @category Creation
|
|
442
|
+
* @since v5.0.0
|
|
131
443
|
*/
|
|
132
444
|
export function createCustomSynchronizer(
|
|
133
445
|
store: MergeableStore,
|