tinybase 5.0.0-beta.26 → 5.0.0-beta.28
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/_internal/ui-react/with-schemas/index.d.cts +274 -0
- package/@types/_internal/ui-react/with-schemas/index.d.ts +274 -0
- package/@types/checkpoints/index.d.cts +30 -1
- package/@types/checkpoints/index.d.ts +30 -1
- package/@types/checkpoints/with-schemas/index.d.cts +30 -1
- package/@types/checkpoints/with-schemas/index.d.ts +30 -1
- package/@types/common/index.d.cts +9 -0
- package/@types/common/index.d.ts +9 -0
- package/@types/common/with-schemas/index.d.cts +9 -0
- package/@types/common/with-schemas/index.d.ts +9 -0
- package/@types/index.d.cts +1 -0
- package/@types/index.d.ts +1 -0
- package/@types/indexes/index.d.cts +32 -1
- package/@types/indexes/index.d.ts +32 -1
- package/@types/indexes/with-schemas/index.d.cts +32 -1
- package/@types/indexes/with-schemas/index.d.ts +32 -1
- package/@types/mergeable-store/index.d.cts +0 -2
- package/@types/mergeable-store/index.d.ts +0 -2
- package/@types/mergeable-store/with-schemas/index.d.cts +2 -2
- package/@types/mergeable-store/with-schemas/index.d.ts +2 -2
- package/@types/metrics/index.d.cts +30 -4
- package/@types/metrics/index.d.ts +30 -4
- package/@types/metrics/with-schemas/index.d.cts +30 -4
- package/@types/metrics/with-schemas/index.d.ts +30 -4
- package/@types/persisters/index.d.cts +246 -62
- package/@types/persisters/index.d.ts +246 -62
- package/@types/persisters/persister-automerge/index.d.cts +13 -9
- package/@types/persisters/persister-automerge/index.d.ts +13 -9
- package/@types/persisters/persister-automerge/with-schemas/index.d.cts +13 -9
- package/@types/persisters/persister-automerge/with-schemas/index.d.ts +13 -9
- package/@types/persisters/persister-browser/index.d.cts +25 -15
- package/@types/persisters/persister-browser/index.d.ts +25 -15
- package/@types/persisters/persister-browser/with-schemas/index.d.cts +25 -15
- package/@types/persisters/persister-browser/with-schemas/index.d.ts +25 -15
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +12 -9
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +12 -9
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +12 -9
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +12 -9
- package/@types/persisters/persister-electric-sql/index.d.cts +12 -9
- package/@types/persisters/persister-electric-sql/index.d.ts +12 -9
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +12 -9
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +12 -9
- package/@types/persisters/persister-expo-sqlite/index.d.cts +14 -10
- package/@types/persisters/persister-expo-sqlite/index.d.ts +14 -10
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +14 -10
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +14 -10
- package/@types/persisters/persister-file/index.d.cts +14 -8
- package/@types/persisters/persister-file/index.d.ts +14 -8
- package/@types/persisters/persister-file/with-schemas/index.d.cts +14 -8
- package/@types/persisters/persister-file/with-schemas/index.d.ts +14 -8
- package/@types/persisters/persister-indexed-db/index.d.cts +13 -8
- package/@types/persisters/persister-indexed-db/index.d.ts +13 -8
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +13 -8
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +13 -8
- package/@types/persisters/persister-libsql/index.d.cts +13 -8
- package/@types/persisters/persister-libsql/index.d.ts +13 -8
- package/@types/persisters/persister-libsql/with-schemas/index.d.cts +13 -8
- package/@types/persisters/persister-libsql/with-schemas/index.d.ts +13 -8
- package/@types/persisters/persister-partykit-client/index.d.cts +24 -13
- package/@types/persisters/persister-partykit-client/index.d.ts +24 -13
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +24 -13
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +24 -13
- package/@types/persisters/persister-partykit-server/index.d.cts +11 -3
- package/@types/persisters/persister-partykit-server/index.d.ts +11 -3
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.cts +11 -3
- package/@types/persisters/persister-partykit-server/with-schemas/index.d.ts +11 -3
- package/@types/persisters/persister-powersync/index.d.cts +15 -9
- package/@types/persisters/persister-powersync/index.d.ts +15 -9
- package/@types/persisters/persister-powersync/with-schemas/index.d.cts +15 -9
- package/@types/persisters/persister-powersync/with-schemas/index.d.ts +15 -9
- package/@types/persisters/persister-remote/index.d.cts +15 -10
- package/@types/persisters/persister-remote/index.d.ts +15 -10
- package/@types/persisters/persister-remote/with-schemas/index.d.cts +15 -10
- package/@types/persisters/persister-remote/with-schemas/index.d.ts +15 -10
- package/@types/persisters/persister-sqlite-wasm/index.d.cts +14 -9
- package/@types/persisters/persister-sqlite-wasm/index.d.ts +14 -9
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +14 -9
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +14 -9
- package/@types/persisters/persister-sqlite3/index.d.cts +14 -9
- package/@types/persisters/persister-sqlite3/index.d.ts +14 -9
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +14 -9
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +14 -9
- package/@types/persisters/persister-yjs/index.d.cts +13 -8
- package/@types/persisters/persister-yjs/index.d.ts +13 -8
- package/@types/persisters/persister-yjs/with-schemas/index.d.cts +13 -8
- package/@types/persisters/persister-yjs/with-schemas/index.d.ts +13 -8
- package/@types/persisters/with-schemas/index.d.cts +280 -63
- package/@types/persisters/with-schemas/index.d.ts +280 -63
- package/@types/queries/index.d.cts +64 -5
- package/@types/queries/index.d.ts +64 -5
- package/@types/queries/with-schemas/index.d.cts +64 -5
- package/@types/queries/with-schemas/index.d.ts +64 -5
- package/@types/relationships/index.d.cts +34 -1
- package/@types/relationships/index.d.ts +34 -1
- package/@types/relationships/with-schemas/index.d.cts +34 -1
- package/@types/relationships/with-schemas/index.d.ts +34 -1
- package/@types/store/index.d.cts +125 -0
- package/@types/store/index.d.ts +125 -0
- package/@types/store/with-schemas/index.d.cts +125 -0
- package/@types/store/with-schemas/index.d.ts +125 -0
- package/@types/synchronizers/index.d.cts +375 -41
- package/@types/synchronizers/index.d.ts +375 -41
- package/@types/synchronizers/synchronizer-broadcast-channel/index.d.cts +114 -0
- package/@types/synchronizers/synchronizer-broadcast-channel/index.d.ts +114 -0
- package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.cts +128 -0
- package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.ts +128 -0
- package/@types/synchronizers/synchronizer-local/index.d.cts +62 -3
- package/@types/synchronizers/synchronizer-local/index.d.ts +62 -3
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +77 -3
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +77 -3
- package/@types/synchronizers/synchronizer-ws-client/index.d.cts +110 -3
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +110 -3
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +121 -3
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +121 -3
- package/@types/synchronizers/synchronizer-ws-server/index.d.cts +486 -7
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +486 -7
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.cts +486 -7
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +486 -7
- package/@types/synchronizers/with-schemas/index.d.cts +372 -42
- package/@types/synchronizers/with-schemas/index.d.ts +372 -42
- package/@types/tools/index.d.cts +22 -0
- package/@types/tools/index.d.ts +22 -0
- package/@types/tools/with-schemas/index.d.cts +22 -0
- package/@types/tools/with-schemas/index.d.ts +22 -0
- package/@types/ui-react/index.d.cts +375 -1
- package/@types/ui-react/index.d.ts +375 -1
- package/@types/ui-react/with-schemas/index.d.cts +100 -1
- package/@types/ui-react/with-schemas/index.d.ts +100 -1
- package/@types/ui-react-dom/index.d.cts +112 -0
- package/@types/ui-react-dom/index.d.ts +112 -0
- package/@types/ui-react-dom/with-schemas/index.d.cts +112 -0
- package/@types/ui-react-dom/with-schemas/index.d.ts +112 -0
- package/@types/ui-react-inspector/index.d.cts +6 -2
- package/@types/ui-react-inspector/index.d.ts +6 -2
- package/@types/ui-react-inspector/with-schemas/index.d.cts +118 -2
- package/@types/ui-react-inspector/with-schemas/index.d.ts +118 -2
- package/@types/with-schemas/index.d.cts +1 -0
- package/@types/with-schemas/index.d.ts +1 -0
- package/cjs/es6/index.cjs +49 -43
- 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/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-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-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-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/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-broadcast-channel/index.cjs +1 -0
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -0
- package/cjs/es6/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.cjs +1 -1
- package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
- package/cjs/es6/persisters/index.cjs +5 -5
- package/cjs/es6/persisters/persister-automerge/index.cjs +5 -5
- package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-browser/index.cjs +5 -5
- package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +11 -11
- package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-electric-sql/index.cjs +11 -11
- package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +11 -11
- package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-file/index.cjs +5 -5
- package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-indexed-db/index.cjs +5 -5
- package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-libsql/index.cjs +11 -11
- package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-partykit-client/index.cjs +5 -5
- package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-powersync/index.cjs +11 -11
- package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-remote/index.cjs +5 -5
- package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +11 -11
- package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-sqlite3/index.cjs +11 -11
- package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +11 -11
- package/cjs/es6/persisters/persister-yjs/index.cjs +5 -5
- package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +5 -5
- package/cjs/es6/persisters/with-schemas/index.cjs +5 -5
- package/cjs/es6/synchronizers/index.cjs +49 -43
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +628 -0
- package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +628 -0
- package/cjs/es6/synchronizers/synchronizer-local/index.cjs +53 -48
- package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +53 -48
- package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +61 -62
- package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +61 -62
- package/cjs/es6/synchronizers/with-schemas/index.cjs +49 -43
- 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 +5 -5
- package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +5 -5
- package/cjs/es6/with-schemas/index.cjs +49 -43
- package/cjs/index.cjs +49 -43
- 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/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-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-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-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/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-broadcast-channel/index.cjs +1 -0
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/index.cjs.gz +0 -0
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +1 -0
- package/cjs/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.cjs +1 -1
- package/cjs/min/with-schemas/index.cjs.gz +0 -0
- package/cjs/persisters/index.cjs +5 -5
- package/cjs/persisters/persister-automerge/index.cjs +5 -5
- package/cjs/persisters/persister-automerge/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-browser/index.cjs +5 -5
- package/cjs/persisters/persister-browser/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +11 -11
- package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-electric-sql/index.cjs +11 -11
- package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-expo-sqlite/index.cjs +11 -11
- package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-file/index.cjs +5 -5
- package/cjs/persisters/persister-file/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-indexed-db/index.cjs +5 -5
- package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-libsql/index.cjs +11 -11
- package/cjs/persisters/persister-libsql/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-partykit-client/index.cjs +5 -5
- package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-powersync/index.cjs +11 -11
- package/cjs/persisters/persister-powersync/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-remote/index.cjs +5 -5
- package/cjs/persisters/persister-remote/with-schemas/index.cjs +5 -5
- package/cjs/persisters/persister-sqlite-wasm/index.cjs +11 -11
- package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-sqlite3/index.cjs +11 -11
- package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +11 -11
- package/cjs/persisters/persister-yjs/index.cjs +5 -5
- package/cjs/persisters/persister-yjs/with-schemas/index.cjs +5 -5
- package/cjs/persisters/with-schemas/index.cjs +5 -5
- package/cjs/synchronizers/index.cjs +49 -43
- package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +500 -0
- package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +500 -0
- package/cjs/synchronizers/synchronizer-local/index.cjs +53 -53
- package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +53 -53
- package/cjs/synchronizers/synchronizer-ws-client/index.cjs +61 -62
- package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +61 -62
- package/cjs/synchronizers/with-schemas/index.cjs +49 -43
- 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 +5 -5
- package/cjs/ui-react-inspector/with-schemas/index.cjs +5 -5
- package/cjs/with-schemas/index.cjs +49 -43
- package/es6/index.js +49 -43
- 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/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-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-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-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/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-broadcast-channel/index.js +1 -0
- package/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
- package/es6/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.js +1 -1
- package/es6/min/with-schemas/index.js.gz +0 -0
- package/es6/persisters/index.js +5 -5
- package/es6/persisters/persister-automerge/index.js +5 -5
- package/es6/persisters/persister-automerge/with-schemas/index.js +5 -5
- package/es6/persisters/persister-browser/index.js +5 -5
- package/es6/persisters/persister-browser/with-schemas/index.js +5 -5
- package/es6/persisters/persister-cr-sqlite-wasm/index.js +11 -11
- package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +11 -11
- package/es6/persisters/persister-electric-sql/index.js +11 -11
- package/es6/persisters/persister-electric-sql/with-schemas/index.js +11 -11
- package/es6/persisters/persister-expo-sqlite/index.js +11 -11
- package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +11 -11
- package/es6/persisters/persister-file/index.js +5 -5
- package/es6/persisters/persister-file/with-schemas/index.js +5 -5
- package/es6/persisters/persister-indexed-db/index.js +5 -5
- package/es6/persisters/persister-indexed-db/with-schemas/index.js +5 -5
- package/es6/persisters/persister-libsql/index.js +11 -11
- package/es6/persisters/persister-libsql/with-schemas/index.js +11 -11
- package/es6/persisters/persister-partykit-client/index.js +5 -5
- package/es6/persisters/persister-partykit-client/with-schemas/index.js +5 -5
- package/es6/persisters/persister-powersync/index.js +11 -11
- package/es6/persisters/persister-powersync/with-schemas/index.js +11 -11
- package/es6/persisters/persister-remote/index.js +5 -5
- package/es6/persisters/persister-remote/with-schemas/index.js +5 -5
- package/es6/persisters/persister-sqlite-wasm/index.js +11 -11
- package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +11 -11
- package/es6/persisters/persister-sqlite3/index.js +11 -11
- package/es6/persisters/persister-sqlite3/with-schemas/index.js +11 -11
- package/es6/persisters/persister-yjs/index.js +5 -5
- package/es6/persisters/persister-yjs/with-schemas/index.js +5 -5
- package/es6/persisters/with-schemas/index.js +5 -5
- package/es6/synchronizers/index.js +49 -44
- package/es6/synchronizers/synchronizer-broadcast-channel/index.js +626 -0
- package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +626 -0
- package/es6/synchronizers/synchronizer-local/index.js +53 -48
- package/es6/synchronizers/synchronizer-local/with-schemas/index.js +53 -48
- package/es6/synchronizers/synchronizer-ws-client/index.js +61 -62
- package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +61 -62
- package/es6/synchronizers/with-schemas/index.js +49 -44
- 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 +5 -5
- package/es6/ui-react-inspector/with-schemas/index.js +5 -5
- package/es6/with-schemas/index.js +49 -43
- package/index.js +49 -43
- 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/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-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-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-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/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-broadcast-channel/index.js +1 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
- package/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/package.json +109 -5
- package/persisters/index.js +5 -5
- package/persisters/persister-automerge/index.js +5 -5
- package/persisters/persister-automerge/with-schemas/index.js +5 -5
- package/persisters/persister-browser/index.js +5 -5
- package/persisters/persister-browser/with-schemas/index.js +5 -5
- package/persisters/persister-cr-sqlite-wasm/index.js +11 -11
- package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +11 -11
- package/persisters/persister-electric-sql/index.js +11 -11
- package/persisters/persister-electric-sql/with-schemas/index.js +11 -11
- package/persisters/persister-expo-sqlite/index.js +11 -11
- package/persisters/persister-expo-sqlite/with-schemas/index.js +11 -11
- package/persisters/persister-file/index.js +5 -5
- package/persisters/persister-file/with-schemas/index.js +5 -5
- package/persisters/persister-indexed-db/index.js +5 -5
- package/persisters/persister-indexed-db/with-schemas/index.js +5 -5
- package/persisters/persister-libsql/index.js +11 -11
- package/persisters/persister-libsql/with-schemas/index.js +11 -11
- package/persisters/persister-partykit-client/index.js +5 -5
- package/persisters/persister-partykit-client/with-schemas/index.js +5 -5
- package/persisters/persister-powersync/index.js +11 -11
- package/persisters/persister-powersync/with-schemas/index.js +11 -11
- package/persisters/persister-remote/index.js +5 -5
- package/persisters/persister-remote/with-schemas/index.js +5 -5
- package/persisters/persister-sqlite-wasm/index.js +11 -11
- package/persisters/persister-sqlite-wasm/with-schemas/index.js +11 -11
- package/persisters/persister-sqlite3/index.js +11 -11
- package/persisters/persister-sqlite3/with-schemas/index.js +11 -11
- package/persisters/persister-yjs/index.js +5 -5
- package/persisters/persister-yjs/with-schemas/index.js +5 -5
- package/persisters/with-schemas/index.js +5 -5
- package/readme.md +10 -10
- package/releases.md +8 -8
- package/synchronizers/index.js +49 -44
- package/synchronizers/synchronizer-broadcast-channel/index.js +498 -0
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +498 -0
- package/synchronizers/synchronizer-local/index.js +53 -53
- package/synchronizers/synchronizer-local/with-schemas/index.js +53 -53
- package/synchronizers/synchronizer-ws-client/index.js +61 -62
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +61 -62
- package/synchronizers/with-schemas/index.js +49 -44
- package/ui-react/index.js +139 -74
- package/ui-react/with-schemas/index.js +139 -74
- package/ui-react-inspector/index.js +5 -5
- package/ui-react-inspector/with-schemas/index.js +5 -5
- package/umd/es6/index.js +52 -43
- 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/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-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-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-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/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-broadcast-channel/index.js +1 -0
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
- package/umd/es6/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.js +1 -1
- package/umd/es6/min/with-schemas/index.js.gz +0 -0
- package/umd/es6/persisters/index.js +5 -5
- package/umd/es6/persisters/persister-automerge/index.js +5 -5
- package/umd/es6/persisters/persister-automerge/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-browser/index.js +5 -5
- package/umd/es6/persisters/persister-browser/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +11 -11
- package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-electric-sql/index.js +11 -11
- package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-expo-sqlite/index.js +11 -11
- package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-file/index.js +5 -5
- package/umd/es6/persisters/persister-file/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-indexed-db/index.js +5 -5
- package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-libsql/index.js +11 -11
- package/umd/es6/persisters/persister-libsql/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-partykit-client/index.js +5 -5
- package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-powersync/index.js +11 -11
- package/umd/es6/persisters/persister-powersync/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-remote/index.js +5 -5
- package/umd/es6/persisters/persister-remote/with-schemas/index.js +5 -5
- package/umd/es6/persisters/persister-sqlite-wasm/index.js +11 -11
- package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-sqlite3/index.js +11 -11
- package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +11 -11
- package/umd/es6/persisters/persister-yjs/index.js +5 -5
- package/umd/es6/persisters/persister-yjs/with-schemas/index.js +5 -5
- package/umd/es6/persisters/with-schemas/index.js +5 -5
- package/umd/es6/synchronizers/index.js +52 -43
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +654 -0
- package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +654 -0
- package/umd/es6/synchronizers/synchronizer-local/index.js +56 -48
- package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +56 -48
- package/umd/es6/synchronizers/synchronizer-ws-client/index.js +64 -62
- package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +64 -62
- package/umd/es6/synchronizers/with-schemas/index.js +52 -43
- 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 +5 -5
- package/umd/es6/ui-react-inspector/with-schemas/index.js +5 -5
- package/umd/es6/with-schemas/index.js +52 -43
- package/umd/index.js +52 -47
- 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/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-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-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-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/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-broadcast-channel/index.js +1 -0
- package/umd/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/umd/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -0
- package/umd/min/synchronizers/synchronizer-broadcast-channel/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/with-schemas/index.js +1 -1
- package/umd/min/with-schemas/index.js.gz +0 -0
- package/umd/persisters/index.js +5 -5
- package/umd/persisters/persister-automerge/index.js +5 -5
- package/umd/persisters/persister-automerge/with-schemas/index.js +5 -5
- package/umd/persisters/persister-browser/index.js +5 -5
- package/umd/persisters/persister-browser/with-schemas/index.js +5 -5
- package/umd/persisters/persister-cr-sqlite-wasm/index.js +11 -11
- package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +11 -11
- package/umd/persisters/persister-electric-sql/index.js +11 -11
- package/umd/persisters/persister-electric-sql/with-schemas/index.js +11 -11
- package/umd/persisters/persister-expo-sqlite/index.js +11 -11
- package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +11 -11
- package/umd/persisters/persister-file/index.js +5 -5
- package/umd/persisters/persister-file/with-schemas/index.js +5 -5
- package/umd/persisters/persister-indexed-db/index.js +5 -5
- package/umd/persisters/persister-indexed-db/with-schemas/index.js +5 -5
- package/umd/persisters/persister-libsql/index.js +11 -11
- package/umd/persisters/persister-libsql/with-schemas/index.js +11 -11
- package/umd/persisters/persister-partykit-client/index.js +5 -5
- package/umd/persisters/persister-partykit-client/with-schemas/index.js +5 -5
- package/umd/persisters/persister-powersync/index.js +11 -11
- package/umd/persisters/persister-powersync/with-schemas/index.js +11 -11
- package/umd/persisters/persister-remote/index.js +5 -5
- package/umd/persisters/persister-remote/with-schemas/index.js +5 -5
- package/umd/persisters/persister-sqlite-wasm/index.js +11 -11
- package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +11 -11
- package/umd/persisters/persister-sqlite3/index.js +11 -11
- package/umd/persisters/persister-sqlite3/with-schemas/index.js +11 -11
- package/umd/persisters/persister-yjs/index.js +5 -5
- package/umd/persisters/persister-yjs/with-schemas/index.js +5 -5
- package/umd/persisters/with-schemas/index.js +5 -5
- package/umd/synchronizers/index.js +52 -47
- package/umd/synchronizers/synchronizer-broadcast-channel/index.js +516 -0
- package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +516 -0
- package/umd/synchronizers/synchronizer-local/index.js +56 -57
- package/umd/synchronizers/synchronizer-local/with-schemas/index.js +56 -57
- package/umd/synchronizers/synchronizer-ws-client/index.js +64 -66
- package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +64 -66
- package/umd/synchronizers/with-schemas/index.js +52 -47
- 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 +5 -5
- package/umd/ui-react-inspector/with-schemas/index.js +5 -5
- package/umd/with-schemas/index.js +52 -47
- package/with-schemas/index.js +49 -43
|
@@ -1,42 +1,46 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The persisters module of the TinyBase project provides a simple framework for
|
|
3
|
-
* saving and loading Store data, to and from different
|
|
4
|
-
* underlying storage types.
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* which returns
|
|
8
|
-
* them, these allow you to store your TinyBase data locally, remotely,
|
|
9
|
-
* SQLite databases, and across synchronization boundaries with CRDT
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* |
|
|
15
|
-
* |
|
|
16
|
-
* |
|
|
17
|
-
* |
|
|
18
|
-
* |
|
|
19
|
-
* |
|
|
20
|
-
* |
|
|
21
|
-
* |
|
|
22
|
-
* |
|
|
23
|
-
* |
|
|
24
|
-
* |
|
|
25
|
-
* |
|
|
26
|
-
* |
|
|
27
|
-
* |
|
|
3
|
+
* saving and loading Store and MergeableStore data, to and from different
|
|
4
|
+
* destinations, or underlying storage types.
|
|
5
|
+
*
|
|
6
|
+
* Many entry points are provided (in separately installed modules), each of
|
|
7
|
+
* which returns different types of Persister that can load and save a Store.
|
|
8
|
+
* Between them, these allow you to store your TinyBase data locally, remotely,
|
|
9
|
+
* to SQLite databases, and across synchronization boundaries with CRDT
|
|
10
|
+
* frameworks.
|
|
11
|
+
*
|
|
12
|
+
* |Persister|Storage|Store|MergeableStore
|
|
13
|
+
* |-|-|-|-|
|
|
14
|
+
* |SessionPersister|Browser session storage|Yes|Yes
|
|
15
|
+
* |LocalPersister|Browser local storage|Yes|Yes
|
|
16
|
+
* |FilePersister|Local file (where possible)|Yes|Yes
|
|
17
|
+
* |IndexedDbPersister|Browser IndexedDB|Yes|No
|
|
18
|
+
* |RemotePersister|Remote server|Yes|No
|
|
19
|
+
* |Sqlite3Persister|SQLite in Node, via [sqlite3](https://github.com/TryGhost/node-sqlite3)|Yes|Yes*
|
|
20
|
+
* |SqliteWasmPersister|SQLite in a browser, via [sqlite-wasm](https://github.com/tomayac/sqlite-wasm)|Yes|Yes*
|
|
21
|
+
* |ExpoSqlitePersister|SQLite in React Native, via [expo-sqlite](https://github.com/expo/expo/tree/main/packages/expo-sqlite)|Yes|Yes*
|
|
22
|
+
* |CrSqliteWasmPersister|SQLite CRDTs, via [cr-sqlite-wasm](https://github.com/vlcn-io/cr-sqlite)|Yes|No
|
|
23
|
+
* |ElectricSqlPersister|Electric SQL, via [electric-sql](https://github.com/electric-sql/electric)|Yes|No
|
|
24
|
+
* |LibSqlPersister|LibSQL for Turso, via [libsql-client](https://github.com/tursodatabase/libsql-client-ts)|Yes|No
|
|
25
|
+
* |PowerSyncPersister|PowerSync, via [powersync-sdk](https://github.com/powersync-ja/powersync-js)|Yes|No
|
|
26
|
+
* |YjsPersister|Yjs CRDTs, via [yjs](https://github.com/yjs/yjs)|Yes|No
|
|
27
|
+
* |SqliteWasmPersister|Automerge CRDTs, via [automerge-repo](https://github.com/automerge/automerge-repo)|Yes|No
|
|
28
|
+
* |PartyKitPersister|[PartyKit](https://www.partykit.io/), via the persister-partykit-server module|Yes|No|
|
|
29
|
+
*
|
|
30
|
+
* (*) Note that SQLite-based Persisters can currently only persist
|
|
31
|
+
* MergeableStore data when using the JSON-based DpcJson mode, and not in a
|
|
32
|
+
* tabular fashion.
|
|
28
33
|
*
|
|
29
34
|
* Since persistence requirements can be different for every app, the
|
|
30
35
|
* createCustomPersister function in this module can also be used to easily
|
|
31
36
|
* create a fully customized way to save and load Store data.
|
|
32
|
-
* @see
|
|
33
|
-
* @see Database Persistence guide
|
|
34
|
-
* @see Synchronizing Data guide
|
|
37
|
+
* @see Persistence guides
|
|
35
38
|
* @see Countries demo
|
|
36
39
|
* @see Todo App demos
|
|
37
40
|
* @see Drawing demo
|
|
38
41
|
* @packageDocumentation
|
|
39
42
|
* @module persisters
|
|
43
|
+
* @since v1.0.0
|
|
40
44
|
*/
|
|
41
45
|
|
|
42
46
|
import type {Changes, Content, Store} from '../store/index.d.cts';
|
|
@@ -48,29 +52,50 @@ import type {
|
|
|
48
52
|
import type {Id} from '../common/index.d.cts';
|
|
49
53
|
|
|
50
54
|
/**
|
|
51
|
-
* The Persists enum
|
|
55
|
+
* The Persists enum is used to indicate whether a Persister can support a
|
|
56
|
+
* regular Store, a MergeableStore, or both.
|
|
52
57
|
*
|
|
53
|
-
*
|
|
58
|
+
* The enum is intended to be used by the author of a Persister to indicate
|
|
59
|
+
* which types of store can be persisted. If you discover type errors when
|
|
60
|
+
* trying to instantiate a Persister, it is most likely that you are passing in
|
|
61
|
+
* an unsupported type of store.
|
|
62
|
+
*
|
|
63
|
+
* See the createCustomPersister method for an example of this enum being used.
|
|
54
64
|
* @category Mergeable
|
|
55
65
|
* @since v5.0.0
|
|
56
66
|
*/
|
|
57
67
|
export const enum Persists {
|
|
58
68
|
/**
|
|
59
|
-
*
|
|
69
|
+
* Indicates that only a regular Store can be supported by a Persister.
|
|
70
|
+
* @category Enum
|
|
71
|
+
* @since v5.0.0
|
|
60
72
|
*/
|
|
61
73
|
StoreOnly = 1,
|
|
62
74
|
/**
|
|
63
|
-
*
|
|
75
|
+
* Indicates that only a MergeableStore can be supported by a Persister.
|
|
76
|
+
* @category Enum
|
|
77
|
+
* @since v5.0.0
|
|
64
78
|
*/
|
|
65
79
|
MergeableStoreOnly = 2,
|
|
66
80
|
/**
|
|
67
|
-
*
|
|
81
|
+
* Indicates that either a regular Store or a MergeableStore can be supported
|
|
82
|
+
* by a Persister.
|
|
83
|
+
* @category Enum
|
|
84
|
+
* @since v5.0.0
|
|
68
85
|
*/
|
|
69
86
|
StoreOrMergeableStore = 3,
|
|
70
87
|
}
|
|
71
88
|
|
|
72
89
|
/**
|
|
73
|
-
* The PersistedStore type
|
|
90
|
+
* The PersistedStore type is a generic representation of the type of store
|
|
91
|
+
* being handled by a Persister.
|
|
92
|
+
*
|
|
93
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
94
|
+
* whether the Persister is handling a regular Store, a MergeableStore, or
|
|
95
|
+
* either.
|
|
96
|
+
*
|
|
97
|
+
* If the generic parameter is unspecified, the StoreOnly enum value is used,
|
|
98
|
+
* meaning that PersistedStore is equivalent to a regular Store.
|
|
74
99
|
* @category Mergeable
|
|
75
100
|
* @since v5.0.0
|
|
76
101
|
*/
|
|
@@ -82,7 +107,16 @@ export type PersistedStore<Persist extends Persists = Persists.StoreOnly> =
|
|
|
82
107
|
: Store;
|
|
83
108
|
|
|
84
109
|
/**
|
|
85
|
-
* The PersistedContent type
|
|
110
|
+
* The PersistedContent type is a generic representation of the content in the
|
|
111
|
+
* type of store being handled by a Persister.
|
|
112
|
+
*
|
|
113
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
114
|
+
* whether the Persister is handling content from a regular Store (the Content
|
|
115
|
+
* type), a MergeableStore (the MergeableContent type), or either (the union of
|
|
116
|
+
* the two).
|
|
117
|
+
*
|
|
118
|
+
* If the generic parameter is unspecified, the StoreOnly enum value is used,
|
|
119
|
+
* meaning that PersistedContent is equivalent to the Content type.
|
|
86
120
|
* @category Mergeable
|
|
87
121
|
* @since v5.0.0
|
|
88
122
|
*/
|
|
@@ -94,7 +128,13 @@ export type PersistedContent<Persist extends Persists = Persists.StoreOnly> =
|
|
|
94
128
|
: Content;
|
|
95
129
|
|
|
96
130
|
/**
|
|
97
|
-
* The PersistedChanges type
|
|
131
|
+
* The PersistedChanges type is a generic representation of changes made to the
|
|
132
|
+
* type of store being handled by a Persister.
|
|
133
|
+
*
|
|
134
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
135
|
+
* whether the Persister is handling changes for a regular Store (the Changes
|
|
136
|
+
* type), a MergeableStore (the MergeableChanges type), or either (the union of
|
|
137
|
+
* the two).
|
|
98
138
|
* @category Mergeable
|
|
99
139
|
* @since v5.0.0
|
|
100
140
|
*/
|
|
@@ -106,14 +146,19 @@ export type PersistedChanges<Persist extends Persists = Persists.StoreOnly> =
|
|
|
106
146
|
: Changes;
|
|
107
147
|
|
|
108
148
|
/**
|
|
109
|
-
* A PersisterListener is a callback that lets a
|
|
110
|
-
* a change has happened to the underlying data.
|
|
149
|
+
* A PersisterListener is a generic representation of the callback that lets a
|
|
150
|
+
* Persister inform the store that a change has happened to the underlying data.
|
|
151
|
+
*
|
|
152
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
153
|
+
* whether the Persister is handling content and changes from a regular Store, a
|
|
154
|
+
* MergeableStore, or either.
|
|
111
155
|
*
|
|
112
156
|
* If the listener is called with the `changes` parameter, it will be used to
|
|
113
157
|
* make an incremental change to the Store. If not, but the `content` parameter
|
|
114
158
|
* is available, that will be used to make a wholesale change to the Store. If
|
|
115
159
|
* neither are present, the content will be loaded using the Persister's load
|
|
116
|
-
* method. Prior to v5.0, these parameters were callbacks
|
|
160
|
+
* method. Prior to v5.0, these parameters were callbacks and the overall type
|
|
161
|
+
* was non-generic.
|
|
117
162
|
* @param content If provided, this is a Content object from the the Persister
|
|
118
163
|
* that will be used to immediately wholesale update the Store.
|
|
119
164
|
* @param changes If provided, this is a Changes object from the the Persister
|
|
@@ -133,14 +178,19 @@ export type PersisterListener<Persist extends Persists = Persists.StoreOnly> = (
|
|
|
133
178
|
*
|
|
134
179
|
* A PersisterStats object is returned from the getStats method.
|
|
135
180
|
* @category Development
|
|
181
|
+
* @since v1.0.0
|
|
136
182
|
*/
|
|
137
183
|
export type PersisterStats = {
|
|
138
184
|
/**
|
|
139
185
|
* The number of times data has been loaded.
|
|
186
|
+
* @category Stat
|
|
187
|
+
* @since v1.0.0
|
|
140
188
|
*/
|
|
141
189
|
loads: number;
|
|
142
190
|
/**
|
|
143
191
|
* The number of times data has been saved.
|
|
192
|
+
* @category Stat
|
|
193
|
+
* @since v1.0.0
|
|
144
194
|
*/
|
|
145
195
|
saves: number;
|
|
146
196
|
};
|
|
@@ -252,27 +302,37 @@ export type DpcJson = {
|
|
|
252
302
|
* The mode to be used for persisting the Store to the database, in this case
|
|
253
303
|
* JSON serialization. See the DpcTabular type for the alternative tabular
|
|
254
304
|
* mapping mode.
|
|
305
|
+
* @category Configuration
|
|
306
|
+
* @since v4.0.0
|
|
255
307
|
*/
|
|
256
308
|
mode: 'json';
|
|
257
309
|
/**
|
|
258
310
|
* An optional string which indicates the name of a table in the database
|
|
259
311
|
* which will be used to serialize the Store content into. It defaults to
|
|
260
312
|
* `tinybase`.
|
|
313
|
+
* @category Configuration
|
|
314
|
+
* @since v4.0.0
|
|
261
315
|
*/
|
|
262
316
|
storeTableName?: string;
|
|
263
317
|
/**
|
|
264
318
|
* The optional name of the column in the database table that will be used as
|
|
265
319
|
* the Id for the Store, defaulting to '_id', since v5.0.
|
|
320
|
+
* @category Configuration
|
|
321
|
+
* @since v4.0.0
|
|
266
322
|
*/
|
|
267
323
|
storeIdColumnName?: string;
|
|
268
324
|
/**
|
|
269
325
|
* The optional name of the column in the database table that will be used for
|
|
270
326
|
* the JSON of the Store, defaulting to 'store', since v5.0.
|
|
327
|
+
* @category Configuration
|
|
328
|
+
* @since v4.0.0
|
|
271
329
|
*/
|
|
272
330
|
storeColumnName?: string;
|
|
273
331
|
/**
|
|
274
332
|
* How often the Persister should poll the database for any changes made to it
|
|
275
333
|
* by other clients, defaulting to 1 second.
|
|
334
|
+
* @category Configuration
|
|
335
|
+
* @since v4.0.0
|
|
276
336
|
*/
|
|
277
337
|
autoLoadIntervalSeconds?: number;
|
|
278
338
|
};
|
|
@@ -281,6 +341,11 @@ export type DpcJson = {
|
|
|
281
341
|
* The DpcTabular type describes the configuration of a database-oriented
|
|
282
342
|
* Persister that is operating in tabular mapping mode.
|
|
283
343
|
*
|
|
344
|
+
* This configuration can only be used when the Persister is persisting a
|
|
345
|
+
* regular Store. For those database-oriented Persister types that support
|
|
346
|
+
* MergeableStore data, you will need to use JSON-serialization, es described
|
|
347
|
+
* in the DpcJson section.
|
|
348
|
+
*
|
|
284
349
|
* It is important to note that both the tabular mapping in ('save') and out
|
|
285
350
|
* ('load') of an underlying database are disabled by default. This is to ensure
|
|
286
351
|
* that if you pass in an existing populated database you don't run the
|
|
@@ -343,30 +408,42 @@ export type DpcTabular = {
|
|
|
343
408
|
* The mode to be used for persisting the Store to the database, in this case
|
|
344
409
|
* tabular mapping. See the DpcJson type for the alternative JSON
|
|
345
410
|
* serialization mode.
|
|
411
|
+
* @category Configuration
|
|
412
|
+
* @since v4.0.0
|
|
346
413
|
*/
|
|
347
414
|
mode: 'tabular';
|
|
348
415
|
/**
|
|
349
416
|
* The settings for how the Store Tables are mapped to and from the database.
|
|
417
|
+
* @category Configuration
|
|
418
|
+
* @since v4.0.0
|
|
350
419
|
*/
|
|
351
420
|
tables?: {
|
|
352
421
|
/**
|
|
353
422
|
* The settings for how the database tables are mapped into the Store Tables
|
|
354
423
|
* when loading.
|
|
424
|
+
* @category Configuration
|
|
425
|
+
* @since v4.0.0
|
|
355
426
|
*/
|
|
356
427
|
load?: DpcTabularLoad;
|
|
357
428
|
/**
|
|
358
429
|
* The settings for how the Store Tables are mapped out to the database
|
|
359
430
|
* tables when saving.
|
|
431
|
+
* @category Configuration
|
|
432
|
+
* @since v4.0.0
|
|
360
433
|
*/
|
|
361
434
|
save?: DpcTabularSave;
|
|
362
435
|
};
|
|
363
436
|
/**
|
|
364
437
|
* The settings for how the Store Values are mapped to and from the database.
|
|
438
|
+
* @category Configuration
|
|
439
|
+
* @since v4.0.0
|
|
365
440
|
*/
|
|
366
441
|
values?: DpcTabularValues;
|
|
367
442
|
/**
|
|
368
443
|
* How often the Persister should poll the database for any changes made to it
|
|
369
444
|
* by other clients, defaulting to 1 second.
|
|
445
|
+
* @category Configuration
|
|
446
|
+
* @since v4.0.0
|
|
370
447
|
*/
|
|
371
448
|
autoLoadIntervalSeconds?: number;
|
|
372
449
|
};
|
|
@@ -453,11 +530,15 @@ export type DpcTabularLoad = {
|
|
|
453
530
|
/**
|
|
454
531
|
* The Id of the Store Table into which data from this database table
|
|
455
532
|
* should be loaded.
|
|
533
|
+
* @category Configuration
|
|
534
|
+
* @since v4.0.0
|
|
456
535
|
*/
|
|
457
536
|
tableId: Id;
|
|
458
537
|
/**
|
|
459
538
|
* The optional name of the column in the database table that will be
|
|
460
539
|
* used as the Row Ids in the Store Table, defaulting to '_id'.
|
|
540
|
+
* @category Configuration
|
|
541
|
+
* @since v4.0.0
|
|
461
542
|
*/
|
|
462
543
|
rowIdColumnName?: string;
|
|
463
544
|
}
|
|
@@ -562,21 +643,29 @@ export type DpcTabularSave = {
|
|
|
562
643
|
/**
|
|
563
644
|
* The name of the database table out to which the Store Table should be
|
|
564
645
|
* saved.
|
|
646
|
+
* @category Configuration
|
|
647
|
+
* @since v4.0.0
|
|
565
648
|
*/
|
|
566
649
|
tableName: string;
|
|
567
650
|
/**
|
|
568
651
|
* The optional name of the column in the database table that will be
|
|
569
652
|
* used to save the Row Ids from the Store Table, defaulting to '_id'.
|
|
653
|
+
* @category Configuration
|
|
654
|
+
* @since v4.0.0
|
|
570
655
|
*/
|
|
571
656
|
rowIdColumnName?: string;
|
|
572
657
|
/**
|
|
573
658
|
* Whether columns in the database table will be removed if they are
|
|
574
659
|
* empty in the Store Table, defaulting to false.
|
|
660
|
+
* @category Configuration
|
|
661
|
+
* @since v4.0.0
|
|
575
662
|
*/
|
|
576
663
|
deleteEmptyColumns?: boolean;
|
|
577
664
|
/**
|
|
578
|
-
* Whether tables in the database will be removed if the Store Table
|
|
579
|
-
*
|
|
665
|
+
* Whether tables in the database will be removed if the Store Table is
|
|
666
|
+
* empty, defaulting to false.
|
|
667
|
+
* @category Configuration
|
|
668
|
+
* @since v4.0.0
|
|
580
669
|
*/
|
|
581
670
|
deleteEmptyTable?: boolean;
|
|
582
671
|
}
|
|
@@ -615,15 +704,21 @@ export type DpcTabularSave = {
|
|
|
615
704
|
export type DpcTabularValues = {
|
|
616
705
|
/**
|
|
617
706
|
* Whether Store Values will be loaded from a database table.
|
|
707
|
+
* @category Configuration
|
|
708
|
+
* @since v4.0.0
|
|
618
709
|
*/
|
|
619
710
|
load?: boolean;
|
|
620
711
|
/**
|
|
621
712
|
* Whether Store Values will be saved to a database table.
|
|
713
|
+
* @category Configuration
|
|
714
|
+
* @since v4.0.0
|
|
622
715
|
*/
|
|
623
716
|
save?: boolean;
|
|
624
717
|
/**
|
|
625
718
|
* The optional name of the database table from and to which the Store Values
|
|
626
719
|
* should be loaded or saved, defaulting to `tinybase_values`.
|
|
720
|
+
* @category Configuration
|
|
721
|
+
* @since v4.0.0
|
|
627
722
|
*/
|
|
628
723
|
tableName?: string;
|
|
629
724
|
};
|
|
@@ -632,15 +727,22 @@ export type DpcTabularValues = {
|
|
|
632
727
|
* A Persister object lets you save and load Store data to and from different
|
|
633
728
|
* locations, or underlying storage types.
|
|
634
729
|
*
|
|
635
|
-
* This is useful for preserving Store data between browser
|
|
636
|
-
* saving or loading browser state to or from a server, or
|
|
637
|
-
* disk in a environment with filesystem access.
|
|
730
|
+
* This is useful for preserving Store or MergeableStore data between browser
|
|
731
|
+
* sessions or reloads, saving or loading browser state to or from a server, or
|
|
732
|
+
* saving Store data to disk in a environment with filesystem access.
|
|
638
733
|
*
|
|
639
734
|
* Creating a Persister depends on the choice of underlying storage where the
|
|
640
735
|
* data is to be stored. Options include the createSessionPersister function,
|
|
641
736
|
* the createLocalPersister function, the createRemotePersister function, and
|
|
642
|
-
* the createFilePersister function
|
|
643
|
-
* be used to easily create a fully
|
|
737
|
+
* the createFilePersister function, as just simple examples. The
|
|
738
|
+
* createCustomPersister function can also be used to easily create a fully
|
|
739
|
+
* customized way to save and load Store data.
|
|
740
|
+
*
|
|
741
|
+
* Using the values of the Persists enum, the generic parameter to the Persister
|
|
742
|
+
* indicates whether it can handle a regular Store, a MergeableStore, or either.
|
|
743
|
+
* Consult the table in the overall persisters module documentation to see
|
|
744
|
+
* current support for each. The different levels of support are also described
|
|
745
|
+
* for each of the types of Persister themselves.
|
|
644
746
|
*
|
|
645
747
|
* A Persister lets you explicit save or load data, with the save method and the
|
|
646
748
|
* load method respectively. These methods are both asynchronous (since the
|
|
@@ -735,6 +837,7 @@ export type DpcTabularValues = {
|
|
|
735
837
|
* sessionStorage.clear();
|
|
736
838
|
* ```
|
|
737
839
|
* @category Persister
|
|
840
|
+
* @since v1.0.0
|
|
738
841
|
*/
|
|
739
842
|
export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
740
843
|
//
|
|
@@ -800,6 +903,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
800
903
|
* sessionStorage.clear();
|
|
801
904
|
* ```
|
|
802
905
|
* @category Load
|
|
906
|
+
* @since v1.0.0
|
|
803
907
|
*/
|
|
804
908
|
load(initialContent?: Content): Promise<this>;
|
|
805
909
|
|
|
@@ -856,6 +960,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
856
960
|
* sessionStorage.clear();
|
|
857
961
|
* ```
|
|
858
962
|
* @category Load
|
|
963
|
+
* @since v1.0.0
|
|
859
964
|
*/
|
|
860
965
|
startAutoLoad(initialContent?: Content): Promise<this>;
|
|
861
966
|
|
|
@@ -903,6 +1008,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
903
1008
|
* sessionStorage.clear();
|
|
904
1009
|
* ```
|
|
905
1010
|
* @category Load
|
|
1011
|
+
* @since v1.0.0
|
|
906
1012
|
*/
|
|
907
1013
|
stopAutoLoad(): this;
|
|
908
1014
|
|
|
@@ -964,6 +1070,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
964
1070
|
* sessionStorage.clear();
|
|
965
1071
|
* ```
|
|
966
1072
|
* @category Save
|
|
1073
|
+
* @since v1.0.0
|
|
967
1074
|
*/
|
|
968
1075
|
save(): Promise<this>;
|
|
969
1076
|
|
|
@@ -1004,6 +1111,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1004
1111
|
* sessionStorage.clear();
|
|
1005
1112
|
* ```
|
|
1006
1113
|
* @category Save
|
|
1114
|
+
* @since v1.0.0
|
|
1007
1115
|
*/
|
|
1008
1116
|
startAutoSave(): Promise<this>;
|
|
1009
1117
|
|
|
@@ -1044,6 +1152,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1044
1152
|
* sessionStorage.clear();
|
|
1045
1153
|
* ```
|
|
1046
1154
|
* @category Save
|
|
1155
|
+
* @since v1.0.0
|
|
1047
1156
|
*/
|
|
1048
1157
|
stopAutoSave(): this;
|
|
1049
1158
|
|
|
@@ -1128,9 +1237,9 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1128
1237
|
schedule(...actions: Promise<any>[]): Promise<this>;
|
|
1129
1238
|
|
|
1130
1239
|
/**
|
|
1131
|
-
* The getStore method returns a reference to the underlying Store
|
|
1132
|
-
* backing this Persister object.
|
|
1133
|
-
* @returns A reference to the Store.
|
|
1240
|
+
* The getStore method returns a reference to the underlying Store or
|
|
1241
|
+
* MergeableStore that is backing this Persister object.
|
|
1242
|
+
* @returns A reference to the Store or MergeableStore.
|
|
1134
1243
|
* @example
|
|
1135
1244
|
* This example creates a Persister object against a newly-created Store and
|
|
1136
1245
|
* then gets its reference in order to update its data.
|
|
@@ -1150,6 +1259,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1150
1259
|
* sessionStorage.clear();
|
|
1151
1260
|
* ```
|
|
1152
1261
|
* @category Getter
|
|
1262
|
+
* @since v1.0.0
|
|
1153
1263
|
*/
|
|
1154
1264
|
getStore(): PersistedStore<Persist>;
|
|
1155
1265
|
|
|
@@ -1183,6 +1293,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1183
1293
|
* // -> 0
|
|
1184
1294
|
* ```
|
|
1185
1295
|
* @category Lifecycle
|
|
1296
|
+
* @since v1.0.0
|
|
1186
1297
|
*/
|
|
1187
1298
|
destroy(): this;
|
|
1188
1299
|
|
|
@@ -1228,6 +1339,7 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1228
1339
|
* sessionStorage.clear();
|
|
1229
1340
|
* ```
|
|
1230
1341
|
* @category Development
|
|
1342
|
+
* @since v1.0.0
|
|
1231
1343
|
*/
|
|
1232
1344
|
getStats(): PersisterStats;
|
|
1233
1345
|
//
|
|
@@ -1272,41 +1384,43 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1272
1384
|
* @param onIgnoredError An optional handler for the errors that the Persister
|
|
1273
1385
|
* would otherwise ignore when trying to save or load data. This is suitable for
|
|
1274
1386
|
* debugging persistence issues in a development environment, since v4.0.4.
|
|
1275
|
-
* @param
|
|
1276
|
-
* Store are supported by this Persister: `1` indicates
|
|
1277
|
-
* supported, `2` indicates only a MergeableStore is
|
|
1278
|
-
* indicates that both Store and MergeableStore are
|
|
1387
|
+
* @param persist Since v5.0, an optional integer from the Persists enum to
|
|
1388
|
+
* indicate which types of Store are supported by this Persister: `1` indicates
|
|
1389
|
+
* only a regular Store is supported, `2` indicates only a MergeableStore is
|
|
1390
|
+
* supported, and `3` indicates that both Store and MergeableStore are
|
|
1391
|
+
* supported.
|
|
1279
1392
|
* @returns A reference to the new Persister object.
|
|
1280
1393
|
* @example
|
|
1281
|
-
* This example creates a custom Persister object and persists
|
|
1282
|
-
* local string called `
|
|
1283
|
-
* for changes every second.
|
|
1394
|
+
* This example creates a custom Persister object and persists a Store to a
|
|
1395
|
+
* local string called `persistedJson` and which would automatically load by
|
|
1396
|
+
* polling for changes every second. It implicitly supports only a regular
|
|
1397
|
+
* Store.
|
|
1284
1398
|
*
|
|
1285
1399
|
* ```js
|
|
1286
1400
|
* import {createCustomPersister, createStore} from 'tinybase';
|
|
1287
1401
|
*
|
|
1288
1402
|
* const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
|
|
1289
|
-
* let
|
|
1403
|
+
* let persistedJson;
|
|
1290
1404
|
*
|
|
1291
1405
|
* const persister = createCustomPersister(
|
|
1292
1406
|
* store,
|
|
1293
1407
|
* async () => {
|
|
1294
1408
|
* // getPersisted
|
|
1295
|
-
* return JSON.parse(
|
|
1409
|
+
* return JSON.parse(persistedJson);
|
|
1296
1410
|
* },
|
|
1297
1411
|
* async (getContent) => {
|
|
1298
1412
|
* // setPersisted
|
|
1299
|
-
*
|
|
1413
|
+
* persistedJson = JSON.stringify(getContent());
|
|
1300
1414
|
* },
|
|
1301
1415
|
* (listener) => setInterval(listener, 1000),
|
|
1302
1416
|
* (interval) => clearInterval(interval),
|
|
1303
1417
|
* );
|
|
1304
1418
|
*
|
|
1305
1419
|
* await persister.save();
|
|
1306
|
-
* console.log(
|
|
1420
|
+
* console.log(persistedJson);
|
|
1307
1421
|
* // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
|
|
1308
1422
|
*
|
|
1309
|
-
*
|
|
1423
|
+
* persistedJson = '[{"pets":{"fido":{"species":"dog","color":"brown"}}},{}]';
|
|
1310
1424
|
* await persister.load();
|
|
1311
1425
|
*
|
|
1312
1426
|
* console.log(store.getTables());
|
|
@@ -1314,7 +1428,77 @@ export interface Persister<Persist extends Persists = Persists.StoreOnly> {
|
|
|
1314
1428
|
*
|
|
1315
1429
|
* persister.destroy();
|
|
1316
1430
|
* ```
|
|
1431
|
+
* @example
|
|
1432
|
+
* This example demonstrates a Persister creation function which returns a
|
|
1433
|
+
* Persister. This can persists a store to a local string called `persistedJson`
|
|
1434
|
+
* and which would automatically load by polling for changes every second.
|
|
1435
|
+
* It emits warnings to the console and explicitly supports either a Store or a
|
|
1436
|
+
* MergeableStore.
|
|
1437
|
+
*
|
|
1438
|
+
* ```js
|
|
1439
|
+
* import {
|
|
1440
|
+
* Persists,
|
|
1441
|
+
* createCustomPersister,
|
|
1442
|
+
* createMergeableStore,
|
|
1443
|
+
* createStore,
|
|
1444
|
+
* } from 'tinybase';
|
|
1445
|
+
*
|
|
1446
|
+
* let persistedJson;
|
|
1447
|
+
* const createJsonPersister = (storeOrMergeableStore) =>
|
|
1448
|
+
* createCustomPersister(
|
|
1449
|
+
* storeOrMergeableStore,
|
|
1450
|
+
* async () => {
|
|
1451
|
+
* // getPersisted
|
|
1452
|
+
* return JSON.parse(persistedJson);
|
|
1453
|
+
* },
|
|
1454
|
+
* async (getContent) => {
|
|
1455
|
+
* // setPersisted
|
|
1456
|
+
* persistedJson = JSON.stringify(getContent());
|
|
1457
|
+
* },
|
|
1458
|
+
* (listener) => setInterval(listener, 1000),
|
|
1459
|
+
* (interval) => clearInterval(interval),
|
|
1460
|
+
* console.warn,
|
|
1461
|
+
* Persists.StoreOrMergeableStore,
|
|
1462
|
+
* );
|
|
1463
|
+
*
|
|
1464
|
+
* const store = createStore();
|
|
1465
|
+
* store.setTables({pets: {fido: {species: 'dog'}}});
|
|
1466
|
+
* const storePersister = createJsonPersister(store);
|
|
1467
|
+
* await storePersister.save();
|
|
1468
|
+
* console.log(persistedJson);
|
|
1469
|
+
* // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
|
|
1470
|
+
* storePersister.destroy();
|
|
1471
|
+
*
|
|
1472
|
+
* const mergeableStore = createMergeableStore('mergeableStore1'); // !resetHlc
|
|
1473
|
+
* mergeableStore.setTables({pets: {fido: {species: 'dog'}}});
|
|
1474
|
+
* const mergeableStorePersister = createJsonPersister(mergeableStore);
|
|
1475
|
+
* await mergeableStorePersister.save();
|
|
1476
|
+
* console.log(JSON.parse(persistedJson));
|
|
1477
|
+
* // ->
|
|
1478
|
+
* [
|
|
1479
|
+
* [
|
|
1480
|
+
* {
|
|
1481
|
+
* pets: [
|
|
1482
|
+
* {
|
|
1483
|
+
* fido: [
|
|
1484
|
+
* {species: ['dog', 'Nn1JUF-----Zjl0M', 4176151067]},
|
|
1485
|
+
* '',
|
|
1486
|
+
* 2722999044,
|
|
1487
|
+
* ],
|
|
1488
|
+
* },
|
|
1489
|
+
* '',
|
|
1490
|
+
* 3367164653,
|
|
1491
|
+
* ],
|
|
1492
|
+
* },
|
|
1493
|
+
* '',
|
|
1494
|
+
* 30627183,
|
|
1495
|
+
* ],
|
|
1496
|
+
* [{}, '', 0],
|
|
1497
|
+
* ];
|
|
1498
|
+
* mergeableStorePersister.destroy();
|
|
1499
|
+
* ```
|
|
1317
1500
|
* @category Creation
|
|
1501
|
+
* @since v1.0.0
|
|
1318
1502
|
*/
|
|
1319
1503
|
export function createCustomPersister<
|
|
1320
1504
|
ListeningHandle,
|
|
@@ -1331,5 +1515,5 @@ export function createCustomPersister<
|
|
|
1331
1515
|
) => ListeningHandle,
|
|
1332
1516
|
delPersisterListener: (listeningHandle: ListeningHandle) => void,
|
|
1333
1517
|
onIgnoredError?: (error: any) => void,
|
|
1334
|
-
|
|
1518
|
+
persist?: Persist,
|
|
1335
1519
|
): Persister<Persist>;
|