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 {
|
|
@@ -54,29 +58,61 @@ import type {
|
|
|
54
58
|
import type {TableIdFromSchema} from '../../_internal/store/with-schemas/index.d.cts';
|
|
55
59
|
|
|
56
60
|
/**
|
|
57
|
-
* The Persists enum
|
|
61
|
+
* The Persists enum is used to indicate whether a Persister can support a
|
|
62
|
+
* regular Store, a MergeableStore, or both.
|
|
63
|
+
*
|
|
64
|
+
* The enum is intended to be used by the author of a Persister to indicate
|
|
65
|
+
* which types of store can be persisted. If you discover type errors when
|
|
66
|
+
* trying to instantiate a Persister, it is most likely that you are passing in
|
|
67
|
+
* an unsupported type of store.
|
|
58
68
|
*
|
|
59
|
-
*
|
|
69
|
+
* See the createCustomPersister method for an example of this enum being used.
|
|
60
70
|
* @category Mergeable
|
|
61
71
|
* @since v5.0.0
|
|
62
72
|
*/
|
|
63
73
|
export const enum Persists {
|
|
64
74
|
/**
|
|
65
|
-
*
|
|
75
|
+
* Indicates that only a regular Store can be supported by a Persister.
|
|
76
|
+
* @category Enum
|
|
77
|
+
* @since v5.0.0
|
|
66
78
|
*/
|
|
67
79
|
StoreOnly = 1,
|
|
68
80
|
/**
|
|
69
|
-
*
|
|
81
|
+
* Indicates that only a MergeableStore can be supported by a Persister.
|
|
82
|
+
* @category Enum
|
|
83
|
+
* @since v5.0.0
|
|
70
84
|
*/
|
|
71
85
|
MergeableStoreOnly = 2,
|
|
72
86
|
/**
|
|
73
|
-
*
|
|
87
|
+
* Indicates that either a regular Store or a MergeableStore can be supported
|
|
88
|
+
* by a Persister.
|
|
89
|
+
* @category Enum
|
|
90
|
+
* @since v5.0.0
|
|
74
91
|
*/
|
|
75
92
|
StoreOrMergeableStore = 3,
|
|
76
93
|
}
|
|
77
94
|
|
|
78
95
|
/**
|
|
79
|
-
* The PersistedStore type
|
|
96
|
+
* The PersistedStore type is a generic representation of the type of store
|
|
97
|
+
* being handled by a Persister.
|
|
98
|
+
*
|
|
99
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
100
|
+
*
|
|
101
|
+
* ```ts override
|
|
102
|
+
* export type PersistedStore<Persist extends Persists = Persists.StoreOnly> =
|
|
103
|
+
* Persist extends Persists.StoreOrMergeableStore
|
|
104
|
+
* ? Store | MergeableStore
|
|
105
|
+
* : Persist extends Persists.MergeableStoreOnly
|
|
106
|
+
* ? MergeableStore
|
|
107
|
+
* : Store;
|
|
108
|
+
* ```
|
|
109
|
+
*
|
|
110
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
111
|
+
* whether the Persister is handling a regular Store, a MergeableStore, or
|
|
112
|
+
* either.
|
|
113
|
+
*
|
|
114
|
+
* If the generic parameter is unspecified, the StoreOnly enum value is used,
|
|
115
|
+
* meaning that PersistedStore is equivalent to a regular Store.
|
|
80
116
|
* @category Mergeable
|
|
81
117
|
* @since v5.0.0
|
|
82
118
|
*/
|
|
@@ -90,7 +126,27 @@ export type PersistedStore<
|
|
|
90
126
|
: Store<Schemas>;
|
|
91
127
|
|
|
92
128
|
/**
|
|
93
|
-
* The PersistedContent type
|
|
129
|
+
* The PersistedContent type is a generic representation of the content in the
|
|
130
|
+
* type of store being handled by a Persister.
|
|
131
|
+
*
|
|
132
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
133
|
+
*
|
|
134
|
+
* ```ts override
|
|
135
|
+
* export type PersistedContent<Persist extends Persists = Persists.StoreOnly> =
|
|
136
|
+
* Persist extends Persists.StoreOrMergeableStore
|
|
137
|
+
* ? Content | MergeableContent
|
|
138
|
+
* : Persist extends Persists.MergeableStoreOnly
|
|
139
|
+
* ? MergeableContent
|
|
140
|
+
* : Content;
|
|
141
|
+
* ```
|
|
142
|
+
*
|
|
143
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
144
|
+
* whether the Persister is handling content from a regular Store (the Content
|
|
145
|
+
* type), a MergeableStore (the MergeableContent type), or either (the union of
|
|
146
|
+
* the two).
|
|
147
|
+
*
|
|
148
|
+
* If the generic parameter is unspecified, the StoreOnly enum value is used,
|
|
149
|
+
* meaning that PersistedContent is equivalent to the Content type.
|
|
94
150
|
* @category Mergeable
|
|
95
151
|
* @since v5.0.0
|
|
96
152
|
*/
|
|
@@ -104,7 +160,24 @@ export type PersistedContent<
|
|
|
104
160
|
: Content<Schemas>;
|
|
105
161
|
|
|
106
162
|
/**
|
|
107
|
-
* The PersistedChanges type
|
|
163
|
+
* The PersistedChanges type is a generic representation of changes made to the
|
|
164
|
+
* type of store being handled by a Persister.
|
|
165
|
+
*
|
|
166
|
+
* This has schema-based typing. The following is a simplified representation:
|
|
167
|
+
*
|
|
168
|
+
* ```ts override
|
|
169
|
+
* export type PersistedChanges<Persist extends Persists = Persists.StoreOnly> =
|
|
170
|
+
* Persist extends Persists.StoreOrMergeableStore
|
|
171
|
+
* ? Changes | MergeableChanges
|
|
172
|
+
* : Persist extends Persists.MergeableStoreOnly
|
|
173
|
+
* ? MergeableChanges
|
|
174
|
+
* : Changes;
|
|
175
|
+
* ```
|
|
176
|
+
*
|
|
177
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
178
|
+
* whether the Persister is handling changes for a regular Store (the Changes
|
|
179
|
+
* type), a MergeableStore (the MergeableChanges type), or either (the union of
|
|
180
|
+
* the two).
|
|
108
181
|
* @category Mergeable
|
|
109
182
|
* @since v5.0.0
|
|
110
183
|
*/
|
|
@@ -118,8 +191,8 @@ export type PersistedChanges<
|
|
|
118
191
|
: Changes<Schemas>;
|
|
119
192
|
|
|
120
193
|
/**
|
|
121
|
-
* A PersisterListener is a callback that lets a
|
|
122
|
-
* a change has happened to the underlying data.
|
|
194
|
+
* A PersisterListener is a generic representation of the callback that lets a
|
|
195
|
+
* Persister inform the store that a change has happened to the underlying data.
|
|
123
196
|
*
|
|
124
197
|
* This has schema-based typing. The following is a simplified representation:
|
|
125
198
|
*
|
|
@@ -130,11 +203,16 @@ export type PersistedChanges<
|
|
|
130
203
|
* ) => void;
|
|
131
204
|
* ```
|
|
132
205
|
*
|
|
206
|
+
* Using the values of the Persists enum, the generic parameter indicates
|
|
207
|
+
* whether the Persister is handling content and changes from a regular Store, a
|
|
208
|
+
* MergeableStore, or either.
|
|
209
|
+
*
|
|
133
210
|
* If the listener is called with the `changes` parameter, it will be used to
|
|
134
211
|
* make an incremental change to the Store. If not, but the `content` parameter
|
|
135
212
|
* is available, that will be used to make a wholesale change to the Store. If
|
|
136
213
|
* neither are present, the content will be loaded using the Persister's load
|
|
137
|
-
* method. Prior to v5.0, these parameters were callbacks
|
|
214
|
+
* method. Prior to v5.0, these parameters were callbacks and the overall type
|
|
215
|
+
* was non-generic.
|
|
138
216
|
* @param content If provided, this is a Content object from the the Persister
|
|
139
217
|
* that will be used to immediately wholesale update the Store.
|
|
140
218
|
* @param changes If provided, this is a Changes object from the the Persister
|
|
@@ -157,14 +235,19 @@ export type PersisterListener<
|
|
|
157
235
|
*
|
|
158
236
|
* A PersisterStats object is returned from the getStats method.
|
|
159
237
|
* @category Development
|
|
238
|
+
* @since v1.0.0
|
|
160
239
|
*/
|
|
161
240
|
export type PersisterStats = {
|
|
162
241
|
/**
|
|
163
242
|
* The number of times data has been loaded.
|
|
243
|
+
* @category Stat
|
|
244
|
+
* @since v1.0.0
|
|
164
245
|
*/
|
|
165
246
|
loads: number;
|
|
166
247
|
/**
|
|
167
248
|
* The number of times data has been saved.
|
|
249
|
+
* @category Stat
|
|
250
|
+
* @since v1.0.0
|
|
168
251
|
*/
|
|
169
252
|
saves: number;
|
|
170
253
|
};
|
|
@@ -284,27 +367,37 @@ export type DpcJson = {
|
|
|
284
367
|
* The mode to be used for persisting the Store to the database, in this case
|
|
285
368
|
* JSON serialization. See the DpcTabular type for the alternative tabular
|
|
286
369
|
* mapping mode.
|
|
370
|
+
* @category Configuration
|
|
371
|
+
* @since v4.0.0
|
|
287
372
|
*/
|
|
288
373
|
mode: 'json';
|
|
289
374
|
/**
|
|
290
375
|
* An optional string which indicates the name of a table in the database
|
|
291
376
|
* which will be used to serialize the Store content into. It defaults to
|
|
292
377
|
* `tinybase`.
|
|
378
|
+
* @category Configuration
|
|
379
|
+
* @since v4.0.0
|
|
293
380
|
*/
|
|
294
381
|
storeTableName?: string;
|
|
295
382
|
/**
|
|
296
383
|
* The optional name of the column in the database table that will be used as
|
|
297
384
|
* the Id for the Store, defaulting to '_id', since v5.0.
|
|
385
|
+
* @category Configuration
|
|
386
|
+
* @since v4.0.0
|
|
298
387
|
*/
|
|
299
388
|
storeIdColumnName?: string;
|
|
300
389
|
/**
|
|
301
390
|
* The optional name of the column in the database table that will be used for
|
|
302
391
|
* the JSON of the Store, defaulting to 'store', since v5.0.
|
|
392
|
+
* @category Configuration
|
|
393
|
+
* @since v4.0.0
|
|
303
394
|
*/
|
|
304
395
|
storeColumnName?: string;
|
|
305
396
|
/**
|
|
306
397
|
* How often the Persister should poll the database for any changes made to it
|
|
307
398
|
* by other clients, defaulting to 1 second.
|
|
399
|
+
* @category Configuration
|
|
400
|
+
* @since v4.0.0
|
|
308
401
|
*/
|
|
309
402
|
autoLoadIntervalSeconds?: number;
|
|
310
403
|
};
|
|
@@ -313,6 +406,11 @@ export type DpcJson = {
|
|
|
313
406
|
* The DpcTabular type describes the configuration of a database-oriented
|
|
314
407
|
* Persister that is operating in tabular mapping mode.
|
|
315
408
|
*
|
|
409
|
+
* This configuration can only be used when the Persister is persisting a
|
|
410
|
+
* regular Store. For those database-oriented Persister types that support
|
|
411
|
+
* MergeableStore data, you will need to use JSON-serialization, es described
|
|
412
|
+
* in the DpcJson section.
|
|
413
|
+
*
|
|
316
414
|
* It is important to note that both the tabular mapping in ('save') and out
|
|
317
415
|
* ('load') of an underlying database are disabled by default. This is to ensure
|
|
318
416
|
* that if you pass in an existing populated database you don't run the
|
|
@@ -375,30 +473,42 @@ export type DpcTabular<Schema extends OptionalTablesSchema> = {
|
|
|
375
473
|
* The mode to be used for persisting the Store to the database, in this case
|
|
376
474
|
* tabular mapping. See the DpcJson type for the alternative JSON
|
|
377
475
|
* serialization mode.
|
|
476
|
+
* @category Configuration
|
|
477
|
+
* @since v4.0.0
|
|
378
478
|
*/
|
|
379
479
|
mode: 'tabular';
|
|
380
480
|
/**
|
|
381
481
|
* The settings for how the Store Tables are mapped to and from the database.
|
|
482
|
+
* @category Configuration
|
|
483
|
+
* @since v4.0.0
|
|
382
484
|
*/
|
|
383
485
|
tables?: {
|
|
384
486
|
/**
|
|
385
487
|
* The settings for how the database tables are mapped into the Store Tables
|
|
386
488
|
* when loading.
|
|
489
|
+
* @category Configuration
|
|
490
|
+
* @since v4.0.0
|
|
387
491
|
*/
|
|
388
492
|
load?: DpcTabularLoad<Schema>;
|
|
389
493
|
/**
|
|
390
494
|
* The settings for how the Store Tables are mapped out to the database
|
|
391
495
|
* tables when saving.
|
|
496
|
+
* @category Configuration
|
|
497
|
+
* @since v4.0.0
|
|
392
498
|
*/
|
|
393
499
|
save?: DpcTabularSave<Schema>;
|
|
394
500
|
};
|
|
395
501
|
/**
|
|
396
502
|
* The settings for how the Store Values are mapped to and from the database.
|
|
503
|
+
* @category Configuration
|
|
504
|
+
* @since v4.0.0
|
|
397
505
|
*/
|
|
398
506
|
values?: DpcTabularValues;
|
|
399
507
|
/**
|
|
400
508
|
* How often the Persister should poll the database for any changes made to it
|
|
401
509
|
* by other clients, defaulting to 1 second.
|
|
510
|
+
* @category Configuration
|
|
511
|
+
* @since v4.0.0
|
|
402
512
|
*/
|
|
403
513
|
autoLoadIntervalSeconds?: number;
|
|
404
514
|
};
|
|
@@ -485,11 +595,15 @@ export type DpcTabularLoad<Schema extends OptionalTablesSchema> = {
|
|
|
485
595
|
/**
|
|
486
596
|
* The Id of the Store Table into which data from this database table
|
|
487
597
|
* should be loaded.
|
|
598
|
+
* @category Configuration
|
|
599
|
+
* @since v4.0.0
|
|
488
600
|
*/
|
|
489
601
|
tableId: TableIdFromSchema<Schema>;
|
|
490
602
|
/**
|
|
491
603
|
* The optional name of the column in the database table that will be
|
|
492
604
|
* used as the Row Ids in the Store Table, defaulting to '_id'.
|
|
605
|
+
* @category Configuration
|
|
606
|
+
* @since v4.0.0
|
|
493
607
|
*/
|
|
494
608
|
rowIdColumnName?: string;
|
|
495
609
|
}
|
|
@@ -594,21 +708,29 @@ export type DpcTabularSave<Schema extends OptionalTablesSchema> = {
|
|
|
594
708
|
/**
|
|
595
709
|
* The name of the database table out to which the Store Table should be
|
|
596
710
|
* saved.
|
|
711
|
+
* @category Configuration
|
|
712
|
+
* @since v4.0.0
|
|
597
713
|
*/
|
|
598
714
|
tableName: string;
|
|
599
715
|
/**
|
|
600
716
|
* The optional name of the column in the database table that will be
|
|
601
717
|
* used to save the Row Ids from the Store Table, defaulting to '_id'.
|
|
718
|
+
* @category Configuration
|
|
719
|
+
* @since v4.0.0
|
|
602
720
|
*/
|
|
603
721
|
rowIdColumnName?: string;
|
|
604
722
|
/**
|
|
605
723
|
* Whether columns in the database table will be removed if they are
|
|
606
724
|
* empty in the Store Table, defaulting to false.
|
|
725
|
+
* @category Configuration
|
|
726
|
+
* @since v4.0.0
|
|
607
727
|
*/
|
|
608
728
|
deleteEmptyColumns?: boolean;
|
|
609
729
|
/**
|
|
610
|
-
* Whether tables in the database will be removed if the Store Table
|
|
611
|
-
*
|
|
730
|
+
* Whether tables in the database will be removed if the Store Table is
|
|
731
|
+
* empty, defaulting to false.
|
|
732
|
+
* @category Configuration
|
|
733
|
+
* @since v4.0.0
|
|
612
734
|
*/
|
|
613
735
|
deleteEmptyTable?: boolean;
|
|
614
736
|
}
|
|
@@ -647,15 +769,21 @@ export type DpcTabularSave<Schema extends OptionalTablesSchema> = {
|
|
|
647
769
|
export type DpcTabularValues = {
|
|
648
770
|
/**
|
|
649
771
|
* Whether Store Values will be loaded from a database table.
|
|
772
|
+
* @category Configuration
|
|
773
|
+
* @since v4.0.0
|
|
650
774
|
*/
|
|
651
775
|
load?: boolean;
|
|
652
776
|
/**
|
|
653
777
|
* Whether Store Values will be saved to a database table.
|
|
778
|
+
* @category Configuration
|
|
779
|
+
* @since v4.0.0
|
|
654
780
|
*/
|
|
655
781
|
save?: boolean;
|
|
656
782
|
/**
|
|
657
783
|
* The optional name of the database table from and to which the Store Values
|
|
658
784
|
* should be loaded or saved, defaulting to `tinybase_values`.
|
|
785
|
+
* @category Configuration
|
|
786
|
+
* @since v4.0.0
|
|
659
787
|
*/
|
|
660
788
|
tableName?: string;
|
|
661
789
|
};
|
|
@@ -664,15 +792,22 @@ export type DpcTabularValues = {
|
|
|
664
792
|
* A Persister object lets you save and load Store data to and from different
|
|
665
793
|
* locations, or underlying storage types.
|
|
666
794
|
*
|
|
667
|
-
* This is useful for preserving Store data between browser
|
|
668
|
-
* saving or loading browser state to or from a server, or
|
|
669
|
-
* disk in a environment with filesystem access.
|
|
795
|
+
* This is useful for preserving Store or MergeableStore data between browser
|
|
796
|
+
* sessions or reloads, saving or loading browser state to or from a server, or
|
|
797
|
+
* saving Store data to disk in a environment with filesystem access.
|
|
670
798
|
*
|
|
671
799
|
* Creating a Persister depends on the choice of underlying storage where the
|
|
672
800
|
* data is to be stored. Options include the createSessionPersister function,
|
|
673
801
|
* the createLocalPersister function, the createRemotePersister function, and
|
|
674
|
-
* the createFilePersister function
|
|
675
|
-
* be used to easily create a fully
|
|
802
|
+
* the createFilePersister function, as just simple examples. The
|
|
803
|
+
* createCustomPersister function can also be used to easily create a fully
|
|
804
|
+
* customized way to save and load Store data.
|
|
805
|
+
*
|
|
806
|
+
* Using the values of the Persists enum, the generic parameter to the Persister
|
|
807
|
+
* indicates whether it can handle a regular Store, a MergeableStore, or either.
|
|
808
|
+
* Consult the table in the overall persisters module documentation to see
|
|
809
|
+
* current support for each. The different levels of support are also described
|
|
810
|
+
* for each of the types of Persister themselves.
|
|
676
811
|
*
|
|
677
812
|
* A Persister lets you explicit save or load data, with the save method and the
|
|
678
813
|
* load method respectively. These methods are both asynchronous (since the
|
|
@@ -767,6 +902,7 @@ export type DpcTabularValues = {
|
|
|
767
902
|
* sessionStorage.clear();
|
|
768
903
|
* ```
|
|
769
904
|
* @category Persister
|
|
905
|
+
* @since v1.0.0
|
|
770
906
|
*/
|
|
771
907
|
export interface Persister<
|
|
772
908
|
in out Schemas extends OptionalSchemas,
|
|
@@ -840,6 +976,7 @@ export interface Persister<
|
|
|
840
976
|
* sessionStorage.clear();
|
|
841
977
|
* ```
|
|
842
978
|
* @category Load
|
|
979
|
+
* @since v1.0.0
|
|
843
980
|
*/
|
|
844
981
|
load(initialContent?: Content<Schemas, true>): Promise<this>;
|
|
845
982
|
|
|
@@ -902,6 +1039,7 @@ export interface Persister<
|
|
|
902
1039
|
* sessionStorage.clear();
|
|
903
1040
|
* ```
|
|
904
1041
|
* @category Load
|
|
1042
|
+
* @since v1.0.0
|
|
905
1043
|
*/
|
|
906
1044
|
startAutoLoad(initialContent?: Content<Schemas, true>): Promise<this>;
|
|
907
1045
|
|
|
@@ -949,6 +1087,7 @@ export interface Persister<
|
|
|
949
1087
|
* sessionStorage.clear();
|
|
950
1088
|
* ```
|
|
951
1089
|
* @category Load
|
|
1090
|
+
* @since v1.0.0
|
|
952
1091
|
*/
|
|
953
1092
|
stopAutoLoad(): this;
|
|
954
1093
|
|
|
@@ -1010,6 +1149,7 @@ export interface Persister<
|
|
|
1010
1149
|
* sessionStorage.clear();
|
|
1011
1150
|
* ```
|
|
1012
1151
|
* @category Save
|
|
1152
|
+
* @since v1.0.0
|
|
1013
1153
|
*/
|
|
1014
1154
|
save(): Promise<this>;
|
|
1015
1155
|
|
|
@@ -1050,6 +1190,7 @@ export interface Persister<
|
|
|
1050
1190
|
* sessionStorage.clear();
|
|
1051
1191
|
* ```
|
|
1052
1192
|
* @category Save
|
|
1193
|
+
* @since v1.0.0
|
|
1053
1194
|
*/
|
|
1054
1195
|
startAutoSave(): Promise<this>;
|
|
1055
1196
|
|
|
@@ -1090,6 +1231,7 @@ export interface Persister<
|
|
|
1090
1231
|
* sessionStorage.clear();
|
|
1091
1232
|
* ```
|
|
1092
1233
|
* @category Save
|
|
1234
|
+
* @since v1.0.0
|
|
1093
1235
|
*/
|
|
1094
1236
|
stopAutoSave(): this;
|
|
1095
1237
|
|
|
@@ -1174,9 +1316,9 @@ export interface Persister<
|
|
|
1174
1316
|
schedule(...actions: Promise<any>[]): Promise<this>;
|
|
1175
1317
|
|
|
1176
1318
|
/**
|
|
1177
|
-
* The getStore method returns a reference to the underlying Store
|
|
1178
|
-
* backing this Persister object.
|
|
1179
|
-
* @returns A reference to the Store.
|
|
1319
|
+
* The getStore method returns a reference to the underlying Store or
|
|
1320
|
+
* MergeableStore that is backing this Persister object.
|
|
1321
|
+
* @returns A reference to the Store or MergeableStore.
|
|
1180
1322
|
* @example
|
|
1181
1323
|
* This example creates a Persister object against a newly-created Store and
|
|
1182
1324
|
* then gets its reference in order to update its data.
|
|
@@ -1202,6 +1344,7 @@ export interface Persister<
|
|
|
1202
1344
|
* sessionStorage.clear();
|
|
1203
1345
|
* ```
|
|
1204
1346
|
* @category Getter
|
|
1347
|
+
* @since v1.0.0
|
|
1205
1348
|
*/
|
|
1206
1349
|
getStore(): PersistedStore<Schemas, Persist>;
|
|
1207
1350
|
|
|
@@ -1235,6 +1378,7 @@ export interface Persister<
|
|
|
1235
1378
|
* // -> 0
|
|
1236
1379
|
* ```
|
|
1237
1380
|
* @category Lifecycle
|
|
1381
|
+
* @since v1.0.0
|
|
1238
1382
|
*/
|
|
1239
1383
|
destroy(): this;
|
|
1240
1384
|
|
|
@@ -1280,6 +1424,7 @@ export interface Persister<
|
|
|
1280
1424
|
* sessionStorage.clear();
|
|
1281
1425
|
* ```
|
|
1282
1426
|
* @category Development
|
|
1427
|
+
* @since v1.0.0
|
|
1283
1428
|
*/
|
|
1284
1429
|
getStats(): PersisterStats;
|
|
1285
1430
|
}
|
|
@@ -1306,7 +1451,7 @@ export interface Persister<
|
|
|
1306
1451
|
* ) => ListeningHandle,
|
|
1307
1452
|
* delPersisterListener: (listeningHandle: ListeningHandle) => void,
|
|
1308
1453
|
* onIgnoredError?: (error: any) => void,
|
|
1309
|
-
*
|
|
1454
|
+
* persist?: Persist,
|
|
1310
1455
|
* ): Persister<Persist>;
|
|
1311
1456
|
* ```
|
|
1312
1457
|
*
|
|
@@ -1345,41 +1490,43 @@ export interface Persister<
|
|
|
1345
1490
|
* @param onIgnoredError An optional handler for the errors that the Persister
|
|
1346
1491
|
* would otherwise ignore when trying to save or load data. This is suitable for
|
|
1347
1492
|
* debugging persistence issues in a development environment, since v4.0.4.
|
|
1348
|
-
* @param
|
|
1349
|
-
* Store are supported by this Persister: `1` indicates
|
|
1350
|
-
* supported, `2` indicates only a MergeableStore is
|
|
1351
|
-
* indicates that both Store and MergeableStore are
|
|
1493
|
+
* @param persist Since v5.0, an optional integer from the Persists enum to
|
|
1494
|
+
* indicate which types of Store are supported by this Persister: `1` indicates
|
|
1495
|
+
* only a regular Store is supported, `2` indicates only a MergeableStore is
|
|
1496
|
+
* supported, and `3` indicates that both Store and MergeableStore are
|
|
1497
|
+
* supported.
|
|
1352
1498
|
* @returns A reference to the new Persister object.
|
|
1353
1499
|
* @example
|
|
1354
|
-
* This example creates a custom Persister object and persists
|
|
1355
|
-
* local string called `
|
|
1356
|
-
* for changes every second.
|
|
1500
|
+
* This example creates a custom Persister object and persists a Store to a
|
|
1501
|
+
* local string called `persistedJson` and which would automatically load by
|
|
1502
|
+
* polling for changes every second. It implicitly supports only a regular
|
|
1503
|
+
* Store.
|
|
1357
1504
|
*
|
|
1358
1505
|
* ```js
|
|
1359
1506
|
* import {createCustomPersister, createStore} from 'tinybase';
|
|
1360
1507
|
*
|
|
1361
1508
|
* const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
|
|
1362
|
-
* let
|
|
1509
|
+
* let persistedJson;
|
|
1363
1510
|
*
|
|
1364
1511
|
* const persister = createCustomPersister(
|
|
1365
1512
|
* store,
|
|
1366
1513
|
* async () => {
|
|
1367
1514
|
* // getPersisted
|
|
1368
|
-
* return JSON.parse(
|
|
1515
|
+
* return JSON.parse(persistedJson);
|
|
1369
1516
|
* },
|
|
1370
1517
|
* async (getContent) => {
|
|
1371
1518
|
* // setPersisted
|
|
1372
|
-
*
|
|
1519
|
+
* persistedJson = JSON.stringify(getContent());
|
|
1373
1520
|
* },
|
|
1374
1521
|
* (listener) => setInterval(listener, 1000),
|
|
1375
1522
|
* (interval) => clearInterval(interval),
|
|
1376
1523
|
* );
|
|
1377
1524
|
*
|
|
1378
1525
|
* await persister.save();
|
|
1379
|
-
* console.log(
|
|
1526
|
+
* console.log(persistedJson);
|
|
1380
1527
|
* // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
|
|
1381
1528
|
*
|
|
1382
|
-
*
|
|
1529
|
+
* persistedJson = '[{"pets":{"fido":{"species":"dog","color":"brown"}}},{}]';
|
|
1383
1530
|
* await persister.load();
|
|
1384
1531
|
*
|
|
1385
1532
|
* console.log(store.getTables());
|
|
@@ -1387,7 +1534,77 @@ export interface Persister<
|
|
|
1387
1534
|
*
|
|
1388
1535
|
* persister.destroy();
|
|
1389
1536
|
* ```
|
|
1537
|
+
* @example
|
|
1538
|
+
* This example demonstrates a Persister creation function which returns a
|
|
1539
|
+
* Persister. This can persists a store to a local string called `persistedJson`
|
|
1540
|
+
* and which would automatically load by polling for changes every second.
|
|
1541
|
+
* It emits warnings to the console and explicitly supports either a Store or a
|
|
1542
|
+
* MergeableStore.
|
|
1543
|
+
*
|
|
1544
|
+
* ```js
|
|
1545
|
+
* import {
|
|
1546
|
+
* Persists,
|
|
1547
|
+
* createCustomPersister,
|
|
1548
|
+
* createMergeableStore,
|
|
1549
|
+
* createStore,
|
|
1550
|
+
* } from 'tinybase';
|
|
1551
|
+
*
|
|
1552
|
+
* let persistedJson;
|
|
1553
|
+
* const createJsonPersister = (storeOrMergeableStore) =>
|
|
1554
|
+
* createCustomPersister(
|
|
1555
|
+
* storeOrMergeableStore,
|
|
1556
|
+
* async () => {
|
|
1557
|
+
* // getPersisted
|
|
1558
|
+
* return JSON.parse(persistedJson);
|
|
1559
|
+
* },
|
|
1560
|
+
* async (getContent) => {
|
|
1561
|
+
* // setPersisted
|
|
1562
|
+
* persistedJson = JSON.stringify(getContent());
|
|
1563
|
+
* },
|
|
1564
|
+
* (listener) => setInterval(listener, 1000),
|
|
1565
|
+
* (interval) => clearInterval(interval),
|
|
1566
|
+
* console.warn,
|
|
1567
|
+
* Persists.StoreOrMergeableStore,
|
|
1568
|
+
* );
|
|
1569
|
+
*
|
|
1570
|
+
* const store = createStore();
|
|
1571
|
+
* store.setTables({pets: {fido: {species: 'dog'}}});
|
|
1572
|
+
* const storePersister = createJsonPersister(store);
|
|
1573
|
+
* await storePersister.save();
|
|
1574
|
+
* console.log(persistedJson);
|
|
1575
|
+
* // -> '[{"pets":{"fido":{"species":"dog"}}},{}]'
|
|
1576
|
+
* storePersister.destroy();
|
|
1577
|
+
*
|
|
1578
|
+
* const mergeableStore = createMergeableStore('mergeableStore1'); // !resetHlc
|
|
1579
|
+
* mergeableStore.setTables({pets: {fido: {species: 'dog'}}});
|
|
1580
|
+
* const mergeableStorePersister = createJsonPersister(mergeableStore);
|
|
1581
|
+
* await mergeableStorePersister.save();
|
|
1582
|
+
* console.log(JSON.parse(persistedJson));
|
|
1583
|
+
* // ->
|
|
1584
|
+
* [
|
|
1585
|
+
* [
|
|
1586
|
+
* {
|
|
1587
|
+
* pets: [
|
|
1588
|
+
* {
|
|
1589
|
+
* fido: [
|
|
1590
|
+
* {species: ['dog', 'Nn1JUF-----Zjl0M', 4176151067]},
|
|
1591
|
+
* '',
|
|
1592
|
+
* 2722999044,
|
|
1593
|
+
* ],
|
|
1594
|
+
* },
|
|
1595
|
+
* '',
|
|
1596
|
+
* 3367164653,
|
|
1597
|
+
* ],
|
|
1598
|
+
* },
|
|
1599
|
+
* '',
|
|
1600
|
+
* 30627183,
|
|
1601
|
+
* ],
|
|
1602
|
+
* [{}, '', 0],
|
|
1603
|
+
* ];
|
|
1604
|
+
* mergeableStorePersister.destroy();
|
|
1605
|
+
* ```
|
|
1390
1606
|
* @category Creation
|
|
1607
|
+
* @since v1.0.0
|
|
1391
1608
|
*/
|
|
1392
1609
|
export function createCustomPersister<
|
|
1393
1610
|
Schemas extends OptionalSchemas,
|
|
@@ -1405,5 +1622,5 @@ export function createCustomPersister<
|
|
|
1405
1622
|
) => ListeningHandle,
|
|
1406
1623
|
delPersisterListener: (listeningHandle: ListeningHandle) => void,
|
|
1407
1624
|
onIgnoredError?: (error: any) => void,
|
|
1408
|
-
|
|
1625
|
+
persist?: Persist,
|
|
1409
1626
|
): Persister<Schemas, Persist>;
|