tinybase 5.0.0-beta.26 → 5.0.0-beta.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@types/persisters/index.d.cts +175 -53
- package/@types/persisters/index.d.ts +175 -53
- package/@types/persisters/persister-automerge/index.d.cts +11 -7
- package/@types/persisters/persister-automerge/index.d.ts +11 -7
- package/@types/persisters/persister-automerge/with-schemas/index.d.cts +11 -7
- package/@types/persisters/persister-automerge/with-schemas/index.d.ts +11 -7
- package/@types/persisters/persister-browser/index.d.cts +20 -13
- package/@types/persisters/persister-browser/index.d.ts +20 -13
- package/@types/persisters/persister-browser/with-schemas/index.d.cts +20 -13
- package/@types/persisters/persister-browser/with-schemas/index.d.ts +20 -13
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.cts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.cts +10 -7
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +10 -7
- package/@types/persisters/persister-electric-sql/index.d.cts +10 -7
- package/@types/persisters/persister-electric-sql/index.d.ts +10 -7
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.cts +10 -7
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +10 -7
- package/@types/persisters/persister-expo-sqlite/index.d.cts +12 -8
- package/@types/persisters/persister-expo-sqlite/index.d.ts +12 -8
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.cts +12 -8
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +12 -8
- package/@types/persisters/persister-file/index.d.cts +10 -6
- package/@types/persisters/persister-file/index.d.ts +10 -6
- package/@types/persisters/persister-file/with-schemas/index.d.cts +10 -6
- package/@types/persisters/persister-file/with-schemas/index.d.ts +10 -6
- package/@types/persisters/persister-indexed-db/index.d.cts +10 -6
- package/@types/persisters/persister-indexed-db/index.d.ts +10 -6
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.cts +10 -6
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +10 -6
- package/@types/persisters/persister-libsql/index.d.cts +10 -6
- package/@types/persisters/persister-libsql/index.d.ts +10 -6
- package/@types/persisters/persister-libsql/with-schemas/index.d.cts +10 -6
- package/@types/persisters/persister-libsql/with-schemas/index.d.ts +10 -6
- package/@types/persisters/persister-partykit-client/index.d.cts +14 -9
- package/@types/persisters/persister-partykit-client/index.d.ts +14 -9
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.cts +14 -9
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +14 -9
- package/@types/persisters/persister-powersync/index.d.cts +12 -7
- package/@types/persisters/persister-powersync/index.d.ts +12 -7
- package/@types/persisters/persister-powersync/with-schemas/index.d.cts +12 -7
- package/@types/persisters/persister-powersync/with-schemas/index.d.ts +12 -7
- package/@types/persisters/persister-remote/index.d.cts +11 -8
- package/@types/persisters/persister-remote/index.d.ts +11 -8
- package/@types/persisters/persister-remote/with-schemas/index.d.cts +11 -8
- package/@types/persisters/persister-remote/with-schemas/index.d.ts +11 -8
- package/@types/persisters/persister-sqlite-wasm/index.d.cts +12 -7
- package/@types/persisters/persister-sqlite-wasm/index.d.ts +12 -7
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.cts +12 -7
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +12 -7
- package/@types/persisters/persister-sqlite3/index.d.cts +12 -7
- package/@types/persisters/persister-sqlite3/index.d.ts +12 -7
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.cts +12 -7
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +12 -7
- package/@types/persisters/persister-yjs/index.d.cts +11 -6
- package/@types/persisters/persister-yjs/index.d.ts +11 -6
- package/@types/persisters/persister-yjs/with-schemas/index.d.cts +11 -6
- package/@types/persisters/persister-yjs/with-schemas/index.d.ts +11 -6
- package/@types/persisters/with-schemas/index.d.cts +209 -54
- package/@types/persisters/with-schemas/index.d.ts +209 -54
- package/@types/queries/index.d.cts +0 -1
- package/@types/queries/index.d.ts +0 -1
- package/@types/queries/with-schemas/index.d.cts +0 -1
- package/@types/queries/with-schemas/index.d.ts +0 -1
- package/@types/synchronizers/index.d.cts +349 -37
- package/@types/synchronizers/index.d.ts +349 -37
- package/@types/synchronizers/synchronizer-local/index.d.cts +62 -2
- package/@types/synchronizers/synchronizer-local/index.d.ts +62 -2
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +77 -2
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +77 -2
- package/@types/synchronizers/synchronizer-ws-client/index.d.cts +48 -1
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +48 -1
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.cts +48 -1
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +48 -1
- package/@types/synchronizers/with-schemas/index.d.cts +349 -37
- package/@types/synchronizers/with-schemas/index.d.ts +349 -37
- package/cjs/es6/index.cjs +48 -42
- 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/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 +48 -42
- package/cjs/es6/synchronizers/synchronizer-local/index.cjs +50 -45
- package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +50 -45
- package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +47 -42
- package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +47 -42
- package/cjs/es6/synchronizers/with-schemas/index.cjs +48 -42
- 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 +48 -42
- package/cjs/index.cjs +48 -42
- 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/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 +48 -42
- package/cjs/synchronizers/synchronizer-local/index.cjs +50 -50
- package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +50 -50
- package/cjs/synchronizers/synchronizer-ws-client/index.cjs +47 -42
- package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +47 -42
- package/cjs/synchronizers/with-schemas/index.cjs +48 -42
- 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 +48 -42
- package/es6/index.js +48 -42
- 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/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 +48 -43
- package/es6/synchronizers/synchronizer-local/index.js +50 -45
- package/es6/synchronizers/synchronizer-local/with-schemas/index.js +50 -45
- package/es6/synchronizers/synchronizer-ws-client/index.js +47 -42
- package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +47 -42
- package/es6/synchronizers/with-schemas/index.js +48 -43
- 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 +48 -42
- package/index.js +48 -42
- 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/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 +5 -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 +2 -2
- package/releases.md +4 -4
- package/synchronizers/index.js +48 -43
- package/synchronizers/synchronizer-local/index.js +50 -50
- package/synchronizers/synchronizer-local/with-schemas/index.js +50 -50
- package/synchronizers/synchronizer-ws-client/index.js +47 -42
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +47 -42
- package/synchronizers/with-schemas/index.js +48 -43
- 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 +51 -42
- 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/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 +51 -42
- package/umd/es6/synchronizers/synchronizer-local/index.js +53 -45
- package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +53 -45
- package/umd/es6/synchronizers/synchronizer-ws-client/index.js +50 -42
- package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +50 -42
- package/umd/es6/synchronizers/with-schemas/index.js +51 -42
- 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 +51 -42
- package/umd/index.js +51 -46
- 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/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 +51 -46
- package/umd/synchronizers/synchronizer-local/index.js +53 -54
- package/umd/synchronizers/synchronizer-local/with-schemas/index.js +53 -54
- package/umd/synchronizers/synchronizer-ws-client/index.js +50 -46
- package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +50 -46
- package/umd/synchronizers/with-schemas/index.js +51 -46
- 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 +51 -46
- package/with-schemas/index.js +48 -42
|
@@ -394,8 +394,8 @@ const Persists = {
|
|
|
394
394
|
};
|
|
395
395
|
const scheduleRunning = mapNew();
|
|
396
396
|
const scheduleActions = mapNew();
|
|
397
|
-
const getStoreFunctions = (
|
|
398
|
-
|
|
397
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
398
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
399
399
|
? [
|
|
400
400
|
1,
|
|
401
401
|
store.getMergeableContent,
|
|
@@ -404,7 +404,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
404
404
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
405
405
|
store.setDefaultContent,
|
|
406
406
|
]
|
|
407
|
-
:
|
|
407
|
+
: persist != Persists.MergeableStoreOnly
|
|
408
408
|
? [
|
|
409
409
|
0,
|
|
410
410
|
store.getContent,
|
|
@@ -421,7 +421,7 @@ const createCustomPersister = (
|
|
|
421
421
|
addPersisterListener,
|
|
422
422
|
delPersisterListener,
|
|
423
423
|
onIgnoredError,
|
|
424
|
-
|
|
424
|
+
persist,
|
|
425
425
|
extra = {},
|
|
426
426
|
scheduleId = [],
|
|
427
427
|
) => {
|
|
@@ -439,7 +439,7 @@ const createCustomPersister = (
|
|
|
439
439
|
getChanges,
|
|
440
440
|
hasChanges,
|
|
441
441
|
setDefaultContent,
|
|
442
|
-
] = getStoreFunctions(
|
|
442
|
+
] = getStoreFunctions(persist, store);
|
|
443
443
|
const run = async () => {
|
|
444
444
|
/* istanbul ignore else */
|
|
445
445
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -575,7 +575,7 @@ const createJsonSqlitePersister = (
|
|
|
575
575
|
addPersisterListener,
|
|
576
576
|
delPersisterListener,
|
|
577
577
|
onIgnoredError,
|
|
578
|
-
|
|
578
|
+
persist,
|
|
579
579
|
[storeTableName, storeIdColumnName, storeColumnName],
|
|
580
580
|
managedTableNames,
|
|
581
581
|
db,
|
|
@@ -615,7 +615,7 @@ const createJsonSqlitePersister = (
|
|
|
615
615
|
addPersisterListener,
|
|
616
616
|
delPersisterListener,
|
|
617
617
|
onIgnoredError,
|
|
618
|
-
|
|
618
|
+
persist,
|
|
619
619
|
{[getThing]: () => db},
|
|
620
620
|
db,
|
|
621
621
|
);
|
|
@@ -628,7 +628,7 @@ const createTabularSqlitePersister = (
|
|
|
628
628
|
addPersisterListener,
|
|
629
629
|
delPersisterListener,
|
|
630
630
|
onIgnoredError,
|
|
631
|
-
|
|
631
|
+
persist,
|
|
632
632
|
[
|
|
633
633
|
tablesLoadConfig,
|
|
634
634
|
tablesSaveConfig,
|
|
@@ -722,7 +722,7 @@ const createTabularSqlitePersister = (
|
|
|
722
722
|
addPersisterListener,
|
|
723
723
|
delPersisterListener,
|
|
724
724
|
onIgnoredError,
|
|
725
|
-
|
|
725
|
+
persist,
|
|
726
726
|
{[getThing]: () => db},
|
|
727
727
|
db,
|
|
728
728
|
);
|
|
@@ -844,7 +844,7 @@ const createSqlitePersister = (
|
|
|
844
844
|
delUpdateListener,
|
|
845
845
|
onSqlCommand,
|
|
846
846
|
onIgnoredError,
|
|
847
|
-
|
|
847
|
+
persist,
|
|
848
848
|
db,
|
|
849
849
|
getThing = 'getDb',
|
|
850
850
|
useOnConflict,
|
|
@@ -895,7 +895,7 @@ const createSqlitePersister = (
|
|
|
895
895
|
addPersisterListener,
|
|
896
896
|
delPersisterListener,
|
|
897
897
|
onIgnoredError,
|
|
898
|
-
|
|
898
|
+
persist,
|
|
899
899
|
defaultedConfig,
|
|
900
900
|
collValues(managedTableNamesSet),
|
|
901
901
|
db,
|
|
@@ -394,8 +394,8 @@ const Persists = {
|
|
|
394
394
|
};
|
|
395
395
|
const scheduleRunning = mapNew();
|
|
396
396
|
const scheduleActions = mapNew();
|
|
397
|
-
const getStoreFunctions = (
|
|
398
|
-
|
|
397
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
398
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
399
399
|
? [
|
|
400
400
|
1,
|
|
401
401
|
store.getMergeableContent,
|
|
@@ -404,7 +404,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
404
404
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
405
405
|
store.setDefaultContent,
|
|
406
406
|
]
|
|
407
|
-
:
|
|
407
|
+
: persist != Persists.MergeableStoreOnly
|
|
408
408
|
? [
|
|
409
409
|
0,
|
|
410
410
|
store.getContent,
|
|
@@ -421,7 +421,7 @@ const createCustomPersister = (
|
|
|
421
421
|
addPersisterListener,
|
|
422
422
|
delPersisterListener,
|
|
423
423
|
onIgnoredError,
|
|
424
|
-
|
|
424
|
+
persist,
|
|
425
425
|
extra = {},
|
|
426
426
|
scheduleId = [],
|
|
427
427
|
) => {
|
|
@@ -439,7 +439,7 @@ const createCustomPersister = (
|
|
|
439
439
|
getChanges,
|
|
440
440
|
hasChanges,
|
|
441
441
|
setDefaultContent,
|
|
442
|
-
] = getStoreFunctions(
|
|
442
|
+
] = getStoreFunctions(persist, store);
|
|
443
443
|
const run = async () => {
|
|
444
444
|
/* istanbul ignore else */
|
|
445
445
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -575,7 +575,7 @@ const createJsonSqlitePersister = (
|
|
|
575
575
|
addPersisterListener,
|
|
576
576
|
delPersisterListener,
|
|
577
577
|
onIgnoredError,
|
|
578
|
-
|
|
578
|
+
persist,
|
|
579
579
|
[storeTableName, storeIdColumnName, storeColumnName],
|
|
580
580
|
managedTableNames,
|
|
581
581
|
db,
|
|
@@ -615,7 +615,7 @@ const createJsonSqlitePersister = (
|
|
|
615
615
|
addPersisterListener,
|
|
616
616
|
delPersisterListener,
|
|
617
617
|
onIgnoredError,
|
|
618
|
-
|
|
618
|
+
persist,
|
|
619
619
|
{[getThing]: () => db},
|
|
620
620
|
db,
|
|
621
621
|
);
|
|
@@ -628,7 +628,7 @@ const createTabularSqlitePersister = (
|
|
|
628
628
|
addPersisterListener,
|
|
629
629
|
delPersisterListener,
|
|
630
630
|
onIgnoredError,
|
|
631
|
-
|
|
631
|
+
persist,
|
|
632
632
|
[
|
|
633
633
|
tablesLoadConfig,
|
|
634
634
|
tablesSaveConfig,
|
|
@@ -722,7 +722,7 @@ const createTabularSqlitePersister = (
|
|
|
722
722
|
addPersisterListener,
|
|
723
723
|
delPersisterListener,
|
|
724
724
|
onIgnoredError,
|
|
725
|
-
|
|
725
|
+
persist,
|
|
726
726
|
{[getThing]: () => db},
|
|
727
727
|
db,
|
|
728
728
|
);
|
|
@@ -844,7 +844,7 @@ const createSqlitePersister = (
|
|
|
844
844
|
delUpdateListener,
|
|
845
845
|
onSqlCommand,
|
|
846
846
|
onIgnoredError,
|
|
847
|
-
|
|
847
|
+
persist,
|
|
848
848
|
db,
|
|
849
849
|
getThing = 'getDb',
|
|
850
850
|
useOnConflict,
|
|
@@ -895,7 +895,7 @@ const createSqlitePersister = (
|
|
|
895
895
|
addPersisterListener,
|
|
896
896
|
delPersisterListener,
|
|
897
897
|
onIgnoredError,
|
|
898
|
-
|
|
898
|
+
persist,
|
|
899
899
|
defaultedConfig,
|
|
900
900
|
collValues(managedTableNamesSet),
|
|
901
901
|
db,
|
|
@@ -395,8 +395,8 @@ const Persists = {
|
|
|
395
395
|
};
|
|
396
396
|
const scheduleRunning = mapNew();
|
|
397
397
|
const scheduleActions = mapNew();
|
|
398
|
-
const getStoreFunctions = (
|
|
399
|
-
|
|
398
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
399
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
400
400
|
? [
|
|
401
401
|
1,
|
|
402
402
|
store.getMergeableContent,
|
|
@@ -405,7 +405,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
405
405
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
406
406
|
store.setDefaultContent,
|
|
407
407
|
]
|
|
408
|
-
:
|
|
408
|
+
: persist != Persists.MergeableStoreOnly
|
|
409
409
|
? [
|
|
410
410
|
0,
|
|
411
411
|
store.getContent,
|
|
@@ -422,7 +422,7 @@ const createCustomPersister = (
|
|
|
422
422
|
addPersisterListener,
|
|
423
423
|
delPersisterListener,
|
|
424
424
|
onIgnoredError,
|
|
425
|
-
|
|
425
|
+
persist,
|
|
426
426
|
extra = {},
|
|
427
427
|
scheduleId = [],
|
|
428
428
|
) => {
|
|
@@ -440,7 +440,7 @@ const createCustomPersister = (
|
|
|
440
440
|
getChanges,
|
|
441
441
|
hasChanges,
|
|
442
442
|
setDefaultContent,
|
|
443
|
-
] = getStoreFunctions(
|
|
443
|
+
] = getStoreFunctions(persist, store);
|
|
444
444
|
const run = async () => {
|
|
445
445
|
/* istanbul ignore else */
|
|
446
446
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -576,7 +576,7 @@ const createJsonSqlitePersister = (
|
|
|
576
576
|
addPersisterListener,
|
|
577
577
|
delPersisterListener,
|
|
578
578
|
onIgnoredError,
|
|
579
|
-
|
|
579
|
+
persist,
|
|
580
580
|
[storeTableName, storeIdColumnName, storeColumnName],
|
|
581
581
|
managedTableNames,
|
|
582
582
|
db,
|
|
@@ -616,7 +616,7 @@ const createJsonSqlitePersister = (
|
|
|
616
616
|
addPersisterListener,
|
|
617
617
|
delPersisterListener,
|
|
618
618
|
onIgnoredError,
|
|
619
|
-
|
|
619
|
+
persist,
|
|
620
620
|
{[getThing]: () => db},
|
|
621
621
|
db,
|
|
622
622
|
);
|
|
@@ -629,7 +629,7 @@ const createTabularSqlitePersister = (
|
|
|
629
629
|
addPersisterListener,
|
|
630
630
|
delPersisterListener,
|
|
631
631
|
onIgnoredError,
|
|
632
|
-
|
|
632
|
+
persist,
|
|
633
633
|
[
|
|
634
634
|
tablesLoadConfig,
|
|
635
635
|
tablesSaveConfig,
|
|
@@ -723,7 +723,7 @@ const createTabularSqlitePersister = (
|
|
|
723
723
|
addPersisterListener,
|
|
724
724
|
delPersisterListener,
|
|
725
725
|
onIgnoredError,
|
|
726
|
-
|
|
726
|
+
persist,
|
|
727
727
|
{[getThing]: () => db},
|
|
728
728
|
db,
|
|
729
729
|
);
|
|
@@ -845,7 +845,7 @@ const createSqlitePersister = (
|
|
|
845
845
|
delUpdateListener,
|
|
846
846
|
onSqlCommand,
|
|
847
847
|
onIgnoredError,
|
|
848
|
-
|
|
848
|
+
persist,
|
|
849
849
|
db,
|
|
850
850
|
getThing = 'getDb',
|
|
851
851
|
useOnConflict,
|
|
@@ -896,7 +896,7 @@ const createSqlitePersister = (
|
|
|
896
896
|
addPersisterListener,
|
|
897
897
|
delPersisterListener,
|
|
898
898
|
onIgnoredError,
|
|
899
|
-
|
|
899
|
+
persist,
|
|
900
900
|
defaultedConfig,
|
|
901
901
|
collValues(managedTableNamesSet),
|
|
902
902
|
db,
|
|
@@ -395,8 +395,8 @@ const Persists = {
|
|
|
395
395
|
};
|
|
396
396
|
const scheduleRunning = mapNew();
|
|
397
397
|
const scheduleActions = mapNew();
|
|
398
|
-
const getStoreFunctions = (
|
|
399
|
-
|
|
398
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
399
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
400
400
|
? [
|
|
401
401
|
1,
|
|
402
402
|
store.getMergeableContent,
|
|
@@ -405,7 +405,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
405
405
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
406
406
|
store.setDefaultContent,
|
|
407
407
|
]
|
|
408
|
-
:
|
|
408
|
+
: persist != Persists.MergeableStoreOnly
|
|
409
409
|
? [
|
|
410
410
|
0,
|
|
411
411
|
store.getContent,
|
|
@@ -422,7 +422,7 @@ const createCustomPersister = (
|
|
|
422
422
|
addPersisterListener,
|
|
423
423
|
delPersisterListener,
|
|
424
424
|
onIgnoredError,
|
|
425
|
-
|
|
425
|
+
persist,
|
|
426
426
|
extra = {},
|
|
427
427
|
scheduleId = [],
|
|
428
428
|
) => {
|
|
@@ -440,7 +440,7 @@ const createCustomPersister = (
|
|
|
440
440
|
getChanges,
|
|
441
441
|
hasChanges,
|
|
442
442
|
setDefaultContent,
|
|
443
|
-
] = getStoreFunctions(
|
|
443
|
+
] = getStoreFunctions(persist, store);
|
|
444
444
|
const run = async () => {
|
|
445
445
|
/* istanbul ignore else */
|
|
446
446
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -576,7 +576,7 @@ const createJsonSqlitePersister = (
|
|
|
576
576
|
addPersisterListener,
|
|
577
577
|
delPersisterListener,
|
|
578
578
|
onIgnoredError,
|
|
579
|
-
|
|
579
|
+
persist,
|
|
580
580
|
[storeTableName, storeIdColumnName, storeColumnName],
|
|
581
581
|
managedTableNames,
|
|
582
582
|
db,
|
|
@@ -616,7 +616,7 @@ const createJsonSqlitePersister = (
|
|
|
616
616
|
addPersisterListener,
|
|
617
617
|
delPersisterListener,
|
|
618
618
|
onIgnoredError,
|
|
619
|
-
|
|
619
|
+
persist,
|
|
620
620
|
{[getThing]: () => db},
|
|
621
621
|
db,
|
|
622
622
|
);
|
|
@@ -629,7 +629,7 @@ const createTabularSqlitePersister = (
|
|
|
629
629
|
addPersisterListener,
|
|
630
630
|
delPersisterListener,
|
|
631
631
|
onIgnoredError,
|
|
632
|
-
|
|
632
|
+
persist,
|
|
633
633
|
[
|
|
634
634
|
tablesLoadConfig,
|
|
635
635
|
tablesSaveConfig,
|
|
@@ -723,7 +723,7 @@ const createTabularSqlitePersister = (
|
|
|
723
723
|
addPersisterListener,
|
|
724
724
|
delPersisterListener,
|
|
725
725
|
onIgnoredError,
|
|
726
|
-
|
|
726
|
+
persist,
|
|
727
727
|
{[getThing]: () => db},
|
|
728
728
|
db,
|
|
729
729
|
);
|
|
@@ -845,7 +845,7 @@ const createSqlitePersister = (
|
|
|
845
845
|
delUpdateListener,
|
|
846
846
|
onSqlCommand,
|
|
847
847
|
onIgnoredError,
|
|
848
|
-
|
|
848
|
+
persist,
|
|
849
849
|
db,
|
|
850
850
|
getThing = 'getDb',
|
|
851
851
|
useOnConflict,
|
|
@@ -896,7 +896,7 @@ const createSqlitePersister = (
|
|
|
896
896
|
addPersisterListener,
|
|
897
897
|
delPersisterListener,
|
|
898
898
|
onIgnoredError,
|
|
899
|
-
|
|
899
|
+
persist,
|
|
900
900
|
defaultedConfig,
|
|
901
901
|
collValues(managedTableNamesSet),
|
|
902
902
|
db,
|
|
@@ -72,8 +72,8 @@ const Persists = {
|
|
|
72
72
|
};
|
|
73
73
|
const scheduleRunning = mapNew();
|
|
74
74
|
const scheduleActions = mapNew();
|
|
75
|
-
const getStoreFunctions = (
|
|
76
|
-
|
|
75
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
76
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
77
77
|
? [
|
|
78
78
|
1,
|
|
79
79
|
store.getMergeableContent,
|
|
@@ -82,7 +82,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
82
82
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
83
83
|
store.setDefaultContent,
|
|
84
84
|
]
|
|
85
|
-
:
|
|
85
|
+
: persist != Persists.MergeableStoreOnly
|
|
86
86
|
? [
|
|
87
87
|
0,
|
|
88
88
|
store.getContent,
|
|
@@ -99,7 +99,7 @@ const createCustomPersister = (
|
|
|
99
99
|
addPersisterListener,
|
|
100
100
|
delPersisterListener,
|
|
101
101
|
onIgnoredError,
|
|
102
|
-
|
|
102
|
+
persist,
|
|
103
103
|
extra = {},
|
|
104
104
|
scheduleId = [],
|
|
105
105
|
) => {
|
|
@@ -117,7 +117,7 @@ const createCustomPersister = (
|
|
|
117
117
|
getChanges,
|
|
118
118
|
hasChanges,
|
|
119
119
|
setDefaultContent,
|
|
120
|
-
] = getStoreFunctions(
|
|
120
|
+
] = getStoreFunctions(persist, store);
|
|
121
121
|
const run = async () => {
|
|
122
122
|
/* istanbul ignore else */
|
|
123
123
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -72,8 +72,8 @@ const Persists = {
|
|
|
72
72
|
};
|
|
73
73
|
const scheduleRunning = mapNew();
|
|
74
74
|
const scheduleActions = mapNew();
|
|
75
|
-
const getStoreFunctions = (
|
|
76
|
-
|
|
75
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
76
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
77
77
|
? [
|
|
78
78
|
1,
|
|
79
79
|
store.getMergeableContent,
|
|
@@ -82,7 +82,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
82
82
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
83
83
|
store.setDefaultContent,
|
|
84
84
|
]
|
|
85
|
-
:
|
|
85
|
+
: persist != Persists.MergeableStoreOnly
|
|
86
86
|
? [
|
|
87
87
|
0,
|
|
88
88
|
store.getContent,
|
|
@@ -99,7 +99,7 @@ const createCustomPersister = (
|
|
|
99
99
|
addPersisterListener,
|
|
100
100
|
delPersisterListener,
|
|
101
101
|
onIgnoredError,
|
|
102
|
-
|
|
102
|
+
persist,
|
|
103
103
|
extra = {},
|
|
104
104
|
scheduleId = [],
|
|
105
105
|
) => {
|
|
@@ -117,7 +117,7 @@ const createCustomPersister = (
|
|
|
117
117
|
getChanges,
|
|
118
118
|
hasChanges,
|
|
119
119
|
setDefaultContent,
|
|
120
|
-
] = getStoreFunctions(
|
|
120
|
+
] = getStoreFunctions(persist, store);
|
|
121
121
|
const run = async () => {
|
|
122
122
|
/* istanbul ignore else */
|
|
123
123
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
|
@@ -49,8 +49,8 @@ const Persists = {
|
|
|
49
49
|
};
|
|
50
50
|
const scheduleRunning = mapNew();
|
|
51
51
|
const scheduleActions = mapNew();
|
|
52
|
-
const getStoreFunctions = (
|
|
53
|
-
|
|
52
|
+
const getStoreFunctions = (persist = Persists.StoreOnly, store) =>
|
|
53
|
+
persist != Persists.StoreOnly && store.isMergeable()
|
|
54
54
|
? [
|
|
55
55
|
1,
|
|
56
56
|
store.getMergeableContent,
|
|
@@ -59,7 +59,7 @@ const getStoreFunctions = (persistable = Persists.StoreOnly, store) =>
|
|
|
59
59
|
!objIsEmpty(changedTables) || !objIsEmpty(changedValues),
|
|
60
60
|
store.setDefaultContent,
|
|
61
61
|
]
|
|
62
|
-
:
|
|
62
|
+
: persist != Persists.MergeableStoreOnly
|
|
63
63
|
? [
|
|
64
64
|
0,
|
|
65
65
|
store.getContent,
|
|
@@ -76,7 +76,7 @@ const createCustomPersister = (
|
|
|
76
76
|
addPersisterListener,
|
|
77
77
|
delPersisterListener,
|
|
78
78
|
onIgnoredError,
|
|
79
|
-
|
|
79
|
+
persist,
|
|
80
80
|
extra = {},
|
|
81
81
|
scheduleId = [],
|
|
82
82
|
) => {
|
|
@@ -94,7 +94,7 @@ const createCustomPersister = (
|
|
|
94
94
|
getChanges,
|
|
95
95
|
hasChanges,
|
|
96
96
|
setDefaultContent,
|
|
97
|
-
] = getStoreFunctions(
|
|
97
|
+
] = getStoreFunctions(persist, store);
|
|
98
98
|
const run = async () => {
|
|
99
99
|
/* istanbul ignore else */
|
|
100
100
|
if (!mapGet(scheduleRunning, scheduleId)) {
|
package/readme.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<section id="hero"><h2 id="the-reactive-data-store-for-local-first-apps">The <em>reactive</em> data store for <span>local-first apps</span>.</h2><p id="copy">Build blisteringly fast web apps that work both online and offline. Manage your state locally, synchronize it to the cloud when you need to, or even make it collaborative. But, most importantly... have fun building stuff again!</p></section><p><a href="https://beta.tinybase.org/guides/releases/#v5-0"><em>NEW!</em> v5.0 release</a> <span id="one-with">"The One You Can Sync"</span></p><p><a class="start" href="https://beta.tinybase.org/guides/the-basics/getting-started/">Get started</a></p><p><a href="https://beta.tinybase.org/demos/">Try the demos</a></p><p><a href="https://beta.tinybase.org/api/store/interfaces/store/store/">Read the docs</a></p><hr><ul><li>Manage <a href="#start-with-a-simple-key-value-store">key-value data</a>, <a href="#level-up-to-use-tabular-data">tabular data</a> - or both - with optional <a href="#apply-schemas-to-tables-values">schematization</a> to model your app's data structures.</li><li><a href="#register-granular-listeners">Flexibly reactive</a> to reconciled updates, so you only spend rendering cycles on things that change.</li><li><a href="#build-complex-queries-with-tinyql">Powerful query engine</a> to select, join, filter, group, sort and paginate data - reactively - and without SQL.</li><li>Built-in <a href="#create-indexes-for-fast-lookups">indexing</a>, <a href="#define-metrics-and-aggregations">metric aggregation</a>, <a href="#model-table-relationships">tabular relationships</a> - and even an <a href="#set-checkpoints-for-an-undo-stack">undo stack</a> for your app state.</li><li>Create <a href="#type-definitions-orm-like-apis">type definitions & ORM-like APIs</a>, from schema or inference. <a href="#an-inspector-for-your-data">Inspect your data</a> (<em>new!</em>) directly in the browser.</li><li>Easily <a href="#persist-to-storage-sqlite-crdts">sync your data</a> to browser <a href="https://beta.tinybase.org/api/persister-browser">storage</a>, <a href="https://beta.tinybase.org/api/persister-indexed-db/">IndexedDB</a>, <a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence/">SQLite</a>, <a href="https://beta.tinybase.org/guides/schemas-and-persistence/synchronizing-data/">CRDTs</a>; and (<em>new!</em>) <a href="https://beta.tinybase.org/api/persister-partykit-client/">PartyKit</a> and <a href="https://electric-sql.com/">ElectricSQL</a>.</li><li>Optional <a href="#call-hooks-to-bind-to-data">bindings to React</a> and (<em>new!</em>) <a href="#pre-built-reactive-components">pre-built components</a> that let you easily build fully reactive user interfaces.</li><li>Tiny by name, tiny by nature: <a href="#did-we-say-tiny">5.3kB - 12.
|
|
1
|
+
<section id="hero"><h2 id="the-reactive-data-store-for-local-first-apps">The <em>reactive</em> data store for <span>local-first apps</span>.</h2><p id="copy">Build blisteringly fast web apps that work both online and offline. Manage your state locally, synchronize it to the cloud when you need to, or even make it collaborative. But, most importantly... have fun building stuff again!</p></section><p><a href="https://beta.tinybase.org/guides/releases/#v5-0"><em>NEW!</em> v5.0 release</a> <span id="one-with">"The One You Can Sync"</span></p><p><a class="start" href="https://beta.tinybase.org/guides/the-basics/getting-started/">Get started</a></p><p><a href="https://beta.tinybase.org/demos/">Try the demos</a></p><p><a href="https://beta.tinybase.org/api/store/interfaces/store/store/">Read the docs</a></p><hr><ul><li>Manage <a href="#start-with-a-simple-key-value-store">key-value data</a>, <a href="#level-up-to-use-tabular-data">tabular data</a> - or both - with optional <a href="#apply-schemas-to-tables-values">schematization</a> to model your app's data structures.</li><li><a href="#register-granular-listeners">Flexibly reactive</a> to reconciled updates, so you only spend rendering cycles on things that change.</li><li><a href="#build-complex-queries-with-tinyql">Powerful query engine</a> to select, join, filter, group, sort and paginate data - reactively - and without SQL.</li><li>Built-in <a href="#create-indexes-for-fast-lookups">indexing</a>, <a href="#define-metrics-and-aggregations">metric aggregation</a>, <a href="#model-table-relationships">tabular relationships</a> - and even an <a href="#set-checkpoints-for-an-undo-stack">undo stack</a> for your app state.</li><li>Create <a href="#type-definitions-orm-like-apis">type definitions & ORM-like APIs</a>, from schema or inference. <a href="#an-inspector-for-your-data">Inspect your data</a> (<em>new!</em>) directly in the browser.</li><li>Easily <a href="#persist-to-storage-sqlite-crdts">sync your data</a> to browser <a href="https://beta.tinybase.org/api/persister-browser">storage</a>, <a href="https://beta.tinybase.org/api/persister-indexed-db/">IndexedDB</a>, <a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence/">SQLite</a>, <a href="https://beta.tinybase.org/guides/schemas-and-persistence/synchronizing-data/">CRDTs</a>; and (<em>new!</em>) <a href="https://beta.tinybase.org/api/persister-partykit-client/">PartyKit</a> and <a href="https://electric-sql.com/">ElectricSQL</a>.</li><li>Optional <a href="#call-hooks-to-bind-to-data">bindings to React</a> and (<em>new!</em>) <a href="#pre-built-reactive-components">pre-built components</a> that let you easily build fully reactive user interfaces.</li><li>Tiny by name, tiny by nature: <a href="#did-we-say-tiny">5.3kB - 12.7kB</a>, no dependencies. <a href="#well-tested-and-documented">100% tested</a>, <a href="https://beta.tinybase.org/guides/the-basics/getting-started/">fully documented</a>, and of course, <a href="https://github.com/tinyplex/tinybase">open source</a>!</li></ul><hr><section id="friends"><h2 id="tinybase-works-great-on-its-own-but-also-plays-well-with-friends">TinyBase works great on its own, but also plays well with friends!</h2><div><a href="https://beta.tinybase.org/guides/building-uis/getting-started-with-ui-react"><img width="48" src="https://beta.tinybase.org/react.svg"> React</a></div><div><a href="https://beta.tinybase.org/api/persister-partykit-client"><img width="48" src="https://beta.tinybase.org/partykit.svg"> PartyKit</a></div><div><a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence"><img width="48" src="https://beta.tinybase.org/expo.svg">Expo SQLite</a></div><div><a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence"><img width="48" src="https://beta.tinybase.org/electric.svg">ElectricSQL</a></div><div><a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence"><img width="48" src="https://beta.tinybase.org/sqlite.svg"> SQLite</a></div><div><a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence"><img width="48" src="https://beta.tinybase.org/turso.svg">Turso</a></div><div><a href="https://beta.tinybase.org/guides/schemas-and-persistence/database-persistence"><img width="48" src="https://beta.tinybase.org/powersync.svg">PowerSync</a></div><div><a href="https://beta.tinybase.org/api/persister-indexed-db/functions/creation/createindexeddbpersister"><img width="48" src="https://beta.tinybase.org/indexeddb.svg"> IndexedDB</a></div><div><a href="https://beta.tinybase.org/api/persister-yjs/functions/creation/createyjspersister"><img width="48" src="https://beta.tinybase.org/yjs.svg"> YJS</a></div><div><a href="https://beta.tinybase.org/api/persister-cr-sqlite-wasm"><img width="48" src="https://beta.tinybase.org/crsqlite.png"> CR-SQLite</a></div><div><a href="https://beta.tinybase.org/api/persister-automerge"><img width="48" src="https://beta.tinybase.org/automerge.svg"> Automerge</a></div></section><hr><section id="follow"><a href="https://github.com/tinyplex/tinybase" target="_blank"><img src="https://img.shields.io/github/stars/tinyplex/tinybase?style=for-the-badge&logo=GitHub&logoColor=%23fff&label=GitHub&labelColor=%23d81b60&color=%23333"> </a><a href="https://discord.com/invite/mGz3mevwP8" target="_blank"><img src="https://img.shields.io/discord/1027918215323590676?style=for-the-badge&logo=discord&logoColor=%23fff&label=Discord&labelColor=%233131e8&color=%23333"> </a><a href="https://twitter.com/tinybasejs" target="_blank"><img src="https://img.shields.io/twitter/follow/tinybasejs?style=for-the-badge&logo=x&logoColor=%23fff&label=Twitter&labelColor=%23333&color=%23333"></a><br><a href="https://github.com/tinyplex/tinybase/discussions" target="_blank"><img src="https://img.shields.io/github/discussions/tinyplex/tinybase?style=for-the-badge&logo=GitHub&logoColor=%23fff&label=Ideas&labelColor=%23d81b60&color=%23333"> </a><a href="https://github.com/tinyplex/tinybase/issues" target="_blank"><img src="https://img.shields.io/github/issues/tinyplex/tinybase?style=for-the-badge&logo=GitHub&logoColor=%23fff&label=Issues&labelColor=%23d81b60&color=%23333"> </a><a href="#well-tested-and-documented"><img src="https://img.shields.io/badge/Tests-100%25-green?style=for-the-badge&logo=jest&logoColor=%23fff&color=%23333&labelColor=%2387c305"> </a><a href="https://www.npmjs.com/package/tinybase/v/5.0.0-beta.27" target="_blank"><img src="https://img.shields.io/npm/v/tinybase?style=for-the-badge&logo=npm&logoColor=%23fff&labelColor=%23bd0005&color=%23333"></a></section><hr><section><h2 id="start-with-a-simple-key-value-store">Start with a simple key-value store.</h2><p>Creating a <a href="https://beta.tinybase.org/api/store/interfaces/store/store/"><code>Store</code></a> requires just a simple call to the <a href="https://beta.tinybase.org/api/store/functions/creation/createstore/"><code>createStore</code></a> function. Once you have one, you can easily set <a href="https://beta.tinybase.org/api/store/type-aliases/store/values/"><code>Values</code></a> in it by unique <a href="https://beta.tinybase.org/api/common/type-aliases/identity/id/"><code>Id</code></a>. And of course you can easily get them back out again.</p><p>Read more about using keyed value data in <a href="https://beta.tinybase.org/guides/the-basics/">The Basics</a> guide.</p></section>
|
|
2
2
|
|
|
3
3
|
```js
|
|
4
4
|
import {createStore} from 'tinybase';
|
|
@@ -265,4 +265,4 @@ export const createShop: typeof createShopDecl = () => {
|
|
|
265
265
|
};
|
|
266
266
|
```
|
|
267
267
|
|
|
268
|
-
<section><h2 id="did-we-say-tiny">Did we say tiny?</h2><p>If you use the basic <a href="https://beta.tinybase.org/api/store/"><code>store</code></a> module alone, you'll only add a gzipped <em>5.3kB</em> to your app. Incrementally add the other modules as you need more functionality, or get it all for <em>12.6kB</em>.</p><p>The optional <a href="https://beta.tinybase.org/api/ui-react/"><code>ui-react</code></a> module is just <em>4.6kB</em>, the ui-react-dom components are another <em>2.5kB</em>, and everything is super fast. Life's easy when you have zero dependencies!</p><p>Read more about how TinyBase is structured and packaged in the <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/architecture/">Architecture</a> guide.</p></section><div class="table"><table class="fixed"><tbody><tr><th> </th><th>Minified .js.gz</th><th>Source .js</th></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/store/">tinybase/store</a> (minimal)</th><td>5.3kB</td><td>52.3kB</td></tr><tr><th class="right">tinybase (complete)</th><td>12.6kB</td><td>129.7kB</td></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/ui-react/">ui-react</a></th><td>4.6kB</td><td>47.2kB</td></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/ui-react-dom/">ui-react-dom</a></th><td>2.5kB</td><td>20.4kB</td></tr></tbody></table></div><section><h2 id="well-tested-and-documented">Well tested and documented.</h2><p>TinyBase has <em>100.0%</em> test coverage, including the code throughout the documentation - even on this page! The guides, demos, and API examples are designed to make it as easy as possible for you to get your TinyBase-powered app up and running.</p><p>Read more about how TinyBase is tested in the Unit <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/testing/">Testing</a> guide.</p></section><div class="table"><table class="fixed"><tbody><tr><th width="30%"> </th><th>Total</th><th>Tested</th><th>Coverage</th></tr><tr><th class="right">Lines</th><td>2,377</td><td>2,377</td><td>100.0%</td></tr><tr><th class="right">Statements</th><td>2,561</td><td>2,561</td><td>100.0%</td></tr><tr><th class="right">Functions</th><td>1,000</td><td>1,000</td><td>100.0%</td></tr><tr><th class="right">Branches</th><td>951</td><td>951</td><td>100.0%</td></tr><tr><th class="right">Tests</th><td colspan="3">6,720</td></tr><tr><th class="right">Assertions</th><td colspan="3">31,380</td></tr></tbody></table></div><hr><section id="sponsors"><h2 id="proud-to-be-sponsored-by">Proud to be sponsored by:</h2><a href="https://github.com/expo" target="_blank"><img title="expo" src="https://github.com/expo.png?size=48" width="48" height="48"></a><a href="https://github.com/beekeeb" target="_blank"><img title="beekeeb" src="https://github.com/beekeeb.png?size=48" width="48" height="48"></a><a href="https://github.com/cancelself" target="_blank"><img title="cancelself" src="https://github.com/cancelself.png?size=48" width="48" height="48"></a><a href="https://github.com/WonderPanda" target="_blank"><img title="WonderPanda" src="https://github.com/WonderPanda.png?size=48" width="48" height="48"></a><a href="https://github.com/arpitBhalla" target="_blank"><img title="arpitBhalla" src="https://github.com/arpitBhalla.png?size=48" width="48" height="48"></a></section><section id="users"><h2 id="excited-to-be-used-by">Excited to be used by:</h2><a href="https://github.com/Apocalypsor" target="_blank"><img title="Apocalypsor" src="https://github.com/Apocalypsor.png?size=48" width="48" height="48"></a><a href="https://github.com/brentvatne" target="_blank"><img title="brentvatne" src="https://github.com/brentvatne.png?size=48" width="48" height="48"></a><a href="https://github.com/circadian-risk" target="_blank"><img title="circadian-risk" src="https://github.com/circadian-risk.png?size=48" width="48" height="48"></a><a href="https://github.com/cubecull" target="_blank"><img title="cubecull" src="https://github.com/cubecull.png?size=48" width="48" height="48"></a><a href="https://github.com/erwinkn" target="_blank"><img title="erwinkn" src="https://github.com/erwinkn.png?size=48" width="48" height="48"></a><a href="https://github.com/expo" target="_blank"><img title="expo" src="https://github.com/expo.png?size=48" width="48" height="48"></a><a href="https://github.com/ezra-en" target="_blank"><img title="ezra-en" src="https://github.com/ezra-en.png?size=48" width="48" height="48"></a><a href="https://github.com/fdfontes" target="_blank"><img title="fdfontes" src="https://github.com/fdfontes.png?size=48" width="48" height="48"></a><a href="https://github.com/feychenie" target="_blank"><img title="feychenie" src="https://github.com/feychenie.png?size=48" width="48" height="48"></a><a href="https://github.com/flaming-codes" target="_blank"><img title="flaming-codes" src="https://github.com/flaming-codes.png?size=48" width="48" height="48"></a><a href="https://github.com/fostertheweb" target="_blank"><img title="fostertheweb" src="https://github.com/fostertheweb.png?size=48" width="48" height="48"></a><a href="https://github.com/fostertheweb" target="_blank"><img title="fostertheweb" src="https://github.com/fostertheweb.png?size=48" width="48" height="48"></a><a href="https://github.com/generates" target="_blank"><img title="generates" src="https://github.com/generates.png?size=48" width="48" height="48"></a><a href="https://github.com/Giulio987" target="_blank"><img title="Giulio987" src="https://github.com/Giulio987.png?size=48" width="48" height="48"></a><a href="https://github.com/itsdevcoffee" target="_blank"><img title="itsdevcoffee" src="https://github.com/itsdevcoffee.png?size=48" width="48" height="48"></a><a href="https://github.com/jaysc" target="_blank"><img title="jaysc" src="https://github.com/jaysc.png?size=48" width="48" height="48"></a><a href="https://github.com/jbolda" target="_blank"><img title="jbolda" src="https://github.com/jbolda.png?size=48" width="48" height="48"></a><a href="https://github.com/Kayoo-asso" target="_blank"><img title="Kayoo-asso" src="https://github.com/Kayoo-asso.png?size=48" width="48" height="48"></a><a href="https://github.com/kotofurumiya" target="_blank"><img title="kotofurumiya" src="https://github.com/kotofurumiya.png?size=48" width="48" height="48"></a><a href="https://github.com/Kudo" target="_blank"><img title="Kudo" src="https://github.com/Kudo.png?size=48" width="48" height="48"></a><a href="https://github.com/learn-anything" target="_blank"><img title="learn-anything" src="https://github.com/learn-anything.png?size=48" width="48" height="48"></a><a href="https://github.com/lluc" target="_blank"><img title="lluc" src="https://github.com/lluc.png?size=48" width="48" height="48"></a><a href="https://github.com/marksteve" target="_blank"><img title="marksteve" src="https://github.com/marksteve.png?size=48" width="48" height="48"></a><a href="https://github.com/miking-the-viking" target="_blank"><img title="miking-the-viking" src="https://github.com/miking-the-viking.png?size=48" width="48" height="48"></a><a href="https://github.com/mjamesderocher" target="_blank"><img title="mjamesderocher" src="https://github.com/mjamesderocher.png?size=48" width="48" height="48"></a><a href="https://github.com/nikitavoloboev" target="_blank"><img title="nikitavoloboev" src="https://github.com/nikitavoloboev.png?size=48" width="48" height="48"></a><a href="https://github.com/palerdot" target="_blank"><img title="palerdot" src="https://github.com/palerdot.png?size=48" width="48" height="48"></a><a href="https://github.com/PorcoRosso85" target="_blank"><img title="PorcoRosso85" src="https://github.com/PorcoRosso85.png?size=48" width="48" height="48"></a><a href="https://github.com/shaneosullivan" target="_blank"><img title="shaneosullivan" src="https://github.com/shaneosullivan.png?size=48" width="48" height="48"></a><a href="https://github.com/sudo-self" target="_blank"><img title="sudo-self" src="https://github.com/sudo-self.png?size=48" width="48" height="48"></a><a href="https://github.com/SuperSonicHub1" target="_blank"><img title="SuperSonicHub1" src="https://github.com/SuperSonicHub1.png?size=48" width="48" height="48"></a><a href="https://github.com/threepointone" target="_blank"><img title="threepointone" src="https://github.com/threepointone.png?size=48" width="48" height="48"></a><a href="https://github.com/uptonking" target="_blank"><img title="uptonking" src="https://github.com/uptonking.png?size=48" width="48" height="48"></a><a href="https://github.com/WonderPanda" target="_blank"><img title="WonderPanda" src="https://github.com/WonderPanda.png?size=48" width="48" height="48"></a></section><hr><p><a class="start" href="https://beta.tinybase.org/guides/the-basics/getting-started/">Get started</a></p><p><a href="https://beta.tinybase.org/demos/">Try the demos</a></p><p><a href="https://beta.tinybase.org/api/store/interfaces/store/store/">Read the docs</a></p><hr><section id="about"><h2 id="about">About</h2><p>Modern apps deserve better. Why trade reactive user experiences to be able to use relational data? Or sacrifice features for bundle size? And why does the cloud do all the work <a href="https://localfirstweb.dev/" target="_blank">anyway</a>?</p><p>Building TinyBase was originally an interesting exercise for <a rel="me" href="https://tripleodeon.com">me</a> in API design, minification, and documentation. But now it has taken on a life of its own, and has grown beyond my wildest expectations.</p><p>It could not have been built without these great <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/credits/#giants">projects</a> and <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/credits/#and-friends">friends</a>, and I hope you enjoy using it as much as I do building it!</p></section><section id="story"><h2 id="the-story">The story</h2><a href="https://youtu.be/hXL7OkW-Prk?t=1232" target="_blank"><img src="https://beta.tinybase.org/youtube.webp"></a></section>
|
|
268
|
+
<section><h2 id="did-we-say-tiny">Did we say tiny?</h2><p>If you use the basic <a href="https://beta.tinybase.org/api/store/"><code>store</code></a> module alone, you'll only add a gzipped <em>5.3kB</em> to your app. Incrementally add the other modules as you need more functionality, or get it all for <em>12.7kB</em>.</p><p>The optional <a href="https://beta.tinybase.org/api/ui-react/"><code>ui-react</code></a> module is just <em>4.6kB</em>, the ui-react-dom components are another <em>2.5kB</em>, and everything is super fast. Life's easy when you have zero dependencies!</p><p>Read more about how TinyBase is structured and packaged in the <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/architecture/">Architecture</a> guide.</p></section><div class="table"><table class="fixed"><tbody><tr><th> </th><th>Minified .js.gz</th><th>Source .js</th></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/store/">tinybase/store</a> (minimal)</th><td>5.3kB</td><td>52.3kB</td></tr><tr><th class="right">tinybase (complete)</th><td>12.7kB</td><td>129.8kB</td></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/ui-react/">ui-react</a></th><td>4.6kB</td><td>48.1kB</td></tr><tr><th class="right"><a href="https://beta.tinybase.org/api/ui-react-dom/">ui-react-dom</a></th><td>2.5kB</td><td>20.4kB</td></tr></tbody></table></div><section><h2 id="well-tested-and-documented">Well tested and documented.</h2><p>TinyBase has <em>100.0%</em> test coverage, including the code throughout the documentation - even on this page! The guides, demos, and API examples are designed to make it as easy as possible for you to get your TinyBase-powered app up and running.</p><p>Read more about how TinyBase is tested in the Unit <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/testing/">Testing</a> guide.</p></section><div class="table"><table class="fixed"><tbody><tr><th width="30%"> </th><th>Total</th><th>Tested</th><th>Coverage</th></tr><tr><th class="right">Lines</th><td>2,378</td><td>2,378</td><td>100.0%</td></tr><tr><th class="right">Statements</th><td>2,562</td><td>2,562</td><td>100.0%</td></tr><tr><th class="right">Functions</th><td>1,000</td><td>1,000</td><td>100.0%</td></tr><tr><th class="right">Branches</th><td>951</td><td>951</td><td>100.0%</td></tr><tr><th class="right">Tests</th><td colspan="3">6,739</td></tr><tr><th class="right">Assertions</th><td colspan="3">31,433</td></tr></tbody></table></div><hr><section id="sponsors"><h2 id="proud-to-be-sponsored-by">Proud to be sponsored by:</h2><a href="https://github.com/cpojer" target="_blank"><img title="cpojer" src="https://github.com/cpojer.png?size=48" width="48" height="48"></a><a href="https://github.com/expo" target="_blank"><img title="expo" src="https://github.com/expo.png?size=48" width="48" height="48"></a><a href="https://github.com/beekeeb" target="_blank"><img title="beekeeb" src="https://github.com/beekeeb.png?size=48" width="48" height="48"></a><a href="https://github.com/cancelself" target="_blank"><img title="cancelself" src="https://github.com/cancelself.png?size=48" width="48" height="48"></a><a href="https://github.com/WonderPanda" target="_blank"><img title="WonderPanda" src="https://github.com/WonderPanda.png?size=48" width="48" height="48"></a><a href="https://github.com/arpitBhalla" target="_blank"><img title="arpitBhalla" src="https://github.com/arpitBhalla.png?size=48" width="48" height="48"></a></section><section id="users"><h2 id="excited-to-be-used-by">Excited to be used by:</h2><a href="https://github.com/Apocalypsor" target="_blank"><img title="Apocalypsor" src="https://github.com/Apocalypsor.png?size=48" width="48" height="48"></a><a href="https://github.com/brentvatne" target="_blank"><img title="brentvatne" src="https://github.com/brentvatne.png?size=48" width="48" height="48"></a><a href="https://github.com/byCedric" target="_blank"><img title="byCedric" src="https://github.com/byCedric.png?size=48" width="48" height="48"></a><a href="https://github.com/circadian-risk" target="_blank"><img title="circadian-risk" src="https://github.com/circadian-risk.png?size=48" width="48" height="48"></a><a href="https://github.com/cpojer" target="_blank"><img title="cpojer" src="https://github.com/cpojer.png?size=48" width="48" height="48"></a><a href="https://github.com/cubecull" target="_blank"><img title="cubecull" src="https://github.com/cubecull.png?size=48" width="48" height="48"></a><a href="https://github.com/erwinkn" target="_blank"><img title="erwinkn" src="https://github.com/erwinkn.png?size=48" width="48" height="48"></a><a href="https://github.com/expo" target="_blank"><img title="expo" src="https://github.com/expo.png?size=48" width="48" height="48"></a><a href="https://github.com/ezra-en" target="_blank"><img title="ezra-en" src="https://github.com/ezra-en.png?size=48" width="48" height="48"></a><a href="https://github.com/fdfontes" target="_blank"><img title="fdfontes" src="https://github.com/fdfontes.png?size=48" width="48" height="48"></a><a href="https://github.com/feychenie" target="_blank"><img title="feychenie" src="https://github.com/feychenie.png?size=48" width="48" height="48"></a><a href="https://github.com/flaming-codes" target="_blank"><img title="flaming-codes" src="https://github.com/flaming-codes.png?size=48" width="48" height="48"></a><a href="https://github.com/fostertheweb" target="_blank"><img title="fostertheweb" src="https://github.com/fostertheweb.png?size=48" width="48" height="48"></a><a href="https://github.com/fostertheweb" target="_blank"><img title="fostertheweb" src="https://github.com/fostertheweb.png?size=48" width="48" height="48"></a><a href="https://github.com/generates" target="_blank"><img title="generates" src="https://github.com/generates.png?size=48" width="48" height="48"></a><a href="https://github.com/Giulio987" target="_blank"><img title="Giulio987" src="https://github.com/Giulio987.png?size=48" width="48" height="48"></a><a href="https://github.com/itsdevcoffee" target="_blank"><img title="itsdevcoffee" src="https://github.com/itsdevcoffee.png?size=48" width="48" height="48"></a><a href="https://github.com/jaysc" target="_blank"><img title="jaysc" src="https://github.com/jaysc.png?size=48" width="48" height="48"></a><a href="https://github.com/jbolda" target="_blank"><img title="jbolda" src="https://github.com/jbolda.png?size=48" width="48" height="48"></a><a href="https://github.com/Kayoo-asso" target="_blank"><img title="Kayoo-asso" src="https://github.com/Kayoo-asso.png?size=48" width="48" height="48"></a><a href="https://github.com/kotofurumiya" target="_blank"><img title="kotofurumiya" src="https://github.com/kotofurumiya.png?size=48" width="48" height="48"></a><a href="https://github.com/Kudo" target="_blank"><img title="Kudo" src="https://github.com/Kudo.png?size=48" width="48" height="48"></a><a href="https://github.com/learn-anything" target="_blank"><img title="learn-anything" src="https://github.com/learn-anything.png?size=48" width="48" height="48"></a><a href="https://github.com/lluc" target="_blank"><img title="lluc" src="https://github.com/lluc.png?size=48" width="48" height="48"></a><a href="https://github.com/marksteve" target="_blank"><img title="marksteve" src="https://github.com/marksteve.png?size=48" width="48" height="48"></a><a href="https://github.com/miking-the-viking" target="_blank"><img title="miking-the-viking" src="https://github.com/miking-the-viking.png?size=48" width="48" height="48"></a><a href="https://github.com/mjamesderocher" target="_blank"><img title="mjamesderocher" src="https://github.com/mjamesderocher.png?size=48" width="48" height="48"></a><a href="https://github.com/mouktardev" target="_blank"><img title="mouktardev" src="https://github.com/mouktardev.png?size=48" width="48" height="48"></a><a href="https://github.com/nickmessing" target="_blank"><img title="nickmessing" src="https://github.com/nickmessing.png?size=48" width="48" height="48"></a><a href="https://github.com/nikitavoloboev" target="_blank"><img title="nikitavoloboev" src="https://github.com/nikitavoloboev.png?size=48" width="48" height="48"></a><a href="https://github.com/nkzw-tech" target="_blank"><img title="nkzw-tech" src="https://github.com/nkzw-tech.png?size=48" width="48" height="48"></a><a href="https://github.com/palerdot" target="_blank"><img title="palerdot" src="https://github.com/palerdot.png?size=48" width="48" height="48"></a><a href="https://github.com/PorcoRosso85" target="_blank"><img title="PorcoRosso85" src="https://github.com/PorcoRosso85.png?size=48" width="48" height="48"></a><a href="https://github.com/primodiumxyz" target="_blank"><img title="primodiumxyz" src="https://github.com/primodiumxyz.png?size=48" width="48" height="48"></a><a href="https://github.com/shaneosullivan" target="_blank"><img title="shaneosullivan" src="https://github.com/shaneosullivan.png?size=48" width="48" height="48"></a><a href="https://github.com/sudo-self" target="_blank"><img title="sudo-self" src="https://github.com/sudo-self.png?size=48" width="48" height="48"></a><a href="https://github.com/SuperSonicHub1" target="_blank"><img title="SuperSonicHub1" src="https://github.com/SuperSonicHub1.png?size=48" width="48" height="48"></a><a href="https://github.com/threepointone" target="_blank"><img title="threepointone" src="https://github.com/threepointone.png?size=48" width="48" height="48"></a><a href="https://github.com/uptonking" target="_blank"><img title="uptonking" src="https://github.com/uptonking.png?size=48" width="48" height="48"></a><a href="https://github.com/ViktorZhurbin" target="_blank"><img title="ViktorZhurbin" src="https://github.com/ViktorZhurbin.png?size=48" width="48" height="48"></a><a href="https://github.com/WonderPanda" target="_blank"><img title="WonderPanda" src="https://github.com/WonderPanda.png?size=48" width="48" height="48"></a></section><hr><p><a class="start" href="https://beta.tinybase.org/guides/the-basics/getting-started/">Get started</a></p><p><a href="https://beta.tinybase.org/demos/">Try the demos</a></p><p><a href="https://beta.tinybase.org/api/store/interfaces/store/store/">Read the docs</a></p><hr><section id="about"><h2 id="about">About</h2><p>Modern apps deserve better. Why trade reactive user experiences to be able to use relational data? Or sacrifice features for bundle size? And why does the cloud do all the work <a href="https://localfirstweb.dev/" target="_blank">anyway</a>?</p><p>Building TinyBase was originally an interesting exercise for <a rel="me" href="https://tripleodeon.com">me</a> in API design, minification, and documentation. But now it has taken on a life of its own, and has grown beyond my wildest expectations.</p><p>It could not have been built without these great <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/credits/#giants">projects</a> and <a href="https://beta.tinybase.org/guides/how-tinybase-is-built/credits/#and-friends">friends</a>, and I hope you enjoy using it as much as I do building it!</p></section><section id="story"><h2 id="the-story">The story</h2><a href="https://youtu.be/hXL7OkW-Prk?t=1232" target="_blank"><img src="https://beta.tinybase.org/youtube.webp"></a></section>
|
package/releases.md
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
```js
|
|
4
4
|
import {createMergeableStore} from 'tinybase';
|
|
5
5
|
|
|
6
|
-
const localStore1 = createMergeableStore(
|
|
7
|
-
const localStore2 = createMergeableStore(
|
|
6
|
+
const localStore1 = createMergeableStore();
|
|
7
|
+
const localStore2 = createMergeableStore();
|
|
8
8
|
|
|
9
9
|
localStore1.setCell('pets', 'fido', 'color', 'brown');
|
|
10
10
|
localStore2.setCell('pets', 'felix', 'color', 'black');
|
|
@@ -29,7 +29,7 @@ import {createWsSynchronizer} from 'tinybase/synchronizers/synchronizer-ws-clien
|
|
|
29
29
|
const server = createWsServer(new WebSocketServer({port: 8043}));
|
|
30
30
|
|
|
31
31
|
// On the first client machine:
|
|
32
|
-
const store1 = createMergeableStore(
|
|
32
|
+
const store1 = createMergeableStore();
|
|
33
33
|
const synchronizer1 = await createWsSynchronizer(
|
|
34
34
|
store1,
|
|
35
35
|
new WebSocket('ws://localhost:8043'),
|
|
@@ -38,7 +38,7 @@ await synchronizer1.startSync();
|
|
|
38
38
|
store1.setCell('pets', 'fido', 'legs', 4);
|
|
39
39
|
|
|
40
40
|
// On the second client machine:
|
|
41
|
-
const store2 = createMergeableStore(
|
|
41
|
+
const store2 = createMergeableStore();
|
|
42
42
|
const synchronizer2 = await createWsSynchronizer(
|
|
43
43
|
store2,
|
|
44
44
|
new WebSocket('ws://localhost:8043'),
|